徹夜でエラーと格闘したことはありますか。
プログラミングを教えていると、受講者からこんな相談をよく受けます。
「昨日ずっと取り組んでいたのに全然解決できなくて、もう自分にはプログラミングは向いていないのかもしれない」と。
そのたびに私は「ちゃんと寝ましたか」と聞き返すようにしています。
技術の問題ではなく、脳の状態の問題であることが、実はとても多いからです。
実は私自身も、以前こんな経験をしたことがあります。
あるシステムのバグを夜中の2時まで追いかけ続けたのに、どうしても原因が見つからなくて、半ば諦めながら眠りにつきました。
翌朝、コーヒーを一杯飲んでからコードを開いたところ、なんとたった30分で問題を特定できてしまったんです。
前夜あれだけ目を皿のようにして探していたのに、です。
あのときの「え、こんなところにあったの」という感覚は今でも忘れられません。
あれ以来、行き詰まったときに無理をして続けることへの疑問が、じわじわと大きくなっていきました。
これはプログラミングに限った話ではないと思いますが、特にコードを書く作業においてこの現象は顕著に現れます。
人間の脳は疲労すると視野が狭くなります。
同じ場所を何度も確認しているのに、見えていないものがある。
集中しているようで、実は特定のパターンにしか意識が向いていない状態になってしまうんです。
では、なぜ休んだ後に問題が解決しやすくなるのでしょうか。
睡眠中に脳は情報を整理・統合するといわれています。
起きている間に入ってきた断片的な情報が、眠っている間につながりを持つようになる。
つまり、休むことは「何もしない時間」ではなく「脳が処理を続けている時間」でもあるわけです。
プログラミングでいえば、バックグラウンドでコンパイルが走っているような状態に近いかもしれません。
だとすれば、眠ることは怠けではなく、問題解決のプロセスそのものといえます。
とはいえ、受講者に「休んでください」と伝えるのは、なかなか難しかったりします。
「でも締め切りがあって」「もう少しで解決しそうで」「やめたら負けた気がして」という気持ちは、よくわかります。
私も長年プログラミングに関わってきた中で、そういう感情に何度も引っ張られてきました。
特にエラーが出ているときは「あと少し」という感覚が無限に続くんですよね。
でも、経験を積むにつれてわかってきたことがあります。
「頑張り続けること」と「良い結果を出すこと」は必ずしも一致しない、ということです。
実際、私が受け持った講義の中で印象に残っているのが、ある受講者の変化です。
最初はエラーが出るたびに深夜まで格闘して、次の日ぐったりした顔で来ていた方でした。
あるとき思い切って「今日は2時間やったら絶対に休む」というルールを試してもらったんです。
すると翌週、「なんか急に解けるようになった気がする」と笑顔で話してくれました。
解く力が上がったのではなく、脳が本来の力を発揮できるようになっただけだったのかもしれません。
それでも、休むことに罪悪感を覚える人は多いです。
特に真面目な人ほど、「まだできるはずなのに止まるのは甘えだ」と感じてしまう。
でも考えてみてください。
プロのスポーツ選手が毎日全力で練習だけして休養を取らなかったら、どうなるでしょうか。
故障につながることはあっても、パフォーマンスが上がることはほとんどありません。
頭を使う作業も、同じ原理だと私は思っています。
ふと立ち止まって振り返ってみると、自分がどれだけ「休まずに続けること」を美徳だと思い込んでいたか、気づかされます。
さて、具体的にどうすればいいのかというと、まずは「行き詰まった感覚」を自分でキャッチできるようになることが大切です。
同じ箇所を30分以上見続けて進展がない、考えが同じところをぐるぐるしている、ミスが続いてイライラしてきた、こういったサインが出たときは、いったん離れるタイミングだと私は考えています。
完全に寝なくても、短い休憩でも十分に効果があります。
散歩する、水を飲む、全く別のことをする。
要は「今抱えている問題から意識を引き離す」ことができれば、脳はリセットへ向かい始めます。
私がプログラミング講師として現場で感じているのは、技術的なスキルと同じくらい「自分の状態を管理する力」が重要だということです。
どれだけ優秀なエンジニアでも、疲弊した状態では力を発揮できません。
逆に言えば、コンディションを整えることで、今の自分が思っている以上の力を引き出すことができる。
休むことは、逃げることではありません。
次のステップへ進むための、れっきとした戦略です。
徹夜で戦い続けても解決できなかったエラーが、翌朝30分で片付いた。
その経験が、私にこのことを教えてくれました。
あなたが今どんな課題に向き合っているとしても、うまくいかないと感じたときほど、一度立ち止まってみることをおすすめしたいです。