Technology Radar 2024年10月版を読む
Technology RadarのOct. 2024が出ていたので、気になったブリップについてまとめる。全般的に、生成AI関連とRustのツールのブリップが多かった。
TestcontainersはDBのテストに使っているぐらいで、どこまでできるのかを把握していないので、ちゃんと調べたい。Instructorは実際に動かして試しておきたい。Unleashは今のプロジェクトに導入させたい。
書籍に関しては
- Continuous Deployment
- Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software
を読んでおきたい。
2. Component testing
Adopt
コンポーネントテストをメモリ内で実行するためにjsdomのようなライブラリを使用することを推奨。
3. Continuous deployment
Adopt
継続的デプロイは、ソフトウェアデリバリーの他の分野で高いレベルの成熟度を必要とするプラクティスであり、すべてのチームに適しているわけではない。
Valentina Servileの最近の著書であるContinuous Deploymentは、組織でこのプラクティスを実装するための包括的なガイドを提供。似たような書籍に入門 継続的デリバリーがある。
4. Retrieval-augmented generation (RAG)
Adopt
再ランク付けとハイブリッド検索が行われている。Elasticsearch Relevance Engine(https://www.elastic.co/jp/elasticsearch/elasticsearch-relevance-engine)などの検索ツールや、LLMの助けを借りて作成されたナレッジグラフを利用するGraphRAGなどのアプローチがある。
5. Domain storytelling
Trial
ドメインストーリーテリングは、ビジネスの専門家がビジネスのアクティビティを説明するように促されるファシリテーション手法。また、DDDのより包括的なアプローチとしては、DDDを始めるために使う手法であるイベントストーミングと組み合わせることもできる。書籍はDomain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Softwareがある。
7. Function calling with LLMs
Trial
OpenAIのGPTシリーズのようなモデルは関数呼び出しをサポートしており、Gorillaのような微調整されたモデルは、自然言語命令から実行可能なAPI呼び出しを生成する精度と一貫性を高めるように特別に設計されている。
10. Small language models
Trial
適切なコンテキストで正しく設定すれば、SLMはLLMと同等かそれ以上のパフォーマンスを発揮し、そのサイズによってエッジデバイスでの実行が可能になる。
- GoogleのGemini Nano
- MicrosoftのPhi-3
17. Observability 2.0
Assess
単一のデータストア内の構造化されたカーディナリティの高いイベントデータを活用する統一されたアプローチへの移行
19. Structured output from LLMs
Assess
OpenAIは構造化出力をサポートするようになり、開発者はJSON Schema、pydantic、またはZodオブジェクトを指定してモデルの応答を制約できるようになった。
33. FoundationDB
Assess
FoundationDBのコアは、厳密なシリアル化トランザクションを提供する分散キーバリューストア。
34. Golem
Assess
Durable Computingは、明示的ステートマシンのアーキテクチャスタイルを使用して、サーバレスサーバのメモリを永続化し、フォールトトレランスとリカバリを向上。Golemは、この動きの1つ。この概念は、長時間実行されるマイクロサービスのサガやAlエージェントオーケストレーションでの長時間実行ワークフローなど、一部のシナリオで役立つ。
41. Unblocked
Assess
Unblocked。アプリケーションライフサイクル管理 (ALM) およびコラボレーションツールと統合して、チームがコードベースと関連リソースを理解するのに役立つ。日本語に対応しているかは不明。
45. Visual regression testing tools
Adopt
ApplitoolsやPercyなどのいくつかの商用ツールは、視覚回帰テストでAlを使用していると主張。チームの1つは、Applitools Eyesを広範囲に使用し、結果に満足。
50. Devbox
Trial
Devboxは、仮想マシンやコンテナーを使用せずにNixパッケージマネージャーを活用して、再現可能なプロジェクトごとのローカル開発環境を作成するための使いやすいインターフェイスを提供するコマンドラインツール
51. Difftastic
Trial
Difftasticは、構文を認識する方法でコードファイル間の違いを強調表示するツール。Gitと組み合わせられる。
53. pgvector
Trial
pgvectorはPostgreSQL用のオープンソースのベクトル類似性検索拡張機能。
54. Snapcraft build tool
Trial
Snapcraftは、Ubuntu、その他のLinuxディストリビューション、macOSでスナップと呼ばれる自己完結型アプリケーションをビルドおよびパッケージ化するためのオープンソースのコマンドラインツール
55. Spinnaker
Trial
Spinnakerは、Netflixによって作成されたオープンソースの継続的デリバリープラットフォーム。
マルチクラウド、カナリアリリース、承認フローが必要な環境に適している。
56. TypeScript OpenAPI
Trial
TypeScript OpenAPI (またはtsoa) は、コードからOpenAPI仕様を生成するためのSwaggerの代替手段。コードファーストである。springdoc-openapiのTypeScript版。
57. Unleash
Trial
可能な限り単純な機能トグルを使用することを推奨。チームのスケーリングと開発の高速化により、手作りのトグルの管理がより複雑になる。Unleashは、この複雑さに対処しCI/CDを有効にするために広く使用されている。Spring Bootアプリケーションや、Reactで使用できる。
60. Cursor
Assess
Cursorは、Alをコーディングワークフローに深く統合することで開発者の生産性を向上させるように設計された、Alファーストのコードエディター。CursorはVSCodeからフォーク。
76. Testcontainers
Adopt
Testcontainersは、テストを実行するための信頼性の高い環境を作成する。データベース、キューテクノロジ、クラウドサービス、WebブラウザーなどのUIテストに使える。テストセッションを視覚的に管理できるデスクトップバージョンがリリース。
80. Instructor
Trial
Instructorは、LLMから構造化された出力を要求するのに役立つライブラリであり、目的の出力構造を定義し、LLMが要求した構造を返さない場合は再試行。
103. shadcn
Assess
shadcnは、コードベースの一部となる再利用可能なコピー&ペーストコンポーネントを提供。Reactベースのアプリケーションにシームレスに統合される。
Discussion