コンテンツにスキップするには Enter キーを押してください

Vibe Coding: みんなが開発者になる時、誰がコードを守るのか?

スマートフォンが誰もをデジタル写真家にしたように、Vibe Codingは誰もをソフトウェア開発者にし、ソフトウェア開発業界を永遠に変えるでしょう。

OpenAIの共同創設者であり、元TeslaのAIリーダーであるAndrej Karpathyは、2025年2月2日のツイートで「Vibe Coding」という用語を紹介しました。「私は『Vibe Coding』と呼ぶ新しいタイプのコーディングがある。完全にバイブスに身を任せ、指数関数的な発展を受け入れ、コードの存在すら忘れるんだ。」彼は主にAIを使って特定のプロセスを自動化することへの感情的な反応を表現していましたが、この用語は定着し、今ではAIによる生成または支援されたプログラミングの一般的なラベルとして広く使われています。

Vibe Codingはコンテキストエンジニアリングの一分野です。コンテキストが完全かつ正確であれば、そのコンテキストを通じて正確なコーディングへの道筋を描くことが可能です。コンテキストは完成したコードに必要な詳細で構成されており、これはコーダーが提供します。コーダーとAIのインターフェースは自然言語(通常は英語ですが、必ずしもそうとは限りません)です。

このインターフェースでAIはLLM(大規模言語モデル)の能力を使用するため、Vibe Codingは一般的にGPTの新しいモデルやClaude、Gemini Proなどの既存の基盤モデルを利用します。時にはLLMがVS Code、Cursor、Windsurfなどの専門的なIDEと統合されることもあります。しかし結局のところ、LLMに今も影響しているすべての問題(幻覚やバイアスなど)は、Vibe Codingの正確性にも影響を及ぼします。

Vibe Codingは新しいものです。AIは70年以上前からプログラム内で使われてきましたが、今や完全に新しいプログラムを生成するために使えるようになりました。これはソフトウェア開発業界全体を一変させる可能性を秘めています。しかし新しい技術であるがゆえに、まだ初期段階の問題も抱えています。こうした問題は時間とともに解決されていきますが、今はまだその過渡期にあります。

「2025年の生成AIは、1999年の『ウェブサイトを持つ』ことのようなものだと考えています。誇大広告と本質を見分けるのは難しいですが、すべてのノイズの下にある現実は、私たちのあらゆる活動に影響を与えるということです」と、Bugcrowdの創設者Casey Ellisは説明します。

「Vibe Codingとは、チャットボットのようなAIに、普通の言葉で自分のソフトウェアにやってほしいことを伝えると、AIがコードを書いてくれることです」と、SlashNextのField CTOであるJ Stephen Kowskiは言います。「つまり、プログラミングの知識がなくても、自分のアイデアを説明するだけで、AIが動くソフトウェアに変えてくれるのです。」

しかし、複雑または独自の機能を求めたり、AIの作業をダブルチェックしなかったりすると、問題に直面する可能性があります。

広告。スクロールして読み続けてください。

強みと弱み

最大の明らかな強みはスピードです。「Vibe Codingは、特にシンプルで既知のアプリ、複雑さが低〜中程度のウェブアプリのプロトタイピングにおいて、非常に大きな加速をもたらします」と、Nutrientの共同創設者兼CEOであるJonathan Rhyneは説明します。

ソフトウェア作成のプロセスを民主化します。アイデアとその動作イメージを持つ誰もが、動作するプログラムを作成できるのです。もはやプログラミング言語を知る必要はなく、AIの使い方を知っていれば十分です——これ自体も簡単なことではありませんが。

スピードと民主化は、より少ないコストでより多くのコードを生み出すことを意味します——つまり、本当の強みはVibe Codingの経済性です。これはすでに現実であり、使わなければ競合他社に競争優位を奪われてしまいます。

しかし、こうした強みには弱みも伴います。「民主化」は潜在的な弱点でもあります。「Vibe CoderのAIツールの有効性を高める設定ファイルを提供することに特化したコミュニティやオープンソースプロジェクトも存在します」と、DeepwatchのシニアプロダクトマネージャーであるKaushik Devireddyは説明します。

「非技術系のVibe Coderたちは、常に新しい設定ファイルを探しています。その結果、悪意ある者が悪質な設定ファイルを公開し、採用される機会が生まれます。これが新たな攻撃ベクトルとなり、特にセキュリティ確保が難しいアプリケーションロジック層で顕在化します。」

