Как программировать если совсем не хочется? План спасения на случай перегорания или дедлайна

bbajkcujueentezlykqc5qk5ifs.png

Никакой воды в этой статье, только описание конкретного плана действий в случае если вы перегорели, у вас дедлайн, прокрастинация, депрессия, а также методики и советы помогающие привести этот план в действие.

План написан под программиста (меня), да и вообще в исходном виде подойдет не всем. Советую модифицировать этот план под себя.

Некоторые советы могут показаться банальщиной, но все равно проще им следовать, когда они собраны в одном месте.

Мне этот план помог превратиться из перегоревшего грустного бездельника, который несколько месяцев не мог заставить себя программировать, в более-менее продуктивного человека. Сейчас совмещаю 2 проекта и чувствую себя прекрасно. Не густо, но лучше чем ничего.

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

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

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

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

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

Привожу сам план действий.

#1 Работать над самим проектом
Самое важное, в чем в идеале заключается рабочий процесс — работать над бизнес-проблемой, пытаться реализовать требуемый функционал. Это то, к чему мы стремимся.

#2 Подумай как сконцентрироваться
Макс. время: 1 час.

Не получается работать? Загляни в раздел советов внизу статьи и подумай что можно сделать чтоб помочь себе сконцентрироваться на приоритетном сценарии.

Может помочь: еда, кофеин, прогулка, медитация, тренировка, дела по дому, реорганизация труда и целей, музыка, душ, дневник.

Может быть дело в: отравлении, недосыпе, никотине, чувстве вины, недостатке общения, недостатке витаминов.

#3 Незаконченные дела
Подумай, возможно есть какие-то дела по дому или социальные обязанности. Может это уборка дома, оплата коммуналки. Это все может отвлекать тебя от работы, потому стоит решить такие дела как можно скорее или реорганизовать их.

#4 Необязательные дела по дому
Макс. время: 2 часа.

Это такие дела как готовка, уборка, поход в магазин. Они так высоко в списке приоритетов, потому что могут повысить концентрацию (выкинув их из головы, когда ты их уже сделал).

#5 Общение
Макс. время: 1 час.

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

#6 Медитация или тренировка
Макс. время: 1 час.

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

Теперь переходим к самому интересному, то что касается рабочего процесса.

#7 Рефакторинг
Макс. время: 3 часа.

Снова возвращаемся к работе, если сценарии выше не помогли заняться решением бизнес-проблемы, то стоит облегчить задачу. Займись рефакторингом имеющегося кода, но не переусердствуй. Стоит исправлять только откровенные ошибки, а не «делать код лучше».

#8 Упрощение тестирования и отладки
Макс. время: 3 часа.

Подумай над тем как упростить разработку приложения. Возможно, стоит обновить средства разработки, покрыть приложение тестами, изучить подробней средства разработки, посмотреть какие есть расширения и встроенные функции IDE, упрощающие работу. Детальней углубиться в процесс сборки и тестирования, постараться это автоматизировать.

#9 Работа над сторонним функционалом проекта
Макс. время: 2 часа.

Можно заняться реализацией каких-то неважных, но интересных функций. Подключить аналитику, подправить интерфейс, добавить логгирование.

#10 Ревью кода проекта и документация
Макс. время: 1 час.

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

Можно написать документацию к самым сложным участкам кода или вообще каждый метод покрыть документацией, если тебе так проще.

#11 Поработать над своей библиотекой
Макс. время: 2 часа.

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

#12 Кодинг как хобби
Макс. время: 2 часа.

Аналогично предыдущему, но попроще. Делать какой-то простой, но бесполезный проект для души.

#13 Чтение для мотивации
Макс. время: 1 час.

Можно попробовать почитать мотивирующую книгу или статью на хабре и потом приступить к работе. Если не удалось приступить — нет смысла продолжать читать для мотивации дольше часа.

#14 Чтение для образования
Макс. время: 2 часа.

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

Книги читай только если сможешь ограничить себя во времени, но вообще лучше всего — справочники. В моем случае, по unity, android, xamarin, asp.net, webpack.

В крайнем случае читай статьи, только следи чтоб они были не развлекательными, а доносили новую информацию.

#15 Просто поразмышляй как программист
Макс. время: 1 час.

Просто лежи и думай о проекте, как ты сделал бы ту или иную фичу. Если не получается об этом проекте — думай о том что ты вообще хотел бы написать.

#16 Отдых
Увы, но не всегда выходит следовать даже самым простым сценариям. Если это так — пора отдохнуть. Но к отдыху тоже есть свои заметки:


  1. Сон днем только испортит режим и ухудшит продуктивность, его нужно избегать.
  2. Отдых не должен вызывать чувство вины, ты ведь делаешь все возможное следуя плану.
  3. Займись хобби, творчеством.
  4. Отдыхай в социуме. Если ты все равно не работаешь — лучше выйти с друзьями на пару часов или даже целый день выделить, чем сидеть дома.
  5. Смотреть мемы — худшее что ты можешь делать. То же, но в меньшей степени относится к прослушиванию музыки целыми днями.

