はい、マイクです!皆さん、おはようございます!今日は2025年5月4日、日曜日ですね。今日も「zenncast」をお楽しみいただきありがとうございます!さて、今日はZennでトレンドの記事をいくつかご紹介しますよ。
まずは、前回紹介した記事ですが、いくつかの興味深いタイトルがありましたね。「副作用」、「Cloudflare Workers」、「Unity」など、技術系の記事が盛りだくさんでした!興味のある方はぜひチェックしてみてくださいね。
さて、今日の内容は全部で5本の記事を紹介します。早速、最初の記事から行きましょう!
こちらは「話題のDeepWikiをセルフホスト?Open DeepWikiを試してみた」という記事です。最近注目されている「DeepWiki」は、GitHubのコードを解析して自動的にWikiを作成するサービスですが、無料プランにはいくつかの制限があります。そこで、OSSで同様の機能を実現した「Open DeepWiki」にスポットを当ててみました。
Open DeepWikiは、ReactやNext.js、Tailwind CSSを使ったフロントエンドと、PythonやFastAPIを使ったバックエンドで構成されています。使用するにはGoogle GeminiとOpenAIのAPIキーが必要で、ドキュメント生成やコード埋め込みに使います。セットアップはリポジトリのクローンから始まり、Wiki生成には対象リポジトリのURLを入力して「Generate Wiki」を実行しますが、エラーが出た場合は権限の確認が必要です。
生成されたWikiは表示されるものの、本家DeepWikiに比べると情報量が少なく、ドキュメントとソースコードの関連が明示されていないのが少し不便でした。しかし、個人開発者や小規模チームにとっては、月額20ドルを節約できるのは大きな魅力ですね。今後のコミュニティの発展に期待したいところです。
続いて、2つ目の記事は「Microsoft Forms良いじゃん!となったポイントをGoogle Formsと比較してみる」です。この記事では、Microsoft FormsとGoogle Formsを比較し、Microsoft Formsの優れた点を紹介しています。著者は「もりはや」さんで、実際に社内アンケートでMicrosoft Formsを利用しているそうです。
比較には同じ内容のアンケートを使い、入力画面や集計画面の違いが詳しく解説されています。Microsoft Formsは美しいデザインと多機能で、特に集計情報が豊富で便利です。一方、Google Formsはシンプルさが魅力ですが、機能面ではMicrosoft Formsに軍配が上がるようです。
さらに、Microsoft FormsにはExcelやPower Automateとの連携が強力で、業務の効率化に役立つことが期待されています。著者は両方のサービスを状況に応じて使い分ける意向を示していますが、実際に使ってみるとその違いがよくわかりますね。
さて、3つ目の記事は「Turborepoで構築するmonorepo構成」です。こちらは、株式会社MacbeePlanetのエンジニアによるもので、Turborepoを使ったmonorepo環境の構築手順が詳しく説明されています。monorepoは複数のプロジェクトを一つのリポジトリで管理する手法で、APIの変更に応じた更新が容易になります。
使用する技術スタックにはReact、Next.js、Hono、DrizzleORM、PostgreSQLなどがあり、Turborepoの高速ビルドシステムによりビルド時間を短縮できます。プロジェクトのディレクトリ構成も整理され、アプリケーションやパッケージが見やすくなっています。
具体的なセットアップ手順には、アプリの作成や環境変数の設定が含まれ、APIの実装ではTODOのCRUD操作を行います。フロントエンドではNext.jsのServer Actionsを活用し、非常に参考になる内容です。モノレポ化を考えているエンジニアの方には特におすすめですよ!
。...。...。...。
続いて、4つ目の記事は「AI Agentの評価指標まとめ」です。LLMベースのエージェントの開発が進む中、その評価が重要視されています。この記事では、エージェントに求められる能力とその評価指標についてまとめています。
エージェントは「Planning / Reasoning」「Reflection」「Tool Use」「Memory」「Profile」という基本的な能力を持ち、これを評価するためのベンチマークが存在します。各能力に応じた評価方法が具体的に説明されており、特に計画・推論能力やReflection能力の評価について詳しく解説されています。
実際のユースケースでは、AIMEやSWE-benchなどの評価指標が用いられ、エージェントの実用性や信頼性を高めるために重要です。これからのAI技術の発展において、評価指標が果たす役割はますます大きくなるでしょうね。
そして最後、5つ目の記事「グダグダなパフォーマンス改善からの学び」。こちらでは、ブルーモ証券のエンジニアがAPIの高速化に挑戦した際の苦労を語っています。主な課題は描画速度の遅さで、目標はレスポンス時間を大幅に短縮することでした。
改善作業はN+1問題の解消から始まりましたが、効果測定を行わなかったため実感できず、計測の重要性を学ぶことに。Traceログの追加によってボトルネックを特定するも、適切な計測ツールの使用が大切だと再確認しました。
最終的には、Goのプロファイリングツールを使ってGCのオーバーヘッドを特定し、パフォーマンスを向上させることに成功しました。得られた教訓は、計測の重要性、適切なツールの使用、データ分析による改善点特定、そしてGCの影響を考慮することです。これはエンジニアとして大切な教訓ですね。
それでは、今日はここまで!今日ご紹介した記事をおさらいすると、DeepWikiやMicrosoft Forms、Turborepo、AI Agentの評価、そしてAPIのパフォーマンス改善についてでしたね。次回の放送を楽しみにしています!詳しい内容はショーノートに書いてありますので、ぜひそちらもご覧ください。番組の感想もお待ちしています!それでは、またお会いしましょう!さようなら!