スピードもまた弱点になり得ます。「悪い面としては」とEllisは言います。「AIは『90%OK』な解決策を出すのが得意ですが、問題は残りの10%で起こることが多い。脆弱性はコード行数の確率的な関数として存在します。私たちはますます高速に大量のコードを書いており、コードが増えれば脆弱性も増えます。さらに、スピードは品質の敵であり、セキュリティは品質の子供です。」

Image
Nicole Carignan, DarktraceのSVPセキュリティ&AI戦略担当、Field CISO

DarktraceのSVPセキュリティ&AI戦略担当、Field CISOであるNicole Carignanも、スピードと手軽さがセキュリティの犠牲になる可能性を懸念しています。「Vibe Codingは非専門家でも開発やプロトタイピングを可能にしますが、その生成するコードは本質的に安全ではなく、システムに脆弱性をもたらす可能性があります。」

彼女は、この手法が開発やプロトタイピングの時間を節約する以上に、セキュリティチームのコードレビューの作業を増やすのではないかと疑問を抱いています。

クラウドソーシング型セキュリティ/バグバウンティ企業Intigritiのチーフハッカーオフィサー、Inti De Ceukelaireも、現在のVibe Codingの強みと弱みの組み合わせを認めています。「Vibe Codingは役立ちますが、魔法の解決策ではありません」と彼は言います。「私はこれを使って1日で小さなハッキングツールを作りましたが、自分だけで作れば数週間かかったでしょう。シンプルなバグ修正やクイックなプロトタイプ作成にも役立ちました。しかし、プロジェクトが大きく複雑になると、AIはより多くのミスをし始めます。その時点では、AIを誘導し修正するのに、自分で最初からコーディングするのと同じくらい時間がかかることもあります。」

したがって、セキュリティチームは、明確な目的に特化した小規模な個別ツールの作成など、Vibe Codingの強みを活かすことで恩恵を受けられます。見た目の美しさを気にする必要もありません。

より大規模で広範なユーザーを持つアプリケーションでは、「人間が介在する」ことがAIとのすべてのやり取りにおける標準的なアドバイスです。これは利点をもたらしますが、解決策とは考えるべきではありません。「本当に厄介なシナリオは」とVectra AIの著名なAI研究者Sohrob Kazerounianは示唆します。「人間が介在することで偽りの安心感を生み、最終的に失敗が増える場合です。」

彼はほぼ逆の強調を提案しています——AI生成コードを人間がチェック・改善するのではなく、専門的なエージェントAIの形でAIが人間の書いたコードをチェック・改善するのです。

Vibe Codingとの付き合い方

現時点で不完全なVibe Codingが存在し、その不完全さは他の新技術と同様に時間とともに減少していきます。私たちは今あるものに対応し、これから来るものに備える必要があります。これはソフトウェア業界にとって、ほとんど革命的な変化となるでしょう。

この現実を認識し、受け入れている人たちもいます。「より速く物事を進められます。より野心的なものを一人で作れるし、より楽しく作業できます。以前なら開発者のチーム、あるいは複数のチームが必要だったことも、自分一人でできるのです」と、著者でありエネルギーセクターセキュリティコンソーシアムの元独立取締役であるGene Kimはコメントします。「それはとても魔法のようで、私にとっては素晴らしい時代です。私はこの変化が私たちの職業にもたらすものについて、非常に、そして決して無邪気すぎるわけではなく楽観的です。」

だからといって、誰もがすぐにVibe Codingで良いコードを生み出せるわけではありません。出力の品質は入力プロンプトの品質に直接比例すると、SecurityPal.AIの創設者兼CEOであるPukar Hamalは説明します。

「ソフトウェア開発の基本を理解する必要があります。アルゴリズムとは何か、それがどのように動作するか、異なるコード行がどのように連携して良いソフトウェアを生み出すかを知る必要があります。そして、意図した結果に沿って明確かつ正確にプロンプトクエリを表現できなければなりません。これができれば、バグの少ないより良いコードが得られる可能性が高いです。」

ソフトウェアの基本的な仕組みを理解していない場合、「例えばLLMに宝くじ番号生成アプリを書かせると、非常に冗長で150行以上のコードになる可能性が高いです。こうした入力の厳密さが欠けていることから生まれる大量の低品質な生成出力を、私たちは『AIスロップ』と呼んでいます。」

