問題解決能力

何時間かプログラミング等の難しいことをしていると、ときどきどうしても解決できないように感じるような問題が出てくることがある。
たとえば、メモリリークの原因がいつまでたってもわからなかったり、書いたプログラムが仕様通りに動かなかったりすると、その原因を探ることになる。しかし、原因探しをある一定時間行ってもそれ以上解決方法が見つからない場合は、一旦、休んだり遊んだりするなど、別の事をすると、脳の中でバックグラウンド・タスクが自動的に動き出し、無意識に問題を解決してくれる。 いわゆる小人さんとかいうやつである。
この方法でこれまで多くの問題を解決して来たし、SoftEther 1.0 を書いていたときからややこしい原因のバグがあったりしても最終的にはすべて解決できていた。


脳の中でバックグラウンドタスクが稼動すると、技術的なことであれば大抵どのような問題でも解決できるので、優れた機能である。これを有効活用するには、対象の作業から一旦離れて、全く別の事をやるなどして、脳を休める必要がある。
これまでは映画を見たり本を読んだりすることによって脳を休めていたのだが、最近はせっかく車を買ったことだし、色々試した結果、夜中にプログラミングで疲れたらドライブをすることで脳を休ませる のが非常に効果的ではないかということを考えるようになった。