Прерванный программист

топ 100 блогов sdfgh15318.06.2012 На прошлой неделе совершенно неожиданным образом на второй виток популярности вышла статья «Не будите программиста». Я её читал еще в 2009 году и был с ней бурно согласен. Ну правда, хорошая же статья, очень приятная и сразу объясняет почему мы, программисты, такие мерзкие, раздражительные придурки. Все дело в том, что программист работает в «потоке», вот оно что!

Слава Богу уже в 2010 году я прочитал другую статью, которая немножко выправила мне мозг. Она называется «Work 2.0 - the interruptible programmer», вот тут есть плохой перевод.

Да, действительно, существует особое функциональное состояние мозга называемое «потоком», состояние полной включенности в решение задачи. Это отнюдь не особое состояние программистов, любой человек бывает в потоке несколько раз в день. Входит и выходит из него без каких либо проблем. Когда ведет машину, моет посуду, думает о жене, читает что-нибудь или самозабвенно (это ключевое слово, кстати) поет в душе арию Самиеля из «Der Freischütz». Нет никаких «мук вхождения в поток», а поток есть. Как так?

Есть у меня ощущение, что чем сильнее ты хочешь попасть в поток, тем позже ты туда попадешь. Единственный способ — начать что-то делать. Дальше организм сам, не надо ему мешать. Сначала отвалится ощущение времени, потом отвалится окружающий мир и наконец отвалишься ты сам. Останется только задача и ничего вокруг. Вот это он и есть.
Если в этот момент человека отвлечь, то он выйдет из потока моментально. Если программист отбрехивается словами «отстань, я потоке», значит он уже не в потоке, просто ему очень обидно вылезать из продуктивного состояния и он не осознает, что все уже случилось.

А теперь, дорогие программисты, давайте вернемся в реальность. Реальность коварна, из нее мы прямо сейчас можем достать одну важную мысль, ради которой я вообще затеял писать этот пост: в реальности вы никогда не сможете сделать так, чтобы вас не будили.

Хоть запритесь в башне на острове, ваши собственные черти будут отвлекать не хуже самого говорливого менеджера. Поток можно разрушить почесав нос или чихнув. Или вспомнив о том, что в принтере кончилась краска. Или что через три недели приедет тёща и надо думать куда ее положить. Что теперь, анастезироваться перед работой?
Невозможно приказать миру не выводить вас из потока, это проигрышный вариант. Не проще ли научиться туда быстро возвращаться?

Автор статьи «Work 2.0» утверждает, что можно привыкнуть падать в поток и выбираться из него в кратчайшие сроки, как это происходит с полифазным сном. Я склонен ему верить. В этом нет ничего фантастичного, это дисциплина и упражнения, а не «дар» и не «врожденная способность».

Я так пока не умею, я плохо вхожу в поток когда мне этого хочется и иногда расстраиваюсь когда меня выдергивают. Но я не считаю, что все задачи, которые мне приходится решать на работе требуют «потока». Когда задача требует потока, хочу я этого или нет, я туда попадаю, правда медленней, чем это возможно.

Что касается пассажа о сложных химерах, которые вылетают из головы при выходе из потока, то это правда. Вот только относится она к программистам, которые не умеют писать на бумаге. Самая большая проблема смены деятельности это восстановление контекста задачи. Именно поэтому весь контекст задачи за исключением того фрагмента, над которым вы работаете прямо сейчас должен быть вне головы. В блокноте, в багтракере, на стикноуте, да где угодно, лишь бы не в голове.

Вы чините поиск и вдруг вспомнили, что вот этот вот класс надо срочно отрефакторить, что обычно происходит? Лично я довольно часто бросаюсь рефакторить забывая про поиск. Готов спорить, я не одинок. А надо было просто взять ручку и написать в блокноте кривым почерком, что такой-то класс надо срочно починить и продолжать чинить поиск.
Вас позвали обедать, вы встали и все химеры разлетелись. Это в лучшем случае они разлетелись, в худшем случае вы ловите их за кривые лапки и пытаетесь удержать внутри своей головы. В итоге и химеры покалечены и обеда вы не помните. Беда.

Если вы записываете контекст вне головы, то внутри у вас всегда строго одна химера, с которой можно вести себя вежливо и высадить в блокнот перед обедом. Она там перекантуется одна пол часа, с ней все будет хорошо еще и обед усвоится лучше.

Целую, обнимаю, Кэп.

P.S. За время написания этого поста в потоке я был дважды, чай пил один раз, говорил с коллегами трижды, переключал вкладку в браузере пять раз.

Оставить комментарий

Архив записей в блогах:
Приказом Министра обороны СССР от 29 июня 1964 года на вооружение Советской Армии был принят бронетранспортер БТР-60ПБ. Серийное произ­водство машины осуществлялось с 1965 по 1976 гг. на Горьков­ском автозаводе и Курганском заводе колесных тягачей. Пере­дача части ...
Наследный принц Алоис, наследная принцесса София, принц Максимилиан и принцесса Анжела приняли участие в форуме Смитсоновского института «Будущее тропиков — это будущее мира», который в конце мая прошел во Дворце Лихтенштейнов в Вене. Принцесса София - вторая слева Наследный принц ...
БЕЙРУТ, 22 фев — РИА Новости, Михаил Алаеддин. Правительственные войска восстановили контроль над единственной трассой, связывающей Алеппо с остальными провинциями, сообщил РИА Новости военный источник. Ранее сообщалось, что в понедельник утром боевики террористической группировки "Исламск ...
Что это такое, по-вашему, за объект, расположенный во дворе, в котором я жил? Танцпол? Баскетбольная площадка?Трибуна для выступлений советского/партийного начальства? Фундамент под карусель? Было так: А еще раньше так: И вот вечером начиналось: Ага, именно это. Боже, я ...
Решила сегодня потестить "патчи от прыщей". Налепила. А сколько их держать, не глянула. Полезла в Гугл, тот отправил на Айрекоменд. Сначала пару отзывов почитала, а потом глаз упал на подборку-рекламу в точках продаж: И тут я офигела. Они мне с Айхерба (из США, блин!) приехали ...