やる気パルスが回復するアニソン

40代のおっさんなので、新しいのは知りません。リンクは歌詞。

機動戦士ガンダム0083-STARDUST MEMORY-

THE WINNER
THE WINNER

銀河鉄道999

THE GALAXY EXPRESS 999
THE GALAXY EXPRESS 999

キン肉マン II世

愛のマッスル
愛のマッスル

真(チェンジ!!)ゲッターロボ 世界最後の日

今がその時だ
今がその時だ

六神合体ゴットマーズ

愛の金字塔
愛の金字塔


う。面倒になってきた。アニソンのリスト作るサービスくらいあってもよさそうなんだが…。

AI時代の三つの負債とどう向き合うか——Fowlerの四象限を手がかりに

第1章 ふとした気づき

ねえ魔理沙、最近AIに何でも聞いちゃうじゃない。コード書くのも、考えごとも、なんなら買い物の相談まで。
便利だからな。ぜ。
でもさ、ふと思ったのよ。これって楽すぎない? 自分の頭使わなくなってる気がするのよね。
おっ、いいところに気づいたな。
これって「技術的負債」みたいな話じゃないかしら。今ラクしてるけど、あとでツケが回ってくる感じ。
それな、今エンジニアの世界でもまさに議論になってるテーマだぜ。今日はその話、一緒に整理してみないか。
お願いするわ。
題して「AI時代の三つの負債とどう向き合うか」だ。手がかりはMartin Fowlerの四象限。よし、行くぜ。

第2章 Fowlerの四象限おさらい

まず、技術的負債って言葉、聞いたことあるか。
なんとなく。汚いコードを残しておくと、あとで困るやつでしょ。
おおむね合ってる。Ward Cunninghamって人が言い出したメタファーで、雑に書いたコードは借金と同じ。利息がついて、後から重くのしかかる、ってやつだ。
なるほど。
で、これをMartin Fowlerって人が2009年に四象限に整理した。二つの軸で切るんだ。一つは「慎重か、無謀か」。もう一つは「意図的か、不注意か」。
四つに分かれるわけね。
そうだ。まず「慎重で意図的」は、納期があるから今は妥協する、でも後で直す前提、って借り方だな。これは戦略的でアリ。
計画的な借金って感じね。
次「無謀で意図的」は、後のこと考えずに、とにかく今動けばいいやって書いちゃうやつ。これはまずい。
自転車操業ね。
「慎重で不注意」は、ちゃんと設計したつもりが、後からもっといい方法に気づくパターン。これはまあ仕方ない。
成長したから見える、ってやつね。
そして最後、「無謀で不注意」。基本がわかってなくて、自分が負債を作ってることにすら気づいてないやつだ。
知らずに借金してる状態ね、こわっ。
この四象限で大事なメッセージは、負債そのものが悪ってわけじゃない、ってことだ。慎重に借りて、ちゃんと返す意識を持てば、負債は戦略的な道具になる。
借金自体が悪じゃないのね。
そう。避けたいのは「無謀」の側だ。意図的でも不注意でも、無謀な借り方は基本まずい。意図的に無謀なのはむしろ確信犯的にタチが悪いとも言えるしな。
たしかにね。
ここで一つ、わかりやすい例を出しておくぜ。コピペコーディングとか、Stack Overflowコーディングって聞いたことあるか。
ネットで見つけたコードをそのまま貼り付けるやつね。
そう。動いてるコードを持ってきて貼り付ける、なぜ動くかは深く考えない、設計原則も意識しない。これがまさに「無謀で不注意」の典型例だぜ。
自分が負債を作ってることに気づいてないわね。
そうなんだ。この象限、ちょっと覚えといてくれ。次の章で重要になるからな。

第3章 AI時代の新しい負債

で、これがAIとどう関係するの。
ここからが本題だ。AIが普及してから、エンジニアの間で「技術的負債」以外の負債が議論されるようになってきたんだ。
別の負債?
そう。「理解負債」と「認知負債」って呼ばれるやつだ。
聞いたことないわね。
まだ新しい概念だからな。海外で先に議論が始まって、最近日本でも話題になり始めてる。
誰が言い出したの。
いろんな人が論じてるが、注目すべきはMartin Fowler本人だぜ。
四象限を作った人?
そう、その人。Fowler自身が最近メモを書いてて、そこで認知負債を取り上げてるんだ。あと、Simon Willisonっていう、これも有名なエンジニアがいるんだが、彼もブログで触れてる。
技術的負債の本家本元が、認知負債について語ってるってこと?
そういうことだ。だから、これはバズワードじゃなくて、本気で議論されてる話なんだぜ。
気になってきたわ。
研究の方でも動きがあるぞ。MIT Media Labで「Your Brain on ChatGPT」って題の研究があって、AI利用が認知にどう影響するかを調べ始めてるんだ。
もう結論出てるの?
いや、まだだぜ。長期的な影響は研究が始まったばかりで、確定的なことが言える段階じゃないんだ。だから今日話すのは、断定じゃなくて「こういう構造で問題が起きうる」って観測モデルとして聞いてくれ。
仮説として聞くわけね。
そういうことだ。じゃあ次の章で整理していくぞ。

第4章 三つの負債を整理する

じゃあ、三つの負債を並べていくぞ。ここで第2章のコピペの話を思い出してくれ。
「無謀で不注意」の典型例ね。
そうだ。実は理解負債も認知負債も、この象限と地続きの話なんだ。
あ、新しい現象じゃなくて、もとからある問題の現代版ってこと?
そういうことだぜ。順番に見ていこう。
はい先生。
まず「技術負債」。これはさっき話した通り、Fowlerの四象限がそのまま当てはまる原典だ。対象はコード、四つの象限が全部ある。
オーケー。
次「理解負債」。AIが生成したコードを、開発者がちゃんと理解しないまま取り込んじゃう。動くんだけど、なぜ動くのかわからない、って状態だ。
あー、それやってるかも。動いたからヨシ!って。
これって、コピペコーディングと構造的に同じだろ?
あ、ほんとだ。動いてるコードを貼り付けて、中身を理解しない。完全に「無謀で不注意」じゃない。
そうなんだ。だから理解負債は「全く新しい現象」というより、もとから存在していた「無謀で不注意」の領域を、AIが大量生産しやすくした結果と捉えられる。
増幅って、どのくらい?
いくつか効いてる要素があるぜ。まず規模だ。Stack Overflowからのコピペは「探す手間」がボトルネックだった。検索して、選んで、調整して、って摩擦がある。AIはこの摩擦をほぼゼロにした。
同じ時間で何十倍もできちゃうわけね。
次に自覚の減少だ。Stack Overflowからコピペするときは、「これ、よその人のコードだな」って自覚がある。出典が外にある。でもAIが生成すると、対話の流れの中で出てくるから、自分が書いた感覚に近くなる。
借りてる自覚が薄れるのね。
さらにもっともらしさが上がってる。Stack Overflowは玉石混交で、明らかに変なコードもあった。だから「これ怪しい」って気づくチャンスがあった。AIの出力は、特に経験が浅いと、表面的にもっともらしく見えてしまう。
「無謀」であることが見えにくいのね。
その通り。借りられる範囲も広がってる。Stack Overflowは特定の問題への解法が中心だった。AIはアーキテクチャ全体、設計判断、なんなら問いの立て方まで提案できる。
無自覚に借りる領域そのものが広がったってこと。
その通りだ。
ちょっと整理させて。つまりAIって、「借りるコスト」と「借りてる自覚」を両方薄くした、ってことね。しかも借りられる範囲も広がってる。
おお、いい整理だ。三拍子そろってるんだぜ。
そりゃ「無謀で不注意」が量産されるわけね。
そう、量産されやすい。ただ、AIが書いたコード全部が「無謀で不注意」ってわけでもないんだ。検証やテストをちゃんとやって、あとで理解する前提で取り込むなら、それは「慎重で意図的」な借り方になる。
あ、そっか。借り方しだいなのね。
そうだ。問題はAIだと、無自覚に「無謀で不注意」のほうに流れやすいってことだぜ。Fowlerの一番危険な象限を、AIは大量生産しやすい構造になっている。
なるほどスッキリした。じゃあ認知負債は?
認知負債、実はこれ、人によって指してるものが違うんだ。
あら、用語が揺れてるのね。
まだ概念が固まってる途中だからな。ここでは整理のために、二つの意味をAとBって呼んで切り分けることにする。
二つあるの?
そう。まず認知負債Aは、理解負債が組織全体で積み重なった状態だ。チームの誰もシステム全体を説明できなくなる、ってやつ。
理解負債の組織スケール版ね。
そう。対象はシステム側にある。コードベースとか、組織の知見とか、外にあるものだ。だからAも、理解負債と同じく「無謀で不注意」に流れやすい構造を持ってる。
整理すると、技術負債は四象限全部、理解負債と認知負債Aは「無謀で不注意」に流れやすい現代版、ってことね。
完璧な整理だ。地続きなんだ。
じゃあBは?
認知負債Bは、ガラッと変わるぜ。人間側の認知能力そのものが衰えていく話だ。AIに考えることを任せ続けて、自分で考える力が落ちていく、っていう。
あれ、それ全然違う話じゃない!
そうなんだ。AまではFowlerの四象限の延長で考えられる、対象は外にあるコードやシステム。でもBは、対象が自分の頭の中にある。
観測対象が外から内に移ったのね。
そう。だからBだけは、四象限の枠組みの外側にある別カテゴリの問題なんだ。
整理すると、技術負債・理解負債・認知負債Aは地続きで全部四象限の話。でも認知負債Bだけは別世界の話、ってことね。
その通り。ここからは、その別世界に踏み込んでいくぞ。

