Долгий путь веб-программиста. Дорожная карта

Пять шагов на пути к профессии мечты.
13 июля 2017326451Илья Бубнов9173650

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

Шаг первый. Базисный

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

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

Языки: Scratch, Logo — для самых маленьких; HTML, JavaScript, Pascal, Python — для тех, кто не хочет играть в игры. Ещё раз: язык не важен, в отличии от необходимости заложить основу.

Инструменты: С Logo и Scratch можно поиграть прямо на сайте, для Pascal — Turbo Pascal 7.0, Python — IDLE, а на код HTML и JavaScript лучше взглянуть из Блокнота.

Время: 2-3 дня или 5-10 часов непрерывного изучения.

Курс: Интенсив «Основы программирования».

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

Шаг второй. Интересный

Описание: Теперь, когда вы понимаете, что такое программирование, пора взяться за то, что интересно. В нашем случае — интерфейс веба, или фронтенд (front-end). Придётся много работать руками и головой, чтобы заложить в подкорку полученную информацию.

Языки: HTML, CSS, JavaScript. Все три языка станут основой будущей профессии. Внимательно изучите синтаксис и посвятите много времени практической стороне.

Инструменты: Объёмы кода возросли, поэтому в качестве редактора лучше взять что-то с подсветкой синтаксиса, например Notepad++. Вместе с JavaScript изучите библиотеку jQuery и AJAX. Фронтенд-разработчик и веб-дизайнер — разные профессии, но изучить графический редактор на базовом уровне будет полезно. Для начала одойдут GIMP или Adobe Photoshop.

Время: 2 недели или 30−40 часов чистого времени.

Курс: Интенсив «Основы веб-разработки», «Ознакомительный урок HTML/CSS», «JavaScript. Уровень 1».

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

Шаг третий. Профильный

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

Языки: HTML, JavaScript, CSS и препроцессор Sass. Для общего развития — TypeScript и Dart.

Инструменты: Пришло время разобраться с фреймворками. Для CSS обязателен к изучению Bootstrap, для JavaScript — React и Angular. Для настройки фронтенда будет полезно изучить сборщики Gulp, Grunt и Webpack. Кроме того, пора познакомиться с WordPress или какой-нибудь другой CMS.

Время: 4−6 недель или 80−100 часов чистого времени.

Курс: «ReactJS», «Wordpress для профессионалов», «JavaScript. Уровень 2».

Совет: Максимально используйте указанные инструменты в работе. Попробуйте с нуля создать и запустить функциональный сайт с динамикой, формами регистрации, автообновлениями.

Шаг четвёртый. Обогащающий

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

Языки: HTML, JavaScript, CSS.

Инструменты: Фреймворки для разработки Foundation, Semantic, Backbone, Ember, Vue.js. Препроцессоры Less и PostCSS. Для тестирования — фреймворки Jasmine, Mocha, Jest.

Время: 6−8 недель или 100−120 часов.

Курс: Для закрепления полученных знаний с шагом в сторону бэкенда — профессия «Веб-разработчик».

Совет: Больше инструментов — больше времени для изучения. Не упрощайте себе жизнь, перекидывая проект между фреймворками. Помните, что вы пока обучаетесь.

Шаг пятый. Свободный

Описание: В этом моменте вы должны прийти к философии Сократа: «Я знаю, что ничего не знаю». Веб-разработка, как и любая сфера IT, активно развивается и предъявляет программистам всё больше и больше требований. Это касается не только новых инструментов, но и смежных дисциплин. Специалисты, способные заняться полным циклом разработки сайта, ценятся вдвойне. Значит, придётся освоить бэкенд и веб-дизайн.

Уже после вы возьмётесь за создание собственного языка.