7 грехов программиста: Уныние

Мы все периодически бываем подобными черепашками

Знакомо состояние, когда всё валится из рук, задачи печалят, и ты не можешь начать писать ни строчки кода? Даже решенные проблемы не радуют, проект представляется свалкой костылей в которой, если покопаться, можно откопать остатки мамонтов, неандертальцев и программистов, павших в процессе разработки, и над всем этим брезжит вопрос “зачем все это?”.

Уныние рано или поздно настигает всех программистов. Это абсолютно нормальный процесс — невозможно 100% времени оставаться сверхмотивированным турбо-веником. К сожалению, у меня нет универсального рецепта борьбы с ним — я сам иногда опускаю руки, даже если этого никто не видит — поэтому сегодня я постараюсь рассказать о тех эпизодах своей жизни, когда я сталкивался с унынием, и как я с ним справлялся или пытался справляться.

Уныние на проекте

Унылейшее уныние. Дважды печаленька. Кто-то устает на проекте за три месяца, кто-то за полгода, кто-то за три. Существуют сотрудники (почти все из знакомых мне — девушки), которым наоборот нравится стабильность. У них иммунитет к унынию. Но большинство хочет перемен. И не всегда у компании (к примеру у крошечной, размером с мою) есть возможность перевести Вас на другой проект. Кто-то решает проблему радикально — перескакивая с одной компанию в другую. Это опасно, однажды вы рискуете услышать:

«Миша, ты больше ни в одной компании года не работал, мы тебя в стартап не возьмем!»

Любое IT — большая деревня, и я бы точно побоялся бы брать к себе сотрудника, на которого нельзя положиться.

Прежде всего, давайте разберем причину. Уныние — для меня антоним интереса. Интерес возникает когда мы находим оптимальный интерес между сложностью задачи и нашими навыками. Другими словами — задача должна содержать “вызов”, но не должна быть сверхсложной.

Если вам грустно от того, что все задачи понятны и просты (а еще и требуют кучу времени) — усложните задачу. Да, с точки зрения бизнеса плохой совет, но мы же боремся с вашим унынием. Вместо верстки 15 инпутов воткните какой-нибудь мелкий конфигуратор для этого. Или напишите скрипт, который генерирует для вас эту верстку. Усложните задачу (но не сильно!) чтобы пробудить интерес. Или под эгидой мелкого багфикса проведите партизанский рефакторинг модуля.

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

Эмоциональное выгорание

Во-вторых, «сгореть» на работе могут интроверты, то есть те, кто держит в себе все свои переживания, не выплескивая эмоции на окружающих. Оказавшись в стрессовой или неудобной для себя ситуации, такой человек долго не будет выражать недовольство, накапливая негатив. Естественным следствием этого часто становятся хроническая усталость и профессиональное выгорание.
Наконец, ещё одна категория работников, которым грозит эмоциональное выгорание, — перфекционисты, то есть те, кто всегда стремится выполнить свою работу лучше всех. «Красный» диплом университета, успешные самостоятельные проекты, победы в профессиональных конкурсах — всё это даётся перфекционистам не за красивые глаза, а становится результатом ежедневного напряжённого труда. Несколько лет работы практически без выходных нередко оборачиваются синдромом профессионального выгорания. (с) https://www.superjob.ru/pro/5089/

Я искренне считаю, что почти каждый программист должен быть почти перфекционистом. Лично мне нужны, важны и ценны работники, которые задумываются прежде всего над тем “как сделать Х хорошо”, а не над тем “как сделать Х”. Однако я не согласен с приведенной выше цитатой про интровертов. В предыдущей статье про гнев я говорил, что если Вы начальник — то не можете вымещать его на подчиненных. И будь вы трижды экстравертом — если вы следуете этому совету, вы будете выгорать — не желая видеть ваших подчиненных и осознавая что вы бесполезны как начальник.

Я борюсь с эмоциональным выгоранием несколькими способами:

В моем списке дел существует огромный (правда, огромный) список “Sometimes”. Это вещи, которыми бы стоило заняться, но не имеют конкретного времени начала. Когда мне не хочется делать ничего — я нахожу в этом огромном списке штуку, которая имеет хоть малую пользу для того, что я должен делать сейчас — и делаю ее. Таким образом я:

  • начинаю что-то делать. Особенность человеческой психики такова, что самое главное — начать, а не лежать на спинке и фрустрировать;
  • решаю главную проблему уныния — внутреннего зверя, который говорит “я знаю что ты занимаешься фигней”, и который доедает оставшиеся силы — я не занимаюсь “фигней”, я работаю в нужном направлении;
  • запускаю мозг. Когда я в унынии — это большая и непростая задача

