HN 日本語サマリー

← 一覧へ戻る
AI・機械学習

信頼の育成

Cultivating Trust (kaeruct.github.io)

5 pointsby kaeruct1 コメント

要約

AI生成コードに関する信頼性の問題は、開発プロセス全体に及びます。本稿では、AIによるコード生成が加速する現代において、エンジニアがコードの品質を維持し、責任を果たすための具体的なプラクティスを提案しています。これには、明確なコーディングガイドライン、決定論的なツールチェーンの活用、小さなプルリクエストの強制、テストの所有、製品ビジョンとの連携、そしてプロトタイピングと結果重視のアプローチが含まれます。

全文翻訳

信頼の育成 エントロピーの克服: 信頼の育成 “エントロピーの克服”の一部 AI生成コードに関して私が抱える問題のほとんどは、信頼に関連しています。このチケットを書いた人を信頼できますか?このPRを開いたエンジニアがチケットを理解し、コーディングエージェントに正しく実装するように導いたと信頼できますか?コーディングエージェントの実装を信頼できますか?テストスイートが本番環境に影響が出る前にリグレッションを捕捉してくれると信頼できますか?CI/CDが変更を正しくビルド、テスト、デプロイしてくれると信頼できますか?AI生成コードが本番環境を壊したときに、オブザーバビリティ設定が私たちに警告してくれると信頼できますか?AI SRE(サイト信頼性エンジニア)が問題を正しく診断し、緩和を助けてくれると信頼できますか?私たちが最も必要としているときにGitHubがインシデントを起こさないと信頼できますか? 信頼は獲得するのが難しく、失うのは簡単です。そのため、エンジニアリングチーム内で信頼の文化を育むことが極めて重要だと考えています。あなたは、エンジニアが正しいことをすると信頼しなければなりません。 説明責任の奨励 私は、「あなたは、あなたがリリースしたものに対して責任があります。もしこれが本番環境を壊し、あなたがPRを作成したのであれば、あなたはそれを修正するためにそこにいるべきです。」のようなことを明確に伝えることが役立つと考えています。 エンジニアがリリースしたコードに対して責任を負うのであれば、彼らは自分の好みの方法でコードを生成する権限を与えられるべきです。たとえあなたがAIに懐疑的であっても、AIエージェントが非常に速く大量のコードを生成することは認めざるを得ません。コードは依然として生成される必要があり、今やそれを大量に生成するのは安価であるという期待があります。これに対処するために、エンジニアはコードベースの品質が低下しないようにするための対策を講じることが許可されなければなりません。 健全な組織では、エンジニアはお互いに、合理的な品質のコードのみをプッシュすると信頼すべきです。私が「合理的」と言うのは、品質にこだわり、常に100%完璧なコードを出荷しようとすることは現実的ではないからです。コーディングエージェントが登場する前から、ほとんどのコードはすでにバグだらけでした!したがって、「十分良い」ソリューションが提供されることは理解できます。多くの場合、私たちは納期の速度と品質をトレードオフし、技術的負債を抱えます。 以下は、この新しいコーディング時代におけるエンジニアの説明責任を促進するために役立つと感じたプラクティスです。 コーディングガイドライン 明確なテクノロジ戦略を持ってください:コードベースにとって何が重要かを決定するために時間をかけ、明確なガイドラインに投資してください。人間とコーディングエージェントの両方のためです。人間がガイドラインを読まなくても、コーディングエージェントはそれを読み、(ほとんどの場合)それに従います。 決定論的なツール コード品質を保証するために、決定論的なツールを多用してください。型付き言語、リンター、デッドコード検出、セキュリティスキャン、CI/CDなどです。これらのツールはすべてコーディングエージェント以前から存在し、スロップ(雑なコード)との戦いを助けてくれます。(具体的な推奨事項については、フォローアップ投稿にご期待ください!) 小さなPRの強制 レビュー不可能なPRを拒否する権限をエンジニアに与えてください。可能であれば、レビュー不可能なPRは即座に拒否されるように基準をコード化してください。もちろん、例外の余地を残すようにしてください。 テストの所有 テストケースを手書きしてください。これはビジネスアナリストの仕事に似ています。機能を深く考え、適切なテストシナリオを定義してください。チーム内でこれを議論してください。コーディングエージェントはテストを実装できますが、それらは人間によって定義されるべきです。 製品へのこだわり 一貫した製品ビジョンを持つために、プロダクトチームと連携してください。AIを使って暴走し、思いついた機能を実装するのは非常に簡単です。ユーザーに実際に価値をもたらす有用な機能のみを実装するようにしてください! プロトタイプ 使い捨てコード。コードは現在非常に簡単に生成できるため、さまざまなアプローチを試す良い機会です。コーディングエージェントに1つのソリューションを生成させるだけでなく、例えば、3つの根本的に異なるアプローチを試して、問題と既存のシステムに最も適したものを選択してください。 結果に焦点を当てる 結果については現実的に考えてください。時にはコードが結果ではありません。結果はレポートであったり、何か他のことを達成するのに役立つツールであったりします。このような場合、結果が有用である限り、コードの品質はそれほど重要ではありません。 エントロピーの克服 2026-09-05 |  #ai #conquering-entropy AI生成コードであふれるコードベースのエントロピーを管理し、その過程で生き残る方法に関するアイデアの集まり。 何が変わったか コーディングエージェントが人気になって以来、私の会社のモノレポの行数は爆発的に増加しました。プルリクエスト(PR)の数は(控えめに見積もって)約2倍になり、すべてのエンジニアのレビュー負荷も同様に増加しました。人々は、今最大の課題はレビューするコードが多すぎることだと考えています。しかし、もっと悪いことがあります! 続きを読む 