この記事は、用語をめぐる介入である。Andrej Karpathy が バイブコーディング という言葉を生み出してからおよそ 6 週間後に書かれたもので、この言葉が AI の支援を受けて書かれたあらゆるコードに当てはめられていることに応答している。著者は、そうした用法は言葉の意味を薄めるうえに、責任ある AI 支援型プログラミング が実際に何を伴うのかを誤って伝えると論じる。記事の中心となる手立ては、この用語を観察可能な 1 つの基準に固定することである。すなわち、バイブコーディングとは、LLM が書いたコードをレビューせずに LLM でソフトウェアを構築することを意味する。

用語を狭めたうえで、記事はその大半を、狭めた実践の擁護に費やしている。著者は、バイブコーディングが無責任な AI 利用を指す軽蔑的な同義語になることを望んでいないと明言している。著者によれば、バイブコーディングは、コンピュータサイエンスの学位もブートキャンプの経験もない人々を締め出してしまうほど高いプログラミングの障壁を引き下げるものであり、また経験豊富な開発者にとっては、LLM がどこで成功しどこで失敗するのかについての直感を養うための、利用できる最良の手段でもある。

最後の 3 分の 1 は実践的な内容に移る。著者がバイブコーディングを許容できると考える条件、すなわち影響の小さいこと、秘密情報や個人データへの注意、他のサービスにかける負荷への配慮、そして厳格な課金上限を示したうえで、解決に値する設計上の課題としてサンドボックス化を挙げ、Claude Artifacts を Cursor のような制約の緩いツールと対比している。

要点

  • バイブコーディングとは、LLM が書いたコードをレビューせずに LLM でソフトウェアを構築することを意味する。これは Karpathy の造語を著者自身が運用的に言い直したものであり、この用語の意味が漂流しつつあると著者が判断したために示されている。
  • バイブコーディングは、LLM の助けを借りてコードを書くことと同じではなく、両者を同義語として扱うと、責任ある AI 支援型プログラミングで何が達成できるのかについて誤った印象を与える。
  • LLM が書いたコードであっても、レビューされ、テストされ、他の人に説明できるほど十分に理解されていれば、それはソフトウェア開発であり、その作成に LLM が関わったかどうかは重要ではない。
  • 著者は、そのコードが何をするのかを他の誰かに正確に説明できないのであれば、そのコードを自分のリポジトリにコミットしない。これは本番品質の作業に対する著者自身の黄金律として述べられており、確立された業界の規範としてではない。
  • Karpathy による元々の説明は、すでにこの実践を本番の作業ではなく使い捨ての週末プロジェクトに限定していた。記事はその範囲の限定がはっきりわかるように、その発言を全文引用している。
  • バイブコーディングが擁護に値するのは、正式な訓練を受けていない人々が自分専用のカスタムツールを作れるようになるからであり、また人々をこの職業から遠ざけている初期の学習曲線をなだらかにするからである。
  • バイブコーディングはまた、経験豊富な開発者が LLM の能力についての直感を養うために利用できる最良のツールでもある。その裏付けとして、著者は自分がバイブコーディングで作った実験を 80 件以上公開してきたと報告しているが、これは測定された結果ではなく著者自身の経験である。
  • バイブコーディングが適切なのは影響の小さいプロジェクトに限られ、他の人々がそのソフトウェアを使うようになると、バグや脆弱性が引き起こしうる害がより重要になる。
  • 秘密情報と個人データは最も満たしにくい制約である。どちらかが安全かどうかを判断するには、バイブコーディングでは読まれないままのコードを理解する必要があるからである。
  • 従量課金制の API は特有の金銭的リスクである。著者は、意図しない高額請求についての他者の報告を引用しており、自身が直接経験した事例を報告しているわけではない。
  • 初心者にとって安全なバイブコーディングはサンドボックスから始まる。Claude Artifacts が採用しているサンドボックス化のアプローチは見習う価値のある例として示されており、その制約の厳しさは実際のコストとして認められている。
  • 著者は、人々が生産的かつ安全にカスタムツールを構築できるようにするツールにおいて、今後さらに大きなイノベーションが起こることを予想し、また期待している。

背景

この記事は、著者が自身の LLM 利用について書き続けているシリーズの一部であり、この主題に関する著者のより広範な文章よりも狭い範囲を扱うものとして明確に位置づけられている。著者は、自分の作業プロセスは別の場所で説明しており、バイブコーディングはそのアプローチのごく一部しか表していないと述べている。その議論は実証的というより定義的なものであり、示されている根拠は測定ではなく、著者自身の実践と Karpathy の元々の言葉である。また記事は、著者が異議を唱えている緩い用法が、報道やオンラインでの議論においてすでに広く浸透していることを認めている。初心者への注意喚起は、いかにも著者らしく技術的というより社会的なものであり、他の人が使うものを公開する前に、より経験のある人に確認してもらうように、というものである。