いま流行りのバイブコーディングを実践してみた【今週の”発見”】

@oyaiz
今週の”発見” 日常

こんにちは、poypoyのIT部門担当のoyaizです。

今日の話題は、いま流行りのバイブコーディングです。

バイブコーディングとは?

天下のGoogle様は以下のようにバイブコーディングを説明しています。(出展:Google Cloud

バイブ コーディングは、AI を使用して自然言語プロンプトから機能コードを生成する新しいソフトウェア開発手法です。これにより、開発が加速され、特にプログラミング経験が限られている人にとっては、アプリの構築がより身近なものになります。(後略)

んー、わかるようなわからないような説明ですね……
要するに「生成AIにソフトウェアをゼロから全部作ってもらう」ということです。

生成AIブームのいま、このような開発手法が広まりつつあります。
そこで、私もバイブコーディングを試してみることにしたのです。

結論

先に結論だけ言います。
「バイブコーディングは私に合わない!」

では、本題に入ります。

生成AIにアプリを作らせる

さて、私はバイブコーディングを試してみるにあたって、「スマートフォンをPCのタッチパッドの代わりとして使えるようにするアプリ」を作ってもらうことにしました。

まずはじめに、アプリの要件定義をして、それを生成AIに投げかけます。
すると、ソースコードが出力されるので、それを実行してテストしてみます。
もし、不具合や改善したい点があれば、その旨を生成AIに投げかけ、修正版のコードを出力してもらいます。

これを自分の満足がいくまで繰り返していきます。
そう、私自身はソースコードに1行も触れず、すべてを生成AIに任せるのです。

成果物の出来栄えはいかに!

バイブコーディングによって作ったアプリは、十分満足のいく出来栄えで、製品としてリリースできるレベルのように感じるほどです。
ほんとうにすごい。感動しました。

バイブコーディングのメリット

一番のメリットは、プログラミングのスキルがほとんどなくても簡単にアプリを作れることですね。こちら側は何も考えなくても、アイデアを生成AIに投げかけるだけでアプリが完成するのは大きなメリットだと思います。

バイブコーディングのデメリット

一方で、デメリットも見えてきました。
私が感じたデメリットは大きく2つ。

1つ目は、保守性が悪いこと。
すべてを生成AIに任せてしまっているため、プログラムがどんな構造になっているのかを把握できません(しようと思えばできるが、わざわざする人も少ないでしょう)。
それゆえ、セキュリティホールを発見しづらくなります。また、ちょっとした修正やアプリの維持にも生成AIに頼らないといけません。

2つ目は、”プログラミングしている感”がないこと。
自分でソースコードを書かないので、まったくもって”プログラミングしている感”を感じられません。
ただ単にアプリを作りたいだけの人はそれで問題ないと思うのですが、私はプログラミングを楽しむ対象として捉えているので、自分でソースコードを書かないと”プログラミングしている感”がなくてまったく楽しくありません。

結論(再)

「バイブコーディングは私に合わない!」

その理由は、デメリットの2つ目に挙げたことそのままです。
バイブコーディングは全然楽しくないので、私には合わないと感じました。

やはり、プログラミングは自分でコードを書くから楽しいのです。

私は、今後も自らの手でソースコードを書いていく方針で行こうと思います。