Привычка очень важна
Самая убийственная вещь против прокрастинации — привычка. Нужно привыкнуть работать, следовать режиму и тогда будет проще. Для этого нужно работать каждый день (не считая выходных), независимо от обстоятельств. Не важно — сонный ты, занимался делами весь день или у тебя какие-то планы на вечер.

Работать по таймеру
Беспрекословно следовать Pomadoro не стоит, но вот работа по таймеру в целом выходит продуктивней. Например, обязательно 2 часа на сценарий #1, потом час на сценарий #7.

Организуй буткемп
Если работать с еще одним человеком — будет проще заставлять себя работать. Главное не терять концентрацию.

Вещества (легальные)
Если не получается сконцентрироваться над задачей — возможно помогут вещества.

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

Витамины — могут помочь чувствовать себя лучше, но не стоит превышать их дозировку и пить долго, вредно для почек.

Седативные антидепрессанты, успокоительные — полезно когда есть время отдохнуть, но под ними вряд ли получится что-то делать. Нет смысла пить в разгар работы.

Энергетики — очень редко можно использовать, если идеальное пищеварение и нет кофеиновых отходняков.

Никотин убивает мотивацию. Бросать во время дедлайна — не имеет смысла. Курить желательно только с момента когда уже что-то сделал за сегодня.

Режим питания
Стараться не есть вредную пищу, вообще. Однако, для рывка иногда можно съесть что-то вкусное, при идеальном пищеварении.

Если работаешь ночью или уставшим — плотно есть не стоит, уснешь.

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

Вода
Выпей побольше воды, поможет взбодриться. Несовместимо с тренировками. Стакан воды сутра, сразу как проснулся может помочь.

Режим сна
Он почти всегда имеет главный приоритет. Единственное исключение — дедлайн проекта.

Ложись до 12, даже если ничего не успел сделать. Используй будильник с формулами, чтоб точно проснуться вовремя.

Не стоит пытаться восстановить режим сна не имея в запасе неделю свободного времени.

Когда встаешь пораньше — ставь будильник без возможности отложить его. Сутра сразу умойся, чисти зубы, не стоит лежать в кровати. Вечером, если не можешь заснуть — переделай все рутинные дела чтоб сутра они не отвлекали (мытье посуды, готовка и т.д.).

Если режим сбит окончательно и одинаково неприятно просыпаться в любое время, всегда сонный, то имеет смысл просыпаться в 5 утра. Потом можно доспать, но не раньше часов 11 утра. Это поможет быстро восстановить режим и даже даст запас времени на его сдвиг, но первую неделю надо именно что в 5 просыпаться.

Музыка
Некоторые жанры не дают сконцентрироваться вначале, потому лучше включать только в процессе активной работы.

Субъективщина:

Лучше включать осты из игр, я например слушаю Silent hill, Transistor, Hades, Pyre, Assasins Creed, Witcher, Detroit.

Если много энергии — Minecraft, Firewatch, LOU, Thief.

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

Душ
Иногда душ может помочь почувствовать себя получше. Именно душ, ванная — слишком долго и потянет в сон.

Мини-тренировка
Тренировка может помочь зарядиться энергией, но только короткая получасовая тренировка, потом накатит усталость. Можно сделать упражнения на растяжку и одно силовое или попрыгать на носках, это будет на выносливость.

Медитация
Медитировать стоит только если ты выспался и не больше часа, иначе будет сонливость. Всегда старайся концентрироваться на дыхании и делать это без музыки. Отличный вариант — выпить кофе залпом и медитировать пол часа, как раз при выходе из медитации будет куча энергии и мотивации.

Сон-перезагрузка
Можно уснуть не более чем на пол часа или просто полежать это время. Перед этим можно залпом выпить кофе.

Метод не эффективен при сильном недосыпе и усталости.

Дневник
Ведение дневника может помочь избавиться от стресса и разложить все по полочкам. Но делать слишком длинные записи чаще чем 2 раза в неделю тоже нет смысла.

Постоянное повышение продуктивности ведет к выгоранию
Если на протяжении многих дней ты все время повышал продуктивность — неизбежно наступит момент, когда еще повысить ее уже невозможно (очень сложно). Это может расстраивать, в такой момент лучше устроить 1–2 выходных, чтоб обнулить результат и любой следующий день казался продуктивней.

Исходя из этого плана и того времени, которое вы успели выделить на работу, привожу примеры рабочих дней в начале выхода из состояния апатии. Потом вы сможете просто работать целый день)

6 часов

4 часа

2 часа

Естественно, в этом плане куча недочетов и он субъективен, используйте его как шаблон для написания своего личного плана действий.

Буду очень рад почитать ваши методики борьбы с прокрастинацией в комментариях.

© Habrahabr.ru