Интернет постоянно развивается и совершенствуется, и с течением времени уже есть чему поучиться, и многое другое.

Для новичков это довольно страшно и быстро становится ошеломляющим.

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

Хуже всего (или лучше всего, в зависимости от того, являетесь ли вы человеком наполовину полным или полупустым стаканом), что чем больше вы узнаете о различных аспектах веб-разработки, тем больше понимаете, как мало вы на самом деле знаете.

Пытаюсь научиться всему

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

Разработчику очень легко потерять концентрацию и попасть в ловушку Синдрома блестящего объекта. По ту сторону забора трава всегда зеленее, и программирование не исключение, поскольку всегда есть новые способы создания вещей, один более захватывающий, чем другой.

В течение моего первого года я начал учиться в свободное время, чтобы совершенствоваться в качестве разработчика Symfony, но я потерял концентрацию, пытаясь играть со всем, что попадалось мне в руки. От компилятора C к Node.js. Я узнал все, кроме Symfony, потому что все остальное было новым и более захватывающим.

И я мог бы продолжать, и продолжать, и продолжать, и продолжать до тех пор, пока на Github появлялись новые тенденции. Я провел бесчисленные часы, наблюдая, читая, изучая и вдыхая код.

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

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

От среднего во всем до хорошего в одном

Успех требует целеустремленности. Для большего эффекта вам нужно делать меньше вещей, вместо того, чтобы делать больше вещей с побочными эффектами . - The ONE Thing , Гэри Келлер

(Я очень рекомендую прочитать The ONE Thing Гэри Келлера - не обычную книгу по программированию, но невероятно интересную и открывающую глаза)

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

Поэтому я сосредоточился на том немногом, что уже знал: back-end разработке на PHP. Back-end разработка на Laravel, если быть точным.

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

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

Я улучшил возможность повторного использования своего кода, начал использовать шаблоны проектирования, реализовал основные концепции, такие как DRY и SOLID, в своей кодовой базе, узнал о Test-Driven-Development и т. Д.

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

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

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

Поэтапный подход к обучению

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

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

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

Понравилась эта статья? Хотите узнать, чем я занимаюсь? Вы можете подписаться на меня в Twitter, Instagram и Github

Особая благодарность: Абдулае, Самуэлю и Жан-Батисту

Эта история опубликована в The Startup, крупнейшем предпринимательском издании Medium, за которым следят более 291 182 человека.

Подпишитесь, чтобы получать наши главные новости здесь.