Если же вы просмотрели свой “Sometimes” (даже если вы не ведете список задач — заведите себе такой список, он помогает развиваться, что, впрочем, тема для отдельной статьи) и ничего не охота — вам срочно нужна помощь и одному/одной Вам не справиться. Еще один простой метод — парное программирование. Позовите ближайшего коллегу пописать с Вами код, и да, вам будет тяжело, но рассматривайте это как запуск машины с севшим аккумулятором — с буксира.

Если же и это не помогает — я сажусь и начинаю НИЧЕГО не делать. Два важных пункта — ничего не делать, это тупо сидеть, а не листать ВК, Ютуб и т.п. Главное при этом сидеть, а не лежать, а то мой мозг мгновенно уходит в спящий режим. Даже в состоянии уныния, мой рекорд — 21 минута, после чего мне захотелось чем-то заниматься.

И еще, бороться с эмоциональным выгоранием сильно помогают банальные и очевидные вещи:

  • физические нагрузки (бег, плаванье, зал, велосипед и т.д.)
  • правильное питание, витамины и т.п. (если у организма неоткуда взять энергию, он впадает в энергосберегающий режим)
  • знание странного-странного ответа — в чем ваше призвание? (я не верю в призвание “писать код”, оно слишком простое и нереалистичное)

Обучение

В нашей профессии знания устаревают настолько быстро, насколько это вообще возможно. Хотим мы того или нет — мы постоянно учимся. Мы осваим новые фреймворки и библиотеки, изучаем новые подходы и концепции. Чаще всего, это происходит в формате “experience injection” — когда мы получаем небольшую “пилюлю”, содержащую квинтэссенцию опыта наших колег, и этот небольшой кусочек великого знания, который сразу же помогает нам быть продуктивнее. Иногда же нам приходится полностью перестраивать свою картину мира (примеры — переход от ООП к функциональному программированию, от Angular 1.x к React+Redux и т.п.). В таком случае процесс обучения становится гораздо более длительным и выглядит так:

Этот график справедлив не только для программирования, а и для любого обучения в жизни в принципе. Вначале мы быстро усваиваем новую информацию, но потом ннаступает ровный участок. На этом участке мы продолжаем изучать технологию, но наше понимание не растет и более того — нам кажется, что мы застопорились навсегда. Лично у меня одно из ярчайших подобных воспоминаний — как я осознавал генераторы в JavaScript года 3 назад. 2 недели я игрался с koajs, написал на ней кусок реального коммерческого приложения, но понимания как это работает — не приходило. Фактически, я использовал заклинания и они работали. А когда не работали — я просто переставлял буквы, в надежде что заработают. И вот однажды, подъезжая к гаражу, пришло ОНО. Осознание. Я называю этот процесс “квантовым скачком” (отличный старый сериал) — находясь на ровном участке обучения мы нарабатываем энергию, чтобы перейти на новую энергетическую орбиту (все ж помнят из школьного курса химии, как атомы переходят между орбитами?)

Для меня это самый сложный сценарий уныния, потому что его никак не избежать. Я по своей натуре спринтер — привык “взрываться” коротким усилием и получать результат. Поэтому мои советы будут слегка абсурдны, но если они сработали у меня — может и Вам помогут?

Поставьте себе цель пробежать полумарафон. Что за чушь? Полумарафон способны пробежать даже неподготовленные люди (я подготовился за 16 недель). В процессе подготовки вам прийдется бегать в течении часа-полутора. Заниматься тупым, абсолютно неинтеллектуальным бегом. Причем если вы хоть чу-чуть напрягаетесь, то с большой вероятностью вас даже наушники раздражать будут от усталости. Таким издевательством (в общем-то полезным для здоровья) вы приучаете организм к неким монотонным действиям, которые не приносят видимого результата сразу же. Я сам с удивлением обнаружил, что теперь, пробежав полумарафон, я гораздо проще отношусь к рутинным действиям (и нет, это не было первоначальной целью)

Я на последних метрах. Боль временна, триумф вечен

Поэтому последнее что вы можете сделать — опустить руки и остаться на этом плато навсегда, наблюдая, как мимо вас проходят другие люди. Покультивируйте свою гордыню самую малость — и найдите силы встать и идти за ними (на 15км я просто перестал чувствовать ногу. Но я знал что мои знакомые ждут меня на финише и не мог не добежать)

Итого

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

Поставив лайк, вы не только вызываете у меня улыбку, но и ускоряете выход следующей статьи! Спасибо за ваши сердечки и за ваши подписки — мне приятно, что вы меня читаете.

Следующая статья: