В августе прошлого года, после напряженного дня просмотра видео на YouTube и поиска вакансий для выпускников в Интернете, мой ноутбук неожиданно сломался. Поскольку у меня было много свободного времени (и из-за того, что мои финансы были неважными), я решил купить сменный аккумулятор и самостоятельно заняться ремонтом машины.
Через несколько дней мой ноутбук починили. Размышляя над этим опытом, я помню, как осознал, насколько мне понравилось возиться с аппаратным обеспечением устройства и обновлять его программное обеспечение. Тогда я начал подумывать о карьере в сфере технологий.
Вскоре после этого я прочитал Проведите пальцем, чтобы разблокировать: Руководство по технологиям и бизнес-стратегии для некодеров. В книге подробно рассказывается об инновациях, происходящих в технологической индустрии, и о том, как они положительно влияют на жизни миллионов людей. К тому времени, как я закончил книгу, я был настроен на 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.