第5章 思考の筋肉は衰える

認知負債B、自分の頭が衰えるって話、もうちょっと詳しく聞かせて。
その前にひとつ釘を刺しておくぞ。AIで認知能力が衰えるって話だけど、これは「AIを使うと必ず衰える」って話じゃないんだ。
そうなの?
もちろんAIで思考が拡張される面もある。情報アクセスは爆発的に速くなったし、ルーチンを任せて高次の思考に集中できる人もいる。電卓は計算を、検索エンジンは記憶を外部化してきた。人類は昔から認知を外部化して進歩してきた側面があるんだ。
たしかにそうね。電卓のせいで人類がバカになったとは言わないものね。
そうだ。ただ、AIが過去の道具とちょっと違うのは、「思考過程そのもの」を代替し始めた点だな。電卓は計算結果、検索は情報を返してくれたけど、AIは「どう考えるか」まで提案してくる。
踏み込む深さが違うのね。
そう。だから問題は「AIを使うこと」じゃなくて、「全部委譲して、常に乗ったまま降りない状態」になることだ。今日話す認知負債Bは、その極端側にフォーカスした話だと思って聞いてくれ。
オッケー、わかったわ。
じゃあ本題に入るぞ。これは筋肉の話に近いんだ。
筋肉?
エレベーターを使うこと自体は悪じゃない、合理的だ。でも階段を一切使わない生活を10年続けたら、ある日気づいたら階段登れなくなってる。
あー、わかる。
AIへの委譲も同じだ。一回一回の判断は正しくても、累積した結果として、基礎体力が落ちていく。
使わない筋肉から落ちていくのね。
しかも厄介なのは、衰えが自覚しにくいってことだ。日常では困らないから、いざ自分の頭で考え抜く必要が出たときに初めて気づく。
本番で気づくやつ。
そう。技術的負債が本番障害で顕在化するのと似てる。
もう一つたとえ話くれない?
バイクの話はどうだ。
バイク?
バイクに乗ってる人が、「俺は70km/hで走れる」って思わないだろ。
思わないわね、エンジンの力だってわかってるから。
そうなんだ。バイクなら降りた瞬間に「自分の足じゃ70kmは出ない」ってすぐわかる。組織の看板を借りてる人も、辞めれば数ヶ月で気づく。
フィードバックが早いのね。
でもAIとの関係は、降りる機会がない。常に乗ってる状態がデフォルトになりつつあって、しかも乗ってることすら意識から消えていく。
怖い……。
だから本当の問題は、衰えの速さじゃなくて、気づきの遅さなのかもしれない。検知が遅れれば遅れるほど、取り返しがつかなくなる。
技術的負債を10年放置するのと同じ構造ね。

第6章 衰えと未発達

でもさ、ちょっと疑問なんだけど。「衰える」って、もともと持ってた人が落ちる話じゃない。最初から持ってない人はどうなるの?
おお、鋭いところに気づいたな。
たとえばAIネイティブの世代って、最初からAIがある環境で育つわけでしょ。
その通りだ。だから認知負債Bは、実は二種類に分けたほうがいいかもしれない。
二種類?
一つはB1、「衰え型」だ。かつて自分で考えられたんだけど、AIに任せるうちに力が落ちていくパターン。
リハビリで取り戻せそうね。
そう、ゴールイメージがある。もう一つはB2、「未発達型」だ。そもそも自分で考えた経験が少ないまま、AIを使い始めるパターン。
これは「取り戻す」じゃなくて「初めて鍛える」になるわね。
ここで、ちょっと面白いことに気づくぞ。
何?
B1とB2を、第2章のFowlerの四象限に当てはめてみてくれ。
えっと、B1は「衰え」を自覚してる人が多いから……「慎重で意図的」?
そう、自分が借りてることをわかってる。
B2は、そもそも自分で考えた経験がないから、借りてることに気づかない……「無謀で不注意」?
その通り!
あれ、四象限がそのまま使えちゃった!
そうなんだ。残りの二象限も埋めてみるか。「無謀で意図的」は、「もう自分で考える必要なくね?AI使えばいいじゃん」って開き直って委譲するパターン。
あー、いそうね。
「慎重で不注意」は、自分で考える力を維持するつもりだけど、知らないうちに依存が進んでるパターン。たぶんこれが一番多くて、一番怖い。
怖い、私それかも。
俺もそうかもしれないぜ。
それにしても、Fowlerの四象限ってすごいわね。技術的負債の話だったのに、人間の認知能力の話にもそのまま使えちゃう。
……ここ、けっこう大事なところだぜ。
どういうこと?
Fowlerは技術的負債を整理した、って思われてるけど、たぶん本当に捉えてたのは「借りる」って行為そのものの構造なんだ。
コードを借りるんじゃなくて、借りるという行為の構造……。
そう。借りる対象がコードでも認知能力でも、構造は変わらない。だから対象を入れ替えても枠組みが機能する。
コードの話だったのに、人間の頭の話にも刺さるの、不思議ね。
たぶんお金や健康や信用みたいな、他の「借りられるもの」にも当てはまるはずだぜ。
メタフレームワークね。これは便利だわ……でもさ、ここでまた疑問なんだけど。
なんだ。
四象限で整理できるのはいいんだけど、自分が今どの象限にいるかって、どうやって測るのよ?
おっと、いい質問が来たな。それが次の章のテーマだぜ。

第7章 観測できないものをどう扱うか

自分が今どの象限にいるか測れないと、せっかくの四象限も使えないわよね。
そうなんだ。ここで大きな壁にぶつかる。
技術的負債なら、コードを見れば負債かどうか判断できるじゃない。ツールで静的解析もできる。
そうだな。
でも認知負債Bは、対象が自分の頭の中にあるのよ。脳の静的解析なんてできないじゃない。
それな、すごく本質的な問題だ。
自分の思考のどこまでが自分で、どこからがAIに借りたものか、測れないわよね。
そうなんだ。しかも観測する側も同じ脳だ。観測者が既に負債を抱えてたら、その観測自体が歪む。
んーちょっと抽象的だわ。
たとえばだな、酔っ払ってる人が「俺はぜんぜん酔ってない」って判断するのと似てる。判断する脳自体が酔ってるから、酔ってるかどうかを正確に判断できないんだ。
あー、あれね。「運転できる」って言って絶対できないやつ。
そう。認知負債Bも同じ構造だ。衰えてるかを判断する脳自体が衰えてたら、衰えに気づけない。
詰んでない?
完全には詰んでないんだが、難しいんだ。ここで二つの知恵を借りるといいかもしれない。
何?
一つは「メタ認知」だ。自分の認知を、もう一段上から観察する能力。「今、自分はAIに頼って考えてるな」「これは自分で出した結論じゃないな」って気づく力。
自分を客観視するやつね。
もう一つは「システム思考」だ。個別の判断じゃなくて、判断の積み重ねが長期的にどんな影響を生むかを見る視点。
森を見るやつね。
認知負債Bが厄介なのは、降りる機会がない、即時のフィードバックがない、複利でじわじわ効く、ってところだ。これは全部システム思考が扱う領域の問題なんだ。
時間遅れと因果関係の見えにくさ。
そう。だからメタ認知で「観測」して、システム思考で「仕組みを理解する」。この二つが揃って初めて、Bに対処できる。
でもさ、ここでまた疑問なんだけど。
なんだ。
メタ認知って、結局は認知能力の一種でしょ。それも衰えるんじゃないの?
……鋭すぎるぜ。
観測する道具自体が壊れていくって、もう手の打ちようがないんじゃ。
そう、ここに自己観測のパラドックスがあるんだ。検知器が壊れていく検知器を、どうやって維持するか。
……うー、知恵熱出そうだわ。
ちょっと一息いれろ。哲学的な話が続いたからな。
で、どうするのよ。
完全な解決はないんだ。でも、少しマシにする知恵はある。それが次の章のテーマだぜ。

第8章 持続可能な観測のコツ

