私は AI の提案を、もうほとんど検討していません。良かれと思って出てくる新機能も、親切な改善案も、丁寧な代替案も。それで開発が雑になったかというと、なっていません。このシリーズは、その状態を仕組み一つずつで作っていく連載です。

先に、読み方を書いておきます。この連載は、読むだけで追えます。各回は、現場で何が起きたかから始まり、何を置いて、何がなくなったかまで続きます。各回の終盤に「検証手順」という節がありますが、読み飛ばして構いません。自分の環境で試したくなったときに、戻ってくれば足ります。

まず一つだけ、思い出してみてください。直近のセッションで、AI の提案を断った箇所です。その提案は、何度目でしたか

まだ AI と一緒に開発していないなら、断った箇所が思い出せなくて当然です。ここから先は、その「二度目」が人間の側にだけ積み上がる話を順に見ていきます。自分の心当たりが無くても、そのまま読めます。

初めてではなかったはずです。同じ機能、同じ改善、同じ「ついでにこうしませんか」。前にあなたが断ったのに、また来る。断る。次のセッションで、また来る。

断るのは、いつも人間だけ

AI は、断られたことを覚えていません。忘れているのでもありません。覚える・忘れるという話に、そもそもなっていないからです。次のセッションの AI は、同じコードベースを見て、同じ抜け穴に気づいて、同じ提案をします。あなたにとっては「二度目」ですが、AI にとっては毎回が一度目です。

そして提案を出すコストは、AI 側にはほぼありません。判断のコストだけが、人間に片側だけ積み上がります。断るたびに理由を思い出し、前と同じ結論に至り、同じ説明をする。三度目あたりから、説明が雑になります。五度目には「まあいいか」が混じります。品質が落ちるのは、AI が押し切ったときではなく、人間の判断が消耗したときです。

理解したことは一文にできます。

AI は却下を覚えない。提案のコストはゼロで、判断のコストは人間だけが払う。だから却下は、一度で書き切って外に置く。

前の連載の、続きです

前作「読まない技術」の結論は「ルールは読まれたときだけ効く。自動テストや hook は読まれなくても落ちる」でした。守ってほしいことを指示ファイルに書くのをやめて、破られたら落ちる自動テストに置き換える——第 6 回がその実装です。

ただし、あの回は自分で線を引いていました。自動テストに翻訳できるのは機械が真偽を決められるルールだけで、「この機能はあえて作らない」のような判断・方針は翻訳できないので、読ませる側に残します、と。

このシリーズは、その残した側が主題です。 やることは前作と同じ、ルールから仕組みへ。扱うものが一つ上がるだけです。

  • 前作: AI の出力を、読まなくて済む形にした
  • 今作: 人間の判断を、二度しなくて済む形にする

前作を読んでいなくても入れます。各回の冒頭に、前作で書いたことを 1 行だけ置くので、そこだけ読めば足ります。

前作とは、逆のことを言います

前作の第 2 回では、こう書きました。AI がメモリを保存するたび、以後の全セッションが読む量は増える。1 回の保存は、そのあと毎回払い続けるコストになる、と。

今回は反対です。1 回の却下は、そのあと毎回、払わずに済むようになります

違うのは、増え方です。気づきは無限に出てきます。断る内容は、そうではありません——私の手元では 17 件で止まっています。同じことが何度も来るものだけは、一度書けば二度目から効き続けます。 なぜそうなるかは最終回でまとめます。

17 件は、17 回断った結果です

先に一つ、はっきりさせておきます。この連載は「やらないことリストを作りましょう」という話ではありません。

私の手元にある 17 件は、一件ずつ断って、一件ずつ書いたものを、後から一枚に集めたものです。先回りして考えた禁止は 1 件もありません。今日置くのは、二度目に断った 1 件だけでいい。前作と同じで、失敗する前に置いた仕組みは、たいてい馴染みません。

舞台も前作と同じ、typingtube という、YouTube の音楽動画でタイピング練習ができる Web サービスです。個人で運営していて、本番で動いています。

シリーズの構成

最終回で、8 つがどうつながって一つの流れになるかをまとめます。

次回は一番手前の話から。私は、AI の提案を検討していません。それでも、良い提案を取り逃したことはありません。

連載「AIの意見を聞かない技術」