Советы начинающим Python-разработчикам

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

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

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

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

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

Photo by form PxHere

2. Не бойтесь провалов

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

3. Соблюдайте «10 заповедей обезличенного программирования»

Можете даже распечатать и на стенку повесить.

(В оригинале — «The Ten Commandments of Egoless Programming». «Egoless Programming» переводится как «обезличенное программирование»: организация разработки, при которой программист, написавший часть программы, обычно не сопровождает ее в дальнейшем; предполагает унификацию средств разработки и стиля программирования. — Прим.ред.)

«Заповеди»:

  1. Осознайте и смиритесь с тем, что вы будете допускать ошибки. Главное — обнаружить их как можно раньше, до того как они попадут в продакшен. К счастью, за исключением разработки в сфере космических технологий, наши ошибки редко бывают фатальными. Поэтому мы можем (и должны) извлечь уроки, посмеяться и двигаться дальше.
  2. Вы — не ваш код. Помните, что цель ревью кода — найти в нем проблемы, поэтому проблемы точно будут найдены. Не нужно воспринимать это как личное оскорбление.
  3. Не важно, сколько «приемов карате» вы знаете: все равно найдется кто-то, кто будет знать больше. И такой человек сможет научить вас новым движениям, если вы попросите. Принимайте вклад других людей в вашу работу, особенно если считаете, что в этом нет необходимости.
  4. Не переписывайте код, не проконсультировавшись. Между «исправлением кода» и «переписыванием кода» довольно тонкая грань. Эту разницу нужно чувствовать, особенно, когда делаете ревью кода. Помните, что вы не одиночка, а командный игрок.
  5. Относитесь к людям, которые знают меньше вас, с уважением и терпением. Не-технари, которые постоянно имеют дело с разработчиками, считают нас «примадоннами», и это в лучшем случае. Не позволяйте своему гневу или нетерпению подпитывать эти стереотипы.
  6. В мире постоянны только перемены. Принимайте это с улыбкой. Рассматривайте каждое изменение в требованиях, платформе, инструментарии как новый вызов, а не как ужасное неудобство, с которым нужно бороться.
  7. Настоящий авторитет зиждется только на знаниях, а не на названии должности. Если хотите заслужить уважение в среде обезличенного программирования, — приобретайте новые знания.
  8. Боритесь за то, во что верите, но при этом достойно принимайте поражение. Поймите и примите, что порой ваши идеи будут отвергаться. И даже если потом окажется, что вы были правы, не нужно повторять «а я говорил!» (по крайней мере, не делайте это слишком часто).
  9. Не будьте «парнем из той комнаты». (Возможно, это отсылка к сериалу «Айтишники», где Ричмонд работал в кладовке. В любом случае, речь о стереотипном представлении о программистах, — прим. ред.). Не будьте человеком, который тихонько кодит в темном офисе, выходя из него только за колой. Парень, сидящий в кладовке, изолирован от всего, неподконтролен и ему нет места в открытой среде сотрудничества.
  10. Критикуйте код, а не людей. И добры будьте к авторам кода, а не к коду. Старайтесь сделать свои комментарии максимально позитивными и направленными на улучшение кода. Ссылайтесь на локальные стандарты, спецификации программы, повышение производительности и т. п.

4. Читайте чужой код

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

5. Спрашивайте, спрашивайте, спрашивайте, спрашивайте и спрашивайте

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

6. Нет никаких разработчиков-звезд, ниндзя, гуру и т. п.

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

7. Помимо изучения инструментов, языков и фреймворков читайте книги о карьерном росте

Программирование это не только написание кода.

8. Ведите блог

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

9. Принимайте участие в разработке проектов с открытым исходным кодом

Участвуя в open source проекте, можно многому научиться, да еще и сообществу помочь. Начинайте с чего-то маленького. Узнайте побольше о проекте, в котором хотите что-то исправить/дополнить. При выборе обратите внимание на фреймворк или инструмент, которым сами пользуетесь. Принять участие можно по-разному:

  • сообщить о баге;
  • воспроизвести баг и написать в тикете, как его воспроизвести;
  • написать документацию;
  • перевести программу или документацию на свой язык;
  • написать код для исправления бага или реализации новой функции.

10. Наслаждайтесь процессом

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