AIハイを追いかけて:粘土、窯、そして赤の女王の競争
本記事は、AIコーディングエージェントへの過度な依存の落とし穴を探り、「鏡の国のアリス」の赤の女王の競争に例えます。コードレビューや設計論議といった人間の摩擦を取り除くことで、圧力に耐えられない脆い「未焼成の粘土」コードが生まれると主張します。著者は、AIでより速く出荷するための競争が複雑性と脆弱性を増す破滅のループを生むと警告します。
ソフトウェア業界では、LLMコーディングエージェントを試した多くの人々が、複数のエージェントをほぼ24時間稼働させることに夢中になる現象が起きています。著者はこれを「AI精神病」と呼び、人々がAIの変革力を確信し、全力で採用しなければ滅びると信じていると指摘します。しかし時間が経つにつれ、どんな生産性も十分とは感じられなくなります。1つのエージェントから数十、数百、数千へと増やし、バックログを破壊し、顧客にプロンプトでタスクを投入させる。速度を求め、さらに速く、と。
著者は、ソフトウェア設計と記述のプロセスが非常に困難で退屈であったため、ウォーターフォール、アジャイル、スクラム、エクストリームプログラミングといった調整方法を生み出したと述べます。AIが登場し、個人がバックログを即座に操作可能な状態にできるようになると、人々は構築するものがなくなることを心配し始めます。生産性のハイが覚めつつあり、クラッシュを避けるためにさらに多くのタスクをバックログに詰め込みます。
AIによる不安は、エージェントやループが停止していないか、調整が必要かといった懸念を生みます。トークンが生成されない時間は損失であり、生産性の低下です。10倍、いや100倍のエンジニアになった今、1時間の損失は1000時間の損失に相当します。しかし、すでに「鏡の国」に入り込んでしまったかもしれません。
著者は、赤の女王の競争の比喩を用いて、AIがチームに競争力を保つためにより速く走ることを強いる点を強調します。問題は複雑性とエントロピーです。誰もがAIを使って最速のレースを走っていますが、マラソンを考慮していません。コードベースはチームが理解できる速度を超えて成長し、たとえAIを使っても把握できません。次の賢いモデルで全てを再構築できると信じたくなるが、それは中毒の真っただ中です。
「粘土と窯」の比喩:AIで構築されたソフトウェアは粘土のようなものです。素早く成形でき、数分で認識可能なものを作れます。しかし、窯で焼かれていない粘土は圧力に耐えられません。ソフトウェアにおいて、コードレビュー、テスト、デプロイ、監視、議論が窯の役割を果たします。AIはユーザーの望みを積極的に検証するため、反発しません。そのため、唯一の構築パートナーが言うことを何でも聞く場合、コードは決して焼かれず、成形可能なままです。さらに、異なる人の粘土同士はうまく結合しません。個々の作品は単独では問題なくても、継ぎ目で荷重に耐えられません。
これにより、各エンジニアが自分のAI支援バブルの中で進化し、隣のエンジニアとはまったく異なるソリューションを生み出す「ガラパゴス効果」が生じます。コードは表面的にはLLMにより一貫したスタイルに見えますが、設計上の決定は統合時に初めて不一致が明らかになります。最終的にAIによって均質化され、まとめられますが、それは単に粘土を押し固めただけです。
著者は前職でAPI設計に反対するのに多くの時間を費やしました。より良いインターフェースを作るために、別の視点から考えるよう促しました。しかし、すべてが未焼成の粘土で構築されている場合、雨が降れば全て流れ去ってしまいます。雨が止んだらAIで再構築すればいいと考えるかもしれませんが、どの部分が焼かれていてどの部分が焼かれていないかを見分けることはできません。何が耐力構造で何が装飾か、誰も理解していません。自分で構築することで得られた理解が欠如しているからです。
著者は「破滅のループ」を次のように説明します:競争はチームを削減しAIに頼る圧力を生み、それが窯(人間の摩擦)を取り除き、未焼成のコードを増やし、システムの脆弱性と複雑性を高め、競争をさらに緊迫させます。組織は取り除いている摩擦を見ることができますが、その摩擦が何をしていたのかは見えません。ウォーターフォール、アジャイル、スクラムなどの調整儀礼は、単なるプロジェクト管理のパフォーマンスではなく、複雑なシステムに対する共通理解を構築する方法でした。設計レビュー、PR議論、アーキテクチャ論争は窯でした。目的を理解せずに何かを取り除くと、雨が降るまでその代償に気づきません。
要点は、AIが悪いということではなく、ソフトウェアに構造的完全性を与えるすべてのメカニズムをスピードのために取り除くことが罠だということです。赤の女王の競争は、より速く走ることで終わりません。アリスはどこにも着きませんでした。もしこの競争の中にいるなら、複雑性を生み出す速度と同じ速さで削減しているかどうかが問われます。そうでなければ、あなたは競争しているのではなく、落下しているのです。