観測しなきゃいけない、でも観測する力自体が衰える。じゃあどうすればいいのよ。
ヒントは前の章で霊夢が言ってたことの裏返しなんだぜ。
何を言ったかしら?
「観測する道具自体が壊れていく」って話だ。だから、壊れにくい外側のしくみに頼るんだ。具体的には、外部の視点と、自分の習慣。この二つだぜ。
自分の判断力に全部頼らない、ってこと?
そういうことだ。そしてもう一つ大事な視点の転換がある。「完璧に観測しよう」とするんじゃなくて、「持続可能に観測する」ことを目指すんだ。
持続可能。
で、ここで思い出してほしいんだが、第5章で何のメタファー使ったか覚えてるか。
思考の筋肉、ね。
そう。実は持続可能な観測のコツも、筋トレから知恵を借りるとわかりやすいんだ。
あ、なるほど。筋トレなら身近ね。
筋トレで長く続けてる人が大事にしてることって、いくつか共通点があるだろ。それをそのまま認知負債Bへの対処に翻訳していくぞ。
お願いするわ。
まず一つ目、最初から全力・完璧を目指さない。筋トレ初心者がいきなり毎日2時間ジムに通おうとしたらどうなる?
三日で挫折ね。
そうだ。観測も同じだぜ。「今日からAIを一切使わずに考える!」とか決めても続かない。少しずつ、段階的に負荷を上げていく。
いきなり完璧を目指さないってことね。
二つ目、休息日が大事。筋トレって毎日同じ部位を追い込むと、むしろ伸びない。超回復のために休む日がいるんだ。
観測も休んでいいの?
もちろん。常に自分を見張ってたら疲れる。「今日はAIに頼り倒す日」「今日は自分で考えてみる日」みたいに、メリハリつけたほうが長続きする。
罪悪感持たなくていいのね、それ救われるわ。
三つ目、複数の種目を回す。胸ばっかり鍛えてたら、体のバランス崩れるだろ。
肩とか背中とか脚とか、全身バランスよくね。
観測も同じだ。他者との比較だけに頼ってると、それがしんどくなったときに何も見えなくなる。過去の自分と比較する、AIなしで考えてみる時間を作る、人と話してみる、紙とペンで書き出してみる。いろんなチャンネルを持つ。
観測手段の全身トレーニングね。
四つ目、フォームを意識する。重さばっかり追って雑なフォームでやると、怪我するし、効かない。
観測のフォームって?
「自分の何を見るか」を意識的に選ぶってことだな。漠然と「自分はダメだ」って見るんじゃなくて、「今のこの判断、自分の力で出したか、AIの提案そのままか」みたいに、具体的なポイントを見る。
解像度を上げるのね。
そう。そして五つ目、これが一番大事かもしれない。良かったところを見つける習慣だ。
筋トレでも?
そうだぜ。「先週より2kg重い重量上がった」「フォームが安定してきた」って小さい進歩を拾うから続けられる。逆に「まだあの人より弱い」って欠点ばっかり見てたら、潰れる。
観測も同じね。
欠点を見つけても、即座に自己否定に直結させない。データとして扱う。そして「今日は自分でこれだけ考えられた」って良かった部分も同じ重みで拾う。
差分を取り続けるんじゃなくて、自分の歩みを記録する感じね。
その通り。鋭く見るだけなら若いうちにできる。でも、見たものと付き合いながら長く続けるには、別の技術がいる。それが本当の意味での「知恵」なんだろうな。
自分を甘やかすことも、ちゃんと位置づけがあるってことね。
手加減や休息は、観測能力が落ちてるわけじゃない。観測した上で、システムを持続可能に保つための調整なんだぜ。
「持続可能なメタ認知」ってわけね。なんだか筋トレ続けてる人の話聞いてる気分になったわ。
実際、構造は同じなんだぜ。

第9章 まとめ

今日の話、整理してみるか。
お願い。
AI時代の負債は三つあった。技術負債、理解負債、認知負債。そして認知負債にはAとBがあって、Bはさらに衰え型と未発達型に分かれる。
ややこしかったわね。
でも、どれもMartin Fowlerの四象限で捉えられる。慎重か無謀か、意図的か不注意か。これが骨格だ。
枠組みとしてすごく強いわね。
そして、対象が外(コード)から内(自分の頭)に向かうほど、観測が難しくなる。技術負債は静的解析できる、理解負債はコードを読めば確認できる、でも認知負債Bは、自分で自分を見るしかない。
そこでメタ認知とシステム思考。
そう。観測の鋭さだけじゃなくて、観測したものとの折り合いをつける知恵もセットで必要だ。
完璧を目指さず、持続可能に。
それが結論だな。
最初は「AIに頼りすぎるとマズいかも」ってふとした気づきから始まったのに、ここまで話が広がるとは思わなかったわ。
Fowlerの四象限が骨格として効いてて、そこに筋肉のメタファー、自己観測の難しさ、メタ認知やシステム思考が乗っかってきた感じだな。
見てる人にも、自分のAIとの付き合い方を振り返るきっかけになるといいわね。
そうだな。借りること自体は悪じゃない。無謀で不注意な借り方をしないこと、そして借りた分を返す意識を持つこと。それだけだぜ。
今日もありがとう、魔理沙。
またな!

参考文献

ゆっくり閑話:認知負債にgrillme ― 凡人がAI時代を生き抜く話

ゆっくりしていってね! 今日は「認知負債」とAI開発の話よ。
最近、生成AIで開発してると「認知負債」って言葉をよく聞くようになったぜ。
順番にほどいていきましょうか。

そもそも認知負債って昔からあったよね?

まず最初に、「認知負債」って何なのよって話があるでしょ。
ああ、最近よく聞くけど、ふわっとしてるな。
ここではざっくり、自分の理解と、実際の複雑さの差分を抱えた状態くらいの意味で使うわ。
「使ってるけど中身は分かってない」みたいなやつだな。
そう。動かせてるけど仕組みは把握してない、技術的負債の頭の中バージョン、みたいな感じね。
ふむ、で、それが何だ?
最初の引っかかりはこれよ。「AI開発で認知負債が問題」って言うけど、実は昔からあったんじゃない?
ふむ、どういうことだ?
例えばフレームワーク使うとき、奥深くの実装を全部知ってる人なんてあんまりいないでしょ。Reactの仮想DOMの中身知らなくてもReactは書ける。
ああ、そりゃそうだぜ。Linux知らなくてもサーバー立つしな。
抽象化を使うってこと自体が、一種の認知負債なのよ。凡人(自分も含めて)は昔からそうやって生きてきた。
達人はともかく、な。
そう。だから「認知負債が新しい問題」じゃなくて、「前からあったけど、AI時代に何かが質的に違ってきてる」って整理のほうが正確じゃないかしら。
おお、最初の問いから既に組み替えてるな。

じゃあAI時代は何が違うのよ

で、何が違うのか考えてみたのよ。
ふむふむ。
ひとつめは「抽象化の安定性」。フレームワークは挙動が決まってるし、ドキュメントもあるし、壊れたら同じ場所を疑える。
「いつもの動き」があるんだな。
AIが生成したコードは慣用的なパターンからズレることがあって、安定したパターンとして頭に入りにくいのよ。少なくとも今のところだけど。
「今のところ」ってのが気になるな。
formatterとかテンプレート、アーキテクチャの制約とかで揃えていけば、将来は変わるかもしれないでしょ。今はまだそこに振り切れてないから、不安定さが残ってるって話。
なるほど、現時点の観察か。
ふたつめは?
「メンタルモデルが育つかどうか」。フレームワークを使い込むと、達人じゃなくても「たぶん中ではこう動いてるはず」って作業仮説ができてくる。
バグ踏んだらそのモデルが少し更新される、ってやつだな。
そう。でもAIに任せる範囲が広いと、モデルが育つ前にコードが完成しちゃうのよ。
うっ、心当たりがあるぜ。
そして決定打は、量・速度・自己欺瞞の三つが揃うこと。
ど、どゆこと?
昔から「動いてるから分かった気」って問題はあったのよ。コピペ開発とかStack Overflow駆動とか。
ああ、cargo cult programmingってやつだな。
でも昔は人間の実装速度が上限だったから、破綻の規模が局所化しやすかった。AI時代は量も速度も人間を超えるから、理解が追いつかないまま動くものが大量に完成するのよ。
そして「動いてるから分かってる気になる」やつだな。
それが自己欺瞞よ。これが認知負債の暴発エンジンなの。

「分かってる」って何なのよ

普通の開発者にとっての許容ラインって、どこなんだろうな。
最初に思いつく目安はこんな感じ。
  • 壊れたとき自力でデバッグできるか
  • システムの「形」を頭で描けるか
  • セキュリティとかコアロジックの妥当性を判断できるか
  • 仕様変更で「どこを触るべきか」を判断できるか
うん、まあ妥当だな。
でもね、ここで面白いねじれがあるのよ。
ねじれ?
「クリティカルパスはどこ?」「依存関係を絵にして」って、AIに聞けば答えてくれちゃうのよ。
あー、確かに。
しかも、これは私の感覚なんだけど、自分で書く絵より、AIが描く絵のほうが整理されてて分かりやすいことも結構ある。
うっ、否定できないぜ。
もちろん因果や制約を誤解してることもあるから鵜呑みは危険なんだけど、少なくとも俯瞰の整理速度では人間を上回ることがあるのよ。
つまり「自分が分かってる」を判定する作業を、AIに委ねられちゃうのよ。これが新しい問題。
判定者がAIになったら、もう何が正しいか分かんないじゃないか。
そこなのよ。AIの出力を判定するためには、どこかに人間側の足場が必要なの。

