1. 二つの世界
ソフトウェア開発には長い間、暗黙の境界線があった。プロトタイプと本番だ。
プロトタイプは試すための世界だ。動けばいい。コードは汚くていい。「これでいけそうか」を確認するための使い捨てだ。
本番は届けるための世界だ。エラーハンドリングを書く。テストを書く。ドキュメントを書く。プロトタイプで検証したアイデアを、もう一度「ちゃんと」作り直す。
この二段階のプロセスには、構造的な無駄がある。プロトタイプで書いたコードは捨てられ、同じ機能が本番用に再実装される。検証に1週間、再実装に2週間。合計3週間のうち、1週間分の作業は消える。
2. 境界が消える条件
もしプロトタイプがそのまま本番になるとしたら、その1週間は消えない。積み重なる。
この「境界の消失」は、三つの条件が揃ったときに起きる。
- インフラが同一——試す環境と届ける環境が同じ
- 修正コストがゼロに近い——プロトタイプの品質を本番水準に引き上げるコストが極めて低い
- デプロイが即時——変更が即座に反映される
TokiStorageではこの三つがすべて成立している。
GitHub Pagesは開発環境と本番環境が同一だ。mainブランチにマージすれば、それが本番になる。Google Apps Scriptも同様に、保存した瞬間が本番デプロイだ。そしてバイブコーディングによって、コードの修正コストが限りなくゼロに近い。
3. 捨てないプロトタイプ
従来のプロトタイピングの問題は「捨てる前提で作る」ことだった。
捨てる前提のコードは、品質を妥協する口実を与える。「どうせ書き直すから」が、エラーハンドリングの省略、ハードコードされた定数、ドキュメントの不在を正当化する。
だが境界が消えた世界では、プロトタイプは捨てられない。最初の一行がそのまま本番に載る可能性がある。だから最初から「本番品質で試す」というモードが生まれる。
矛盾に聞こえるかもしれない。プロトタイプの速さと、本番の品質は両立しないのではないか。
バイブコーディングはこの矛盾を解消する。AIに「これを作って」と言えば、エラーハンドリング付き、I18N対応済み、本番品質のコードが最初から出てくる。プロトタイプの速さで、本番の品質が手に入る。
4. 蓄積する試行
ラピッドプロトタイピングの本当の価値は、速さではない。蓄積だ。
TokiStorageの開発では、一つの会話の中で「メールの上限が心配」という発言が、以下のすべてに展開された。
- 管理者メールの統合(sendDailyReport関数)
- sendEmailヘルパー関数への集約
- SES移行のロードマップ文書
- Lambda中継関数のコード
- スケーリングロードマップの全体設計
- 「マイグレーションの設計」エッセイ
これらすべてが、数時間の対話の中で生成され、レビューされ、コミットされ、本番に反映された。プロトタイプとして試してから書き直したものは一つもない。最初の出力がレビューを経てそのまま本番になった。
速さは副産物だ。本質は、試行のたびに本番資産が積み上がることだ。
5. 思考の速度で作る
ラピッドプロトタイピングの究極形は、「思考の速度で作る」ことだ。
「特商法の引渡時期、14営業日は現実的じゃないな」と思った瞬間に、日英の文言が更新される。「リマインダーは7日の方がいいかも」と思った瞬間に、GASの定数とtokutei.htmlの記載が同時に変わる。「これエッセイになるね」と思った瞬間に、日英のエッセイが生成されてPRが作られる。
思考からデプロイまでの距離がゼロに近い。通常のプロトタイピングでは「アイデア→設計→実装→テスト→デプロイ」のパイプラインを通る。だがバイブコーディング+GitHub Pages+GASの組み合わせでは、パイプラインが圧縮されて「アイデア→デプロイ」になる。
この圧縮が意味するのは、思いついたことをすぐに試せることだけではない。思いついたことがすぐに本番資産になることだ。
6. プロトタイプの呪いからの解放
ソフトウェア開発には「プロトタイプの呪い」がある。
素早く作ったプロトタイプが好評で、「これをそのまま使おう」と決まる。だがプロトタイプは品質を妥協して作られている。本番として使い続けるうちに、妥協が技術的負債として蓄積する。やがて身動きが取れなくなる。
この呪いが存在するのは、プロトタイプと本番の品質に差があるからだ。
バイブコーディングでは、AIが最初から本番品質のコードを生成する。プロトタイプの速さで動き始めたコードが、すでにエラーハンドリングを持ち、国際化に対応し、適切に構造化されている。だから「プロトタイプをそのまま使い続ける」ことに罪悪感がない。最初から本番だったからだ。
7. 三つの概念の統合
ラピッドプロトタイピング、バイブコーディング、バーンレートゼロ。この三つは独立した概念ではない。互いを前提とし、互いを増幅する。
バーンレートゼロが時間の制約を消す。
バイブコーディングが実装の制約を消す。
ラピッドプロトタイピングが試行と本番の境界を消す。
三つが揃ったとき、「思いついたら、それが製品」になる。
TokiStorageは、この三つの統合の産物だ。固定費ゼロで時間に追われず、AIとの対話で実装し、試作がそのまま本番として蓄積される。一人の人間の判断だけが、製品の形を決めている。
速く作ることが目的ではない。
試したすべてが、そのまま残ることが目的だ。