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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Архив записей в блогах:
... тем, что его именем назвали такую расписную рыбку - СПИНОРОГ ПИКАССО. На спине у рыбы - плавник, который расправляется при опасности и превращается в острый шип. Высоко поставленные глаза вращаются независимо друг от друга. Спинорог агрессивен и кусач - запросто хрумкает ...
«Не суди по себе» Про социальный феномен применения ДНК можно было бы говорить еще очень долго, но я предпочту закончить свой небольшой цикл одной занимательной иллюстрацией. В 1993 году, т. е. буквально сразу же после начала сбора значимой генетической информации HGP, ...
45 полк спецназначения ВДВ РФ воюет в Украине на стороне террористов , - пресс-центр АТО Многие родные, близкие и друзья военнослужащих этого полка думают, что полк сейчас находится на полевом выходе, выполняет учебные задачи. Но это не так. В действительности, на данный момент личный ...
С Новым годом! Да, это оно - С новым годом! Вот и пришёл новый год, а счастье старое!) Пусть так и будет! Утром за окнами тишина, я думала, что все спят, отправилась на прогулку в парк, а там народ-то с утра уже вовсю прогуливается, кто с палками, кто на лыжах, кто с детьми на ...
Сегодня, на работе в магазине Abercrombie and Fitch, дочь увидела двух подростков, ворующих одежду. Тихонько, не привлекая их внимания, она вызвала службу безопасности. Одному удалось убежать, а другой каялся и бился лбом об пол... Наказали, отпустили. ...