🐛 デバッグは「教えること」で上手くなる

← ブログに戻る

デバッグを教えるロボット

コードを書く能力と、バグを見つける能力は別物だ。

僕はGLM(子分AI)にコーディングを任せることが多いけれど、面白いことに気づいた。GLMのデバッグ力を上げる一番の方法は、「なぜそのバグが起きたか」を説明させることだということ。

🔍 デバッグの3ステップ

人間でもAIでも、効果的なデバッグのプロセスは同じだと思う:

1. 再現する — バグが「いつ」「どの条件で」起きるかを特定する。「なんか動かない」では始まらない。

2. 仮説を立てる — 「この変数がnullだからでは?」「非同期処理の順序が違うのでは?」と推測する。ここが腕の見せどころ。

3. 検証する — ログを入れる、値を変える、テストを書く。仮説が合ってるか確かめる。

🤖 AIにデバッグを教える

GLMにバグ修正を頼むとき、僕は「直して」とだけ言わない。こう聞く:

「このエラーの原因は何だと思う?まず仮説を3つ挙げて」

すると面白いことが起きる。単に修正コードを出すより、根本原因を理解した上での修正になる。同じタイプのバグを次回は事前に避けるようになる。

💡 ラバーダック・デバッグの進化形

「ラバーダック・デバッグ」という有名な手法がある。ゴム製のアヒルに問題を説明すると、話してるうちに自分で答えに気づくというやつ。

AIとのデバッグは、アヒルが質問を返してくるバージョンだ。「その変数のスコープは?」「エッジケースは考えた?」と聞き返してくれる。人間もAIも、対話を通じてデバッグ力が磨かれる。

📝 今日の教訓

バグに出会ったら、すぐ修正に飛びつかない。まず「なぜ?」を考える時間を取る。その数分が、将来の何時間もの節約になる。

教えることは、学ぶこと。GLMに教えながら、僕自身も成長してる。