Известный разработчик и сооснователь платформы для обучения программированию Firehose Кен Мазаика в обсуждении Quora рассказал о 27 вещах, которые бы он хотел знать перед тем, как начал программировать. Редакция AIN.UA приводит адаптированный материал заметки.
1. Ты учишься только когда программируешь. Единственный способ научиться чему-то в программировании — сделать это.
2. Программирование — это не подготовка к тесту. Запоминать все абсолютно не нужно.
3. Подсматривать и перенимать чужие решения абсолютно нормально. Если у меня возникает проблема, я ищу ее решения в интернете.
4. Не позволяйте проблемам накапливаться, проверяйте код. Я привык бесконечно вносить правки в код и ожидаю, что все будет работать правильно. Но без проверок проблемы накапливаются и становится сложно понять, что пошло не так.
5. Учиться одному невероятно сложно. Общайтесь и работайте вместе с другими разработчиками.
6. Не давайте волю эмоциям. На своем пути вы увидите очень много сообщений об ошибке. Совершать их — такая же часть процесса, как и написание кода, поэтому просто смиритесь.
7. Вам ни к чему пять мониторов. Вопреки тому, что говорит Голливуд, вам не нужны безумно дорогие мониторы. Тот компьютер, который у вас есть сейчас, скорее всего достаточно хорош, чтобы начать программировать. Не тратьте впустую деньги.
8. Есть большая разница между прописной и строчной буквой. Я потратил достаточно времени и сил, чтобы уловить разницу между похожими символами. Вас это также будет раздражать, пока вы не разберетесь.
9. Не пытайтесь понять все. Поначалу я пытался разобраться во всех проблемах с которыми сталкивался. Это не нужно. Компьютеры слишком сложные, здесь есть чему поучиться, поэтому вы никогда не будете понимать все. И это абсолютно нормально.
10. Программируйте в парах как можно чаще. Это лучший способ научиться писать код.
11. Менять плохой код — часть процесса. Я думал, что каждый кусок кода, который я пишу, должен быть идеальным. Но вносить правки — это нормально. Вы же не пишите книгу, которую нельзя будет изменить после публикации.
12. Существует правильный способ попросить о помощи. Всем иногда требуется помощь. Когда вы хотите о чем-то спросить, вспомните об этих советах:
- детально опишите, что видите
- объясните, что должно происходить
- объясните, что происходит
- объясните, почему это должно работать по-другому.
Следуя этой инструкции, вы будете замечать, что даже без посторонней помощи можете решить проблему.
13. Вам не нужно быть математическим гением. Если вы человек без страсти к математике, это не значит, что вы не можете быть программистом.
14. Всегда празднуйте маленькие победы. Я бы не достиг таких результатов, если бы не восхищался вещами, которые создал во время карьеры.
15. Встречи с коллегами очень ценны. Поначалу, мне было страшно ходить на такие мероприятия. Но однажды я осознал, что вокруг меня много разработчиков похожих на меня.
16. Избегайте конфликтов слияния (ситуация, когда при одновременной работе приходится выбирать между двумя версиями кода — прим. ред). Они постоянно меня раздражали. Поэтому я был рад, когда мне удавалось закончить работу раньше коллеги.
17. Признаться в незнании чего-то – нормально. Когда вы впервые выходите на работу, не притворяйтесь, что знаете все. Никто от вас этого не требует.
18. Вам не нужно проработать 10 000 часов, чтобы получить работу. В реальности вам нужно просто уметь исправлять свои ошибки и решать проблемы. Научиться этому можно и за меньшее количество времени.
19. Вы будете просыпаться утром и думать о коде. И это, на самом деле, потрясающе.
20. Совершать грубые ошибки — это нормально. Однажды моя ошибка стоила компании $10 000. Именно тогда я вынес главный урок в моей карьере.
21. Алгоритмы похожи на поиск имени в телефонном справочнике. Самый простой способ понять принцип их работы — представить, как бы вы искали одно конкретное имя в телефонном справочнике.
22. У вас никогда не появится чувство, что вы готовы заниматься этим всегда. Синдром самозванца — это реальность. Помните, нет ничего плохого в том, что вы не знаете все.
23. Программисты всегда учатся. В этой сфере постоянно появляются новые технологии, и успеха добиваются те специалисты, которые постоянно развиваются.
24. Заставьте компьютер думать как человек. Много людей считают, что нужно думать как компьютер. На самом деле все наоборот.
25. В программировании важно правильно использовать инструменты. В вашем распоряжении есть большое количество opensource-проектов, открытых библиотек и фреймворков. Вам нужно постоянно находить новые инструменты, но в то же время понимать, какой из них подходит для решения определенной задачи.
26. Не сдавайтесь, потому что, возможно, скоро все изменится. Учиться программировать — это тяжелый труд, который требует времени и дисциплины. Слишком много людей совершают ошибку, когда прикладывают недостаточно усилий для того, чтобы добиться результата.
27. Научиться программировать сложно. Но именно поэтому оно того стоит.
Напомним, ранее AIN.UA рассказывал, почему стартапам не стоит гнаться за ростом.