Жаль, что я не знал эти 10 вещей, когда начинал программировать

1
6546
views

Перевод статьи «10 Things I Wish I Knew When I Started Programming».

Работа разработчика: что должны знать начинающие девелоперы

1. Мы гораздо больше времени проводим за чтением кода, чем за его написанием

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

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

2. Не бойтесь писать плохой код

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

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

3. Работа разработчика программ заключается не только в наборе кода в текстовом редакторе

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

4. Нужно знать больше одного языка программирования

Когда вы еще только начинаете, вам кажется, что ваша цель – стать лучшим JavaScript- или C#-разработчиком. Это не так.

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

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

5. Гуглить или искать ответы на StackOverflow это не стыдно

Разработчики стремятся не только находить лучшие решения для определенных проблем, но и создавать собственные, уникальные.

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

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

Работа в команде вас не замедляет

6. Работа в команде не замедляет вас

Самостоятельное написание кода очень продуктивно. Вам не приходится объяснять свой код кому-либо, вам нет нужды спорить о том, какое решение будет самым подходящим.

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

Нет ничего более дорогостоящего, чем неподдерживаемый код, в котором никто ничего понять не может. Мне такой код попадался, и работа с ним была сомнительным удовольствием.

7. Код джуниоров не обязательно хуже, чем код сеньоров

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

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

Будучи джуниором – верьте в себя. Если вы и ошибетесь пару раз в неделю, ваши коллеги будут рады вам помочь.

8. Переключение между задачами убивает концентрацию

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

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

Наушники подают окружающим сигнал о том, что вы работаете над сложной задачей и что прерывать вас нужно только в случае пожара. В последнем случае не забывайте: git commit, git push, бежать!

Концентрация

9. Смена языка программирования это не конец света

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

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

Это особенно касается языков, в основе которых лежат одни и те же принципы и парадигмы, пример – объектно-ориентированные языки программирования.

Как говорится, если вы знаете одного члена семьи, вы знаете и всю семью.

10. Работать нужно не тяжело, а с умом

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

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

Бонус: вы знаете больше, чем вам кажется

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

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

1 КОММЕНТАРИЙ

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here