コードが書けない僕が、ChatGPTとCodexで40時間開発して気づいたこと
どうも、久我レイジです。
先日、ふと気になりました。今作っているAIワークスペースに、僕はどのくらい時間を使っているんだろう、と。
最初に数えたときは30時間くらいだと思っていました。でも、そのあとも仕様を考え、修正し、また動かして確認する時間が続いて、今は約40時間になっています。
40時間。
それなりの開発時間です。
ただ、その数字を見ながら、少し変な感覚がありました。
僕はコードが書けません。
コードが書けない僕が、開発を始めた

僕はプログラマーではありません。自分でソフトを開発するための専門知識も持っていません。
少し前まで、自分専用のソフトを作るなんて考えもしませんでした。欲しい機能があっても、自分には作れない。誰かへ依頼すれば費用がかかるし、一から勉強するには時間も足りない。
そこで終わっていました。
今回作っているAIワークスペースも、最初から大きな構想があったわけではありません。
毎回同じ説明をしなくても、Project Aliveや『クロスロード』のことを理解した状態でAIへ相談したい。過去に書いたnoteや、制作中に考えたことを探しやすくしたい。会話で終わらせず、記憶やタスクへつなげたい。
そんな、自分が毎日感じていた小さな面倒から始まりました。
以前の僕なら、便利そうなサービスを探して終わっていたと思います。自分にぴったり合うものが見つからなければ、少し我慢して既存のツールを使うか、諦めるか。その二択でした。
今は、もう一つの選択肢があります。
自分で作る。
正確には、自分一人でコードを書くのではなく、AIと役割を分けて作るという選択肢です。
思いつきをCodexへ投げる前に、ChatGPTと話している

最近は、バイブコーディングという言葉をよく見かけます。
作りたいものを言葉で伝えれば、AIがコードを書いてくれる。コードを書けない人でも、アプリやツールを作れるようになった。
これは本当に大きな変化だと思います。
ただ、実際に開発を続けてみると、言葉で指示できるからこそ、完成するものにはかなり差が出ると感じました。
例えば、使いやすいダッシュボードを作ってほしい、とだけ伝える。
AIは何かを作ってくれます。見た目を整え、ボタンを配置し、それなりに動く画面を返してくるかもしれません。
でも、使いやすいとは誰にとってなのか。
僕はパソコンで何をしたいのか。スマートフォンでは何を最初に見たいのか。今あるAIチャットやタスク管理と、どうつながるのか。今回の修正で、どこには触れてはいけないのか。
そこが決まっていなければ、動くものはできても、自分が使い続けたいものにはならない。
しかもAIは、曖昧な指示でも、それらしい完成品を返してきます。
見た目が整っていると、こちらも正しいものができた気になってしまう。実際に使い始めてから、似た機能が重複していたり、保存の仕組みが分かれていたり、あとから機能を増やしにくい構造になっていることへ気づく。
だから僕は、思いついた機能をいきなりCodexへ投げることは、ほとんどしていません。
まずChatGPTと相談します。
何に困っているのか。どんな場面で使うのか。今ある機能とどう接続するのか。今回の開発で何を完成とするのか。
僕の中にある曖昧な要望を、対話しながら少しずつ整理していきます。
その内容を指示書にまとめてから、Codexへ渡す。
Codexが実装とテストを行い、返ってきた結果を僕が確認する。想定と違えば、またChatGPTと修正内容を詰めて、新しい指示書にする。
僕の感覚では、これは思いつきを勢いで形にするバイブコーディングというより、仕様書駆動のプロセスを、AIとの対話によって高速に回しているスタイルに近いです。
コードの代わりに、ただ長い命令文を書いているわけではありません。
自分でもまだ分かっていないことを、AIとの会話によって仕様へ変えている。
そこが一番大きい気がしています。
仕様書は、最初から完成しているわけではなかった

仕様書と書くと、最初に完璧な設計図を作り、その通りに最後まで進めているように見えるかもしれません。
実際は、かなり違います。
文章で考えている段階では必要だと思っていた機能が、画面になると邪魔に見えることがあります。逆に、最初は小さな補助機能だと思っていたものが、触ってみると中心になることもある。
実装されたものを見ることで、僕自身の考えが変わります。
だから、仕様書は一度作って終わりではありません。
その時点で見えている場所まで進むための地図に近い。
少し進めば、また景色が変わる。そこで立ち止まり、ChatGPTと話し、地図を書き直してCodexへ渡す。
この繰り返しです。
以前なら頭の中だけで何日も迷っていたことが、いったん画面になって返ってくる。実物を見ながら考え直せるので、迷い方そのものが変わりました。
完璧な仕様を作ってから始めるのではなく、不完全な仕様でも形にして、そこから次の判断をする。
形になったから、次の違和感へ進めたということです。
AIで作業は減った。でも、判断はなくならなかった