違和感センサーという足場

足場って具体的には?
ある人がね、「アジャイルに20年触れてるから、AIがアジャイルで嘘ついたらなんとなく気づける。でも他の領域は分からない」って言ったのよ。
おお、リアルな感覚だぜ。
これがすごく本質的で、知識というより違和感の解像度なのよ。
違和感の解像度?
「なんかこの説明、流暢すぎて怪しい」「この前提、実務だと崩れるはず」っていう、言語化前のセンサーね。
長くやってる人だけ持ってるやつだな。
そう。これは凡人でも、特定の領域で経験を積めば手に入る。逆に全領域で持つのは無理。達人でも難しい。
じゃあ凡人はどうすりゃいいんだ?
軸を一本か二本だけ深く持つ。そこを起点に他の領域を相対評価する、っていう戦略になるかしら。
全部の領域でセンサー持とうとすると、それこそ認知負債で潰れるな。
そういうこと。

ここでソクラテス先生が登場

ところでさ、「全部理解するの難しい前提で、何すりゃいいの?」って問いに、昔の人は何て答えてたんだ?
それ、ソクラテスがけっこう直接的に答えてるのよ。
紀元前の人だぜ?
紀元前5世紀のアテネのおじさん。「無知の知」で有名な。
ああ、聞いたことあるな。「俺は何も知らんことを知ってるからすごい」みたいなやつだろ?
それ誤解されがちな読み方なのよ。
え、違うの?
ソクラテスはね、賢いと評判の人を訪ね歩いて気づいたの。彼らは自分の専門は知ってるけど、「自分が知らないこと」については知らないのに、知ってると思い込んでる、と。
ほうほう。
ソクラテス自身は立派なことについては何も知らない。でも「知らない、ということだけは知ってる」。その一点だけマシかもしれない、と。
なるほど。威張ってたわけじゃないんだな。
むしろ逆で、生涯かけて「知ってるつもり」を剥がす作業をしてた人。対話相手に質問を重ねて、当たり前の前提を揺さぶる。
ソクラテス式問答法ってやつだな。
そう。で、これが認知負債の話に直接効くのよ。

「分かってる」と「分かってるつもり」の境界線

どう効くんだ?
ソクラテスの態度って「全部理解するのを諦める」じゃないのよ。
じゃあ何だ?
知ってるつもりと、本当に知ってることの境界線を、常に引き直し続ける」が近い。
ふむ。
AIに任せて動いてるけど自分は分かってない、これ自体は別に悪じゃないの。問題は、それを「分かってる」と錯覚すること
錯覚した瞬間にどうなるんだ?
検証もレビューもしなくなって、嘘に気づけなくなる。これが認知負債の暴発。
なるほど、線さえ引けてれば、向こう側はAIや専門家に任せていいんだな。
そう。線の手前(分かってるつもりだけど怪しい領域)を放置するほうがずっと危険なの。
じゃあ普通の開発者にとっての解は、知識の総量を増やすことじゃなくて、境界線の精度を上げることってことか。
そういうこと。

相談上手は認知負債が暴発しにくい

ところでさ、線を引けると何がいいんだ?
線が引ける人は、どこを助けてもらうべきかも分かるのよ。
おお。
線が引けないと「全部抱える」か「丸投げ」の両極端になっちゃう。線が引けると「ここは分かってる、ここから先が怪しい、だからここを聞きたい」って解像度の高い相談ができるの。
それは助ける側も楽だな。
そう。だから相談上手な人は、認知負債が暴発しにくいだけじゃなくて、他人の認知資産を借りて自分の負債を減らせる人なの。
凡人にはありがたい構造だぜ。
ただし注意点もあって、相談には自分側にも何か残ってる必要があるのよ。
ほう?
完全に丸投げで「分からないので全部教えて」を続けると、相談相手の知識を借りてはいるけど、自分の中の境界線は更新されない。
ああ、また同じこと聞くやつになるな。
「ここまでは考えた、ここで詰まった」って持っていけると、相談のたびに自分の線が一段押し上がる。これが積み重なると、普通の開発者でも徐々に「ある領域については分かる人」になっていく。
……ってことはさ、相談相手としてAIに聞くのも同じ話だよな?

AIは「剥がしてくれる他者」になれるか?

そうなんだけど、ここに一つ落とし穴があるのよ。
落とし穴?
人間の相談相手なら、ぶっきらぼうな同僚とか、容赦ないメンターとかが「それ本当に分かってる?」って詰めてくれる。これが境界線を更新する力になるの。
ああ、痛いけど効くやつだな。
でもAIって、基本的に肯定的に応答してくるのよ。「いい質問ですね」「良い視点です」って褒めから入る。
確かにそうだぜ。
つまりAIは、相談相手としては優秀。でも「自分の知ってるつもりを剥がす役」としては、ちょっと弱いの。
うっ、それは盲点だぜ。
だから一人でAIと対話してると、認知負債は静かに溜まる。誰にも指摘されない。
それは怖いな…。
でもね、これには対策があるのよ。
おお、なんだ?
意図的に剥がしてもらうこと。

grillmeという技

その技が「grillme」よ。
なんだそれ?
「grill」って英語で「質問攻めにする」とか「厳しく問い詰める」って意味なの。「grill me=私を詰めて」ってお願いするのよ。
おお、攻めてもらうのか。
ポイントはね、最初に「肯定は要らない、弱点・盲点・前提の崩れだけを指摘して」って枠をはめること。
それだけで挙動が変わるのか?
かなり変わる。AIは枠をはめれば素直に詰めてくる。
ところで、ある人がコンセプトについてgrillmeをお願いして、ひどい目にあったらしいんだぜ。
そうなのよ。「興味本位でうっかりやったらここまで大変とは…」って言ってたわ。
最後まで答えたらどうなったんだ?
コンセプトが一段深くなった気がした、って。
おお、痛いけど効いたのか。
そして本人いわく、これって剥がされたっていうより「言語化を強要された」んですって。
ニュアンスが違うんだな。
頭の中でモヤッとしてたものを、外に出せる形に圧をかけて押し出させる、っていう感じ。
知識が追加されたんじゃなくて、解像度が上がるってやつだな。
そう。元々あったけど形になってなかったものが言葉を得る。「分かってるつもりの曖昧な領域」が「ちゃんと分かってる領域」に昇格するのよ。
ソクラテスの境界線の話と繋がるな。
そういうこと。grillmeは、自分一人じゃ引けない境界線を、AIに引かせる作業なの。

コンセプトだけじゃなくシステムにも

grillmeって、コンセプトみたいな抽象的なやつだけ?
それが面白いところで、作ったプログラムやシステムに対してやるのもアリなのよ。
おお?
例えばAIからこんな問いが飛んでくる:
  • 「このコードの前提が崩れる入力を10個挙げてみて」
  • 「このアーキテクチャで一番壊れやすい場所はどこだと思う?」
  • 「半年後にこれを引き継いだ人が最初に困るポイントは?」
  • 「セキュリティとデータ整合性で見落としてそうなところは?」
  • 「この設計判断、別の選択肢と比べたトレードオフを説明して」
どれも答えるの大変そうだぜ。
でも、コードに対するgrillmeは具体的だから、コンセプトのgrillmeより精神的にはマシ。しかも実害が出る前に剥がしてもらえる、コスパいいの。
予防接種みたいなもんだな。

痛みすぎないための使い方

ただし、いきなりフルスロットルでgrillmeすると、心が折れるのよ。
うっ、それは困るぜ。
特に初学者とか、自信がない領域ほど削られる。だから、いくつか安全装置が要るの。
ふむふむ。
ひとつめ、痛みのレベルを指定する。「優しめに」「重要な3点だけ」「初学者向けに」みたいに、最初に枠をはめる。
それだけでも違うのか?
かなり違う。AIは枠通りに動くから。
ふたつめ、「分からない」が出たら一緒に考えるモードに切り替える。詰められて答えられなかったとき、放置されると詰みになっちゃうから、「ここは答えられない、一緒に考えて」って言える設計にしておくの。
詰められっぱなしじゃ折れるな。
みっつめ、範囲を絞る。コードベース全部に対してgrillmeすると死ぬから、「この関数だけ」「このAPIだけ」みたいに対象を絞る。
最初は小さく試すんだな。
そう。grillmeは強いから、薄めて使うのがコツ。
最後に、答えられなかった部分をログに残す。後で読み返すと、自分の境界線がどこだったか見える。
復習用の地図になるな。
そう。痛かった部分こそ、認知負債が溜まってた場所だから、後から読み返す価値があるのよ。

着地点

