Программистов принято считать очень умными и талантливыми. Настолько умными и талантливыми, что грех и пытаться с ними соперничать. На самом деле они обыкновенные люди, которые часто так же не понимают, что происходит, и что это они только что сделали… Все с чего-то начинают, и это самое сложное. Не все рождены «великими программистами», но чтобы стать достойным программистом – не нужно иметь суперспособности, талант и влюбленность в IT, граничащую с одержимостью. Не верите нам – поверьте самим программистам.

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

В своей презентации Джейкоб Каплан-Мосс (создатель Django) однажды заявил: «Миф про “гениального программиста” чрезвычайно опасен. С одной стороны он непомерно завышает порог входа, отпугивая многих потенциальных программистов. С другой, он также пугает тех, кто уже программист, потому что подразумевает, что если ты не ого-го как крут, то, очевидно, ты лузер. Мы должны избавиться от такого отношения. Программирование – просто набор навыков, которым можно обучиться, для этого не требуется много таланта, и быть средним программистом не стыдно». В своем Twitter-аккаунте он называет себя «ненастоящим программистом», тем самым давая понять, что ему осточертели эти стереотипы.

Джейкоб Торнтон работал программистом в Twitter, а сейчас программирует в Medium. Он также создал Bootstrap, который получил более 80 000 звезд на Github. Так вот, Джейкоб Торнтон каждый раз говорит, что ненавидит компьютеры. Но не каждый раз при этом шутит. «Изначально собирался изучать социологию», – признается он.

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

Момент истины наступил, когда вся команда стартапа собралась вокруг меня, распрашивая про запрос XHR. Я никогда такого не делал, я только знал, что это такое. Тогда я стал печатать и обновлять браузер, и ничего не происходило. Я повторил несколько раз. Я испугался. Сейчас они поймут, что я самозванец. И тут я понял, что забыл добавить ‘.send()’  – я добавил, обновил и все получилось, и команда выдохнула: “О, ну круто”. И все просто разбрелись по своим местам.

А я сидел так 15 минут и думал: ну все. Я в теме. Теперь меня не уволят».

Это история и близко не звучит как нечто из разряда «гениальный программист за работой». Но откуда же взялась мотивация продолжать идти по этому пути? Джейкоб ответил так: «Я очень социально мотивирован, и мои друзья front-end  разработчики прямым текстом скажут мне, если увидят какую-то лажу. Это круто. Я просто хочу кодить и работать с моими друзьями».

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

Расмум Лердорф (создатель PHP) часто выдает спорные цитаты:

«На самом деле я ненавижу программирование, но я люблю решать проблемы».

«Есть люди, которым нравится программирование. Я не понимаю, почему им нравится программирование».

«Я не настоящий программист. Я компоную вещи до тех пор, пока все не заработает, и я не смогу двигаться дальше. Настоящие программисты скажут: “Да, это работает, но у тебя не хватает памяти. Пожалуй, тебе стоило бы это исправить”. А я просто перезапускаю Apache через каждые 10 запросов».

Дэвид Хайнемайер Хенссон (создатель Ruby on Rails) однажды сказал в одном интервью: «Забавная история. Когда я программировал на PHP или Java, я постоянно хотел чего-то другого. Я искал другой язык программирования, потом еще другой… просто что-нибудь еще, частично чтобы не дать мне заскучать, программируя на языках, на которых я программирую. Я совершенно не был уверен, что буду работать программистом, когда писал на PHP и Java».

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

Например, стал гонщиком - ред.

Например, стал гонщиком – ред.

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

  • Для кого-то это дерьмовое ПО, а для кого-то фултайм-работа.
  • Любой дурак может написать код, понятный компьютеру. Хорошие программисты пишут код, понятный человеку.
  • У ПО и церквей много общего – сначала мы их строим, потом мы на них молимся.

Если у всех программистов и правда так много таланта и страсти, почему тогда они так шутят? Я нашел несколько любопытных цитат в статье на Medium, которая сильно перекликалась с моим опытом изучения программирования:

  • Всегда найдется кто-то, кто будет говорить вам, что вы все делаете неправильно.
  • Всегда найдется кто-то, кто будет говорить вам, что вы не настоящий кодер.
  • Если вы будете переживать из-за “кредо гика”, это вас постепенно убьет.

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

Автор: Тони Ю

Источник: Medium