В августе прошлого года, после напряженного дня просмотра видео на YouTube и поиска вакансий для выпускников в Интернете, мой ноутбук неожиданно сломался. Поскольку у меня было много свободного времени (и из-за того, что мои финансы были неважными), я решил купить сменный аккумулятор и самостоятельно заняться ремонтом машины.

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

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

  1. Я хотел быть частью этого нововведения.
  2. Я хотел попробовать свои силы в кодировании.

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

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

1) Начало работы: freeCodeCamp

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

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

2) Учебники: MDN Web Docs, Codecademy

MDN великолепны. Они хорошо известны своей исчерпывающей документацией по веб-технологиям, но менее известны своими подробными учебными пособиями для начинающих. Учебники хорошо структурированы, четко объясняют предмет и могут помочь читателю зная, как использовать тег img, вплоть до разметки собственных SVG-файлов и т. д.

Раздел JavaScript в порядке, но как язык я чувствую, что что-то более интерактивное (например, введение Codecademy в JS-трек) лучше подходит для обучения основам JavaScript.

3) Упражнения: W3 Resource, CodeWars

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

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

4) Книги: Красноречивый JavaScript, Ты не знаешь JS.

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

Введите книги по программированию.

Для начала я рекомендую Красноречивый JavaScript Марин Хавербеке. У автора есть особый способ представить программирование как вид искусства, а не как науку, и чтение глав книги серьезно повысит уровень навыков новичка.

Вопросы порождают больше вопросов, поэтому, чтобы копнуть глубже, я рекомендую серию книг Кайла Симпсона из шести частей You Don’t Know JS. Третья книга проливает свет на проблемы, связанные с ООП в JavaScript, а пятая книга дает одно из лучших объяснений различных абстракций, используемых в JS для написания асинхронного кода.

«Невозможно эффективно использовать любую абстракцию, если вы не понимаете, что она абстрагирует и почему». - Кайл Симпсон

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

5) Каналы YouTube: Traversy Media, Fun Fun Function

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

На YouTube также есть несколько действительно проницательных / забавных влогеров, занимающихся разработкой программного обеспечения, например, Джарвис Джонсон и Маюко, но я оставлю это вам, чтобы изучить и найти каналы, с которыми вы можете взаимодействовать.

Спасибо за прочтение

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

Хотите с нами связаться? Давайте подключимся к LinkedIn. Вы также можете заглянуть в мое портфолио, чтобы увидеть мои лучшие работы 👍.

Подробнее откуда это взялось

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

Следите за нашей публикацией, чтобы увидеть больше историй о продуктах и ​​дизайне, представленных командой Journal.