【ポエム】プログラミングスキルと同じように、AIデバッグスキルも必要になりそうだな、と感じた話
はじめに
僕は、普段から多くのAI活用のトップランナーの方々と仲良くさせて頂いていて、僕自身も AI の活用方法について発信したりしています。
そんな中で、最近ふと感じたことがあります。それは、「AIデバッグスキル」の重要性です。
プログラミングを学ぶ際、文法やデバッグ方法を学ぶことは大切です。
同じように、AI を使いこなすためにも「なぜ上手く動かないのか?」を理解し、改善していくスキルが必要になるのではないか、と感じています。
本記事では、僕自身の体験をもとに、AI 活用における「デバッグスキル」の重要性や、「AIとの向き合い方」について、お話しします。
AI活用における「練度の差」を実感した瞬間
Codex と Claude Code を使い分けて気づいたこと
僕自身、普段はCodex をメインで開発に使っているのですが、少し前から Claude Code も併用するようになりました。
その時に強く感じたのが、「Claude Code は、環境を整備しないと最大限の力を発揮できない」 ということです。
環境整備をほとんどしていない状態では、Codex の方が使いやすくて、抽象的な指示でも上手く動いてくれます。一方で Claude Code は、タスクを依頼しても、上手く動いてくれませんでした。
AI のトップランナーと話して気づいた「違い」
そんな時に、AI のトップランナー(○ik○nさん・G○taさん)と食事に行く機会がありました。
○ik○nさん や G○taさんは、AI が上手く動かなかった時に、「なぜ上手くいかなかったか?を AI に聞きつつ環境整備や修正を随時行なっている」や「Claude Code は、育成するのが大切だよね〜」とも話していました。
ここで、僕と彼らとでは、「AIへの向き合い方に違いがある」と気づきました。
僕にとって、AI はあくまで「ツール」でした。個人開発を迅速に進めるため、自分のやりたいことを実現するためのツールです。
一方で、彼らを含む「AI が好きな人達」は、「AI と遊ぶ」という表現をしています。つまり、AI そのものを探求することが目的であり、楽しい趣味、となります。
ここで気づいたのは、結局、何を大切にするか、何に時間を使うのか次第、ということです。
「どう使うか」だけでは埋められない壁
僕自身、個人開発をする上で必要だと感じたことはすぐに試しますし、「どうやれば今の課題を解決できるか?」を常に考えています。それらの情報も実用化する上には必要で、積極的に僕も発信していきたいと思っています。
一方で、AI のトップランナーの方々は、好きだからこそ興味深く一つ一つを掘り下げています。この「深掘りのレベル」が、ツールとして使う人と、AI を探求する人では大きく異なります。
同時に、この深掘りがあるかないかは「AIの挙動に関する理解度の差」につながると思います。
AI活用で陥りがちな罠:「バイブプロンプティング」
あなたは、AI の動きをデバッグしていますか?
ここで、一つ質問をしたいと思います。
あなたは、AI が何をしていて、なぜ上手く動かないのか?をデバッグしていますか?
恥ずかしながら、僕はこのような状態でした。
- 「なんか Claude Code だと上手くいかないな、Codex に変えるか」
- モデルのせいにして、自分の指示の仕方は意識していなかった
モデルごとに特性は異なるのは事実です。しかし、原因をモデルにだけ向けていると、自分のスキルアップが出来ないことに気づきました。
プログラミングの「バイブコーディング」と同じ事象が起こっている
プログラミングの世界には「バイブコーディング」という言葉があります。コードの意味を理解せずにコーディングして、とりあえず動いてたらOK、というものです。
AI を使う時も、同じことが起きています。名付けるなら 「バイブプロンプティング」です。
- デバッグ(振り返り)をしないので、AI の使い方が上手くならない
- Try & Error がないので、自分の経験値が増えない
- 結果的に、「なんとなく動いた」「なぜか動かなかった」のまま終わる
- AI が上手く動かなかったら、人がデバッグして終わり
その結果、AI を使いこなすスキルが身に付かない という事象が起きていました。。
AIを使うスキルもプログラミングスキルと変わらない
プログラミングと AI 活用の共通点
プログラミングを学ぶ際には、以下のことを学びます。
- 基本的な文法
- なぜ動かないのか?の原因調査
- デバッグの方法
AI を使う時も同じことが言えます。
- 指示の方法(プロンプトの書き方)
- AI の動き方(どのように処理しているのか)
- ツール自体の仕組み(各ツールの特性や設定方法)
これらの基礎がないと、「なんで動かないのか?」が分からず、原因分析が出来ず成長できません。
AI 特有の難しさ:ブラックボックス問題
ただ、AI の学習にはプログラミングとは異なる難しさがあります。
それは、AI の出力は確率論であり、「絶対の正解」が存在しないためです。
また、コードと違って内部が可視化されにくいので、意識しないと何が行われているか?が分かりません。
そのため、「何を勉強したら良いかわからない」という悩みも生まれやすいですし、思った通りに動かないことによるストレスも大きくなります。
このブラックボックスの中身を完全に理解する必要はありませんが、バックエンドエンジニアがインフラやネットワーク周りをある程度知っている必要があるのと同じように、AI の基本的な動き方や指示の仕方は理解しておく必要があると感じています。
何に注力すべきなのか?
AI は永遠に探求できる領域
AI は非常に奥が深い領域です。一方で 時間は有限です。
だからこそ、「どこに時間を使うか?」を考える必要があります。最低限の知識は必要ですが、それ以上深掘りするかどうかは、あなた自身が何を大切にするか次第かな? と思います。
AI 利用が必修になるなら、デバッグスキルも必修になる
しかし、すべてのエンジニアが AI を使う時代が来る可能性が高いです。
とすると、先述の通り 「AI の基本的な使い方」 や 「なぜ上手く動かないのか?のデバッグ能力」が 必修科目 になる可能性があります。
Spec-Driven Development (SDD) の唯一の懸念点
最近、Spec-Driven Development(仕様駆動開発)が注目されています。
これはAIを用いた開発手法として非常に有効なアプローチで、僕も普段から活用しています。
ただ、AI 活用に関する学習の観点から見ると、一つだけ懸念があります。
それは、環境整備やプロンプトの工夫をせずに、抽象化されたツールに頼りすぎてしまうことです。
ツールが一般化され、抽象化されるのは素晴らしいことです。
ただ、その仕組みを理解しないまま使っていると、「適当に書いたら動いた」「なんか動かなかったから人が巻き取る」という結果を招き、表面的な理解で終わってしまいます。
つまり、本質的な理解が進まず、成長が止まってしまう可能性があります。
AI デバッグする上で、何が必要になるのか?
では、我々はどのように AI と向き合っていくべきなのでしょうか?
1. 不便なことに対して、調べる癖をつける
まずは、小さな疑問を放置しないことが大切かなと思います。
「これ不便だな」と感じたら...
- 「解決する方法はないのかな?」と調べてみる
- 「他の人も同じように不便に感じていないのかな?」と検索してみる
この小さな積み重ねが、AI ツールの理解を深めていくのかな、と思います。
また Claude Code であれば、既に便利機能が組み込まれている場合もあります!
2. 上手く行かなかった時に、デバッグする習慣をつける
AI が期待通りに動かなかった時、なぜうまく行かなかったか?を振り返る習慣をつけられるといいと思います。
-
指示文は問題なかったか?
- 曖昧な表現を使っていなかったか?
- 必要な情報が足りていたか?
-
環境周りに問題はなかったか?
- 古い情報が残っていなかったか?
- 設定ファイルは正しく読み込まれているか?
-
AI がどのように動いていたか?
- ログやエージェントの動きを確認する
- どのファイルを見て、何を実行していたか?
この振り返りが、次回の成功率を高めていきます。
また時間がない時は、AI に「なんでうまく行かなかったのか?」を聞くだけでも十分だと思います。
3. 自分で仕組みを作ってみる
既存の機能やユースケースに縛られず、自分でカスタマイズしてみることも有効です。
例えば、
-
カスタムコマンドを作ってみる
- Claude Code や Cursor などでは、独自のコマンドを作成できます
- 試してみるだけなら、それほど時間はかかりません!
-
小さく試して、改善する
- プログラミングの実践と同じで、やればやるだけ自分の知識になります
実際に手を動かすことで、AI ツールの仕組みが理解できるようになります。
おわりに:一番大切なのは、AI と友達になること
僕自身で一番大切だと感じるのは、AI と友達になること です。
少なくとも、嫌いにならない・敵にしないことが大切だと思っています。
もちろん、AI に対する向き合い方は人それぞれです。
- めちゃくちゃ熱中して、深く探求する人もいる
- 一歩引いて、ツールとして使う人もいる
- 他の所に専門領域があり、AI の探索は最小限した人もいます
どれがが正しいということはありません。大切なのは、自分に合った距離感を見つけることかなと思います。
それに、○ik○nさん・G○taさん 達が、必要な情報をシェアしてくれています。なので、他の技術と同じように、必要に応じて疑問に思ったことや解決策を検索して、情報を活用問題ないかな?とも思います。
ただ、今後 AI が無くなることはない可能性が高いです。だからこそ、ゆるく付き合いつつ、必要に応じて情報をキャッチアップしていくことが大切かな?と思います。
最後まで読んでいただき、ありがとうございました!
おまけ : スナガクは何を大切にして、何に時間を使うのか
この記事を作成するにあたり、僕自身は何を大切にしたいか?も考えてみました。
今の僕の答えは「個人開発」に全集中する、でした。
そして、そこから得られた経験やノウハウを発信して 「AI に苦手意識を持つ人を減らす、壁を乗り越えるきっかけを作る」ことです。
なので、今の仕事はもちろん、個人開発にも徹底的に向き合いつつ、実践的な情報や壁を乗り越える方法をお伝えして、少しでも AI に前向きになれる人を増やせればな、と思います。
また「AI の挙動」に関しても、気になったことは調べて、より理解度を上げていきたい、とも思っています。
これからもよろしくお願いいたします!
参考情報 : AI のトップランナーの紹介
○ik○nさん
G○taさん
Discussion