バグを見つけ出すのに効果的な「説明メソッド」について

元ネタはプログラミングに関するものだけど、
プログラミングに限らず広い範囲に使えるメソッド発見。

WEB+DB PRESS vol.38「プログラミングの光景」(高林 哲)の中で
「バグの原因を見つけ出すにはこんな方法があるよね」
というのがいくつか挙げられていた。

その中で「そうそう、そうなんですよね」と激しく思ったのがこれ。

  • 身近な人に相談する(説明しているうちに自分で原因に気づく)

ある。

言うことを聞かないプログラムについて人に状況を説明していて
「ここでね、ほらちゃんと中身を置換してるはずでしょ、
 なのにね、なぜか表示してもね、置き換わってない・・・
 のは、二次元配列になっちゃってるからですね。」
と一方的に解決してしまうことはよくある。

これは何もプログラミングに限ったことではないように思う。

パズルをやっているにせよ人生の方向性に悩んでいるにせよ
自分でいくら考えてもどうにもならなかったのに
人に現状を説明しているうちに
いつの間にか解決していた、というのはよくあることだ。

これは相手のアドバイスを受けてどうこうということではなく
状況を知らない人に説明することによって
いったん入り込んだ迷宮から抜け出し
入り口から改めて考えられるようになるから、ということだろうう。

だから、

「身近な人に相談する」に関しては、状況を説明することが重要なので、相談相手は人ではなく、ぬいぐるみでもよい、という説があります。

というのもとてもよくわかる。

説明をしているうちに自分で解決してしまうわけだから、
相手がぬいぐるみだろうがキン肉マン消しゴム略してキン消しだろうが
何でもいいはずだ。

自分では解決困難な問題に対処するための画期的な手法。
実に魅力的ではある。

しかし、この「説明メソッド」を導入するには多少の覚悟が要る。
問題解決と引き替えに、
「ぬいぐるみに話しかける私」の存在を許さなければならないからだ。

実行すべきかどうか悩ましいところ。どうしよう。
とりあえずゲルググちゃんに聞いてみるか。

関連エントリ

  • このエントリーをはてなブックマークに追加

4 Responses to “バグを見つけ出すのに効果的な「説明メソッド」について”

  • 2007/04/28 20:16

    > ゲルググちゃん
    赤いやつだと、一笑に付されて終わっちゃう気がします。

  • 2007/05/04 03:36

    説明メソ\ッド

    「説明メソ\ッド」を簡単に説明すると、
    ・自分の間違いに気づくには、身近な人に相談するとよい(説明しているうちに自分で原因に気づく)

  • 2007/05/05 16:56

    > baldhatterさん
    赤いやつといえば私の中でザクですね。他のはなぜかピンときません。

  • 2007/05/09 01:53

    アウトプットで問題を解決する

    (via FPN – 説明メソッド、応用編? 経由 バグを見つけ出すのに効果的な「説明メソッド」について – 頭ん中)
    その中で「そうそう、そうなんです…