しずかなインターネット

日記やエッセイにちょうどいい
文章書き散らしサービス

ログイン

バイブ・コーディング・イヤーの締めくくりに寄せて

hayatosc
·
公開:2025/12/30

2025年はCline、Copilot Agent、Claude Code、Gemini CLI、Codex…と挙げ出したらキリがないくらい沢山のコーディングエージェントが誕生し、そして『バイブコーディング』なる単語まで生まれた。これは昨年我々がプログラミングと呼んでいたものと今年我々が呼んでいたものが全く別物であるかの如く大きな変化をもたらすものであった。

この1年、ずっとバイブコーディングと添い遂げてきた。最速で走ってきたわけではないが、3月くらいにはClineからGitHub Copilotを呼び出して遊んでいたし、6月くらいからはClaude Proを契約してClaude Codeを使ったりした。恐らく学生の中では相当使っている部類だと思う。

具体的な例を挙げると、今年の作成したWebパンフレットツールはほぼバイブコーディングで出来ている。Web Assemblyで画像を細かいタイルに分割し、これをCloudflare R2上にアップロードしておきつつ、Svelteで作成したWeb Componentを利用させる仕組みである。

Wasm部分はRustで書いたのだが、仕様がかなり明確で単純であったこともあり、修正なく完璧なコードを出力してきたので大変驚いた。

この記事ではそんなバイブコーディングイヤーと呼ぶべき2025年のAIコーディングで自分が感じた変化を書いていこうと思う。

正解が無いものはAIに作れない

バイブコーディングには大きく分けて2つのパターンがある。

1つはこの言葉を生み出したAndrej Karpathy氏が提示した、厳密な定義によるバイブコーディング。

これによれば、ユーザーはAIに全ての責任を移譲し、エラーも含めた何もかもをAIが解決し、それによってもたらされるコードをそのまま使う、というもの。

もう1つは、AIに生成してもらいつつ、その間の方針などを人間が決定し、かつ実装されたコードを人間が評価しながら使用していく、というもの。

『バイブコーディング』というワードにはこの2つの意味が混在している上、後者にしても人間の介入度がどれくらいなのかが人によって全く違うため一律的な評価が極めて難しい。

なのであくまで個人的な評価だが、前者の定義の場合、2025年末の時点では全く使いものにならないというのが正直なところだろう。はっきり言って、コードに無駄が多すぎる。同じ処理をまとめずその場に直書きしたり、酷いときには1ファイルに1000行単位でコードを書くなんてこともある。

建築や都市計画に美学があるように、コーディングにも美学がある。これは人によって違うものであるから、やはりその人の思想を反映させなければ実現し得ないものである。そうなると、やはり人の手の介入はあるべきなのだろう。

『AIの性能が上がれば全てをAIに任せても良くなる』みたいな言説をしている人もいるけど、こればっかりは無理なのでは。ディレクトリ構成1つとっても正解が無いのに、どうやって最良のコードを出力させるのか。そもそも最良とは何か。人類が未だこれを理解していないのに、AIが勝手にそれを学習するだろう、というのは夢物語なのではないかと思う。

正解が無いからこそ、工夫の余地が生まれる

話は少し変わるが、最近「新人にAIを使わせてみたけど、全然ダメだったのでAI禁止令を出した」という記事が話題になっていた。

主な問題点を挙げると:

  • Model層でHTML生成(MVCアーキテクチャを完全に無視)

  • デバッグコードが本番に混入(error_logが大量に残存)

  • 500行を超える大規模インラインJavaScript

  • テストコードが1つもない

  • 変数名や関数名が既存コードのパターンと全く異なる

(中略)

レビューしながら彼に 「なぜModel層でHTML生成をしたの?」 と聞いたんですが、ドストレートで衝撃でしたね。

「AIがそう実装してくれたので、正しいと思っていました」

「(うわぁ、ホントにこんなことあるんだぁ)」と思いました。

