66-いったんコンピュータから離れてみる

プログラマが知るべき97のこと」の66個目のエピソードは、プログラミング中の閃きに関する話です。このエピソードに書かれているような脳の論理的部分がどうこうという理由が正しいかどうかは解りませんが、根を詰めてプログラミングをしていてると効率が悪いものです。難しい問題や厄介なバグに悩まされ、あれこれと手を打つもいっこうに解決しません。しかし、諦めて帰宅してみると、帰宅途中や次の日の朝に何かが閃いてスラスラと解決する事はよくあります。
プログラマの仕事は知的労働です。そもそも6時間も8時間も集中してプログラミングすることはできませんし、5時間であってもずっと同じ集中力で効率を一定に保つ事はできません。嫌なことがあって気分が乗らなかったり、体調が悪かったりすれば自然と効率は下がります。それは認めなければならない事実です。したがって、プログラマとして、集中力をコントロールするスキルは高めていく必要があるでしょう。
集中力をなるべく長く持続させるにはテンポ良いプログラミングと適度な気分転換が不可欠です。プログラミング時にいらいらするような要素を減らし、小粒なタスクをテンポ良く消化している時はあっという間に時間が過ぎる感覚となります。集中している証拠でしょう。外に出てぐるりとオフィスの周囲を散歩してくるのも良い気分転換です。それでも夕方になってしまうと中々出夕出来ません。そのような時はドキュメントを書いたり、雑務をこなしたり、ちょっと勉強をしてみるなど仕事内容を変化させるのも効果的です。
決して良い効果が生まれないのは夜遅くまで根を詰めて作業することです。集中力が切れていると効率が悪いだけではなく、判断力の低下からミスが増えます。そのミスに早く気付けば良いのですが、気付かずに放置していると取り返しのつかない事態になることもあるでしょう。時間をかければ解決するという考え方は論外です。
解決策が見つからず夜遅くまで悩むよりも、諦めて帰宅することが重要です。

プログラマが知るべき97のこと

プログラマが知るべき97のこと