5 способов быстро победить ступор программиста
Лень. Перегрузка. Сумбурность. Отсутствие цели. Каждый программист за время своей работы сталкивается с целым рядом негативных эмоций. И если они выходят из-под контроля, то начинают оказывать значительное влияние на развитие, а у некоторых даже становятся причиной полного отказа от дальнейшей работы.
Если вам когда-нибудь казалось, что вы просто не способны писать код, хотя на самом деле знаний для этого вполне достаточно, значит, вы сталкивались с так называемым ступором программиста. Фактически, это тот же творческий кризис.
Преодолевать психологические ступоры всегда непросто, но стоит помнить о том, что у них обязательно есть первопричина. Отыскав ее, вы сможете двигаться к победе и успеху.
Давайте рассмотрим несколько наиболее распространенных причин кризисов программиста, и разберем, как с ними бороться.
Первопричина №1: Беспомощность
Первый крупный источник кризиса, особенно у новичков, — беспомощность. Это то самое ощущение перегрузки, которое заставляет вас «зависать» и сбегать от своих проблем, часами сидя на Netflix или бродя по Reddit.
Саму беспомощность можно разделить на две подпроблемы: недостаток знаний и трудности с управлением задачами.
Скажем, вас наняли в качестве программиста, и ваше первое задание — удалить несколько багов из большой рабочей программы, созданной внутри самой компании. Вам нужно проверить миллионы строчек кода и тысячи страниц документации, и ничего приятного в этом нет.
С чего начать? Да, положение не из легких, и не нужно обладать особой фантазией, чтобы понять, что такая ситуация может привести к исчезновению энтузиазма у программиста.
В этом случае мы рекомендуем воспользоваться такой тактикой: разбейте задачу на мелкие части, а потом используйте список дел, чтобы отслеживать свой прогресс шаг за шагом.
Что еще вам поможет? Оттачивание своих общих знаний по теме. Возможно, вам нужно познакомиться с чем-то неизвестным, например, овладеть новым языком программирования. Постарайтесь тщательно проанализировать все доступные вам бесплатные учебники по специальности, после этого вы будете чувствовать себя увереннее.
Если же книги — не ваш конек, можете ознакомиться с несколькими курсами для программистов Udemy. Смысл в том, что после изучения максимального количества материала процесс программирования уже не будет казаться столь сложным.
Первопричина №2: Страх перед неудачей
Страх перед неудачей косвенно связан с идеей «перегруженности». Он способен влиять как на новичков, так и на бывалых специалистов. И, хотя поражает он не каждого, но страдают от него многие.
Кратко говоря, вам известно, что требуется, и у вас есть навыки, необходимые для выполнения работы. Но вы так сильно беспокоитесь о том, сумеете ли справиться, что эта тревога парализует, не позволяя даже взяться за дело. Некоторые прокрастинируют, а остальные и вовсе забрасывают программирование.
Есть много людей, которые относятся к этой проблеме критически. Очень легко можно наткнуться на кажущиеся оскорбительными лаконичные советы, например, на такое высказывание Билла Шиндлера.
«Я никогда с этим не сталкивался, — говорил консультант по программному ПО и специалист по XML Билл Шиндлер. — Я не знаю, почему мы позволяем людям использовать такие глупые отмазки, как творческий кризис/ступор программиста… Единственное лекарство от кризиса программиста — начать программировать что-то, что угодно — точно также, как единственное средство против писательского ступора — начать писать».
Но те, кто пережил подобный психологический сбой, с готовностью дают советы и рекомендации, способные принести пользу: выспаться, погулять на природе или даже помедитировать.
«Мне нравится такая аналогия для медитации: дефрагментация жесткого диска, очистка кэша и удаление временных файлов», — пишет один из посетителей Slashdot.
Многие на собственном опыте доказали эффективность медитации для снижения уровня тревожности и «освежения» головы. Мы рекомендуем ознакомиться с этими бесплатными медитативными инструментами, они помогут вам начать. А вот такие приложения, успокаивающие ваш разум, способны творить чудеса.
Но в принципе, страх перед неудачей — это духовная и внутренняя проблема, которую нужно преодолеть. Слова «просто сделай это» не всегда приносят существенную пользу, но зачастую именно они становятся самым удачным путем к спасению.
Первопричина №3: Бесцельность
У тех, кто программирует по поручению других, — а это справедливо для всех программистов, не являющихся владельцами собственных стартапов, — мотивация время от времени истощается. В такие моменты вам начинает казаться, что работа лишена всякого смысла.
Если мы заглянем в теорию мотивации, то обнаружим, что у нее есть 2 формы: внутренняя и внешняя.
Внешний стимул — нечто, заставляющее вас делать то, чем вы заниматься не хотите. Общие примеры — зарплата, бонусы, угроза и т. п. Внутренний стимул таится в вас самих: вы делаете что-то, потому что вам этого хочется, даже не получая никаких внешних наград.
В любой момент вы обычно действуете под влиянием множества факторов, являющихся смесью как внутренних, так и внешних стимулов. Но если вашим движением управляет только внешняя мотивация, то вы можете начать задаваться вопросом: «А что я вообще здесь делаю?»
В такой ситуации у вас есть 2 варианта. Вы можете либо найти внутренний стимул для своих текущих проектов, либо отыскать другую идею, способную вас по-настоящему увлечь.
Внутренняя мотивация состоит из мечты и цели. Заинтересованы ли лично вы в результатах своей деятельности? Согласны ли вы с целями и убеждениями своей компании? Есть ли у вас ощущение, что часть выполняемой работы принадлежит вам?
Если нет, то пора задуматься, куда вы могли бы себя «инвестировать». Ищите пути к созданию собственного проекта, даже на паях с кем-то. В худшем случае — если вы просто не можете отыскать внутренние стимулы — возможно, самое время сменить условия на более удачные.
Первопричина №4: Скука
Некоторые программисты, особенно относительно опытные, теряют интерес к программированию, ибо оно начинает казаться им скучным. Эта проблема несколько отличается от упомянутой выше бесцельности, ведь здесь речь идет скорее о препятствии, а не о цели.
Или, говоря иначе, работая над крайне простыми, слишком тривиальными или совершенно рутинными проектами, вы можете вдруг обнаружить, что мозг постоянно находится на автопилоте. Все очень легко, а потому задача вас не увлекает, и не хочется писать код дальше.
Решение в том, чтобы найти способ снова бросить себе вызов.
Работая на компанию, вы можете по доброй воле взять на себя больше обязанностей. Почему бы, вместо того чтобы просто «вылавливать» баги и устанавливать обычные утилиты, не попросить об изменении задачи или о переводе в другую команду? Этот вариант не всегда подходит, но попытаться все равно стоит.
Еще один путь — более практичный — взяться за персональный сторонний проект. Попробуйте создать нечто, выходящее за рамки основных рабочих обязанностей. Если днем вы пишете игры, то вечерами попробуйте строить сайты.
«Я рекомендую программистам иметь 2—3 параллельных активных задания, над которыми он(а) может работать. Оказавшись в тупике, полезно переключиться и на какое-то время заняться чем-то другим, а потом вернуться к проблеме и взглянуть на нее с иной точки зрения»
Мало есть способов, столь же эффективно избавляющих от скуки, как смена деятельности, и программирование — не исключение. Иногда вам просто нужно что-то новенькое.
Первопричина №5: Выгорание
Если ни одна из перечисленных выше причин не подходит, возможно, вы просто переработали и выгорели, и даже находитесь на грани трудоголизма. Среди его признаков — тревожность, страх перед непродуктивностью, пренебрежение здоровьем ради работы.
Выгорание — психологический термин, подразумевающий долговременную усталость и снижение интереса к работе. Считается, что выгорание — это результат хронического профессионального стресса (например, перегрузки).
«Симптомы выгорания сходны с проявлениями клинической депрессии. В исследовании, напрямую сравнивающем депрессивную симптоматику выгоревших работников и пациентов с клинической депрессией, различий, имеющих диагностическое значение, между группами выявлено не было. Служащие, столкнувшиеся с выгоранием, отмечали столько же депрессивных симптомов, сколько и больные клинической депрессией»
Трудоголизм способен стать причиной появления изменений в вашем мозге и организме, которые могут оказать серьезное влияние на ваше психологическое самочувствие. Потеря мотивации к созданию кода — это лишь один из многих потенциальных симптомов.
Преодолеть это препятствие сложно. Универсального решения здесь нет. Однако, если трудоголизм кажется вам реальной проблемой, возможно, пора подумать над тем, чтобы забросить программирование.
Вы можете быть программистом-трудоголиком, даже если написание кода не является вашей основной профессией. Сторонние проекты и хобби могут быть не менее разрушительными, если вы позволяете им выходить из-под контроля.
Как ВЫ боретесь с кризисом программиста?
Иногда ступор может быть спровоцирован голодом, жаждой или сидячим положением. Если вашему мозгу не хватает питания или воды, то у вас есть все шансы столкнуться с резкими приступами депрессии и потери мотивации.
Ради разминки можно потренироваться, не выходя в спортзал. Если вы действительно ограничены по времени, то мы рекомендуем вам выполнять такие упражнения прямо рядом с рабочим столом. Здоровое тело во многом является залогом психологического здоровья.
P.S. Рекомендуем ещё одну полезную статью по теме работы над собой — 8 явных признаков успешной жизни, не имеющих никакого отношения к деньгам или славе.
Автор перевода — Давиденко Вячеслав, основатель компании TESTutor.