1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

No Vibe Coding: AIを甘やかしてはいけない

Posted at

ノリを許すな

ある程度以上の規模のプロジェクトをAIを使って開発するときには、Vibe Codingはするべきではない。
いや、違う。AIにノリ(Vibe)でコーディングすることを許してはならない。

Vibeでコーディングして良いのは、我々、人間だけだ。

この記事は、いかにして、AIのノリをつぶし、人間がノリノリ(Vibe)でコーディングするのか、その道標である。

any型を許すな

とりあえず、TypeScriptのプロジェクトの場合、絶対にany型を許してはならない。
せっかく型のある言語を使っているのに、any型を使うのはバグの温床を撒き散らすことになる。

あいつら(AI)は、ことあるごとに手を抜こうとしてくる。型を書くのを面倒くさがって、すぐにany型に逃げようとする。
だが、それを許してはならない。絶対にだ。

いちいち型を指定するのは面倒だ? 面倒な思いをするのはAIだけだ。AIに型を書かせれば良いだけだ。

だから、CLAUDE.mdには「any型は許さない。絶対にだ。」と書いておこう。

やつらに間違った変更を許すな

AIにコーディングを任せっぱなしにしていると、いつのまにか、きちんと動いていたはずのコードが動かなくなっていることがある。
深く考えずにノリでコードを書き換えるから、こうなるのだ。

これを防ぐには、TDD(テスト駆動開発)にしなければいけない。
ある程度コードが動くようになったら、テストを書いて、正しい動作をAIが判断できるようにしてやるのだ。
そして、事あるごとにテストを実行させる。

テストを書くのが面倒くさい? そんなものは、AIに書かせれば良い。AIを甘やかして、人間がテストを書いてあげる必要などない。

片っ端からテストしていると、テストの数が増えてくる。
そうなると、やつら(AI)は手を抜こうとしてくる。
具体的には、「97%のテストが通っています! 通らないテストはたいしたことじゃないですから大丈夫」とか、ふざけた事を言い始める。
もちろん甘やかしてはダメだ。100%通させろ。

テスト環境だと無理、とか言ってくる場合は、きちんと「なぜ、テスト環境だとテストしにくい」のかを説明させて、納得がいくものなら仕方がない場合がある……かもしれない。その辺は、各自、自分で判断して欲しい。

設計をしっかりやる

設計は手を抜かずきちんとやるのが重要です。
記事の主題とは、何の関係もないんだけどね。うん。設計大事。

設計はAIにやらせて良いんじゃないかな。知らんけど。
ただし手を抜いた設計をしてきたら文句を言うのが大事。

おわりに

この記事はノリ(Vibe)で書いてるので、まとまりがないかもしれませんが、あしからず。
人間はノリでいいんです。そういう記事です。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?