並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 529件

新着順 人気順

qiitaの検索結果281 - 320 件 / 529件

  • C# Win32API完全入門 - Qiita

    はじめに 対象とする読者について 本記事の対象者としては以下のような人を想定しています。 C#でこれからWin32APIを使ってみたい。 C言語のことがあまりよく分かっていない。 今までは適当に使っていたので一度きちんと理解したい。 自分が同じような状況であったため、一から調べて整理してみました。自分が理解した順番や内容で記載することで、また、具体的な使用例によってできることの広さや動作を感じ取ってもらうことで、理解の助けになればと思っています。 但し、分かっている人からすると冗長な説明になっている部分や好ましくない内容、正確性に欠ける内容などもあると思います。実際に使用する場合はその点にご留意願います。 Win32APIについて Windows API - Wikipedia Microsoft Windowsのシステムコール用APIのこと。特に32ビットプロセッサで動作するWindow

      C# Win32API完全入門 - Qiita
    • Rustプログラムのデバッグ辛すぎ問題 - Qiita

      この記事は Rust Advent Calendar 2023 シリーズ2 の1日目の記事である。 Rustは良くも悪くもシステムプログラミング言語なので、何も工夫しなければデバッグの体験がC言語と同じレベルになってしまう。例えば「rust lldb」でググると上位に Debugging Rust programs with LLDB is a nightmare というスレッドが出てきてしまう。 使うべきツールを知っていれば幾分かマシな体験にできる。Rustコンパイラはデバッガとして LLDB, GDB, WinDbg/CDB をサポート していて、僕はWinDbGは10年くらい触ってないので、この記事ではLLDBとGDBについて書く。 LLDB Apple SiliconのMacだとGDBが使えないので、必然的にLLDBを使うことになる。 CodeLLDB GDBと同じく、LLDBにも

        Rustプログラムのデバッグ辛すぎ問題 - Qiita
      • PandasからPolarsへ移行した方がいいのか - Qiita

        なぜこの記事を書くのか 皆さん、データ解析を行う際にどのようなライブラリを用いているでしょうか。 おそらく大半の人はpandasを使っているのではないでしょうか。 私もpandas使ってます。簡単だよね(´・ω・`) しかし、業務でバカクソでけえデータを読み込もうとしたときに、読み込み時間がとんでもなくかかったり、メモリ不足でそもそも読み込めもしないことが起きていました。 読み込みにメモリ食われすぎて他の作業ができずに待機した挙句、燃え尽きたかのようにノーパソのファンが止まると同時にメモリ不足のエラーが出たときには切れ散らかします。 (画像元:葬送のフリーレン公式Xアカウントのポストより) そんなこともあり、AWSなどのクラウドサービスでメモリに余裕を持たせるためにめちゃくちゃ良いインスタンスを使用していましたが、コストの問題で断念しました。 しかし、どうしても読み込みたいということもあり

          PandasからPolarsへ移行した方がいいのか - Qiita
        • プロダクトマネージャーの役割は「プロダクトマネジメントをすること」だけではないかも - Qiita

          はじめに 今回プロダクトマネージャーの動きを行っていく中で、新しい気づきがあったので記事としてまとめました。 プロダクトマネジメントをプロダクトマネージャーだけで行わない プロダクトマネジメントとは、プロダクトを成功に導く考えであり、これはプロダクト作りに関わる人であれば必ず必要になってくるものです。 つまり、プロダクトマネジメントとは特定の誰かが行うアクションではなく、チームや組織全体で行っていくものだと考えています。 プロダクトマネージャーの役割 プロダクトマネージャーの主の役割とは、もちろんプロダクトマネジメントを行うことです。 しかし、プロダクトマネジメントが行えている状態を組織として目指すためには 「プロダクトマネジメントをすること」だけではなく「プロダクトマネジメントができる組織づくり」も行う必要があると考えています。 そのためには、プロダクトマネージャーとして、「プロダクトマ

            プロダクトマネージャーの役割は「プロダクトマネジメントをすること」だけではないかも - Qiita
          • 半開区間の魅力 〜プログラミングでのスマートな区間の扱い方〜 - Qiita

            はじめに こんにちは、kenです。 今回は「プログラミングで区間を扱いたいときは半開区間が良いよ」という話をします。 もしかしたら有名な事実かもしれませんが、友達にこの話をしたら知らなかったという顔をされたので、自分の理解を深めるためにも記事にすることにしました。 数学で区間を扱う際は実数上で考えることが多いかと思いますが、この記事では区間を考える際、整数全体の集合上での区間を考えることにします。 また以下ではleft(またはl)とright(またはr)という文字式を使って説明しますが、このときleft $ \leq $ rightという関係性は常に満たされているものとします。 半開区間とは? 半開区間の前に、開区間と閉区間についておさらいしておきます。 開区間は(left,right)のように表され、両端点を含まないleftからrightまでの区間を表します。 一方で閉区間は[left,

              半開区間の魅力 〜プログラミングでのスマートな区間の扱い方〜 - Qiita
            • 技術Blogを毎月書くために心がけていること - Qiita

              はじめに こんにちは、京セラコミュニケーションシステム 西田(@kccs_hiromi-nishida)です。 いつもは技術的な内容を投稿していますが、今回は技術Blogを毎月書くために心がけていることを投稿しようと思います! 毎日投稿!とか毎週投稿!とかはちょっとハードルが高いな、けど継続して投稿したいと思っている方の一助になれば幸いです。 この記事の対象者 毎日Blog書くのはハードルが高いけど継続して投稿したいと思っている方 月に1本くらいはBlogを書きたいと思っている方 前置き 継続して書いているといっても月1記事程度なので、それほど参考になるかはわかりません。 そして、私に合った方法というだけで、皆さんに合うかはわかりません。 ただ、こんなやり方もあるよ!というのを見ていただき、少しでも誰かの参考になれば嬉しいです。 まずは記事の骨組みを作ろう! 記事を作るとき、いきなり上から

                技術Blogを毎月書くために心がけていること - Qiita
              • フリーランス歴20年の強強エンジニアからのガチコードレビュー集 - Qiita

                はじめに こんにちは、まつけんです。 早いもので、Webエンジニアになって、10ヶ月経とうとしています。 先月末、僕の職場に参画していたフリーランス歴20年の強強エンジニアCさんが卒業されました。(以降Cさんと称します) Cさんには、いつも迅速かつ丁寧なレビューをしていただいてました。 たまに補助で僕のプルリクにコミットを積んでもらうことなどもあり、お世話になった記憶が大半です。 今回はそんなCさんから受けたコードレビューから、今後どう改善していくのかアウトプットして学びを深めたいため、こちらの記事を書きました。 ペアプロしている時の参考になったこともおまけで書いてます。 ※こちらの記事に出てくるコードに関しては全てRubyです。実務で学んだことなので、出てくるコードは全てフィクションです。(実際のサービスのコードではないです) レビュー1: migrationファイルを追加する時「db:

                  フリーランス歴20年の強強エンジニアからのガチコードレビュー集 - Qiita
                • 保守・理解しやすいコードを書きたい! 〜VSCode拡張機能で循環的複雑度と戦う〜 - Qiita

                  参考: 循環的複雑度 ちなみに githubで最もやべー関数を発掘するという記事では、循環的複雑度が高い関数が紹介されています。 ものによってはリンク切れしてしまっていますが、最も複雑度が高いのはnode(JavaScript)のjo関数で5505だそうです。想像もつかない... どのようにすれば循環的複雑度を低く抑えられるのか? 計算方法から考えると、forやifによる分岐を減らしていくことが必要となります。 そのために、分岐の入るロジックを別関数として切り出し、1つの関数でやる事を絞り、分離することを理想として目指していきます。 とはいえ、いちいち複雑度の計算なんてしていられないですね。 そこで役に立つのが次のVSCode拡張機能です。 Code Metrics (VSCode拡張機能) この拡張機能は、TypeScriptやJavaScriptの関数・メソッドに循環的複雑度を表示して

                    保守・理解しやすいコードを書きたい! 〜VSCode拡張機能で循環的複雑度と戦う〜 - Qiita
                  • エンジニアのための十徳ナイフ「DevToys」がバージョン2になってクロスプラットフォームやCLI対応しさらに便利すぎる - Qiita

                    はじめに 以前紹介させていただき、2022年Qiitaのいいねランキング18位、ストックランキング20位を記録したこちらの記事の続編です! DevToysはリリース後しばらく定期的なバージョンアップが続けられていましたが、去年の7月からぱったりとアップデートが止まっている状態でした。 リポジトリや作者のXを見るとバージョン2の開発を行っているようで、今か今かと待ち続けていましたが数日前リリース予告のポストを見つけて、今日ついにプレリリースされました! ということで早速紹介していきます! DevToysとは DevToysは「開発者のためのスイスアーミーナイフ」の紹介文の通り、開発時によく使うツールを十徳ナイフのようにまとめたアプリとなっています。 JSONの整形とかエンコードデコードetc... プログラミングや保守運用の調査でやりがちな作業をいちいち変換サイトを探したり、エディター拡張機

                      エンジニアのための十徳ナイフ「DevToys」がバージョン2になってクロスプラットフォームやCLI対応しさらに便利すぎる - Qiita
                    • ベテランエンジニアも意外と知らない「パッケージ管理システムの仕組み」 - Qiita

                      この記事はNuco Advent Calendar 2023の16日目の記事です。 1. はじめに 世の中には、複雑な計算や面倒な分析を1行で済ませてくれるような便利なパッケージが数多くあります。それらをインストールするときには、以下のようなOSやプログラム言語に応じた簡単なコマンドを実行していることでしょう。 あなたがパッケージをインストールする裏で、それらのパッケージを管理するシステムが地獄のような処理を人知れず行なっていることはご存知でしたか? 本稿ではそんな縁の下の力持ちであるパッケージ管理システムが、一体どのような仕組みで動いているのか、その全貌を明らかにしていきたいと思います! 弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方

                        ベテランエンジニアも意外と知らない「パッケージ管理システムの仕組み」 - Qiita
                      • MVCモデルは意識した方がいい!!!私は地獄を見ました!!! - Qiita

                        目次 MVCモデルとは何者?? Modelとは Viewとは Controllerとは まとめ (MVCを意識せずに書いた私の経験談) MVCモデルとは何者?? MVC(Model-View-Controller)モデルは、ソフトウェア開発におけるデザインパターンの一つ。MVCはアプリケーションの内部の構造を整理し、役割を分離することで、保守性や拡張性を向上させることを目的としているもの。 Modelとは モデルはデータの管理や処理、データベースとのやり取りなどを行うもの。 バリテーションも行う。 Viewとは ビューはユーザに表示されるもの。 例えばHTMLやJSなど Controllerとは ユーザーの入力やアクションを受け取り、それに応じた処理(モデルのデータを取得・更新)をし、最終的な結果をビューに渡すもの。 言えばMVCモデルの頭。 まとめ(経験談) 初めは全く気にしないで書いて

                          MVCモデルは意識した方がいい!!!私は地獄を見ました!!! - Qiita
                        • メンバーレイヤーから 開発生産性向上 を始めるために - Qiita

                          はじめに 開発生産性をテーマとした技術イベントに出まくった結果、ある程度体系化された知識のおすそわけ記事です。 この記事を読めばわかること 開発生産性のトピックでよく語られている前提の部分 開発生産性を語るうえで大事なざっくりとした体系的な知識 開発生産性を測るためによく使われるメトリクス 雑に言えば、数字とってデータ駆動でPDCA回そうという話です。 この記事を読んだ後に、「開発生産性の議論 ナンモワカラン ...。」という人でも「まずはこの辺調べてみよう」ができる状態になればいいなと思って書いてます。 この記事を読んでもわからないこと 開発生産性の文脈におけるビジネスサイドとのコミュニケーションらへん 開発生産性の文脈における経営層とのコミュニケーションらへん 目次 開発生産性についての前提 開発生産性と言うクソデカワードの認識をそろえる 開発生産性には3つのレベルがあることを知る な

                            メンバーレイヤーから 開発生産性向上 を始めるために - Qiita
                          • より良い Git コミットメッセージを書こう - Qiita

                            より良いコミットメッセージを残すことは Git を使った開発をする上で重要なことです。優れたコミットメッセージは、それを読んだ人がコードを理解するのに大いに役立ちます。 では、どのようなメッセージが良いもので、どのようなメッセージが悪いものなのでしょうか? それについて掘り下げていきたいと思います。 基本的な Git Commit Message の書き方 詳しいところは、以下の3サイトを参照してください。特に「How to Write a Git Commit Message」には基本がすべて書かれています。 How to Write a Git Commit Message https://cbea.ms/git-commit/ Gitのコミットメッセージをうまく作成する7つのルール (「How to Write a Git Commit Message」の和訳記事) https://

                              より良い Git コミットメッセージを書こう - Qiita
                            • Amazon の 2段階認証 突破の噂についての仮説 と 2段階認証で意識すること【2FA/2SV/MFA】 - Qiita

                              Amazon の 2段階認証(2SV)が突破された? Amazon の 2段階認証(2SV) が突破されたのではないかという件が話題になっています。 私もこれについてはとても気になっており、できるだけ早く真相が解明されることを願っています。 そこで、ふと疑問に感じたことが、2SV は何をどの程度防いでくれるのかということです。 ここでは、Amazon を例に、いろんなことを考えていきたいと思います。 フィッシングの前には無力 まず、2SVの突破と言っても様々な手口があります。 徳丸先生の動画が示す通り、中継型フィッシングであれば、自ら正しい認証情報を入力することになるので、2SVを設定していようがいまいが突破されてしまいます。 フィッシングではなく、かつ、TOTPでも突破されたケースも 今回の被害者には、中間者攻撃やフィッシングを受ける状態になかったと仰っている方がいました。 なので、何か

                                Amazon の 2段階認証 突破の噂についての仮説 と 2段階認証で意識すること【2FA/2SV/MFA】 - Qiita
                              • HTML,CSS初めて1ヶ月ぐらいの人に知って欲しいCSS設計のこと - Qiita

                                「HTML,CSSだって難しいよ!」 初心者でも始めやすいって言ったの誰ですかね。最初は覚えるのに必死だし、少しわかるようになったかな?で始めたサイト制作(コーティング)もエラーだらけで頭を抱える日々。そんな修行を耐えているみなさんに知ってほしい、CSSの設計についてお話できたらなと思います。概念的なこと中心になりますので細かいことは下記の参考文書をご覧ください。 『インプレス社 Web制作者のためのCSS設計の教科書 モダンWeb開発に欠かせない「修正しやすいCSS」の設計手法 谷拓樹著 2022年発行第1版』 注意 作者自身もプログラミング初めて1ヶ月の超初心者です。HTML、CSSを使ってデザインカンプを元にサイトを作れるぐらいのレベルです。なので僕より歴長い人はスルーしてもらっていいです。まだ初めたばかりの人は追いついてきてください。僕は先に行ってます。 初め 壊れない完璧な設計を

                                  HTML,CSS初めて1ヶ月ぐらいの人に知って欲しいCSS設計のこと - Qiita
                                • rebase 教から脱退します - Qiita

                                  rebase で色々あったので、備忘録として簡単に書いていきます。 前提背景 開発作業中、元のブランチに変更があった場合、私は変更を取り込むために常に rebase を使用します。これを選ぶ主な理由は「コミットログが見やすく保たれるため」です。 Gitには同様のコマンドとして merge がありますが、これは変更を取り込む際にマージコミットを作成する点が異なります。私はマージコミットによってコミットログが煩雑になると感じています。 このような理由から、私はrebaseを積極的に使用しています。 何があったのか 簡単に言うと、レビュー中にブランチ元の変更があったので、 git rebase からの git push -f origin [ブランチ名] やったらレビュアーのコメントが吹き飛びました。 いやー、めっちゃ怒られたよね💦 原因 「レビュー中」という状況がまずかった。 コードを共有し

                                    rebase 教から脱退します - Qiita
                                  • ぬるいエンジニアの生態 - Qiita

                                    Qiitaで周りを見るとほんとすごい人ばっかりですよね。 しかし、凡百のエンジニアもいます。 私はとくに大手につとめているわけでもなく、さりとてイケイケスタートアップでもなく、AtCoderで色をもっているわけでもありません(※あったらいろいろはかどると思います)。 フツーなりに、「エンジニアになってみてよかった」、と思ってはいたりするので、ぬるいエンジニアの生態をご紹介します。 ロールモデルにはならないけどサンプルにはなるんじゃないかなー。 自己紹介 新卒から5年~くらい、北海道の中小企業につとめています。 北の大地にいると、「S県」などであらわされる匿名性がちょっとうらやましいです。 春からシーランド公爵(になる予定)! どうしてエンジニアを選んだのか 大学は地方国公立で、文系です。 完全に未経験からこの業界に入りました。 しいて言えばパソコンで遊ぶのが好きだったので、基本的な操作はで

                                      ぬるいエンジニアの生態 - Qiita
                                    • リーダー経験ゼロのエンジニアがチームのリーダーに挑戦して、自己組織化したチームに近づいた話 - Qiita

                                      1. はじめに 1年前の入社4年目の私は、開発チームのリーダーの経験はなく、また、スプリントの計画も立てたことが無いような状態でした。 そんな状態で、突然リーダーとしてプロジェクトの意思決定をすることになりました。 自分に務まるかとても不安で、恐怖すら感じていました。 実際にやってみると、これまでいかに作業者視点で物事を考えていたか、プロジェクト全体が見えていなかったのかを痛感しました。 現在では、マネージャーが休みや出張で不在の場合でも、私がいればうまくチームメンバと協力して開発を進めてくれると言っていただけるまでになりました。 それと同時に、より楽しく開発できるようになりました。 本記事では、私がリーダーとして振舞うことになった経緯と、その振る舞いの具体例を紹介します。 同じような開発者の方の参考や励みになればと思います。 2. チームの背景 1年前当時の私が所属しているチームは以下の

                                        リーダー経験ゼロのエンジニアがチームのリーダーに挑戦して、自己組織化したチームに近づいた話 - Qiita
                                      • 初心者大学生が作った機械学習ライブラリがGitHubでスター数300を超えた話 - Qiita

                                        この記事について この記事では、プログラミング初心者の大学生である(であった)私が試行錯誤しながらなんとかスター数300越えのOSSライブラリを作った過程をまとめたものです。ライブラリ自体はまだまだ発展中のためこの記事も適宜更新してく予定です。ライブラリ自体の詳細というよりも、自作OSSの認知度を上げで他の人に使ってもらうために有用そうな知見をまとめていこうと思います。 ライブラリの概要 今私が作っているのは、AIJackという、機械学習モデルがもつセキュリティ・プライバシー上の脆弱性についての各種攻撃・防御手法を実験するためのPythonツールです。既存のライブラリの多くは特定の種類の攻撃や防御に特化したものが多く、複数のタイプの攻撃・防御を組み合わせて実験するためにはいくつものライブラリを組み合わせる必要がありました。そこでAIJackでは、できる限り統一的なAPIで様々な攻撃・防御手

                                          初心者大学生が作った機械学習ライブラリがGitHubでスター数300を超えた話 - Qiita
                                        • ChatGPT Plus で使える Code Interpreter でのグラフ描画と PowerPoint のスライド化(ダウンロードできるファイルの生成) - Qiita

                                          ChatGPT Plus で使える Code Interpreter でのグラフ描画と PowerPoint のスライド化(ダウンロードできるファイルの生成)PythonChatGPTChatGPTPlusGPT-4CodeInterpreter はじめに 先ほど、ChatGPT の Code Interpreter を軽く試した流れ(+関連情報)を記事にしたのですが、その後に試したことも記事にしてみます。 ●ChatGPT Plusユーザー向けの Code Interpreter で QRコード生成を試す!(Pythonの qrcode パッケージを使用した処理) - Qiita https://qiita.com/youtoy/items/89a944fc9125ee6b8426 この記事で紹介するのは、グラフ描画と、ダウンロードが可能な PowerPoint のファイルの生成です。

                                            ChatGPT Plus で使える Code Interpreter でのグラフ描画と PowerPoint のスライド化(ダウンロードできるファイルの生成) - Qiita
                                          • AWSの生成AIで社内文書検索! Bedrockのナレッジベースで簡単にRAGアプリを作ってみよう - Qiita

                                            この記事について AWSコミュニティ最大級のイベント「JAWS DAYS 2024」内のワークショップにて実施したハンズオンコンテンツとなります。 イベントでは口頭で説明しながら実施しますが、この記事さえ読めば誰でも体験できるように作っていますので、当日イベントにお越しになれない方もぜひご活用ください。(スムーズにいけば30分程度で完了します) 本ハンズオンの実施にあたり、多少の課金(数十円〜数百円以内)が発生することをご了承ください。実施後には忘れず不要なリソースの削除をお願いします。 なお、Bedrockのモデル呼び出し料金はAmazon製のTitanシリーズを除き、マーケットプレイス扱いとなるためAWSクレジット(クーポン)の適用範囲外となります。 ※事前にAWSアカウントの作成をお願いします。クレジットカード情報が必要です。ログイン用のEメールアドレスとパスワードをお忘れなく! 0

                                              AWSの生成AIで社内文書検索! Bedrockのナレッジベースで簡単にRAGアプリを作ってみよう - Qiita
                                            • 【サイバーセキュリティ】SOCによる24時間365日監視は本当に必要なのか再考してみる - Qiita

                                              はじめに 近年、サイバーセキュリティに対する意識の高まりを感じている。 国会では「セキュリティ・クリアランス制度」なるものの検討が進んでおり、誰もが知っているような上場企業であれば当たり前のようにサイバーセキュリティ対策を専門で行う部門が設置されるようになってきた。 筆者が実際にクライアントと会話していても、以前のように「サイバーセキュリティ対策の必要性がわからない」というケースは減ってきており、「サイバーセキュリティ対策をとりあえずやりたい」という経営層が増えているようにも感じる。 そして、需要が高まれば供給側の企業も増えるのが資本主義の性(さが)である。 大手SIerやコンサルティング会社はこぞってサイバーセキュリティ分野への増員に力を入れている。 サイバーセキュリティ分野を得意としたベンチャー企業の上場事例も多数見受けられる。 そんな中、近年急速に拡大しているビジネスが24時間365

                                                【サイバーセキュリティ】SOCによる24時間365日監視は本当に必要なのか再考してみる - Qiita
                                              • 本当のAWS基礎 昭和~平成~令和の時代の変遷システムの変化と今昔物語 - Qiita

                                                内容 社内でAWS知らない人でもこれだけは覚えていてほしいという動画を作成して欲しいとリクエストあり。その内容を資料化したものです。小学生の子供に説明してみましたがになんとなくAWSが分かったと言っていたので今回は結構分かりやすくまとめられたと思います。 システムを構築する時 システムを構築する際、サーバやネットワークなどのインフラが必要になります。昭和の時代は物理サーバを買ってきてラックマウントしてネットワークに接続してと物理的な作業が多く発生していました。 その後、物理サーバの上に仮想的なサーバを作成できる仮想化技術の発展により、仮想サーバが主流となりました。最初に物理サーバを用意して、仮想化基盤を構築する必要があります。仮想化基盤構築後は、新しいシステムを作りたい場合はすぐに仮想サーバの準備を行うことができ、物理環境の時と比較すると大きな進展がありました。 仮想化基盤を自社で構築する

                                                  本当のAWS基礎 昭和~平成~令和の時代の変遷システムの変化と今昔物語 - Qiita
                                                • 優秀と噂なCohere社のCommand R+でRAGチャットボットを簡単に構築して体験しよう! - Qiita

                                                  1. はじめに Cohere社が最近リリースしたLLMのCommand R+がGPT4に迫る性能を発揮していたり、RAG利用での性能で話題となっています。 そのCommand R+でRAGを体験できるチャットアプリの実装がLightningAIにてチュートリアルが公開(CC-BY-4.0ライセンスとして)されています。 これを身近な環境で動かしてみたいと思います。 このチャットボットでCohere社の以下のモデルが使われています LLM: Command R+ Embed: embed-english-v3.0 / embed-multilingual-v3.0 Reranker: rerank-english-v3.0 / rerank-multilingual-v3.0 以下の動画のようにブラウザでPDFファイルをアップロードしてチャットで問い合わせができます。 2. 必要なもの 以下

                                                    優秀と噂なCohere社のCommand R+でRAGチャットボットを簡単に構築して体験しよう! - Qiita
                                                  • Azureで生成AIアプリ開発に入門したい人に朗報! 鉄板の解説書が出ました✌️ - Qiita

                                                    2023年10月からの景品表示法の改正に伴う注記:この記事は技術評論社様より献本をいただき、発売前の書籍レビューをするものです。 来週1/24にMicrosoft社のAzureクラウドで生成AIアプリケーションを開発する人向けの入門書籍が発売されます。 幸運なことに、著者の一人である吉田真吾さんのご厚意で発売前献本の機会に預かりましたので、先行レビューということでみなさんに紹介させていただきます! Azure OpenAI ServiceではじめるChatGPT/LLMシステム構築入門 永田 祥平 (著), 伊藤 駿汰 (著), 宮田 大士 (著), 立脇 裕太 (著), 花ケ﨑 伸祐 (著), 蒲生 弘郷 (著), 吉田 真吾 (著) - 技術評論者より2024/1/24発売予定 通称「ドーナツ本」です。おそらくOpenAIのロゴが某ドーナツ屋さんのフレンチ●ルーラーに酷似していることか

                                                      Azureで生成AIアプリ開発に入門したい人に朗報! 鉄板の解説書が出ました✌️ - Qiita
                                                    • 作りたいものは作り始める前に今すぐにデプロイしよう - Qiita

                                                      株式会社ゆめみの23卒 Advent Calendar 2023 の 22日目の記事を書きました はじめに 今見ているあなたは趣味で行った開発の中でデプロイしユーザーに使ってもらった経験はありますか? 「趣味で開発してたものはあるが、実際にデプロイしたことがない」「デプロイしたものもあるが、デプロイできるまでやり通すことの方が珍しい」という方がほとんどだと思います。 また趣味で行っている開発についての話題になると、「やる気があるうちにデプロイした方が良いよね~」みたいな話題になると思うのですが、そう思っていながらも実際に意識して取り組む方はなかなかいないと思います。 今年の趣味開発を考えている時に Discord で使用できる Bot を作成して運用したいな~と思っていたのですが、私も趣味で開発していたものを途中でやめてしまうことがほとんどだったので、今回の開発はまずデプロイという事を意識

                                                        作りたいものは作り始める前に今すぐにデプロイしよう - Qiita
                                                      • Rust と OS の知識 0 からはじめるRustで始める自作組込みOS入門 - 前半(スケジューラの実装まで) - Qiita

                                                        きっかけ・読んでいく本 うさねこらーじの Discord サーバーで、いろいろな先輩たちに技術のことを教えてもらっています。 https://discord.gg/RMq7e5qbQj このなかで、著者の garasubo さんにサポートしてもらいながら以下の本の内容を実装しているのですが、 Rust の知識も OS の知識もない私にとっては内容がかなり高度なので、補助のためにこのブログを作成しています。 Rustで始める自作組込みOS入門 https://amzn.asia/d/ebuOUM1 ぜひこの本を読みながらこのブログを参照していただけると嬉しいです。 第 2 章 ベアメタルで Hello World 単語のかみくだいた説明 ベアメタルプログラミング OSのない環境で実行するためのプログラムを書くことです。この環境下では CPU ごとに決まった動作(たとえば、決まったアドレスにあ

                                                          Rust と OS の知識 0 からはじめるRustで始める自作組込みOS入門 - 前半(スケジューラの実装まで) - Qiita
                                                        • MacでLocalでLLMを走らせるならLM Studioが楽。 - Qiita

                                                          MacでLocal LLM そこそこRAMの大きなMacbook proが手に入ったので、ローカルでのLLM実行を試すことにした。 しかし、MacのGPUを有効化させることのできるローカル環境を整えるまでに、思いのほか苦労したので、メモとして記しておく。 とりあえず、以下の3つの選択肢を試した。 open interpreter text-generation-webui LM Studio で、結局のところ現状まともに動作してくれたのは、LM Studioだけだったのだが、それぞれの所感について示しておく。 1: open interpreter open interpreterそのもの説明については、Qiitaにもいくらでも記事があるのでここでは省略する。 例えば以下の記事など。 https://qiita.com/ot12/items/d2672144b914cb6f252f htt

                                                            MacでLocalでLLMを走らせるならLM Studioが楽。 - Qiita
                                                          • 【超初心者向け】Pythonのテストの書き方(pytest, unittest) - Qiita

                                                            概要 pythonでテストコードを書くときがありますが、(筆者のように)超初心者からすると難しい用語や書き方がたくさん並んでいてハードルが高いです。 テストコードの入口となる最低限(最低限過ぎるかもしれませんが)の書き方を備忘を兼ねて書きます。 pythonでのテストコードを書く時のライブラリの種類 筆者が簡単に調べたところ、2つのライブラリがよく使われているようです。 unittest : python標準ライブラリ。インストールが必要ない。pytestと比較すると、柔軟なテストケースを書きづらい。 pytest : サードパーティ製のライブラリ。インストールの必要がある。柔軟なテストケースが書ける。pythonのテストコードを書く時のデファクトスタンダートになりつつある模様(これが本当かは確認していないですが、そういう記述を見かけることが多かったです)。 筆者個人としては、以下の3つの

                                                              【超初心者向け】Pythonのテストの書き方(pytest, unittest) - Qiita
                                                            • ダイソーの在庫検索APIを叩く - Qiita

                                                              const md5 = text => fetch('https://md5sum.deno.dev/' + text).then(r=>r.text()) // 店舗コード const str_cd = '002870' // yyyyMMdd:hhmmss sources\com\locationvalue\ma2\extensions\ScreenExtensionsKt.java:78 const request_datetime = new Date().toLocaleString('sv').replaceAll(/-|:/g, '').replace(' ', ':') // ジャン const sku_cd = ['4549131971149'] await fetch('https://zaikoapp.plat.daisojapan.com/api_get_store

                                                                ダイソーの在庫検索APIを叩く - Qiita
                                                              • エラーが出たら喜べ。エラーをちゃんと出せ。 - Qiita

                                                                どうもエラーを出すもしくはエラーが出るのが怖いという人がいるみたい。例えば改修を行うときに既存部分でエラーが出ないことを最優先にして増築を行いいびつな構造を生み出すとか、単純に例外を全然使わないとか。エラーが出ると、「うわ、エラーになった。手間かけさせやがって面倒だなぁ…」みたいな感覚があって、とにかく自分がコードを書くときも一切例外を投げないというスタンスをとりがちなのかもしれない。 私はここで、適切にエラーが出てくれるのはむしろ喜ばしいことであり、自分がコードを書くときも積極的にエラーを出すようにすべきだ、という主張をする。 関数定義のドキュメンテーションの一部 ある関数の中身で一番最初に書くべき処理は何か、それは引数のチェックをして条件を満たさなければエラーを出すことである。例えば文字列は特定の形式になってなければならないとか、数値に最大値最小値があるとか、これらは関数の入力の前提条

                                                                  エラーが出たら喜べ。エラーをちゃんと出せ。 - Qiita
                                                                • 正規表現ミスって一晩誰もサービスにログインできなくしてしまった話 - Qiita

                                                                  はじめに この記事は、本番環境などでやらかしちゃった人 Advent Calendar 2023の11日目です。 どうも、@_tinojiと申します。実に4年ぶりにアドベントカレンダーに参加しました。 正規表現で1文字消し忘れて、なんぴとたりともサービスにログインできない状態にしてしまったという話をします。正規表現にはまじで気をつけましょうという教訓になれば・・・ 犠牲となったログイン画面 とあるtoBなWebサービスを開発していたときの話です。法人のユーザーが使う管理画面的なイメージです。 当然ログイン機能があって、至って普通なログインなのですが1つだけ特徴がありまして、ログイン画面のURLをアカウントごとに変えています。https://example.com/<uuid>/loginみたいな感じですね。 あまり見ない形式ではありつつも、個別のUUIDを特定されない限りログイン画面に対し

                                                                    正規表現ミスって一晩誰もサービスにログインできなくしてしまった話 - Qiita
                                                                  • まるで詩のような日本語で書いたプログラム - 実際に動きます - Qiita

                                                                    はじめに 日本語プログラミングの議論が続いていますが気分転換にこんな奇抜なプログラムはどうでしょうか。 経緯 木村 明さん 1 の傑作かつ芸術的な日本語プログラムに「ポエム(Poem)」があります。 1986年に作られました。当時はPC-9801やFMRなどMS-DOS環境のPCが全盛で、このプログラムもPC-9801向けに書かれていました。プログラムは大変面白いのですが、そのような事情で現在では実際に動かすことはできず長いこと眠っていました。 一方で、Mindのほうは長らく開発していたGUI版が動き始め、Poemが使うグラフィック描画もできるようになったことから、Poem を実際に動かしてみたくなりました。9801グラフィックの互換処理を差し込むことでなんとか動かすことができました。動いたときは「ああ、こんなプログラムだったな」とちょっと感動しました。 公開について 氏の許可を得てソース

                                                                      まるで詩のような日本語で書いたプログラム - 実際に動きます - Qiita
                                                                    • 【TypeScript】カリー化・部分適用は便利だよ! - Qiita

                                                                      【TypeScript】カリー化・部分適用は便利だよ! カリー化・部分適用利用してますか? 調べたけど「関数を第一級オブジェクトとしてー」とか「関数を部分適用してー」とか説明が講義っぽくて途中で諦めた方も多いと思います。自分もそうでした。 また、知ってるけどどんな時に使うべきか迷って使ってないという方もいると思います。 具体的なコードを交えながら、カリー化・部分適用について、噛み砕いて説明していきたいと思います。 なお、すべてのTypeScriptのサンプルコードは実際に動かして確認することができますので、TypeScript Playgroundなどで是非お試しください。 カリー化と部分適用 まずはカリー化と部分適用の定義をば。 カリー化 (currying, カリー化された=curried) とは、複数の引数をとる関数を、引数が「もとの関数の最初の引数」で戻り値が「もとの関数の残りの引

                                                                        【TypeScript】カリー化・部分適用は便利だよ! - Qiita
                                                                      • Terraform職人のためのOpenTofu入門 - Qiita

                                                                        この記事は クラウドワークス Advent Calendar 2023 シリーズ1 の 4日目の記事です。 はじめに 「父さんな、Terraform職人やめてお豆腐職人で食っていこうと思うんだ」と言いたいだけの @minamijoyo です。 2023年8月HashiCorpはこれまでMPL2のOSSライセンスで公開していた主要製品をBSL(Business Source License)に変更することを発表し、Terraformはv1.6.0からOSSではなくなりました。 このライセンス変更を受けて、OSS版のTerraformを求める人たちで、MPL2時点のコードベースからforkしたOpenTofuの開発が進められています。 HashiCorpのBSLは、実質的に競合他社の商用利用に制限をかけたもので、ほとんどの一般的なユーザに直接的な追加の制限はありませんが、間接的にTerrafo

                                                                          Terraform職人のためのOpenTofu入門 - Qiita
                                                                        • 現場で必要になるswaggerの知識 - Qiita

                                                                          前回は「今日から始めるswagger入門」という最低限書けるようになっておいた方が良い物をこちらの記事で解説させてもらいました 今回は、筆者が4〜5年ほど現場で見てきたswaggerを元に、現場で必要になるswaggerの知識をまとめましたので、ぜひご覧になっていただけると嬉しいです! タグ付け pathsに書かれている各APIendpointをタグ付けしてグルーピングする目的で使用されます 現場では大量のAPIendpointを設計していくこととなるので、多くなってくると大変見辛くなってきます それをグルーピングすることにより見やすくしようということです openapi: 3.0.3 info: title: test-api version: 0.0.1 # ここから tags: - name: user description: ユーザー情報 # ここまで paths: /users

                                                                            現場で必要になるswaggerの知識 - Qiita
                                                                          • Cursorエディタで開発を爆速化しよう! - Qiita

                                                                            初めに 最近Visual Studio Codeの代わりとなりえるCursorというエディタが 話題になりつつあります! AI搭載機能がついているということで、好奇心だけが取り柄の私は 早速触ってみました。 結果開発の効率がかなり上がるのでは? と思い記事にしてみました! Cursorとは? Cusorはマイクロソフトが開発したエディタツールであり、 Visual Studio Codeが基になっています(VScodeのフォーク)。 また公式には、下記の記載があります。。 AI とのペアプログラミング用に設計されたエディターでソフトウェアをより迅速に構築 んん? AIとペアプロという意味深な記載が。。 もう少し特徴を具体的にします。 Cursorの特徴 ・・・少しだけイメージできてきたでしょうか? ChatGPTを利用している方も多いかとは思いますが、エディタで使えると 開発効率が上がりそ

                                                                              Cursorエディタで開発を爆速化しよう! - Qiita
                                                                            • Windows 11 では 7z をコマンドラインでも圧縮・解凍できるようになっていた - Qiita

                                                                              Windows 11 23H2 以降、エクスプローラーが 7z、tar などの解凍に対応しました。さらに、Build 25992 では圧縮も可能となったようです。7-zip を追加インストールしなくてもこれらのアーカイブを取り扱えるのは嬉しいですよね。 1 一方で、PowerShell の Expand-Archive コマンドレットは拡張されておらず、ZIP 形式の解凍しかできません。 GAC Version Location --- ------- -------- False v4.0.30319 C:\Program Files\WindowsApps\Microsoft.PowerShell_7.… OperationStopped: File 'E:\test\archive.7z' does not appear to be a valid zip archive. せっかく

                                                                                Windows 11 では 7z をコマンドラインでも圧縮・解凍できるようになっていた - Qiita
                                                                              • WebAssembly の過去・現在・未来 - Qiita

                                                                                はじめに WebAssembly (略して Wasm) では WASI や WIT、 Component Model など様々な仕様があります。 それぞれが登場した背景、モチベーションなどを理解することでなんとなく概要を掴んでいくことができるのではないかと考えたため、過去・現在・未来と時間軸で整理してみました。 まず Wasm とその特徴に関して簡単に紹介した後、Wasm の過去として生まれた背景やモチベーションを紹介します。 そして現在の Wasm がなぜ注目を集めているのか、そして現在策定中の仕様と目指している未来について紹介します。 WebAssembly とはなにか WebAssembly はスタックベースの仮想マシン用バイナリ命令フォーマットの仕様です。Wasm と略されます。 Wasm ファイル(Wasm モジュール)は一般に .wasm という拡張子で表されるバイナリファイル

                                                                                  WebAssembly の過去・現在・未来 - Qiita
                                                                                • チームで開発するならDev Containersで環境構築工程をスキップしませんか? - Qiita

                                                                                  読み飛ばしてください みなさまどうも。 限界派遣SESと言われて心が折れるnikawamikanです。 最近、学生さんと一緒になんやかんや開発することがあり、その中で使ってみてよかった技術の中にDev Cointanersと言われる技術があります。 VSCode限定ではありますが、開発環境の差異を可能な限り埋めてくれるスゴイやつです。 さらに言えば新たにチームに参加するメンバーに開発環境の構築を逐一説明する必要もなくなるので、入れ替わりの激しい限界派遣SESにこそ使う技術です。 本題 前提として以下の環境はインストールされているものとします。 Docker docker compose (WindowsやMacの場合DockerDesktopをインストールしているのでインストール不要のはずです) VSCode OSは上記がインストールできるのであればわりとなんでもOKだと思います(例外はど

                                                                                    チームで開発するならDev Containersで環境構築工程をスキップしませんか? - Qiita