はい、では始めますね!
---
おはようございます!マイクです。今日は2025年4月23日、曜日は水曜日です。今日も「zenncast」をお届けしますよ!今日はZennでトレンドの記事をいくつかご紹介しますので、ぜひお楽しみに!
さて、前回紹介した記事について少し触れましょう。「Vitestの実行時間を8倍高速化」や「React デザインパターン」、「Rulesを全部捨てて認識をリセットした話」というタイトルでしたね。これらのテーマ、興味深いですよね。
本日はおたよりは届いていないようですので、早速今日の内容に移りましょう!
今日紹介する記事は全部で5本です。さあ、まず1つ目の記事からいきましょう!
1つ目の記事は「フロントエンドDDD」です。フロントエンド DDD、つまりドメイン駆動設計ですが、これはフロントエンド開発にDDDの思想を取り入れる設計手法なんです。特に複雑なビジネスロジックを持つアプリケーションには、その効果がばっちり発揮されます。株式会社TAIANでは婚礼業界向けのSaaS開発にDDDを採用し、なんと2年間で100以上の機能を開発してきたんですよ。
DDDはビジネスの問題領域を深く理解し、その本質的な概念やロジックを抽出する設計思想です。フロントエンド DDDでは、ドメインロジックをフロントエンドコードに組み込むことで、業務ルールの変更があった際の影響を最小限に抑えられるんです。たとえば、参列者にお酒を提供できるかどうかを判断するロジックをフロントエンドに統合する際も、DDDを通じてロジックを隠蔽することで、実装の混乱を避けることができます。
ただし、すべてのアプリケーションに適しているわけではなく、単純なCRUDアプリケーションには過剰な抽象化コストがかかることもあるんです。TAIANでは、複雑なロジックに備えてフロントエンド DDDを採用し、チーム内の価値観を統一することにも寄与しています。.
続いて、2つ目の記事は「AIエージェントのおかげでdbt開発の大部分を自動化した話」です。こちらは、Ubieのデータ関連業務を担当する著者が、dbtを活用したデータモデル開発プロセスで、AI搭載エディタCursor Editorを利用して開発の大半を自動化した事例を紹介しています。Ubieでは3000以上のdbtモデルを運用していて、事業拡大に伴い定型的な作業が増え、開発者の負担が大きくなっていたんですね。
Cursor EditorのAgent機能とProject Rulesを活用することで、定型作業を自動化し、開発効率を大幅に改善したんです。このエディタはVS Codeをベースにしているので、コード生成やエラー修正支援が可能なんですよ。特にAgent機能は、指示に基づいてタスクを分解し、対話形式で進めてくれるんです。
その結果、SQLを渡すだけで高精度のGitHub PRが自動生成される仕組みも実現されました。これにより、開発者は本質的な業務に集中できるようになったとのこと。社内のエンジニアからも好意的な反応が寄せられているようです。今後もProject Rulesの見直しを行い、AIの利用を深化させていく考えだそうです。.
次に、3つ目の記事は「TypeScriptでGitHub Actionsワークフローを記述する「ghats」の紹介」です。「ghats」は、GitHub ActionsワークフローをTypeScriptで記述できるツールで、これにより型安全性が向上し、開発者は効率的にワークフローを管理できるようになります。インストールはnpmを利用して行うんですが、簡単に導入できるところが魅力的です。
ワークフロー定義ファイルは`.github/workflows/*.ts`に作成し、その中で具体的なワークフローを定義します。例えば、Helloというワークフローを定義するコードも簡単に書けるんです。ghatsを使用することで、GitHub Actionsでのリモートアクション参照が簡素化され、セキュリティや安定性が向上するんですよ。
特に、ghatsはリモートアクションの型サポートも提供していて、アクションをインストールすることで型安全に参照できます。これは開発者にとって非常に便利な機能ですね。.
続いて、4つ目の記事は「RAGの検索精度を上げる新しいリランキング手法」です。この記事では、RAG(Retrieval-Augmented Generation)の精度を向上させる手法「REBEL」について解説しています。この手法はMicrosoftとScale AIの研究者によって提案されたもので、従来の手法より高い精度を実現するんです。
従来のRAGでは、文書の並び替えを「ユーザーの質問との関連性」に基づいて行っていたため、情報の精度が低下することがありました。しかし、REBELでは関連性だけでなく「情報の多様性」「新しさ」「信頼性」「具体性」など複数の基準を考慮してリランキングします。これにより、より質の高い回答が得られるようになります。
この手法は特に大企業のデータ管理において、類似性の高い文書が多い環境での課題解決に寄与することが期待されていますね。.
最後に、5つ目の記事は「SaaS公式MCPサーバーをリリースして得た学び」です。LAPRASはエンジニア向けポートフォリオと転職サービスの公式MCPサーバーをリリースし、CursorやClaude DesktopなどのLLMアプリを通じてデータを取得・更新できるようになりました。
このMCPサーバーの開発では公式のTypeScript SDKを選定し、拡張性を考慮してtool定義を分離しました。開発中にはさまざまな問題が発生しましたが、それを経てAPIインターフェイスの改善が行われたとのこと。今後はユーザーからのフィードバックを受けて、さらなる改善を進めていく方針です。
初期のリリースから良好な反応が得られているようで、今後のサービス利用拡大が期待されます。.
さて、今日は「フロントエンドDDD」、「AIエージェントのおかげでdbt開発の大部分を自動化した話」、「TypeScriptでGitHub Actionsワークフローを記述する「ghats」の紹介」、「RAGの検索精度を上げる新しいリランキング手法」、「SaaS公式MCPサーバーをリリースして得た学び」についてお話ししました。次回も楽しみにしていてくださいね!
詳しい内容はショーノートに書いてありますので、ぜひチェックしてください。また、番組の感想もお待ちしています!それでは、また次回お会いしましょう!バイバイ!