Как стать лучшим программистом?
Программирование - навык, требующий постоянного обучения и совершенствования
Занимаясь программированием, Вы не можете знать все. Буквально, невозможно быть экспертом во всех областях программирования, так как количество информации, посвященной этой специальности не только огромно, но и растет с каждым часом. Для того чтобы быть в здравом уме и оставаться востребованным разработчиком, необходимо выполнять два условия:
- Понимать, что получить все знания невозможно,
- Каждый день улучшать свой уровень программирования.
В этой статье мы разберем несколько способ реализации последнего условия из вышеперечисленных.
Программируйте каждый день
Программирование - это навык. Поэтому для достижения хорошего уровня требуются тонны практики и усилий. Лучшие разработчики проводят за кодом бесконечное количество дней и ночей, и именно этот факт позволяет им оставаться в первых рядах.
Ежедневное программирование должно стать вашей привычкой. Не имеет значения сложность задачи или выбранный язык программирования - просто делайте это каждый день.
И, конечно, не нужно просто писать код. Попробуйте разбирать чужие проекты, принимайте участие в беседах, найдите эксперта, способного объективно и критично оценивать результаты Ваших работ.
Программирование - это ремесло, в основе которого лежат полученные навыки. Вы не станете очень хорошим программистом просто изучив правила. Но постоянная практика и способность к осмыслению своих и чужих проектов могут сделать Вас одним из лучших.
Изучайте разные языки программирования
Существует веская причина, в связи с которой университеты и школы включают различные языки программирования в процесс обучения. Благодаря этому, через знание нескольких языков приходит понимание общих принципов программирования. Так, хорошее владение классами и объектно-ориентированным подходом в Java упростит изучение языка Swift, только потому, что определенные концепции являются общими для этих языков программирования.
Владение несколькихи языками превращает программирование в очень увлекательный процесс. Можно изучить structs
из Swift, принципы функционального программирования из JavaScript, объектно-ориентированный подход из PHP - и все это будет действительно хорошей идеей. Комбинирование фрагментов знаний из различных языков программирования создает общую большую картину знаний, необходимым для хорошего разработчика. Не застревайте на том, что уже хорошо знаете. Старайтесь как можно чаще работать с пока еще неясными для Вас задачами. Если Вы что-то не можете понять - ничего страшного.
Изучение неизвестного - отличный способ получения и усвоения новой информации.
Обучайте других программистов
Вы слышали про эффект протеже (protégé effect)? Это превосходный метод усвоения информации через обучение других. Эффект протеже - это феномен, согласно которому преподаватель или ассистент, занимающийся подготовкой материалов для обучения других, хорошо изучает эту информацию.
Преподавание, подразумевает, что Вы не знаете, каков уровень знаний ученика. По этой причине правильно полагать, что обучаемый не имеет никаких знаний, и каждый раз начинать процесс обучения с самых основ. А для этого Вы должны иметь отличные базовые знания, причем как с точки зрения учителя, так и с точки зрения ученика.
Один из интересных методов - обучение пластикового утконоса (plastic platypus learning) или, просто, обучение утконоса (platypus learning). Согласно этому методу, демонстрация знаний и учебных материалов неодушевленному объекту способствуют в дальнейшем более эффективному удержанию внимания учеников и улучшению качества получаемых ими знаний. Преимущство этого метода в том, что предподаватель не нуждается в присутствии другого лица при проведении урока.
Начните с малого. Изучайет проблемы на GitHub или StackOverflow и старайтесь помочь найти решение хотя бы одному стороннему разработчику в день.
Заключение
Научиться программировать тяжело, но это того стоит. Задайте себе вопрос: Вы действительно готовы постоянно прилагать дополнительные усилия, для того чтобы быть лучшим программистом? Думаю, ответ Вы уже знаете.
Спасибо за внимание.