新しい紙とペン、新しい芸術家

コードが中間生成物になるとき、ソフトウェアの作者は誰か

10分

半年近くにわたるエンジニアリングの実践で、私は自然言語、プロダクト文書、アーキテクチャ上の制約、実行結果、受け入れ時のフィードバックだけを通じて、Coding Agentとともに未公開のプロダクトを複数つくった。デスクトップアプリ、ブラウザ拡張機能、バックエンドサービス、データベースにまたがるものだ。

コードは一行も書かなかった。一行も読まなかった。

だからといって、プロダクトをAIに任せたわけではない。何を解決するのかを決め、システムがどう動くべきかを定義し、越えてはならない境界を判断し、結果が信頼できるかを確かめ、最後のソフトウェアに責任を負った。変わったのは、私と実装の間にあるインターフェースだけだった。

この経験から、以前は単純に思えた問いを考え直すことになった。コードを自分で書かなくても、作品を定義し、判断し、責任を負う人は、なおソフトウェアの作者なのだろうか。

この実践だけで、あらゆるソフトウェアを同じ方法で開発できるとは証明できない。未公開のプロダクトが市場で受け入れられることさえ、まだ証明していない。それでも、私たちが手がける種類のアプリケーションでは、Coding Agentは単にプログラミングを速くする補助ツールではなくなりつつある。計画、実装、テスト、修正、反復を続けるための、一つのエンジニアリングの道筋になり始めている。

重要な変化は、「AIがコードを書ける」ことではない。ソフトウェアをつくるうえで最も希少だったものの一つである実装が、少しずつ後景に退き始めたことだ。

実装がもはや最も希少な部分ではなくなったとき、人間の仕事は何になるのか。

本稿で考えたいのは、この問いである。

AIの境界は動いている

AIは、固定された言葉ではない。ある時代のコンピュータがまだ安定してできないことを、人はAIと呼びがちだ。能力が成熟し、日常のプロダクトに入ると、人はすぐにそれをAIだと思わなくなる。

私自身の歩みも、この境界に沿ってきた。中学と大学では、センサーとフィードバック制御を使い、経路追従、障害物回避、隊列協調を行う車輪型ロボットに取り組んだ。大学院ではコンピュータビジョンを研究する一方、創業間もないSenseTimeに初期の創業メンバーとして加わった。顔の生体検知や産業用ビジョンの技術を、スマートフォンや高速鉄道を含む大規模な用途へ展開する仕事に携わった。現在、汎用基盤モデルとそれが動かすAgentが、境界を再び前へ押し進めている。これらのシステムは、もはや個別の問題を解くだけではない。目標を理解し、ツールを使い、フィードバックに応じて行動を続け始めており、私の仕事もこうしたプロダクトへ移ってきた。振り返れば、動きを制御し、画像を理解し、タスク全体を完遂するまで、機械が担う仕事の連鎖は長く、より完全になり続けている。

したがって本稿でいうAIとは、主に汎用基盤モデルによって動くAgentを指し、Coding Agentはその代表例である。こうしたAgentは、より長い時間軸のタスクを自律的に実行し、徐々に自己進化し、さらには自らの後継を訓練する方向へ発展している。

2025年、Andrej Karpathyは「Vibe Coding」という言葉で、気軽な使い方を説明した。欲しいものをAIに伝え、生成されたコードを受け入れ、エラーが出ればAIに返し、コードの存在自体を忘れてもよいという方法である。[1] これは当時、私たちがAIを開発に使ってよいと考えていた範囲も正確に表していた。実験には使えるが、本格的なプロダクトを担わせるには足りなかった。

2026年の初め、その境界が動き始めたと私たちは感じた。Karpathyは後に、新しい働き方を「Agentic Engineering」と呼んだ。開発者はAIにコードを補完させるだけでなく、Agentを組織し、監督しながら、レビューと品質への責任を保つ。[2] 名前そのものは重要ではない。重要なのは、AIが一度ずつ提案する存在から、制約の中で継続して行動する存在へ変わり始めたことだ。

一部のソフトウェア制作者にとって、自然言語と文書はすでに、意図を表現する新しい言語になりつつある。

