問題解決能力

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


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

ドライブ

厄介なプログラムを書いているときは、昼間から作業をしていても、長時間かかって結局夜になってしまうことはよくある。こういう時は、深夜 (午後10時以降) でつくば付近の道路の交通量が減ってきた時間帯を狙ってドライブするととても効果的である。
疲れたのを我慢して作業を続けるのは絶対にダメ。作業効率はどんどん低下する。
といっても、実はつくば周辺の道はよく知らないのだが、一応下記のような道は覚えた。

大学から台坪入口交差点に入り、国道125号 → JAのところの道路 → 県道53号 (DNS のポート番号として覚えているので間違えない) → 国道6号 と走ると、がんこ屋の付近に出る。
そこから南下して6号バイパスを通り土浦学園線に出てつくばセンターを通って大学周辺に帰る。
所要時間は40〜50分。これで大体プログラミングなどでつかれた脳が休まって「バックグラウンドスレッド」が動作して問題解決を行ってくれるので、ガソリン代など安いものである。

(全然関係無いけど) 昔、某社から聞いた話

パソコン初心者向けのパッケージソフトをたくさん出している会社なのだけど、紙媒体のマニュアルを結構丁寧に書いて同梱したらしい。
そのマニュアルには、大変分かりやすいスクリーンショットと共に、一応主要な機能すべての解説が載っている。
マニュアルの構成は、
① はじめに
② インストール方法
③ アンインストール方法
④ 簡単な使い方
⑤ 詳しい使い方
のようになっていたらしい。


これをパソコン初心者が買って、マニュアルを最初のページから読みながらソフトの使い方を学ぼうとして、
『① はじめに』を読み、『② インストール方法』を読んでソフトをインストールし、次に順番通り『③ アンインストール方法』を読んでソフトをアンインストールしてから、『④ 簡単な使い方』で起動方法が書いてあるが、その通りにやっても起動できないので、「マニュアル通りに操作しているのに起動せんぞ!!」とサポートセンターに電話してくる人が続出したらしい。