Cracking The Form Factor
勤務先で gemini-cli
が大流行の兆しを見せている。それまでも Copilot / Devin 的なやつはあり、わりかし使われていた。しかしgemini-cli
への熱狂はなんらかの壁を破っている。
これは世間での Claude Code をとりまく熱狂の鏡像である。Claude Code 以前も Devin や Cursor にはファンがいて、GH Copilot も広く使われていた。しかし Claude Code の破竹の勢いは次元の違いがある。自分ですら細々と使っている。
Claude Code はフォームファクターの正解を見つけたのだろう。 gemini-cli や Codex など競合による丸パクリも、この「正解を引き当てた」という見立てを裏付けている。「正解」が出てしまうと、まわりはマネするしか無い。
Claude Code は “agentic coding” の最終形態なのだろうか… はさておき、過去にあった「正解フォームファクター」に思いを馳せる。
TikTok のフルスクリーン縦長動画ストリーム (2016)。スマホで動画を冷やかすのにあたりこれに勝る UI なし。Instagram も YouTube もマネしている。
ソーシャルメディアの「正解フォームファクター」 はこれ以外にも色々知られている Twitter の timeline (2006) は一瞬で Facebook に (News) Feed としてマネされたほか、Facebook 自身の Like ボタン、あとソーシャルメディア自身の発明ではないが notification badge などもカウントできるだろう。
iPhone (2007). iPhone は沢山の正解をクラックしたので “iPhone” だけだと具体性がないけれど、タッチ UI や App Store などが真っ先に思いつくところ。
タブブラウザ (1990s). ワシの若い頃はブラウザにタブなんぞなかったもんじゃ… Chrome の切り離せるタブも発明だったけど、そこまで普及しなかったので「正解フォームファクター」には数えないでおく。
正解フォームファクターはエンドユーザ製品に限られない。
S3. S3 互換 API の普及は互換性のためだけでなく、URL と REST で(も)アクセセスできるオブジェクトストアというフォームファクターが正解を引き当てたせいもあると思う。これは REST という先人の肩に乗った面もあるけれど、REST の使い所を見出したのは偉かった。NFS 互換 API でもおかしくなかったわけだから。
Cloud Run. Docker container で serverless をする。Cloud Run が最初かどうかあまり確信はないが、どのクラウド業者にも似たようなサービスがある。これは AWS Lambda という先人の肩の上に立っているわけだが、コンテナによって Lambda のデプロイ先環境の不透明さが払拭され「正解」にたどり着いたのではないか。ただし職業バックエンドエンジニアからすると sidecar 欲しいとか色々異論はあるかもしれない。でもホビープログラミング環境としては正解。
Ruby Bundler. これ以降の言語は NPM なり Crate なり、似たような使い勝手になった。Python にもようやく uv がやってきた。Java の Maven や Perl のような先人の肩があるのは確かだけれど、Bundler はコマンドライン UX などを「正解」に押し上げた功績はある。ただ後発言語を完全制覇はできてないので、もしかしたら Yehuda Katz が特異点だっただけかもしれない。
Ruby Block 文法. それ単に lambda expression じゃねーのという人もいるだろうし、そこまで一般化はしてないので「正解」は言い過ぎかもしれない、けれど Lisp じゃないメインストリーム言語にスッと押し込んだのが偉い、と思う私は Kotlin プログラマです。
ぱっと思いつくのはこのくらい。でも「正解フォームファクター」はもっと色々あるはず。皆様も思いついたらどこかに書いてあげてくださいね。
追記: こんな記事もあった.
AI coding tools are shifting to a surprising place: the terminal | TechCrunch