コードは中間生成物になりつつある

コンピュータの歴史は、抽象化の層を増やしてきた歴史でもある。

人は最初、スイッチや配線で機械を操作した。やがて機械語、アセンブリ言語、高級言語が生まれた。層が一つ増えるたびに、下の複雑さが隠され、人は自分の意図に近い場所で仕事ができるようになった。

Coding Agentは、もう一つの層を加える。それは不確実なスーパーコンパイラのようなものだ。従来のコンパイラは、形式が明確なプログラムを機械命令に変換する。Coding Agentは、人間の意図をインターフェース、データ、サービス、コードへ展開しようとする。

この違いは大きい。人間の言葉は曖昧で、要件はしばしば不完全であり、制約同士が衝突することもある。Agentは一つの文を機械的に唯一の正解へ変換できない。理解、計画、実行、動作、検証を繰り返すしかない。

自然言語がプログラミング言語に取って代わったわけではない。より正確には、自然言語と文書が人間の維持する意図の層になり、コードはAgentが生成・維持する実装媒体になりつつある。

その意味で、コードは中間生成物に近づく。しかし「中間」は「重要ではない」という意味ではない。コードは今後も、正しく、安全で、保守できなければならない。ただ、人間が一行ずつ書き、一行ずつ読む必要がなくなるかもしれない。多くのプログラマーはコンパイラが生成する機械語を確認しないが、プログラムの動作には責任を負う。

これは、何を明確に書くべきかを変える。

以前、文書はコードの説明であることが多かった。私たちの実践では、この関係が逆転し始めている。文書に基づいてコードが生成され、検証されることが増えた。プロダクトはなぜ存在するのか。システムはどう動くべきか。どの境界を越えてはならないのか。何をもって完成したと証明するのか。こうしたものが、本当の源になりつつある。

コードを自分で書かなくなっても、正確に表現する必要は減らない。むしろ増える。曖昧な考えは、以前なら長い実装の途中で行き詰まった。今ではAgentが、それを素早く、動くけれど間違ったシステムにしてしまう。

AIは、考えることを免除しない。実装の忙しさで、考えの曖昧さを隠しにくくするだけだ。

「紙とペン」のもう半分

2025年、王堅はAIを人類の「新しい紙とペン」にたとえた。思想そのものではなく、人間の思想を拡張するものだという。[3] 私はこの比喩が好きだ。

そこには興味深い歴史的な対称性がある。1948年、Alan Turingは、紙と鉛筆と消しゴムを持ち、一組の規則に厳密に従う人の行動を、万能機械のように見なせると考えた。[4] 当時、人は紙と鉛筆を使って、人間が機械を模倣する様子を説明した。80年近くたった今、向きが逆になったように見える。機械が新しい紙とペンとなり、人の意図を、動く世界へ展開するのを助け始めている。

この比喩から、大学時代も思い出す。睡眠を除けば、時間の三分の一ほどをソフトウェアいじりに使っていたと思う。OSをインストールし、環境を設定し、道具を学び、それから自分がつくりたいもののデモをつくった。その過程は楽しかったが、創造そのものより、創造の準備に多くの時間を使うことも多かった。紙を探し、顔料をつくり、筆を直し続ける画家のようだった。

AIを新しい紙とペンと呼ぶのは、何でもできるという意味ではない。紙は小説を書かず、顔料はよい絵を描かず、カメラはよい映画を撮らない。道具は表現のコストを下げるが、何を表現する価値があるかまでは決めてくれない。

Coding Agentは紙とペンよりはるかに能動的だ。提案し、タスクを実行し、限られた範囲で選択もする。しかし、作品の目的と結果に責任を負えないかぎり、参加が増えただけで作者になるわけではない。

私が関心を持つのは、「新しい紙とペン」のもう半分である。

新しい紙とペンがあるなら、どのような芸術家が必要になるのか。

芸術は一つ上の抽象化層へ移る

プログラマーが芸術家だという考えは、新しくない。

