「バイブコーディング (Vibe Coding)」という言葉が、アメリカのメディアやSNSでは今ちょっとしたバズワードになっています。この言葉は、AI研究者でOpenAIの創立メンバーの一人であるアンドレイ・カーパシーが2月にXへ投稿した内容で広まりました 。AIツールに自然言語でプロンプトを与えるだけで、プログラミングの知識がなくてもアプリケーションやウェブサイトを作成できる、新しいアプローチを指します。「バイブ(雰囲気、ノリ)」に従って「ただ見て、言って、実行して、コピー&ペーストするだけで、ほとんどの場合うまくいく」というのがバイブコーディングです。
自分一人のためのソフトウェア
バイブコーディングを可能にしているのは、ここ1、2年の間に登場した強力なコード生成能力を持つ大規模言語モデル(LLM)とそれを活用したCursor、Replit、Bolt、Windsurf、Lovableなどの開発ツールです。これらのツールは、プロンプトに従って、プログラムの設計を行い、使用する最適なソフトウェア・パッケージとプログラミング言語を決定し、構築に取りかかってくれます。これらのツールには、制限付きながら無料で利用できるプランと、より高機能、より多くのプロジェクトで使える有料プランがあり、手軽に使い始められます。
ニューヨーク・タイムズの人気テクノロジーコラムニスト、ケビン・ルースは、プログラミング言語の知識がなく、プログラミングの経験がありませんでしたが、最近の記事でバイブコーディングを数ヶ月間試した経験を語っています。
ルースは自身の実験を「自分一人のためのソフトウェア」と呼んでいます。目的は自分の生活における具体的な問題を解決する、小さなオーダーメイドのアプリを作ることです。大手テック企業が作るようなアプリではなく、市場性はないし、機能も限定的なものばかりです。
ルースは、Boltというアプリ開発ツールを使って、長いポッドキャストを文字起こしして要約するツール、ソーシャルメディアのブックマークを検索可能なデータベースに整理するツール、家具が車のトランクに収まるかどうかを確認するウェブサイト、冷蔵庫の中身を分析して子供が学校に持って行くランチの献立を提案するアプリ「ランチボックス・バディ」などを作成しました。
ただし、バイブコーディングの実験がすべて成功したわけではありません。自分の文体で自動的にメールに返信できる「受信トレイ自動操縦」ツールは何週間も試行錯誤したものの、完成に至りませんでした。また、 GoogleフォトやiOSのボイスメモのようなアプリとの連携もうまくいかなかったそうです。さらにハルシネーション(誤った情報生成)を起こすこともありました。
ルースは、これらのAIツールはまだ人間の監督を必要とし、趣味のプロジェクトには最適だが、重要なタスクにはまだ適していないと考えています。しかし、一方で、すでにAIは競争力のあるプログラミング・テストで世界トップクラスの成績を収めており、状況は変化するだろうとも述べています。
従来のソフトウェア開発との思想の違い
テクノロジーニュースサイトArs Technicaの記事「ソフトウェア開発の未来はバイブで動くのか?」では、バイブコーディングと従来のソフトウェア開発におけるベストプラクティスとの間にある考え方の大きな違いについて考察しています。
バイブコーディングでは、途中でエラーが発生した場合、AIツールにフィードバックし、AIが修正したら変更をすべて受け入れ、問題なく動作することを期待して、そのプロセスを繰り返します。 これは入念な計画、テスト、実装の詳細の理解を重視する、従来のソフトウェア開発のベストプラクティスとは対照的です。
バイブコーディングでは、基本的なコミュニケーション・スキルがあれば、少なくとも簡単なプロジェクトにおいては、誰でも新しいタイプのプログラマーになれます。 現在、AIモデルが一度に処理できるコード量が限られているため、バイブコーディングで可能なソフトウェア・プロジェクトの複雑さには限界があります。 しかし、AIモデルの世代交代が進むについうれて技術的な限界が緩和され、将来的には限界がなくなる可能性があります。
これに対し、ソフトウェアエンジニアのサイモン・ウィリソンは、「バイブコーディングはアイデアを試したり、動作するかどうかを確認するのには楽しい方法」だとしつつも、「既存のシステムを継続開発するような業務においては、基盤となるコードの品質と理解度が非常に重要になるため、バイブコーディングだけで対応するのは明らかに危険だ」と述べています。
ウィリソンは、たとえLLMがすべてのコードを生成したとしても、人間がすべてレビューし、テストし、理解していれば、それはバイブコーディングとは異なると考えています。バイブコーディングとは、コードがどのように機能するかを完全に理解せずにAIが生成したコードをそのまま受け入れる考え方です。 バイブコーディングは、深い技術的理解よりもスピードと実験を優先するという、開発者のプログラミングに対する基本的な考え方の変化を示唆していると言えます。
ウィリソンのような経験豊富なソフトウェアエンジニアは、開発者は自分のコードに責任を持つべきだと考えています。プロトタイプとしては十分でも、それを十分理解せずに本番環境へ移行すれば、大きな技術的負債を抱え込むことになる可能性があると警告しています。
バイブコーディングがプログラミングの世界で主流になるか、それともプロトタイピングの手法にとどまるかは、AIモデルの能力だけでなく、コード品質、保守性、技術的負債のリスクといったトレードオフを受け入れる組織の意欲に左右されると、この記事は結論づけています。
バイブコーディングを受け入れる新しい世代のビジネスリーダーたち
では実際、バイブコーディングはビジネスにどれだけ浸透しているのでしょうか?
スタートアップ企業支援のY Combinator(YC)のパートナーたちが、バイブコーディングの動向について語っているYouTube動画があります。この動画によれば、YCが支援しているスタートアップ創業者に聞いたところ、「4分の1の創業者が自分たちのコードの95%以上はAIによって生成されている」と答えたとのことです。
あるスタートアップ創業者は、「自分のコードへの執着がずっと薄れ、コードを破棄したり作り直したりすることに抵抗がなくなった。以前の3倍の速さでコードを書けるようになったので、必要であれば簡単に破棄して書き直せるからだ」と言っています。
別のスタートアップ創業者は、「6ヶ月前は10倍のスピードアップ、1ヶ月前から現在は100倍のスピードアップだ。指数関数的な加速だ」と述べ、「私はもはやエンジニアではなく、プロダクト担当者だ」と語っています。これはエンジニアの役割が純粋なコーディングから、プロダクトの企画や戦略といったより上流のフェーズへとシフトしていることを示唆しています。
こうした状況から、YCのパートナーたちは、バイブコーディングは一時的な流行ではなく、主流のコーディング手法になると考えています。そして、今後、バイブコーディングを活用できないエンジニアは、時代に取り残される可能性があると指摘しています。
バイブコーディングの未来
バイブコーディングはどんな未来をもたらすでしょうか?
アンドリーセン・ホロウィッツのパートナーであるアンドリュー・チェンは、自身のブログで、バイブコーディングの次に起ることについて考察しています。彼は以下を予測しています:
- コードの大部分が時間のある若年層(子供や学生)によって生成される可能性があります。ソフトウェアもソーシャルメディアのように若者文化に支配される傾向が生まれるかもしれません。
- これまでソフトウェア化されていなかったニッチな産業へもソフトウェアが浸透するでしょう。従来のエンジニアが関心を示さなかった小規模や低成長分野でも、その業界の専門家自身がバイブコーディングで技術革新を起こす可能性があります。
- マーケティングや販売方法が大きく変化し、AIエージェントを通じて自動化される未来が考えられます。新製品を特定層に宣伝したいという指示だけで、エージェントがインフルエンサーへの連絡、広告購入、コンテンツ作成などを自動的に行うようになるかもしれません。
ペンシルバニア大学ウォートンスクールのイーサン・モリック准教授も自身のブログで、バイブコーディングの延長線上には「バイブワーキング」があると述べています。汎用的なAIエージェントに、自然言語によるプロンプトを与えれば、必要なツールの知識がなくても、さまざまな仕事を遂行してくれる、そんな時代が到来しつつあるというのです。
おわりに
バイブコーディングの出現は、プログラミングの大きなパラダイムシフトといえるでしょう。プログラミングの知識がない人々でも、「バイブ」に従い、自然言語のみで創造的なソフトウェアを生み出せる時代になりつつあるのです。
バイブコーディングは、アイデアをすぐに実行可能なプログラムに変換できるという画期的な側面を持つ一方で、コードの品質や保守性といった従来の価値観とは相容れない側面もあります。
日本のビジネスリーダーやマーケターにとっても、バイブコーディングは、プロトタイピングやアイデア検証を迅速かつ低コストで行うための手段となり得ます。しかし、本格的な実装や重要システムの開発においては、コードの品質や保守性についての配慮も不可欠です。
AIとプログラミングの関係は、日々進化しています。今後もAIの発展に伴ってソフトウェア開発の形態は変化し続けるでしょう。私たちは技術の変化を恐れるのではなく、適応し、最大限に活用する方法を模索することが重要です。