それに続けて 「正直、出力されたコードは自分が考えるより正しいと実際思っちゃう節があります。もはや神と変わんないですね。(誇張)」

「なるほどな~」というめちゃくちゃ腑に落ちました。やっぱりAIの出力を判断する「基礎」がないと、結構やばいことになりそうだなと。

僕はこれを見て、新人の問題もさることながら、「AIをチームに迎え入れるための基盤の不足」を強く感じた。人間相手でも業務ルールを教えずに丸投げすれば失敗するように、AIにも「うちのコーディング規約」というコンテキストを与えなければ、暴走するのは必然である。

この例なら、そもそも会社側で「こう書いてほしい」というルールが決まっているのだから、AIにそうしてもらうように固定化するドキュメントを作って渡すようにしないといけないし、新規で作るならまずAIに壁打ちして仕様を固めるところからやらせるべきである。

というように、2025年では「AIが完璧なコードを書いてくれないからこそ、いかにして良いコード出力させるか」という工夫をする必要性が出てきた。MCPやAGENTS.md、Skillsのようなコンテキストをコントロールする技術が現れ、コーディングエージェントをまるでファッションの如くカスタマイズするのが流行した1年だったといえる。

思えば昔はマシンの厳しいスペックに対応するためにプログラムを切り詰めていたわけだが、今度はAIの厳しいコンテキスト長に対応するためにコンテキストを切り詰めている状態である。僕はコンテキストエンジニアリングというワードがあまり好きではないが、現代のコーディングにおいては不可欠なスキルといって差し支えないだろう。

タスクを並列で処理できるようになった

AIコーディングによる最も強烈なメリットはこれだろう。

AIには事実上、物理的制限がないし、実行には金がかかるものの、人件費に比べたら雀の涙ほどの金額しかかからない。この性質により、AIエージェントを同時にいくつも走らせて、それぞれのタスクを並列で処理することが可能になった。

この圧倒的な手数の存在は破壊的なイノベーションとなり得る。

極端な話をするならば、超絶できる人間が、AIエージェントを10個くらい並列で走らせて、同時にタスクを処理すれば、並の人間の10倍の生産性を生み出すことができてしまうということである。もちろん最終的にはレビューしなくてはならないから、完全に10倍とはいかないかもしれないが、それはタスクそのものに取り組むよりも圧倒的に少ないコストで実現できるので、上手くやれる人はすぐに適応できると思う。

今まではどれだけ頑張っても「人間の出せる労力の限界」という物理的制約に阻まれていた人たちが、AIエージェントに労力を代行させることで解き放たれるのである。それはさながら100人を超える大編成のオーケストラを操る指揮者のように。

最近、多くのエンジニアの人が「自分たちの仕事はAIに代替されることはない」と考えているようであるが、このパターンによる代替は予期できているのかなぁ、とぼんやり思っている。何か対策があるのだろうか。

実際僕はバイブコーディングによって他人にタスクを任せる、という作業が物凄く減ったと思う。だって自分でやったほうが早いから。ここら辺の話は昔やったのでそれを見てほしい。

「バイブコーディング」は 始まりに過ぎない

自分がバイブコーディングをやっていて最も良かった点は、「AIエージェントが到来すると何が起こるのか」という変容を最前線に立って見ることができたことである。

プログラミングはAIを受け入れるのが最も早かった分野であり、今後、この流れが他の分野に浸透していく。それはマーケティングも、法務も、人事も、会計も。あらゆる知的労働において、AIエージェントに8割を任せて、人間は意思決定とレビューに徹する―――つまり「バイブワーク」と呼ぶべき働き方の時代がやってくる。そんな予感がする。

このような時代では、「バイブコーディングで何が起きたか」を体験として知っている人間は、きっと有利に立てると思う。いかにしてAIを正解に近づけるか。AIの並列実行がどんな破壊力を持っているのか。これを知れたのは、これからを生きる上で強力な武器になったと思う。