1974年、Donald Knuthは「Computer Programming as an Art」で、プログラミングになぜ知識、技能、創造性が必要なのか、そしてなぜ美しいものを生み出せるのかを説明した。[5] 2003年、Paul Grahamは「Hackers and Painters」で、ハッカーも画家も「ものをつくる人」だと論じた。ソフトウェア制作者にとって、コンピュータは画家にとっての絵の具、建築家にとってのコンクリートと同じ表現媒体である。[6]

AIがプログラマーを初めて芸術家にするのではない。芸術が主に生まれる場所を変えるのだ。

これまで、プログラマーの芸術の多くはコードの中にあった。アルゴリズムは巧妙か。抽象化は簡潔か。システムは少ない構造で十分な可能性を抱えられるか。この種の美は、Agentが登場しても消えない。

しかし、より多くの実装がAgentへ下りていけば、人間の創造の重心は上へ移る。ソフトウェアの芸術は、作品全体で起きることが増える。どの問題を選ぶのか。どのような人を理解するのか。どのような秩序をつくるのか。何を捨てるのか。ユーザーにどう応え、どのように生活へ入っていくのか。

プロダクトと体験の層での創造は、以前から存在した。変わるのは、実装が注意の大半を占めなくなれば、それがより多くのソフトウェア制作者にとって中心的な仕事になりうることだ。

コードの優雅さはこれからも重要だ。しかしコードは、ソフトウェアの美のすべてではない。人とAIが一緒につくるものを、動くコードの集まりとしてだけ見るべきではない。一つの完全なソフトウェア作品として見るべきだ。

これが、「新しい芸術家」が示す変化である。

既存の職業名で言えば、その役割はプロダクトマネージャーとアーキテクトを合わせたものに近い。何を誰のためにつくるかを問い、同時に、システムがどう長く成立し、境界がどこにあるかを問う。しかし、この二つの肩書だけでは足りない。ソフトウェアの作者には、審美眼、共感、取捨選択する力、そして全体の結果に対する責任も必要だ。

ここでいう「芸術家」は、より高貴な肩書ではない。一人の人間だけを指すとも限らない。完全な作品に責任を負う作者の役割であり、チームで共有することもできる。

工学は、作品が確かに存在できるようにする。芸術は、なぜそれが存在し、どう人の生活に入るのかを決める。

工学も責任も消えてはいない

新しい芸術家は、よいアイデアを一つ出し、残りをAIが終えるのを待てばよいわけではない。

紙とペンが普及しても、書く訓練は不要にならなかった。カメラが普及しても、写真に判断は不要にならなかった。Coding Agentは実装のコストを下げるが、複雑なシステムのアーキテクチャ、セキュリティ、性能、品質、保守を自動的に解決しない。

私がコードを読まないからといって、工学的な制御を捨てたわけではない。制御点が変わった。実装を一行ずつ調べることから、システムの目標、アーキテクチャ原則、データ境界、権限モデル、テスト基準、可観測性、受け入れ結果を定義することへ移った。

厳密さを弱めたのではない。厳密にする場所を変えたのだ。テストは本当のリスクを覆っているか。実行結果はシステムが制約を満たす証拠になっているか。Agentの説明には根拠があるか。機能が動くことは、出荷できることも意味するのか。AIはこれらのすべてに参加できるが、証拠を信頼できるかどうかを最後に判断し、間違った判断の結果を引き受けるのは人間である。

インフラストラクチャ、セーフティクリティカルなシステム、低レベルソフトウェアなど、一部の領域では、これからも人間がコードの深部に入る必要がある。下の層を本当に理解する少数の人は、以前より必要になるかもしれない。新しい抽象化層は、その下の層を消さない。高級言語はアセンブリを消さず、クラウドコンピューティングもOSを消さなかった。ただ、より多くの制作者が、何かをつくるたびにすべての下層を通り直す必要をなくした。

コードを書かず、読まないという私の選択は、境界を設けた実践であり、すべての人に当てはまる規則ではない。その価値は、コードが時代遅れだと証明することではない。コードが人間にとってソフトウェアを制御する唯一のインターフェースではなくなったとき、何をなお手放せないのかを見せてくれたことにある。

一つは判断であり、もう一つは責任である。

