Согласно поговорке, программисты — это устройства, преобразующие кофеин в код.
Если спросить первого попавшегося программиста, когда он наиболее продуктивен, — скорее всего, он назовёт ночь. Кто-то пораньше, кто-то попозже. Популярен вариант встать в 4 утра и сделать работу до начала дневной суматохи. А некоторые предпочитают ложиться в 4 утра.
Цель всего этого — избавиться от отвлекающих факторов. Но можно было бы просто закрыть дверь… Что же такого особенного в ночи?
Я думаю, что всё сводится к трём вещам: расписанию творца, сонному мозгу, и яркому экрану компьютера.
Расписание творца
В 2009 году Пол Грэм написал о «расписании творца» (maker's schedule). По его мнению, в мире есть два основных типа расписаний. В традиционном «распорядке менеджера» день разделяется на отдельные часы, и десятиминутная помеха обходится максимум в час потерянного времени.
Часовой механизмДругой вариант Грэм называет расписанием творца — того, кто что-то создаёт, творит, производит. Работа над большими абстрактными системами требует размещать их целиком в своей голове. Это можно сравнить с постройкой дома из хрусталя: стоит отвлечься, как всё осыпается и разбивается вдребезги.
Поэтому программистов так раздражает, когда их отвлекают.
Из-за этого огромного умственного вклада мы просто не начинаем работать, пока не можем рассчитывать на пару часов покоя. Не имеет смысла строить в голове всеобъемлющую модель системы только для того, чтобы через полчаса её кто-то сломал.
В самом деле, поговорив с руководителями компаний вы узнаете, что они просто не могут закончить никакую работу в течение дня. Постоянная канонада помех: важных дел™, требующих внимания, и писем, требующих ответа, — просто не позволяет что-либо сделать. Поэтому они выполняют бо́льшую часть работы ночью, когда все остальные спят.
Сонный мозг
Но даже программистам нужно спать по ночам. Мы не какие-нибудь суперлюди. Даже программисты более внимательны именно днём.
Пик БалмераТогда почему же мы выполняем самую сложную умственную работу когда мозг хочет спать, а более простые задания — когда разум остр и ясен?
Потому что усталость делает нас лучшими кодерами.
Как с пиком Балмера, усталость заставляет нас собраться потому, что уставший мозг просто вынужден сосредоточиться! У него элементарно не остаётся лишних сил, чтобы позволить себе потерять концентрацию.
Например, моя продуктивность минимальна после чрезмерного количества чая или невовремя выпитого энергетического напитка: они делают меня гиперактивным, и я то проверяю твиттер, то читаю Hacker News, — в общем, просто прыгаю туда-сюда.