AIを使えば、開発はかなり楽になる。
始める前の僕は、そう考えていました。
実際、実装そのものは速いです。僕が一から調べながら進めていたら、数日止まっていたかもしれない場所を、Codexは短い時間で越えていきます。
ただ、ある日は、かなり長い指示書をCodexへ渡しました。
実装とテストに時間がかかりそうだったので、そのまま寝ることにしました。朝には終わっているかもしれない。そんな感覚でした。
ところが、起きてもまだ動いていました。
画面の一番下にある表示が、一定の間隔で点滅している。止まっているようにも見えるし、進んでいるようにも見える。使用量の表示も、ほとんど変わらない。
止めるべきか。
もう少し待つべきか。
コードを書いているわけではないのに、結局、僕が判断しなければ先には進まない。
その画面を見ながら、これも開発時間なんだろうかと考えていました。
僕の手が動いていない時間にも、実装は進む。
一方で、パソコンの前にいない時間にも、次の仕様を頭の中で考えている。
AIを使った開発は、何時間パソコンを触ったかだけでは、少し測りにくいものになっていました。
『クロスロード』の監督と、少し似ていた

この感覚には、覚えがありました。
メタバースドラマ『クロスロード』を作っていたときです。
Project Aliveの作品は、僕一人では完成しません。声を演じる人がいて、アバターを動かす人がいて、音楽を作る人がいる。多くの人が関わることで、最初に僕が書いた脚本とは少し違うものへ変わっていきます。
監督だからといって、すべての作業を自分でできるわけではありません。
むしろ、できないことの方が多い。
それでも、何を作品に残すかは決めなければならない。
良い演技でも、全体の流れには合わないことがあります。逆に、最初は小さく見えた提案が、作品の空気を大きく変えることもある。
誰かに任せることと、判断まで手放すことは別でした。
AIとの開発も、少し似ています。
ChatGPTは、僕の中にある曖昧な考えを整理してくれる。Codexは、その仕様を実装し、テストまで進めてくれる。
僕ができない部分を、かなり広く補ってくれています。
でも、何を入れるのか。何を削るのか。便利さを優先するのか、安全性を優先するのか。
最後に残る判断は、やはり僕の仕事でした。
AIに任せられることが増えるほど、人間の役割は消えていくと思っていました。
実際には、役割が変わっているだけなのかもしれません。
僕が作りたいのは、自分の創作を止めない環境だった

開発を続けていると、入れたい機能はいくらでも増えていきます。
AIチャット、会話履歴、長期記憶、記事検索、タスク管理、提案機能、開発ログ。便利そうなものを並べれば、終わりがありません。
でも、途中で一度立ち止まりました。
僕が本当に欲しかったのは、機能の多いAIツールなんだろうか、と。
たぶん違います。
noteを書く前に、過去の考えへすぐ戻れること。
Project Aliveや『クロスロード』のことを、毎回最初から説明しなくても相談できること。
今やるべき作業が見え、そのまま次の行動へ移れること。
僕が欲しかったのは、自分の創作を止めないための環境でした。
機能を増やすことが目的になった瞬間、自分専用である意味が薄くなります。便利そうだから入れるのではなく、僕の活動のどこに必要なのかを説明できるものだけを残したい。
そう考えるようになってから、指示書の内容も変わりました。
何を追加するかだけではなく、何を変更しないかを書くようになった。
どの画面へつなぐのか。既存の仕組みを再利用できないか。機能がゼロ件のとき、どんな表示にするのか。
派手な機能より、毎日使ったときに邪魔にならないことを考える時間が増えました。
今回、開発時間を数えてみて困ったのは、どこからどこまでを40時間と呼ぶのか分からなかったことです。
ChatGPTと仕様を考えていた時間。指示書を書いた時間。Codexの実装結果を確認した時間。別の仕事をしながら、次の修正を考えていた時間。
全部を含めれば、40時間より多いかもしれません。
逆に、Codexが一人でテストを続けている時間まで、僕の作業時間と言っていいのかは分からない。
だから次は、このAIワークスペースの中に開発ログを入れたいと考えています。
何時間使ったかだけではなく、その日にどんな仕様を考え、何を実装し、何を見送ったのか。
うまくいった指示書だけではなく、失敗した指示書も残した方がいいのかもしれません。
完成した機能だけを見ても、その機能がなぜ必要だったのかは分からないからです。
『クロスロード』も、完成した映像だけを見れば、そこに至るまで何度止まり、何を作り直し、誰の言葉で変わったのかまでは見えません。
AIワークスペースも、きっと同じです。
数年後、この仕組みが今とはまったく違う形になっていたとしても、最初の40時間に僕が何を考え、どこで迷い、なぜその機能を残したのか。
そこだけは、消えないようにしておきたいと思っています。
こちらもおすすめ!
いいなと思ったら応援しよう!
いただいたチップは作品づくりの活動費に使わせていただきます。応援していただけると、とても励みになります!