より強力な道具は、より大きな規模で凡庸さを生むかもしれない。実装が安くなれば、まず増えるのは、反復的で粗雑で、本当の需要を持たないソフトウェアかもしれない。紙とペンは自動的に文学を生まない。Coding Agentも自動的にソフトウェアのルネサンスを起こさない。

AIは希少性をなくさない。その場所を移す。

これまで、ソフトウェア生産の希少性の多くは、プログラミング能力、エンジニアリング資源、実装時間に集中していた。それらのコストが下がれば、問題を見極める力、プロダクトへの直感、システムの理解、審美眼、人への理解、そして結果に責任を負う意思が、相対的に希少になる。

「どうつくるか」が安くなるほど、「何をつくるか」は高くなる。

コードの作者から、ソフトウェア作品の作者へ

Bret Taylorは、Arya Asemanfarの言葉を紹介し、賛同した。AIは下書きをしてくれるが、作者はなお自分である。[7] Addy Osmaniは、開発者の新しい役割をアーキテクト兼戦略家と表現している。[8]

作者は、作品を生み出すすべての動作を自分でする必要はない。建築家はすべての煉瓦を積まず、映画監督は撮影現場のすべてのカメラを操作しない。それでも、作品が何になるべきかを知り、成立しているかを判断し、全体に責任を負わなければならない。

ソフトウェアにも、同じ変化が起きている。

以前、私たちは誰がコードを書いたかを見て、ソフトウェアの作者を判断することが多かった。これから作者性は、別の問いによって決まるようになるかもしれない。誰が問題を定義したのか。誰が制約を設けたのか。誰が重要な取捨選択をしたのか。誰が作品の完成を判断したのか。そして、現実世界に出たあとの結果を誰が引き受けるのか。

これは、ソフトウェアの経済単位も変えるかもしれない。以前は、十分に多くの人が共有する需要だけが、ソフトウェアをつくる理由になった。実装コストが十分に下がれば、一つのチーム、一つの家族、さらには一人だけのワークフローにも、専用のソフトウェアを持つ価値が生まれる。誰もがプログラマーになる必要はないが、より多くの人がソフトウェアの作者になれる。

私は3年前に起業し、2025年にDeepFlywheelを登記した。今回の実践は、その旅の始まりではない。最初からすべてを正しく理解していたと証明するものでもない。ただ、変わらず持ち続けてきた方向を、より明確にしてくれた。私たちがアプリケーションをつくるのは、モデルの能力を現実の人々の手に届けるのはアプリケーションであり、利用、信頼、支払いが最も正直なフィードバックを返すからだ。そのフィードバックを次の創造にどう取り込むかは、別の文章で考えたい。

本稿の結論は、もっと簡単に言える。

AIは、より多くの実装作業を下へ押し下げると同時に、人間の責任と創造の重心を一つ上の抽象化層へ押し上げる。プログラマーはコードの作者であるだけでなく、ますます完全なソフトウェア作品の作者になっていく。それが、私のいう「新しい芸術家」である。

新しい紙とペンは、すでに現れた。しかし新しいルネサンスは、自動的には訪れない。Agentがどれほど多くのコードを生成できるかではなく、私たちに判断力があるか、責任を引き受ける意思があるか、そして「どうつくるか」より難しい問いに答えられるかにかかっている。

何をつくる価値があり、人にどう感じてほしいのか。


参考文献

[1] Andrej Karpathy、「Vibe Coding」を紹介したX投稿、2025-02-02。

[2] Andrej Karpathy、「Agentic Engineering」を提案したX投稿、2026-02-04。

[3] 柳寧馨、「王堅:創新源于“不完美”与“跨界”」、『21世紀経済報道』、2025-09-25。

[4] Alan M. Turing、“Intelligent Machinery”、National Physical Laboratory report、1948年。

[5] Donald E. Knuth、“Computer Programming as an Art”Communications of the ACM、17(12)、1974年、pp. 667–673。

[6] Paul Graham、“Hackers and Painters”、2003年5月。

[7] Bret Taylor、“AI is your ghostwriter, but you are the author”、LinkedIn、2026-02-10。

[8] Addy Osmani、Beyond Vibe Coding、O’Reilly Media、2025年8月。