Привет, я Боб, и я пишу плохой код

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

Почему? Потому что разработка - это сложно, и потребуется настойчивость, чтобы стать лучше.

Отказ

Первая правда программирования заключается в том, что вы потерпите неудачу. Я делаю все время. Компилятор (или интерпретатор) умеет напоминать мне о моей частоте отказов.

Что он не очень хорошо умеет, так это говорить мне: «Хорошая работа!» когда я исправляю эти надоедливые ошибки - я должен делать это сам. Научитесь ценить неудачи, маленькие и большие. Считайте неудачные компиляции и сбои программ как учебный опыт, который поможет вам лучше в том, что вы делаете. Если вы хотите быть самым острым инструментом в сарае, вам нужно найти и удалить заусенцы!

Нетерпеливость

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

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

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

Усталость

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

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

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

Находясь дома, я могу запустить игру, о которой не нужно слишком много думать, и сыграю около 30 минут.

Синдром самозванца

Синдром самозванца - это умственная игра, которая возникает, когда вы впервые получаете работу в качестве разработчика. В большинстве случаев, когда мы думаем о разработчиках, мы думаем о компьютерных ученых (Тьюринг, Ричи, Торвальдс, Гейтс, Возняк), которые добились огромных достижений. Из-за этого мы можем чувствовать, что не принадлежим остальным разработчикам.

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

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

Аналитический паралич

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

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

Образовательные границы

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

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

Если вы столкнетесь с какой-либо из этих проблем, помните, что вы не единственный, кто попадает в эти ловушки, и всегда есть выход. Удачи!