理解のしんがり
先日、あるオープンソースソフトウェア(OSS)開発者の知人が日本に来たので、一緒にご飯を食べた。
彼は、自分のOSSだけで生計を立てている。多くのソフトウェア・エンジニアが夢見るような立ち位置である。彼の作った仕様とツールは、世界中の多くの機関や個人が採用しており、業界におけるデファクトスタンダードになってきている。
最近のソフトウェア開発界隈といえば、AIエージェントによる話題しかないと言っていいくらいの活況だ。もうこの1年ほどで、多くのエンジニアは、自分でぽちぽちとコプログラミングすることは無くなった。人間は仕様を明確にし、指示を出して、その出力をレビューする。
それでその彼に、AI駆動開発をしているかと聞いてみたら「OSSには使っていない」と言う。
自分で書く理由は、ライセンスの懸念と、そして何より、自分が全部を理解すべきだという考えから。この基盤技術を、作者が完全に把握・管理していること自体が価値であり、それがユーザーの信頼に繋がっている。もし彼が理解していなければ、世界中の誰もその仕組みを分からないことになってしまう。
すごく納得感があった。全ての製品やコードでそのようにあるべきかはわからない。例えばデモサイトであれば Vibe Coding (コードの存在を忘れて全てAIに任せるやり方)で十分だろう。しかし、その土台となる「他者がそれを使って何かを作るための部品(Building Block)」は、頑健であることが望ましい。そしてそれを使って、みんなが AI で slop をつくる。
AIにコードは書かせないが、自分の書いたコードをAIに見せて、問題や改善点がないかのレビューはやるそうだ。運転の補助はしてもらうけれど、ハンドルは渡していない。
ちなみに、 OSS に来る PR (変更リクエスト)の数は増えたそう。明らかにAI生成のものがある。それはもう見ない(見切れない)と言っていた。他のOSS開発者に聞いてもそういう感じらしい。
関連:
The Building Block Economy – Mitchell Hashimoto (2026.04)
彼が開発したアプリ(Ghostty本体)よりも、そのライブラリ版(libghostty)の方が圧倒的に早く数百万のユーザーを獲得した
AIエージェントの普及した現代において、アプリそのものよりも「Building Block」を提供することのほうが、圧倒的に大きな普及につながる
Vibe code is legacy code | Val Town Blog (Steve Krouse, 2025.07)
中身を理解していないコードは、書かれた瞬間から「レガシーコード(負債)」になる
プログラミングの本質は、単なるコードの出力ではなく「理論を組み立てること(Theory Building)」にある
使い分けが重要。Vibe Coding は、メンテナンスが不要なプロトタイプや使い捨てプロジェクトにはとても向いている
知識のないままAIで巨大なシステムを作ろうとすることは、「子供にクレジットカードを渡す」ようなもの。最初は魔法のようだが、後でツケ(技術負債)が回ってくる
AIをジュニアインターンのように扱って、人間がしっかりと手綱を握る必要がある

