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

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

Я хочу поговорить о чувстве разочарования, которое мы испытываем, но не хочу об этом говорить.

Чувство себя мошенником

Не знаю, как вам, но иногда мне кажется, что я едва умею программировать. Да, профессионально программирую около полутора лет после 3 лет обучения.

За последние 4 года я изучил и использовал HTML5, CSS3, Javascript, jQuery, Angular, Vue, PHP, Laravel, Java, C#, Python, Flask, Django, Java для Android, Node.js и пробовал другие языки. /фреймворки.

Тем не менее, несмотря на то, что я наполовину прилично разбираюсь в Python, Django и Javascript, небольшая неудача отправляет меня обратно в зону «я недостаточно хорош». Звучит знакомо?

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

Но я заметил закономерность: я продолжаю сравнивать себя с коллегами, а не с предыдущей версией себя 6, 12 или 24 месяца назад.

Конечно, ты плохой программист!

Если вы, как программист-самоучка, работающий с лендингами (и иногда немного с JS), сравните с тем 40-летним парнем, который имеет ученую степень и занимается программированием с 12 лет, вы поверите, что нет. заслужить работу.

Вот подсказка: не делайте этого.

Сравните себя с тем, кем вы были вчера

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

Почему вам следует сравнивать с разработчиком Android с 5-летним опытом, если вы дизайнер веб-сайтов?

Допустим, мы можем измерить наш «уровень кодирования» (как в видеоигре RPG). У нас 250, у коллеги 5000. 4750 разницы, это в 20 раз больше!

Прошло 6 месяцев, мы лучше изучили наш язык, теперь мы знаем промежуточные вещи и изучаем основы фреймворка. Сейчас наш уровень 500, а наш коллега поднялся до 5050. Опять огромный разрыв, 4550 очков разницы!

Это неправильный способ увидеть это.

Если вы обратили внимание, то сейчас вы сидите на 500 очках, когда 6 месяцев назад у вас было 250. Вы удвоили свой уровень за 6 месяцев! Сколько людей могут сказать это?

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

Перестаньте фокусироваться на других. Сосредоточьтесь на себе.

Что делают другие люди, не имеет значения, важно именно вы.

Мой личный пример

Позвольте мне привести еще один быстрый пример. Неделю назад я присоединился к Эдабит. В Edabit вы регистрируетесь, выбираете предпочитаемый язык и получаете сотни заданий с 5 уровнями сложности (очень просто, просто, нормально, сложно, очень сложно).

Я делал более простые, и хотя это было легко, я видел, как люди решали их всего за одну строку, тогда как мне требовалось 2 или 3. Я хотел улучшить, поэтому решил, что решу любую задачу, которую смогу, всего за 1 строку. Как бы то ни было, я бы написал всего одну строчку, стараясь быть как можно менее многословным.

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

Теперь я решил все «очень простые» и половину «легких» задач, и более чем в 95% случаев у меня есть решение с меньшим количеством кода всего в одну строку.

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

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

Вывод

Вам не нужно присоединяться к Edabit (несмотря на то, что я рекомендую это), чтобы увидеть, как вы совершенствуетесь. Просто проверьте код, который вы написали 6 месяцев назад. Год назад.

Это ужасно, правда? Кажется довольно плохим.

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

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

Потому что ты поправился.

Чувство того, что вы «недостаточно хороши» или что вы не знаете и половины того, что знает ваш среднестатистический коллега, никогда не покинет вас. Это часть игры.

Используйте это чувство, чтобы заполнить пробелы в своих знаниях.

Вы не знаете, что делают лямбда-выражения Python? Узнайте об этом.

Вы никогда не использовали функции списка JavaScript ES6? Узнайте о них.

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

Но всегда помните: это все о вас.

Мои обучающие видео на Youtube

Мой Гитхаб

Свяжитесь со мной в Твиттере

Исходное сообщение: https://letslearnabout.net/blog/feeling-discouraged-as-a-programmer/