AI時代の開発者は、石工から大工へ

From Stonemasons to Carpenters

AI時代の開発者は、石工から大工へ

祖父がカリフォルニアで橋やカルバートを建設していたとき、その職種は「大工」だった。コンクリート構造物でありながら、彼らは木製の型枠を組み、そこにコンクリートを流し込んでいた。著者はこの歴史を、AIによるコード生成がソフトウェア開発をどう変えるかの比喩として用いる。かつての開発者は石を積むようにコードを一行ずつ積み上げる「石工」だったが、これからはテストやドキュメント、ガードレールで「型枠」を作り、コードを生成させる「大工」になる。設計判断の影響が即座に見えるようになり、開発者はより本質的に「何を作るべきか」を問うプロダクトマネージャー的な役割を担うことになる。

歴史的に、開発は「本当の」仕事であり、プロジェクトマネジメントはどこか技術的でない、正当性が劣るものだという感覚がしばしばあった。しかし今や、すべての開発者が自分が作っているソフトウェアの境界やインターフェースに集中することを強いられ、内部だけを考えるのではなくなったため、本質的にすべての開発者が Product Manager になることを求められている。
  1. smalltorch

    私はこのアナロジーが好きだ。職業として大工をしていて、ここ数年、LLMのコード生成の進歩のおかげで、いくつか動くものを作ってみた経験があるからだ。

    大工として、頭の中から*何か*を思い描き、それをただ実在させる。LLMでの構築は、アイデアから特定の目的に合う動くものへとどれだけ素早く移行できるかという点で、とてもよく似ている。

    もっと正確なアナロジーは、ソフトウェアエンジニアを建設現場の監督に置くことだと思う。

    監督は何でも屋で、何かの達人ではない。配管、電気、HVAC、石工、大工を専門にすることもあるが、不足する部分は専門家に頼る。これらの職種のどんな問題でも直せるが、必要な時にだけだ。何かがおかしいと気づき、修正が必要だと分かる程度には知っている(自分で直せることもあるかもしれない)が、建設中に積極的に建てたり、一本一本の電線や木材を敷いたりはしない。

    LLMを操縦することは、大工だけよりもこれに近い。ソフトウェアは、言ってみれば一つの建物の中に多くの専門分野が集まったものだからだ。

  2. cladopa

    ローマ人も石の上に物を建てるのに大工を使った。ただ、木はずっと保存が難しいだけだ。

    スペインでは鉱山で複数の大きなフェリス井戸(訳注:水車用の井戸)や、岩を粉砕するのに使われていた機械の部品も見つかっている。水を使って岩を打ち砕く機械があり、木で作られていた。

    ローマ人はおそらく石を磨いて他の石と合うようにする機械も使っていただろう。彼らは何でもこの方法でやっていたし、それらの機械も木で作られていた。

    また、巨大な岩を持ち上げる機械があったことも分かっている。グリッパーが残した跡が見られるからだ。それも木で作られていた。

    そして石で作るすべてのアーチは、まず木で作る必要がある。ローマ人は同じアーチを使うのが好きだったので、木を再利用できた。ローマ人はすべてを標準化し、すべてが再利用または大量生産できるようにした。

  3. doodlebugging

    私は、石工が橋を架けるのに使った型枠を大工が作るというアナロジーが好きだ。

    ここや他のフォーラムのスレッドの多くの投稿を見る限り、今日のソフトウェア構築にかなり当てはまると思う。

    今日のソフトウェアプログラマはAIを使って、作りたい製品の枠組みを肉付けし、その枠をAIスラリー、つまりコンクリートで埋め、それが新しいアプリケーションになる。そこには不要なものもたくさんあるだろうが、スラリーが固まり製品が使用可能になれば、構造要素として機能する。そうした要素の中には、錆びた鉄筋が十分な時間をかけてコンクリート構造物を破滅させるのと同じように、製品を失敗に追いやるものもある。

この日のほかの記事

2026-09-19