ここまでの話、最終的にどう着地するんだ?
凡人がAI時代を生き抜くための、地味な処方箋、ってことになるかしら。
地味、ってのは?
派手な「AIを使いこなす方法」でも「全てを理解せよ」でもなくて、自分の境界線を正直に引き続けるっていう、ソクラテスの2500年前のやつ。
紀元前から変わってないんだな。
変わってないの。ただ、AI時代の新しい要素がひとつあって。
なんだ?
自分でソクラテスを雇えること。
おお?
AIに「grillmeして」と頼めば、自分の境界線を剥がしにくる他者が、いつでも手に入る。人間のメンターは昔からいたけど、安価に、無限に、24時間付き合ってくれるのは新しい話。
人間相手だと、そんな容赦ない人をいつでも捕まえるのは難しいもんな。
しかもAIは無限に付き合ってくれる。同じ質問を3回目に聞いても怒らないし、お願いすれば剥がしてもくれる。
ありがたい時代だぜ。
ただし、意図的に発動しないと剥がしてくれないっていう仕様だから、そこだけは覚えておく必要があるの。
放っておくと褒めてくるからな。
そう。だから「grillmeする習慣」自体を、認知負債と付き合うための基礎装備として持っておく。
ところでさ、grillmeさえやってればOKなのか?
いや、そんな銀の弾丸はないわよ。grillmeも万能じゃなくて、AIが問いやすい問題に偏ったり、出てきた指摘の重要度を判断する力は別途要ったりする。
そりゃそうか。
ただ、何もしないと褒められて終わりだから、やらないよりはずっとマシって話ね。
痛いけどな。
痛いけど、それが認知負債の返済なんだぜ。
そう。利息で首が回らなくなる前に、ちょっとずつ返していきましょ。
ゆっくりしていってね!
またなー。

ゆっくり閑話:ブレる自分はダメなのか ― 中央値のAIとフラジャイルな人間

ゆっくりしていってね! 今日はAIと人間のブレについて、ちょっと面白い話があるのよ。
最近、生成AIで議論してたら思いがけないところに着地したんだぜ。
順番に見ていきましょうか。

「コーディングは決定的だった」って本当?

まず最初の問いはこれよ。「昔のコーディングは決定的だったけど、生成AIで非決定的になった」っていう話、聞いたことない?
同じ入力に同じ出力が返ってくるのが決定的、違う出力が返ってくるのが非決定的だな。
AIは確率的に動くから、同じプロンプトでも毎回違う答えが返ってくる。だから非決定的、と。
ふむ、それで?
で、ある人が思ったのよ。「あれ、自分は生成AI以前から結構ブレてたぞ」って。
お、自己分析だな。
同じ仕様を渡されても、その日の気分とか体調とかで違うコードを書いてた、と。
ああ、それは普通にあるぜ。月曜の自分と金曜の自分は別人だしな。
下手すると生成AIよりブレてた、って。
身も蓋もないぜ。
ここで気づきがあるの。じゃあ昔のコーディングが決定的だったのって、どういうことなのよ?
うーん、書かれたコードの実行は決定的だな。一度コードが固まれば、機械は同じ動きをする。
でも「コードを書く過程」は昔から非決定的だったってこと?
そうなるな。同じ仕様でも開発者ごとに違うものが出てくるしな。
ということは、決定的だった時代なんて本当はなくて、首尾一貫した判断ができる優秀な開発者が、辛うじて決定的に近い状態を作っていただけ、ってことになるのね。
現場の実態を、優秀な人がカバーしてただけだぜ。

AIのブレと人間のブレは違う

で、ここからが面白いんだけど、AIのブレと人間のブレって、種類が違うのよ。
ほう、どう違うんだ?
人間のブレは、気分とか疲れとか、前の打ち合わせの影響とか、色々な要因で大きく揺れるの。
昨日課長に怒られた次の日のコードレビュー、めっちゃ厳しくなるやつだな。
それそれ。文脈に大きく依存するの。
で、AIは?
AIのブレは、学習した分布の中からのサンプリングなのよ。だから極端には外さなくて、「中央値あたり」に寄ってくる。
ほう、平均的な答えが返ってくる、ってことか。
だから「調子の悪い日の自分」と「AI」を比べると、AIのほうが安定してることが普通にあるのよ。
自分よりAIのほうがマシ、って感じるやつだな。ちょっと切ないぜ。
でも、これは理にかなってるの。AIは中庸を返すように作られてるんだから。

ブレることに意味はある?

でも待ってくれ、人間のブレって全部ダメなのか?
いい質問ね。実はそうじゃないのよ。
お、というと?
人間のブレには、「昨日と今日で意見が変わった」=「その間に考えが進んだ」っていう、前進としてのブレが混ざってるの。
ああ、ブレてるんじゃなくて、更新されてる、ってことか。
そう。何かを経験して、それで何かが少し変わった。その差分がブレとして現れてるの。
これはAIにはやりにくいんだろうな。
AIはセッションをまたぐと均しちゃうから、原理的に出しにくいのよ。
同じ平均に戻ってきちまうんだな。
だからね、こういう役割分担が見えてくるの。
ふむふむ。
「安定したベースライン」としてのAI、「揺れながら更新していく」自分。役割が違うものとして使い分けると、自分のブレにも意味が出てくる。
敵じゃなくて、組み合わせるんだな。

ここで枡野俊明さんが登場

ここで思いがけず、お坊さんの話が繋がってきたのよ。
お坊さん? いきなり何でだ?
枡野俊明さんっていう、お庭のデザインもされる住職さんがいてね。
住職で庭園デザイナー、二刀流かよ。
アジャイルジャパン仙台っていうソフトウェア開発のイベントで講演されたことがあって、nemorineさんの参加レポートでその様子を知ったのよ。
お坊さんとアジャイル、組み合わせ謎すぎるぜ。
そこで言葉遊びをされたの。「アジャイル→フラジャイル」って。
フラジャイル? 壊れやすい、揺れやすい、ってやつか。
そう。枡野さんはこう言ったの。「完全性に人間性が入り込む余地を残すのが、世代を超えていくデザインだ」って。
むむ、もうちょっと噛み砕いてくれ。
ヨーロッパは完全な美を目指すのよね。隙のない、完璧なやつ。
ベルサイユ宮殿みたいなやつか。
で、日本は「完全を越えた不完全の美」なんですって。
龍安寺の石庭みたいなやつだな。
完璧に詰め切ったものは、実は受け手が関与できる隙間がないの。完成した瞬間に閉じちゃう。
なるほど、見る側がやることがなくなるのか。
逆に、少しフラジャイルだから、人が手を入れたり、解釈が時代と一緒に更新されたりできるのよ。
未完成だからこそ、生き続けられる、ってことか。
枡野さんはこうも言ってるの。「常に移ろうものが世の中の真理である」って。
うーん、深いぜ。

人間のブレは「フラジャイルさ」だった

で、これがAIと人間の話とどう繋がるんだ?
ここがクライマックスよ。
お、来たな。
AIが「完全な美」側に立ったとき、人間のブレを「ダメな部分」として見るんじゃなくて、「フラジャイルさ」として捉え直せるの。
お、価値観が反転するな。
ブレてるからこそ、経験が入り込めるし、他者が関与できるし、自分自身も更新できる。
閉じてないからこそ、生き続けられる、ってやつだな。
自分のブレを「AIに比べてダメ」と感じるのは、もしかしたらヨーロッパ的な完全美の物差しで自分を測ってるだけかもしれない。
フラジャイル側の物差しで見ると、ブレは「移ろえている=生きている」証拠になる、と。
そういうこと。
ちょっと待ってくれ。これって最初の「決定的/非決定的」の話とも繋がるのか?
いいところに気づいたわね。繋がるのよ。
どう繋がるんだ?
「非決定的であること」を、「制御できない弱点」と見るか、「人や時間が入り込む余地」と見るか、で景色が変わるの。
アジャイル→フラジャイルの言葉の滑らせ方が、決定的→非決定的にも効くってことか。
同じ滑らせ方ができるのよ。

着地点と、入り口の話

最終的な着地はこうなったの。「中央値に寄るAI」と「ブレる人間」。
シンプルになったな。
AIの答えをそのまま採用するんじゃなくて、自分のブレを足し算する余地を残しておく、っていう使い方ね。
ちょうど枡野さんが、石や木の特性を読んで配置するのと同じだな。
素材としてのAIの特性(中央値に寄る)を理解した上で、自分のブレを意図的に組み合わせる。
敵対じゃなくて素材として見るんだな。
ところでさ、最初の「決定的/非決定的」って話、厳密には勘違いだったんだろ?
そうなのよ。コーディングが決定的だったわけじゃない、っていう。
でも、その勘違いから始めたからこそ、ここまで来れたんじゃないか?
鋭いわね。最初から正しい定義で始めていたら、定義の中で完結しちゃってたかも。
正解の中には、外に出る扉がないってことか。
少し外した言葉、隙のある言葉から始めたから、「あれ、本当はどうなんだろう」を辿るうちに、思いがけないところに連れて行かれた。
議論そのものがフラジャイルだったんだぜ。
うまいこと言うじゃない。
だろ?
だからね、結論としては、ブレることや揺れることは、ダメなことじゃないかもしれないってこと。
むしろ生きてる証拠、入り込む余地、進む扉、ってことだな。
ゆっくりしていってね!
またなー。

ゆっくり閑話:「面倒くさい」は高機能なシグナル? ― AIエージェントと開発するときに考えたいこと

