Claude Code をはじめとする AI を使って開発するのが、だいぶ当たり前になってきました。
自分も設計の壁打ちから、コードの下書き、エラー調査まで日常的に使っています。
ただ、使えば使うほど
「これは人間がやらないとダメだな」
と感じる瞬間も増えてきました。
今回は、AI を実際に使っていて
「万能ではない」と感じた場面をいくつか整理してみます。
① 要件が曖昧なままだと、AI も迷子になる
これは例えるなら、
目的地を伝えずにタクシーに乗るようなもの だと感じています。
「とりあえずいい感じのところでお願いします」と言えば、
走り出してはくれますが、
自分が本当に行きたかった場所に着く保証はありません。
AI への指示も同じで、
- 何を作りたいのか
- どこまでやりたいのか
- 今回は何を優先したいのか
が整理されていないと、
それっぽいけどズレた回答 が返ってきがちです。
AI が悪いというより、
人間側が「行き先」を決めていない状態
というケースがほとんどだと感じました。
② 「動くコード」と「使えるコード」は違う
AI が出してくるコードは、
確かに動く ことが多いです。
ただ、
- 命名がプロジェクトに合っていない
- 責務が曖昧
- 後から読んだ時に意図が分かりづらい
といったケースも少なくありません。
特に実務やチーム開発では、
- なぜこの実装なのか
- どこを修正すれば影響が出るのか
が重要になるので、
その判断はまだ人間側がやる必要がある と感じました。
③ エラーの「背景」を理解するのは人間の仕事
エラー文を貼り付けると、
AI はかなり高い確率で原因候補を出してくれます。
ただし、
- なぜその設計になっているのか
- どこまで直していいのか
- 応急処置でいいのか、設計から見直すべきか
こういった 背景込みの判断 は、
コードベースを理解している人間じゃないと難しいです。
最終判断はやっぱり人間側 だなと思いました。
④ AI を使うほど「考える量」は減らない
最初は
「AI を使えば楽になる」
と思っていましたが、実際は少し違いました。
- 何を聞くか考える
- 返ってきた回答を精査する
- 自分の文脈に合わせて修正する
むしろ、
考える質と密度は上がっている 感覚があります。
その代わり、
が減っている、というイメージです。
まとめ:AI は「優秀な補助」
今のところの結論はシンプルで、
- AI はめちゃくちゃ便利
- でもハンドル操作まではしてくれない
という立ち位置です。
設計の方向性を決めるのも、
最終的に責任を持つのも人間。
AI は
「考えるための相棒」
として使うのが、ちょうどいいと感じています。