Лень. Перегрузка. Сумбурность. Отсутствие цели. Каждый программист за время своей работы сталкивается с целым рядом негативных эмоций. И если они выходят из-под контроля, то начинают оказывать значительное влияние на развитие, а у некоторых даже становятся причиной полного отказа от дальнейшей работы.
Если вам когда-нибудь казалось, что вы просто не способны писать код, хотя на самом деле знаний для этого вполне достаточно, значит, вы сталкивались с так называемым ступором программиста. Фактически, это тот же творческий кризис.
Преодолевать психологические ступоры всегда непросто, но стоит помнить о том, что у них обязательно есть первопричина. Отыскав ее, вы сможете двигаться к победе и успеху.
Давайте рассмотрим несколько наиболее распространенных причин кризисов программиста, и разберем, как с ними бороться.
Первопричина №1: Беспомощность
Первый крупный источник кризиса, особенно у новичков, — беспомощность. Это то самое ощущение перегрузки, которое заставляет вас «зависать» и сбегать от своих проблем, часами сидя на Netflix или бродя по Reddit.
Саму беспомощность можно разделить на две подпроблемы: недостаток знаний и трудности с управлением задачами.
Скажем, вас наняли в качестве программиста, и ваше первое задание — удалить несколько багов из большой рабочей программы, созданной внутри самой компании. Вам нужно проверить миллионы строчек кода и тысячи страниц документации, и ничего приятного в этом нет.
С чего начать? Да, положение не из легких, и не нужно обладать особой фантазией, чтобы понять, что такая ситуация может привести к исчезновению энтузиазма у программиста.
В этом случае мы рекомендуем воспользоваться такой тактикой: разбейте задачу на мелкие части, а потом используйте список дел, чтобы отслеживать свой прогресс шаг за шагом.
Что еще вам поможет? Оттачивание своих общих знаний по теме. Возможно, вам нужно познакомиться с чем-то неизвестным, например, овладеть новым языком программирования. Постарайтесь тщательно проанализировать все доступные вам бесплатные учебники по специальности, после этого вы будете чувствовать себя увереннее.
Если же книги — не ваш конек, можете ознакомиться с несколькими курсами для программистов Udemy. Смысл в том, что после изучения максимального количества материала процесс программирования уже не будет казаться столь сложным.
Первопричина №2: Страх перед неудачей
Страх перед неудачей косвенно связан с идеей «перегруженности». Он способен влиять как на новичков, так и на бывалых специалистов. И, хотя поражает он не каждого, но страдают от него многие.
Кратко говоря, вам известно, что требуется, и у вас есть навыки, необходимые для выполнения работы. Но вы так сильно беспокоитесь о том, сумеете ли справиться, что эта тревога парализует, не позволяя даже взяться за дело. Некоторые прокрастинируют, а остальные и вовсе забрасывают программирование.
Есть много людей, которые относятся к этой проблеме критически. Очень легко можно наткнуться на кажущиеся оскорбительными лаконичные советы, например, на такое высказывание Билла Шиндлера.
«Я никогда с этим не сталкивался, — говорил консультант по программному ПО и специалист по XML Билл Шиндлер. — Я не знаю, почему мы позволяем людям использовать такие глупые отмазки, как творческий кризис/ступор программиста… Единственное лекарство от кризиса программиста — начать программировать что-то, что угодно — точно также, как единственное средство против писательского ступора — начать писать».
Но те, кто пережил подобный психологический сбой, с готовностью дают советы и рекомендации, способные принести пользу: выспаться, погулять на природе или даже помедитировать.
«Мне нравится такая аналогия для медитации: дефрагментация жесткого диска, очистка кэша и удаление временных файлов», — пишет один из посетителей Slashdot.
Многие на собственном опыте доказали эффективность медитации для снижения уровня тревожности и «освежения» головы. Мы рекомендуем ознакомиться с этими бесплатными медитативными инструментами, они помогут вам начать. А вот такие приложения, успокаивающие ваш разум, способны творить чудеса.
Но в принципе, страх перед неудачей — это духовная и внутренняя проблема, которую нужно преодолеть. Слова «просто сделай это» не всегда приносят существенную пользу, но зачастую именно они становятся самым удачным путем к спасению.
Первопричина №3: Бесцельность
У тех, кто программирует по поручению других, — а это справедливо для всех программистов, не являющихся владельцами собственных стартапов, — мотивация время от времени истощается. В такие моменты вам начинает казаться, что работа лишена всякого смысла.
Если мы заглянем в теорию мотивации, то обнаружим, что у нее есть 2 формы: внутренняя и внешняя.
Внешний стимул — нечто, заставляющее вас делать то, чем вы заниматься не хотите. Общие примеры — зарплата, бонусы, угроза и т. п. Внутренний стимул таится в вас самих: вы делаете что-то, потому что вам этого хочется, даже не получая никаких внешних наград.
В любой момент вы обычно действуете под влиянием множества факторов, являющихся смесью как внутренних, так и внешних стимулов. Но если вашим движением управляет только внешняя мотивация, то вы можете начать задаваться вопросом: «А что я вообще здесь делаю?»
В такой ситуации у вас есть 2 варианта. Вы можете либо найти внутренний стимул для своих текущих проектов, либо отыскать другую идею, способную вас по-настоящему увлечь.
Внутренняя мотивация состоит из мечты и цели. Заинтересованы ли лично вы в результатах своей деятельности? Согласны ли вы с целями и убеждениями своей компании? Есть ли у вас ощущение, что часть выполняемой работы принадлежит вам?
Если нет, то пора задуматься, куда вы могли бы себя «инвестировать». Ищите пути к созданию собственного проекта, даже на паях с кем-то. В худшем случае — если вы просто не можете отыскать внутренние стимулы — возможно, самое время сменить условия на более удачные.
Первопричина №4: Скука
Некоторые программисты, особенно относительно опытные, теряют интерес к программированию, ибо оно начинает казаться им скучным. Эта проблема несколько отличается от упомянутой выше бесцельности, ведь здесь речь идет скорее о препятствии, а не о цели.
Или, говоря иначе, работая над крайне простыми, слишком тривиальными или совершенно рутинными проектами, вы можете вдруг обнаружить, что мозг постоянно находится на автопилоте. Все очень легко, а потому задача вас не увлекает, и не хочется писать код дальше.
Решение в том, чтобы найти способ снова бросить себе вызов.
Работая на компанию, вы можете по доброй воле взять на себя больше обязанностей. Почему бы, вместо того чтобы просто «вылавливать» баги и устанавливать обычные утилиты, не попросить об изменении задачи или о переводе в другую команду? Этот вариант не всегда подходит, но попытаться все равно стоит.
Еще один путь — более практичный — взяться за персональный сторонний проект. Попробуйте создать нечто, выходящее за рамки основных рабочих обязанностей. Если днем вы пишете игры, то вечерами попробуйте строить сайты.
«Я рекомендую программистам иметь 2—3 параллельных активных задания, над которыми он(а) может работать. Оказавшись в тупике, полезно переключиться и на какое-то время заняться чем-то другим, а потом вернуться к проблеме и взглянуть на нее с иной точки зрения»
Мало есть способов, столь же эффективно избавляющих от скуки, как смена деятельности, и программирование — не исключение. Иногда вам просто нужно что-то новенькое.
Первопричина №5: Выгорание
Если ни одна из перечисленных выше причин не подходит, возможно, вы просто переработали и выгорели, и даже находитесь на грани трудоголизма. Среди его признаков — тревожность, страх перед непродуктивностью, пренебрежение здоровьем ради работы.
Выгорание — психологический термин, подразумевающий долговременную усталость и снижение интереса к работе. Считается, что выгорание — это результат хронического профессионального стресса (например, перегрузки).
«Симптомы выгорания сходны с проявлениями клинической депрессии. В исследовании, напрямую сравнивающем депрессивную симптоматику выгоревших работников и пациентов с клинической депрессией, различий, имеющих диагностическое значение, между группами выявлено не было. Служащие, столкнувшиеся с выгоранием, отмечали столько же депрессивных симптомов, сколько и больные клинической депрессией»
Трудоголизм способен стать причиной появления изменений в вашем мозге и организме, которые могут оказать серьезное влияние на ваше психологическое самочувствие. Потеря мотивации к созданию кода — это лишь один из многих потенциальных симптомов.
Преодолеть это препятствие сложно. Универсального решения здесь нет. Однако, если трудоголизм кажется вам реальной проблемой, возможно, пора подумать над тем, чтобы забросить программирование.
Вы можете быть программистом-трудоголиком, даже если написание кода не является вашей основной профессией. Сторонние проекты и хобби могут быть не менее разрушительными, если вы позволяете им выходить из-под контроля.
Как ВЫ боретесь с кризисом программиста?
Иногда ступор может быть спровоцирован голодом, жаждой или сидячим положением. Если вашему мозгу не хватает питания или воды, то у вас есть все шансы столкнуться с резкими приступами депрессии и потери мотивации.
Ради разминки можно потренироваться, не выходя в спортзал. Если вы действительно ограничены по времени, то мы рекомендуем вам выполнять такие упражнения прямо рядом с рабочим столом. Здоровое тело во многом является залогом психологического здоровья.
P.S. Рекомендуем ещё одну полезную статью по теме работы над собой — 8 явных признаков успешной жизни, не имеющих никакого отношения к деньгам или славе.
Автор перевода — Давиденко Вячеслав, основатель компании TESTutor.
Комментарии (38)
linakun
20.06.2016 12:54+6Когда у меня появляется «кризис» и ничего уже делать в основной работе не хочется и сил уже просто нет, я переключаюсь на что-то мелкое, быстрое и лёгкое в плане задач.
И решая такие задачи, я чувствую, что могу сделать вообще все и спустя недельку с новыми силами и уверенностью возвращаюсь к работе.
TimsTims
20.06.2016 15:18+12Первопричина №0: Чтение Хабра
Раз вы сейчас читаете эту статью, значит вы прокрастинируете. Срочно закройте браузер, садитесь писать код и возвращайтесь в нерабочее время.
</сарказм>funnybanana
20.06.2016 19:33+1А меня вот наоборот хабр мотивирует… захожу перед работой… заряжаюсь так сказать…
Nekto_Habr
21.06.2016 19:28Я вот как на Хабр наткнулся когда-то давным давно — так он и стал моим №1 способом прокрастинации. Сначала меня прикалывало читать жутко умные штуки, которые я плохо понимал. Иногда попадалось что-то науч-попное, которое я тоже с удовольствием прочитывал (а вообще читал всё подряд, узнавал много нового).
А потом отпочковался гиктаймз и теперь вообще ничего более интересного найти не могу во всём интернете =(
intsurfer
20.06.2016 15:29+4с перегоранием лечусь трудотерапией :) Деревообработка, мебель, дача — после выходных со столярным инструментом в руках в понедельник радостно идешь на работу :)
zodchiy
20.06.2016 16:15+32 куба земли лопатой выкопать, перевести в тележке и лопатой выгрузить в новую, только выпиленную, отшлифованную, пропитанную и покрашенную двухъярусную клумбу 2x2 метра. За выходные.
Achieve unlocked.
Urvin
20.06.2016 16:50+3У меня наоборот — хочется продолжать столярные работы, нежели программировать
kretsu
21.06.2016 11:57+1Не один раз замечал за собой, что в какой то момент очень хочется получить физически осязаемый результат своей работы.Не вознаграждение в виде купюр, а именно результат работы.
dmrt
20.06.2016 15:38+4Программирование — это как занятие спортом: например ты поприседал день, другой, неделю, у тебя уже болят ноги и организм это запомнил. И когда ты собираешься приседать в очередной раз, организм тебя предупреждает — может не надо будет больно, я не хочу, чтоыб ты снова занимался спортом, я хочу жить спокойно. И тут либо ломаешь, что очень больно, либо сдаешься. Потом так же надо регулировать как ты будишь приседать через еще одну неделю, будешь ли увеличивать кол-во или увеличивать нагрузку, а может все параметры оставить как были и об изменениях подумать после.
В общем не простая это задача — каждый день делать что-то, но иначе никак, и у каждого свои пути преодолеть себя. Если бы это было так просто — все были бы молодцами.andreysmind
20.06.2016 17:06+4Поприседал один день, другой, неделю, а потом раз и чет перетренировался. И ближайшие пару месяцев при мысли о тренировке у тебя истерика, депрессия, а также простуда и насморк из-за замученной иммунной системы.
Вот кстати спорт мне очень сильно помог в плане понимания того, насколько важны отдых и моральная разгрузка для прогресса.
dmrt
20.06.2016 17:37Сложный момент у меня с отдыхом тоже, да и у всех наверное.
Время отдыха постоянно меняется, важно не проржаветь и быть в тонусе, и в то же время — не загнать себя в «Первопричину №5 — Выгорание».
Что лучше с самого утра пока много сил поделать: что-то сложное (попрограммировать, написать в блог), что-то полегче (почитать художественную или другую какую-либо мотивирующую книжку) или полностью отдохнуть как-то. Тоже самое относительно вечернего времени.andreysmind
20.06.2016 17:44Вот, я тоже так делаю. Утром по дороге на работу читаю техническую литературу или делаю то что с вечера не осилил, а вечером читаю беллетристику и играю в игры. :)
dmrt
20.06.2016 17:56Я чередую. И вот хороший вопрос тоже — как много стоит прочитать просто художественной литературы, не читая паралельно техническую, чтобы вторая потом легче легла в память. Или вообще стоит меньше читать художественной. Или же прочитать какое-то кол-во художественной, если душа требует, а затем полностью переключится на техническую.
У каждого свой путь.
Каждый год «Оскара» вручают за разные, неповторимые жизненные пути человека.
brusi
21.06.2016 12:08Всегда есть риски, даже идя по улице можно неудачно споткнуться и что-нибудь сломать, а потом неудобства, гнев, депрессия… Не надо бояться перетренироваться, не один год занимаюсь спортом, такого ни разу не было. Просто надо прислушиваться к своему организму. И даже от спорта, иногда нужен отдых на продолжительный срок, на неделю, две. Если даже нет перетренированности, это помогает восстановиться полностью, набраться сил и даже дает положительный эффект в улучшение своих показателей выносливости и силы.
А у профессиональных спортсменов перетренированность, это как профессиональная болячка. Это их работа каждый день себя выматывать.andreysmind
21.06.2016 12:36Оффтопик сейчас пойдет, ну да ладно.
Перетрен это не риски, а ожидаемый результат. Если мало спать, не принимать витаминные комплексы и не восстанавливаться то перетрен обязательно наступит. И обычно об этом узнаешь, когда уже перетренировался.
А каким спортом ты занимаешься, если не секрет? Мне только за последние 4 года приходилось перерыв делать раза 3 из-за того что превозмогал больше чем мой старый организм(37 сейчас) был в состоянии перенести.brusi
21.06.2016 12:49Я витамины в таблетках не пил, получал их через натурпродукт и мне этого хватало. Согласен, нужно восстанавливаться и отдыхать, но тренироваться тоже надо правильно, а то некоторые на силу по 2-3 и более часов занимаются.
Не секрет, гиревой спорт и просто железки тягаю, на турник хожу, чтобы поддерживать себя в форме.andreysmind
21.06.2016 13:54Лично я вижу в этом перст судьбы — шел по Хабру и встретил гиревика. (с почти)
Я тоже для себя гиревой спорт открыл два года назад. Очень полезный спорт и для тела и для духа и для мозга.brusi
22.06.2016 08:57Надеюсь, простят меня хабравчане, за оффтоп. Но не могу не сказать, что встретить гиревика большая редкость, рад такой встречу, особенно тут, на хабре :).
И да, это хороший спорт, для поддержания себя в форме, ибо прокачивается взрывная сила и выносливость. А при регулярных тренировках, об спину хоть палки ломай :)TimsTims
23.06.2016 23:32Сорри за капитанство, но так-то интернет позволяет общаться с людьми по всему земному шару. А еще есть гугл, который позволяет точно так-же «встречаться» с другими гиревиками и другими людьми по интересам.
zodchiy
20.06.2016 17:34+1В спорте есть даже название этого — перетрен (перетренированность).
Иногда из-за этого хорошие или подающие надежду спортсмены уходят из спорта, на время или навсегда.
brusi
21.06.2016 11:50Через некоторое время организм привыкает и боли либо вообще нет, либо совсем слабая и появляется только после подхода, потом быстро проходит. Говорю это как человек, который не первый год занимается спортом.
kretsu
21.06.2016 12:05Те, кто долго и упорно занимались спортом и в основном профессионально знают, что держать форму постоянно на пике не выходит. По этому они ее (форму) выводят на пик именно к соревнованиям, а после этого идет период «реабилитации». А потом снова набор формы и тд. Иначе перетрен и прощай карьера.
С программингом же мы хотим постоянно быть на пике формы. Не удивительно, что мозг «выгорает».
punkkk
20.06.2016 17:37+1На работе обычно, в моменты дикого ступора, пишу упрощающие жизнь shell-скрипты. Расслабляет.
Была статья о том, что если входишь в ступор — надо просто отвлечься минуток на 5 и дальше будет легче. Если уж совсем ничего не помогает — наливаю чай, включаю музыку, одеваю наушники и сразу становится легче. Если и это не помогает, то просто переключаюсь на другую задачу это уж всегда помогало мне.
Не по теме: никак не могу заставить себя изучить Java, хотя очень хочу, но не подозреваю что на ней написать интересного что бы охватить много всего сразу.sleeply4cat
21.06.2016 11:51Давайте меняться)
Чтобы расслабиться после очередного дня дебага легаси-шелл-скрипта на 3800 строк, пишу рандом на джаве.
VCheese
20.06.2016 18:44Профессиональное выгорание стало причиной того, что я начал изучать программирование. В общем, не жалею :).
MichaelBorisov
20.06.2016 21:35+1У меня бывали затыки на работе по той причине, что давалось типичное задание, подобное которому я уже много раз выполнял. Никакого вызова в нем нет, никакой новизны тоже. Но сложное. С наскока не решить даже с использованием всего опыта. Надо рутинно, но очень внимательно и аккуратно, решать одну и ту же, но видоизмененную задачу. И нужно было еще вспоминать, как это делается, с прошлого раза, т.к. в промежутке я занимался другими делами.
Вот в такой ситуации находились тысячи причин отложить дело или отвлекаться на питье кофе, чтение Хабра и т.д.
Поборол в конце концов сменой работы. Теперь другие, новые и интересные задачи, кругозор расширяется, есть вызовы.
Yago
21.06.2016 11:52По поводу третьего пункта (бесцельность)
Думаю, у наемных программистов это один из самых больных факторов. Потому что работа иногда не оправдывает ожидания, а первоначальные стимулы могут меняться со временем. Да и программистами чаще становятся из-за внутренней мотивации, и когда она начинает конфликтовать с текущим положением дел, начинаются стрессы и прочие психозы.
Лично испытал на себе чувство «побыстрее бы сдать проект и уйти в другое место» с постоянными отсрочками и изменениями требований. Не из приятных.
iCubeDm
21.06.2016 21:43У меня такой список методов-помощников:
- личный проект — однозначно (на нем же отрабатываю фишки из рабочих проектах)
- каждый день перед обедом (за полчаса где-то) хожу на турники неподалеку от работы. 5 подходов творят чудеса с аппетитом и с ментальной усталостью. Так же на работу и с работы передвигаюсь на велосипеде (~10 км дороги в одну сторону)
- выгорание ловил пару раз, когда делал ремпейдж на работе + на личном проекте. Здорово помогает неделя отпуска без программирования с шашлыками
- а по поводу ежедневной разрядки — игры с двухлетней дочерью + катки в Overwatch (оп-па, рекламка!)
AlexTheLost
22.06.2016 13:44-1Рекомендую прокачиваться в науке конкретно в CS. Сложно и крайне полезно, как для собственно удовлетворения так и для практических нужд.
Bone
23.06.2016 13:49+2Мне часто помогает трюк, который я прочитал тут же, на хабре. Суть в том, что если я в ступоре и не могу начать заниматься делом, то этот ступор довольно легко нарушить любым простым действием. Например, я могу просто поднять руку и помахать ей несколько секунд, это уже дает импульс в нужном направлении и сделать следующий шаг становится намного проще, а дальше втягиваешься и всё идет нормально.
sergiks
Ссылку на первоисточник приведите, пожалуйста.
info-9
http://joxi.ru/a2XOq15IyODxRm