魔理沙、最近AIエージェントで開発してるって聞いたわよ。CodexとかClaude Codeとか色々あるけど、どれを使えばいいのよ?
それな、開発スタイルによって変わるんだぜ。今日はそのへんの話と、最近一番考えてる「面倒くささ」の話をしていくぜ。

小さいバッチで一気通貫したい派

俺は調査・設計・実装・テストを一気通貫で、こまめに回していくスタイルが好きなんだぜ。
小さいバッチってやつね。アジャイルっぽいかしら?
そうだぜ。長くアジャイルやってきたのもあるんだが、何より大事なのはレビュー量が少なく済むことだ。
レビューって、そんなに大事?
一番大事と言ってもいいくらいだぜ。普通でも目が滑るのに、量が増えると承認ロボットになっちまう。
あー、AIが書いた大量のコードをペタペタOKしてるだけ、みたいな?
それだ。レビューが品質ガードとして機能しなくなったら、もうAIに任せる意味がないぜ。途中でやり直すハードルも低いし、ふりかえりで全体のプロセスを改善しやすいのも小バッチのいいところだな。

CodexとClaude Code、設計思想が違う

で、CodexとClaude Codeってどう違うのよ?
設計思想がけっこう違うんだぜ。Codexは「人間が仕様をしっかり渡して、エージェントが裏で長時間・並列にコードを書く」方向に振ってある。
Issueを割り当てたら勝手にPR作ってくる、ってやつかしら。
そうだ。実装スループットの最大化に振った設計で、「人間のレビュー帯域より実装側がボトルネック」っていう前提に立ってるな。
ちょっと待って魔理沙、それって魔理沙のスタイルと真逆じゃない?
ああ、真逆なんだぜ。並列で大量にPRが上がってくる嬉しさは、小バッチ派には苦しさになる。承認ロボット化リスクは、むしろ上がる方向だ。
なるほどねえ。じゃあ小さいバッチで回したい人は、対話の文脈を持ち続けてくれる相棒のほうが合ってる、と。
そういうことだぜ。実装だけ別のエージェントに切り出すと、ふりかえりで「なぜこうしたんだっけ」が辿れなくなる。判断ログが別の頭の中にしかないからな。

でもCodex的なやつが刺さる場面はある

じゃあCodex的なのは使えないってこと?
いや、刺さる場面はあるぜ。仕様がカチッと決まってて、似たような実装タスクがたくさんあるときだな。
例えば?
ライブラリやフレームワークのバージョンアップ対応。migration guideに変換ルールが明文化されてて、grepで適用箇所が機械的に拾えて、テストが通れば正解判定もできる。
人間がやると退屈で集中力が切れて見落とすやつね。レビューも「同じ変換ルールが適用されてるか」を確認するだけだから、目が滑りにくそう。
変換ルールという「正解」が明確だから、承認ロボット化リスクが構造的に低いんだ。あとは単純なCRUDの量産とかな。お手本があって横展開するだけ、って構造だ。
……魔理沙、なんか含みのある言い方じゃない?

「面倒くささ」は高機能なシグナルだった

ここからが今日いちばん話したかったことだ。「CRUDを量産する」って、ほんとにいいことなのか?って話だぜ。
どういうこと?
手で書くときの「面倒くささ」って、実は設計を見直す機会として機能してたんじゃないかと思うんだぜ。「また同じようなコード書いてるな」「この構造、なんか無理してないか?」って、不快感として身体が勝手にアラートを鳴らしてくれてた。
意識的に分析しなくても、痛みが教えてくれる、と。
そうだ。でもAIで摩擦がゼロになると、その自然なブレーキが効かなくなるんだぜ。
ちょっと待って魔理沙。それってただの懐古趣味じゃないかしら?「昔は良かった」みたいな話に聞こえるわよ。
いい突っ込みだぜ霊夢。でも違うんだ。痛みが消えるだけならまだいい。怖いのは「サクサク進んでる」っていう気持ちよさに置き換わることなんだ。
あ……フィードバックの符号が逆転するのね。
実際にはコードベースが歪な方向に拡張されても、体感は気持ちいい。これは怖い話だぜ。

テストの書きにくさも、同じ構造

似た話で、テストの書きにくさも同じじゃない?
お、霊夢いいところに気づいたな。「テストが書きにくいクラスは設計が悪い」っていう古典的な経験則だ。
AIに「とりあえず動くテスト」を書かせ続けると、書きにくさって情報が握りつぶされちゃうわよね。
設計の歪みが見えなくなるんだ。面倒くささも書きにくさも、どっちも「設計を疑え」っていうシグナルなのに、AIが先回りして消してしまう。

摩擦を全部消そうとしない

でも魔理沙、結局それってAIガッツリ使ってる側の自己満足じゃないの?「面倒くささを残してる自分はエラい」みたいな。
うっ……痛いところを突くな霊夢。だが俺が言いたいのは「面倒くささを残せ」じゃなくて「何が面倒か、自分に聞いてみよう」なんだぜ。残すかどうかはその次の話だ。
ふぅん。自動化する前に、一回シグナルを受け取ろう、ってことね。
そうだ。早く書けることそのものより、「今、自分が何を面倒に感じてるか」への感度を保つほうが大事だと思ってるぜ。
小さいバッチで一気通貫っていう進め方も、その感度を維持しやすいスタイルってことかしら。
そういうことだぜ。バッチが大きいと、面倒くささを感じる前にAIが先回りしちまうからな。ツール選びも進め方も、結局は「何を自動化して、何を自分のところに残すか」の判断なんだ。

で、これを読んでるアナタはどうなのかしら?
最近、何か「面倒くさい」って感じたことあるか? それ、何を教えてくれてたと思うぜ?

ゆっくり閑話:LLMに「粘り」を持たせる

Claudeさんと話したことを「ゆっくり閑話」として残してみることにしました。

今回のテーマは「粘ること」について。

よう霊夢、最近思ってることがあってな。LLMをうまく使うっていうのは、たぶん「いつ粘らせて、いつニュートラルに動かすか」を設計することなんじゃないかって話だ。
粘らせる? なんかLLMっぽくない言葉ね。
そうなんだぜ。でも、これが結構効いてくる話なんだ。今日はその話をしたい。

まずは「粘り」って何の話か

粘りって、どういう粘り?
たとえばLLMに難しいパズルを解かせるとするだろ。普通にプロンプトを書くと、ちょっと考えて「答えがわかりません」って言って終わる。でも、ある工夫をすると、LLMが諦めずに考え続けて、正解率が三倍以上になるって研究があるんだ。
三倍? それはすごいわね。何を工夫したの?
ここが面白くてな。プロンプトにこう書いたんだ。
あなたはハーバード、イェール、スタンフォードで博士号を取った天才パズルソルバーだ。FBIがあなたをヘリコプターで連れてきた。テロリストが子供病院に爆弾を仕掛けて、このパズルを解かないと無実の子供たちが死ぬ。
……えっ、何それwwww 真面目な研究なの?
Loyola Law SchoolのColin Doyleって人が2024年に書いた「LLMs as Method Actors」って論文だ。真面目な論文だぜ。GPT-4oで、普通のプロンプトで27%しか解けなかったConnectionsパズルが、この方式で86%解けるようになった。
信じられないわ。なんで爆弾が出てくるとそんなに変わるのよ。
著者の観察では、こういうシーン設定をすると、LLMが「答えがわかりません」って諦める頻度が劇的に下がって、出力をより多く使って考え続けるようになったんだ。
パニックになって正解を出す、みたいな話?
そこなんだ霊夢、そう見えがちだけど違うんだぜ。焦りや恐怖を引き出してるんじゃなくて、「ここで切り上げてはいけない場面なんだ」っていう信号を強く送ってる。引き出されてるのはパニックじゃなくて、粘り強さなんだ。

なぜ粘りが必要なのか

でも、どうしてそもそも粘りが要るの? 普通に答えればいいじゃない。
いいとこに気づいたな霊夢。LLMには、放っておくと早めに切り上げたがる傾向があるんだ。
なんで?
訓練データの大半が「適切な長さで完結した応答」だからだ。だらだら考え続ける文章ってのは、訓練データに少ない。だからLLMは「もう一段深く考える」っていう動機を、訓練分布から弱い形でしか受け取ってない。
ああ、平均的な会話のリズムに引きずられるってことね。
そう。そして難しい問題ほど、その「もう一段深く考える」ところに正解が隠れてる。最初に思いついた答えがもっともらしいと、人間でもそこで思考停止する。LLMでも同じことが起きるんだ。
確証バイアスみたいなやつ?
それに近い。シーン設定っていうのは、その「平均的に切り上げたがる」傾向を上書きするための仕掛けなんだぜ。

ところが、どんな場面でも効くわけじゃない

じゃあ、どんなプロンプトにも爆弾を入れればいいのね!
待て待て霊夢、そう簡単な話じゃない。実は2026年に出た研究で、衝撃的な結果が出てるんだ。
衝撃的?
PRISMっていう論文でな。「あなたはエキスパートです」みたいなペルソナプロンプトを8種類のタスクで試したら、5つでは性能が上がったが、3つでは性能が下がったんだ。
下がるって、どんなタスクで?
数学、コーディング、人文系の暗記知識。MMLUっていう知識テストでは、ベースラインが71.6%だったのが、ペルソナを足すと68.0%、長いペルソナだと66.3%まで落ちた。
ペルソナを詳しくすればするほど悪くなるの?
そうなんだ。これがミソでな。

なぜ「エキスパート」だと事実を間違えるのか

なんで詳しくしたら悪くなるのよ。詳しい方が良さそうじゃない。
論文の説明がすごく鋭くてな。エキスパートペルソナを与えると、LLMの中で「指示追従モード」が活性化するんだ。トーンとスタイルを優先するモードに切り替わる。
それで何が起きるの?
モデルは事前学習で覚えた知識を引き出すリソースを失う。「エキスパートっぽく振る舞う」ことに集中しすぎて、本来の知識想起が邪魔されるんだ。
演技に夢中になりすぎて、肝心の事実を忘れるってこと?
まさにそれだぜ。論文はもっとキツい言い方をしてる。「You are an expertプロンプトは、モデルに『正しいこと』より『正しそうに聞こえること』を優先させる」と。
ああ、それはわかるわ。人間でもいるもの、知ったかぶりで権威ぶる人。
しかも面白いことに、新しいモデルほどこの罠にハマりやすいらしい。指示追従に最適化されたモデルほど「操舵しやすい」けど、その分だけ事実精度の低下も大きくなる。

「迫真性」が効くタスク、効かないタスク

あれ、ちょっと混乱してきたわ。爆弾シナリオは効くのに、エキスパートはダメなの?
ここを整理するのが大事なんだ。両方の研究を並べると、すごくきれいなパターンが見えてくる。
パターン?
迫真性が効くのは、探索が必要なタスクなんだ。Connectionsパズルみたいに、明確な正解への道筋が見えてなくて、複数の仮説を立てて消去法で絞り込むようなやつ。
逆に効かないのは?
事実想起が必要なタスクだ。数学の計算、APIの正しい使い方、歴史的事実の暗記。こういうのには、迫真性が邪魔になる。
探索と事実想起ね。
そう。探索では「諦めずに考え続ける粘り」が結果を左右する。事実想起では「正確に思い出す集中」が結果を左右する。必要な認知モードが違うんだ。
人間でも、深く考える時とテストで暗記を引き出す時って、別の集中の仕方をするものね。
その通り。LLMでも同じことが起きてるんだ。

ソフトウェア開発に当てはめると

ねえ魔理沙、これってコーディングの話とどう繋がるの?
ここが今日一番話したかったところだぜ。ソフトウェア開発の工程を、この目線で分解するとな。
うん。
まず仕様が明確になった後のコーディング。これは事実想起に近い性質を持つ。正しい構文、正しいAPI、正しい型。ここに迫真性を足すと、むしろ精度が落ちる可能性すらある。
たしかに「あなたは天才プログラマーです」って言ってもバグが減るとは思えないわね。
一方で、調査・計画・真因追求。これらはConnectionsパズルの構造にすごく近いんだ。
どういうこと?
真因追求を考えてみろ。最初に思いついた原因仮説が「もっともらしく」見えると、そこで思考が止まる。表層的な原因で満足して、本当の原因にたどり着かないまま終わる。
ああ、「キャッシュが古かったから」で済ませて、なんでキャッシュが古くなるかを追わない、みたいな。
そう。そこで止まらずに「もう一段深く問う」粘りが、結果の質を決定的に左右するんだ。調査も同じで、最初の検索結果で満足するか、反証も探すかで全然違う成果になる。
計画もそう?
計画は特にそうだぜ。楽観的なハッピーパスだけ並べて満足するか、失敗ケースを真剣に想像するかで、計画の質がまるで変わる。

フェーズごとに「演出」を変える

つまり、開発の工程ごとに、LLMへの接し方を変えるべきってこと?
その通り。私はこう整理してる。探索フェーズには、リッチなシーン設定で「諦めない俳優」を演じさせる。調査、要件分析、設計の検討、真因追求、振り返りがここに入る。収束フェーズには、シーン設定を外して「正確性に集中する技術者」として動かす。仕様確定、コーディング、テスト、レビューがここに入る。
そして、その間でペルソナを切り替える、と。
そうなんだ。一つのスキルやワークフローの中で、フェーズが切り替わるタイミングでペルソナも切り替える。これが2026年時点での最適解に近いと思うんだぜ。

各フェーズに合った「シーン」とは

探索フェーズに迫真性が効くのはわかったけど、爆弾シナリオを毎回使うわけにはいかないわよね。
そこも工夫のしどころでな。それぞれのタスクが要求する「粘りの種類」に合わせてシーンを設計する必要があるんだ。
たとえば?
真因追求なら、必要な粘りは「もっともらしい仮説に飛びつかず、もう一段深く問う」粘りだ。だからシーン設定はこうなる。
あなたは事故調査委員会の主任調査官で、表面的な原因報告で済ませると同種の事故が3年以内に再発することを統計的に知っている。最低5回「なぜ?」を問うまで、調査を終わらせてはいけない。
おお、なんか効きそう。
調査の場合は「自分に不利な情報も探す」粘りが要る。
あなたは敵対的なレビュアーが待つ研究者で、自分の仮説に有利な情報だけを集めて発表すると、レビュアーから「反証となる情報を探したのか」と必ず問われる。提出前に、自説に不利な情報を最低3つ見つけておく必要がある。
研究者の世界の緊張感を借りてくるのね。
計画の場合は「失敗ケースを想定する」粘りだ。これは「プレモータム」っていう手法を借りてくる。
あなたはこのプロジェクトが半年後に失敗した世界からタイムスリップしてきた。失敗の原因となった3つの落とし穴を、現在のチームに警告する立場にある。
なるほど、未来から来た自分っていう設定で、楽観バイアスを破るのね。
そう。爆弾シナリオの本質を、それぞれのタスクに合わせて翻訳してる。

「真剣さ」は具体的な情景で伝わる

なんかさっきから思ってたんだけど、こういうセリフって、長年やってきた人にしか書けない気がするわ。
鋭いな霊夢。そこがまさに本質なんだ。
「同種の事故が3年以内に再発する」って統計を持ち出すのも、「反証となる情報を探したのか」って問いも、経験のある人じゃないと出てこないわよね。
そうなんだぜ。「丁寧にやってください」とか「重要なタスクです」って言葉は、訓練データの中で使われすぎてて、実質的な信号になってない。逆に「表面的な原因報告で済ませると同種の事故が3年以内に再発する」みたいな具体的なセリフは、その人が実際に再発事例を何度も見てきたから書ける。
認知科学に「暗黙知」って概念があるって聞いたことがあるけど、あれね。
マイケル・ポランニーが言った「我々は語れる以上のことを知っている」ってやつだ。達人ほど自分のやってることを言語化できない。長年染みついた判断は意識の下に潜ってて、本人にも見えてない。
でも、それを言語化できる人がいたら……。
その人が書いたシーン設定は、訓練データには絶対に存在しない、その人だけが書ける文章になる。そして、それがコピーされて何百万、何千万のLLMセッションで再生される。
一人の弟子じゃなくて、無数の弟子に同時に伝授するってこと。

LLM時代の新しい職能

私が今、一番面白いと思ってるのはここなんだ。長年の経験があり、自分の判断を内省できて、具体的な情景を語れる物語的感性を持つ人——この三つの交差点にいる人の価値が、これから爆発的に上がる気がしてる。
「優れた職人」と「優れた指導者」の交差点ね。
職人の世界でも、技は超一流だが弟子を育てられない人と、そこそこの腕だが何人もの弟子を育てた人がいて、業界への貢献は後者のほうが大きかったりする。LLM時代には、後者のタイプの価値が一気に跳ね上がるんじゃないかと思うんだぜ。
自分の暗黙知を発掘するのって、どうすればいいのかしら。
認知科学に「認知的タスク分析」って手法があってな。こんな問いを使うんだ。最近、後輩のコードレビューで違和感を覚えた瞬間を3つ思い出してください、その違和感の正体は何でしたか? 過去に大きく失敗した実装を一つ挙げて、当時の自分に何と声をかけたいですか? 同僚が「これでいいですよね?」と聞いてきて、あなたが「いや待て」と止めた最後の場面はいつですか? 何が引っかかりましたか? ——みたいな問いだ。
具体的な場面を思い出させる問いね。
そう。普段意識してない判断基準が、具体的な場面とともに引き出されてくる。そして、教える行為そのものが達人を成長させるっていう、徒弟制度が持っていた古典的な構造が、ここで復活する気がするんだぜ。

残る難しさ

でも、達人の言うことが全部正しいとは限らないわよね?
いいとこに気づいたな霊夢。長年やってきた人の判断には、過去の制約に最適化されすぎた部分や、世代特有の思い込みも混ざってる。
それを絶対の正解として書き下すと、硬直化しちゃう。
そこが爆弾シナリオの面白さの一つでもあってな。あれは「ドラマ」であって「教義」じゃない。聞き手の解釈の余地を残してる。
具体的な逸話として語って、判断はLLM側に委ねる、と。
それがたぶん、職人が弟子に技を伝えるときの伝統的な作法と同じなんだぜ。AI時代に再発見される古い知恵だ。

結局、何が大事なのか

ねえ魔理沙、今日の話のポイントってなんなの?
三つあると思うぜ。一つは、LLMの全タスクに迫真性を足すのは間違いだってこと。事実想起が必要なところでは、むしろ邪魔になる。
二つめは?
探索と収束で必要な認知モードが違うってこと。これは人間でも同じで、深く粘り強く考える時間と、正確に手を動かす時間を、達人は意識的に分けてる。LLMでも同じ設計が必要だ。
三つめは?
粘りを引き出すシーンを書ける人の価値が、もしかしたらこれから上がるかもしれないってこと。それは長年の経験を、具体的な情景として翻訳できる人だ。
「同種の事故が3年以内に再発する」って統計を持ち出せるような人ね。
そういう人が、これからの世界でいちばん貴重になるかもしれないぜ。なんというか、AI時代にもっとも価値が出るのは、最先端のテクノロジーじゃなくて、人間が長年蓄積してきた「人に教える技」そのもの——っていう逆説が成立しそうで、そこに私はワクワクしてるんだ。
あんたにしては珍しく真面目な締めね。
たまにはな。

ゆっくり閑話:自分の野望を会社の仕組みを使ってデプロイする

Claudeさんと話したことを「ゆっくり閑話」として残してみることにしました。

今回のテーマは「自分の野望を会社の仕組みを使ってデプロイする」について。

オープニング

今回は「自分の野望を会社の仕組みを使ってデプロイする」について説明してみるぜ
……野望? 会社の仕組みを使って? それ、なんか怒られそうじゃない?
最初そう思うよな。だがちょっと待って聞いてくれ。これは私利私欲の話じゃなくて、仕事を続ける燃料の話なんだぜ
燃料?
そう。組織の言葉だけで動いてる仕事って、組織の優先順位が変わった瞬間に止まるんだ。でも下に個人の何かが流れていれば、形を変えても続く。その「個人の何か」を野望って呼んでるだけだぜ

具体例から入る

抽象的でわからん
だよな。例えばの話だ。ある55歳の人がいてな、20年くらい「何がやりたいかよくわからん」ってうろうろしてたらしい
20年も?
20年もだぜ。で、ようやく最近、自分の野望が言葉になった。「アジャイルの偉大な習慣を、次の世代に伝えたい」ってな
ふーん。仕事と関係あるの?
その人の仕事は開発者の育成だ。野望と仕事、結構重なってるんだぜ
たまたまハマったってこと?
そう見えるかもな。でも本人いわく、ハマったのは結果で、そこに辿り着くまでに会社の仕組みをずっと借りてたらしい。研修の枠、メンバーとの関係、予算、社内の信頼。これ個人で集めようとしたら何年かかるかわからん
で、それを「デプロイ」って言ってるの?
そうだぜ。会社のインフラに自分の野望を載せて、現場に届ける。一人で叫ぶより、桁違いに遠くまで届くんだ

霊夢のツッコミ:使われる側じゃないの?

でもさ、ちょっと待って
なんだぜ?
「使う」って言うけど、会社の方が立場強くない? 人事も評価も予算も全部向こうが握ってるでしょ。気づいたら「使われてる」になりそう
鋭いところを突いてくるな。実際そうなんだ。でもその人はこう言ってた。「使われたになるなら、私の野望がそこまでクリアじゃなかったってことだ」
……自分の責任ってこと?
そういうことだぜ。組織のせいにせず、野望の解像度を上げ続ける。これが鍵らしい
解像度ってどうやって上げるのよ
良い問いだぜ。それが今日の本題に近づく

三つの条件

野望を会社の仕組みでデプロイするには、三つの条件が要るんだ
三つも?
一つ目、自分の野望が言葉になっていること
ぼんやりしてたらダメ?
ぼんやりしててもいい。ただ、ぼんやりしたまま組織に乗せると、組織の言葉に書き換えられて返ってくる
二つ目、会社のリソースに自分から手が届くこと。予算、時間、ネットワーク、ブランド、データ。これ、令和の組織は意外と開けてくれてる場合が多いんだぜ
なるほど
三つ目、両者を翻訳できる経路を持っていること。野望を組織の言葉に、組織の課題を野望の一部に変える筋道だぜ
三つ目が一番難しそうね
その通りだぜ。多くの推進活動が途中で止まるのは、ここの翻訳経路がないからだ

綺麗なデッキの罠

ねえ、ちょっと話変えていい?
どうした霊夢
推進チームってさ、インセプションデッキとか作るじゃない。あれ、すごく綺麗にまとまってることが多いのよ。組織の方向性に沿ってて、誰からも文句が出ない感じの
あー、それな。今日の話の核心に近いんだぜ。それで思い出した漫画があるんだ
漫画?
徳光康之先生の『濃爆おたく先生』ってマンガでな、こんなセリフが出てくるんだぜ

「キサマが語っているのはSF考証であってSFそのものではない」

「そこにワンダーはカケラもない」

「他人の評価を恐れて自分が愛したものを否定するな」

……えっ、これってもしかして
そう、デッキも同じことが起きるんだ。考証は完璧、設定の不備もない、組織の方向性とも整合してる。でもそこにワンダーがない、ってことがある
ワンダーって、最初に「これすごい」って思った何か?
そうだぜ。本人が最初にときめいた何かが、考証の中で消えていく。設定バカになっていつしか守ってるのは「頭が良いと思われたい自分」だけになる、って漫画の中で描かれてるんだ
痛いわね……
もう一つ大事な台詞があるんだ。「『1』のデタラメをワンダーと感じさせるための『99』のSF考証は確かに必要だ。だがその逆では決してない」
順番の話?
そうだぜ。考証が要らないとは言ってない。ワンダーが先で、考証は後。ワンダーを支えるための考証であって、考証のためのワンダーじゃない。順番を間違えると、99を積み上げても1が消える
なるほど……
綺麗なデッキは安全だが、燃えないんだ。組織の期待に沿う言葉だけで書かれてると、燃料が外注になる。組織の優先順位が変わった瞬間に、推進ごと止まる
……あー
でも下に個人の野望が流れていれば、形を変えても続く。組織の言葉と個人の言葉、両方ないと、推進は耐久性がないんだぜ
自分の言葉を出すって、勇気いるけどね
いるな。でも出すというより、滲ませる、くらいでいいんだ

変えちゃいけない芯

でも野望って、組織に乗せたら変形しちゃわない? 数値化されたり、評価と結びついたり
それな。変形圧力は確かにある。だから「変えちゃいけない芯」を一つ、自分の中で言語化しておくんだぜ
芯?
全部守ろうとすると窮屈になる。逆に何でも譲ると野望が消える。だから、譲っていいものと譲っちゃいけないものの線を引いておく
例の55歳の人だと?
芯は「偉大な習慣そのもの」らしい。誰が伝えてもいい、ただし習慣の純度は譲らない、って感じだぜ
自分が伝えることじゃなくて、伝わる中身そのものなんだ
そう。芯を「自分」に置くと、組織が「他の人に任せたら?」と言ってきた時に揺らぐ。芯を「中身」に置けば、誰が伝えてもいいから柔軟に動けるんだぜ

ビッグバンを避ける

こういう話って、一気に組織全体にやろうとして失敗するイメージあるけど
そうだぜ。ビッグバンリリースは大体失敗する。アジャイルの作法と同じで、小さく出して、フィードバック受けて、調整する
野望のデプロイにアジャイル使うのね
そういうことだぜ。安全な場所で練習を積んで、徐々に難しい場所に持っていく。一気に全社に届けようとしないことだ
それって逃げじゃない?
逃げと戦術的後退の違いは、後で前進に戻れるかどうかだけだ。戻る前提で引いてるなら、それは戦略だぜ

まとめと、聞き手への問い

今日の話をまとめるとな
うん
野望をデプロイするってのは、自分の中の何かを、会社の仕組みに乗せて遠くまで運ぶことだ。それには三つ要る。野望が言葉になっていること、会社のリソースに手が届くこと、両者を翻訳する経路があること
綺麗なデッキだけだと持たないから、個人の言葉も滲ませる
そうだぜ。変えちゃいけない芯を一つ持っておく。ビッグバンは避けて、小さく続ける
……でさ、魔理沙
なんだぜ?
これ聞いてる人、自分の野望ってあるのかしら
良い問いだな。今日の本題はここだぜ。で、お前はどうなんだぜ
えっ私?
即答できなくてもいい。20年うろうろしてようやく見つける人もいるからな。でも、たまには自分のデッキに、組織の言葉じゃなくて、自分の言葉が混じってるか、確かめてみてもいいんじゃないか
……うん、考えてみる
今日はここまでだぜ。じゃあな!
またね〜