しかし、Vibe Codingで失敗するのはコーディング未経験者だけではありません。CheckmarxのCPOであるJonathan Rendeは、社内のエンジニアリング責任者の一人が行った実験について語ります。「彼は組織内のさまざまなリーダーを回って、Vibe Codingを使った課題を与えました。45分後に再び回ったところ、Vibe Codingで何がどう組み合わさるべきか大局を理解していた人は素晴らしい成果を出しましたが、従来のコーディング手法をそのまま適用しようとした人はそうでもありませんでした。」

Image
Jonathan Rende, CheckmarxのCPO

これらは全員エンジニアや開発者でした。未来を受け入れた人もいれば、過去をただ速く繰り返そうとした人もいました。「Vibe Codingを新しい使い方で新しいツールとして使った人は成功しますが、そうでない人は重要性が薄れていくでしょう。」これが今日すべてのコーダーに突きつけられている課題です——Vibe Codingを独自のルールで使いこなす新しいツールとして学ぶか、効率的に使われるVibe Codingの圧倒的なスピードの前に、単なるプログラマーの需要が減少し、取り残されるかです。

今はこの移行期にあります。Vibe Codingは依然として、幻覚やバイアスといったLLM固有の問題を最小限に抑えるために多くの手作業が必要です。「本質的な問題があります」とKimは言います。「AIが存在しない関数を呼び出してしまうこともあるので、開発者がそれを防ぐ責任があります。これまで使ってきたエンジニアリングスキルは、AIによって強みも弱みも増幅されるため、今こそより重要です。」

Rendeも同意します。「LLMは時間とともに進化し、幻覚は減り、より自動化された検証が進むでしょう。」しかし今のところ、幻覚を防ぐ最良の方法は、より正確なプロンプトを使うことです。「質問が良ければ、応答も良くなります。そして、できる限りチェックし検証できること。それが今の鍵です。どう聞くか、どう検証するか。」

今の問題は、AIが通常確率的に動作するのに対し、従来のプログラミングは決定論的であるという点です。私たちは決定論ではなく確率論での作業にアプローチを変える必要があります。しかし、変化はすでに始まっています。

Sola Securityは、セキュリティ顧客が自分自身の問題を解決できるように設計されたSaaSプラットフォームを開発しました——特定の質問への迅速な回答から、ダウンロードしてカスタマイズできるより広範なセキュリティアプリまで。その目的は、コーディングとセキュリティの両方を民主化することです。

「最も専門的なセキュリティ担当者である必要はありません」とSolaのVP R&DであるDor Swissaは説明します。「Solaがセキュリティに関する知識を提供します。」そして、Vibe Codingを使って自分のドメインに合わせた独自アプリの開発を支援します。

これはVibe Codingの最もエキサイティングな分野の一つかもしれません。将来的には、すべての企業が自社独自の統合セキュリティアプリを持ち、要件に完全には合わない重複した複数のソリューションを購入する必要から解放される可能性があります。これは民主化と自由な選択の両立です。

まとめ

Vibe Codingの未来ではコーダーは減るのでしょうか?答えはイエスでもありノーでもあります。ある意味では、誰もが開発者になるので増えることになります。従業員は、エンジニアリングに小さなリクエストを出して無期限に待つ必要がなくなり、数週間待つ代わりに自分で数分でコードを作成できるようになります。これこそがVibe Codingの本当にエキサイティングな要素です。力が人々の手に戻るのです。

しかし、大規模で複雑なアプリを手がける専門的・フルタイムのコーダーは減るでしょう。一人で多くの仕事を、より速く効率的にこなせるようになります。そして、コーダーの創造的スキルへの重視も低下します。コーディングプロセスにおける芸術性は不要となり、創造性はアイデア出しに限定されるでしょう。

ビジネスは利益を生むために存在し、人を雇うためではありません。創造性は成果の定義に限定され、AIが創造を担うようになります。

今日のクリエイターたちは、その変化に適応するか、取り残されるかの選択を迫られます。これは比較的短期間で、現在のすべての「クリエイター」(Vibe Codingによるプログラマー、コンテンツ生成によるジャーナリスト、画像生成によるグラフィックアーティストなど)に、そして将来的にはロボティクスとAIの組み合わせによるバリスタにも当てはまるでしょう。これはビジネス経済の強力な推進力によって起こります。好きでも嫌いでも、受け入れるしかありません。風に乗るか、逆らって失敗するかです。

翻訳元: https://www.securityweek.com/vibe-coding-when-everyones-a-developer-who-secures-the-code/

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です