Иногда вам нужно вернуться на два шага назад, если у вас нет прогресса в обучении. Например, я изо всех сил пытался изучить современные JavaScript-фреймворки, такие как React или Angular, потому что мне не хватало многих базовых концепций, не зависящих от фреймворка. Короче говоря, сначала мне нужно было изучить основы JavaScript ES5, а затем я должен был по-настоящему познакомиться с концепциями ES6 +. Кроме того, мне нужно было получить представление об экосистеме (инструментов). После этого я смог хорошо изучить React и Vue.js.
Важно иметь рабочий контекст обучения. Во-первых, вы всегда должны понимать концепции, составляющие предпосылки. У вас должен быть план обучения и, следовательно, вы должны понимать предпосылки. Если вы что-то обнаружите, вам нужно сначала решить эти проблемы, прежде чем вы сможете начать изучать новую технологию.
Практика, практика и практика
Мне потребовалось некоторое время, чтобы понять, что никто не овладевает вещами в жизни, не потратив на это достаточно времени. И с изучением новых технологий все не иначе. Вы должны много практиковаться, чтобы концепции и методы стали для вас второй натурой.
Что я имею в виду под практикой? Что ж, вы должны работать с технологией, чтобы хорошо в ней разбираться. Об этом мало читать, надо еще и «запачкать руки». Давным-давно, когда я учился в колледже, мне пришлось нелегко выучить Java. Мне пришлось выучить язык, а также парадигмы программирования, такие как объектная ориентация или параллелизм. Нам снова и снова приходилось внедрять алгоритмы и решения проблем.
И это то, что вам нужно сделать. Подберите упражнения и попробуйте реализовать их решения. Со временем вы лучше познакомитесь с языком как есть, но также освоитесь с основными концепциями и рабочими процессами разработки, экосистемами, инструментами и т. Д.
Следующие вещи помогли мне освоиться с JavaScript и ES6. Этот список может не иметь отношения к вашему плану обучения, но он предназначен для вдохновения.
- Я пытался решать одно упражнение в день из Курса JavaScript 30 Уэса Боса.
- Я стараюсь тратить несколько минут каждый (рабочий) день на реализацию одного алгоритма (30 секунд кода)
- Иногда я хочу решить проблему CSS, просто запустив сеанс пера кода или песочницы кода.
Обучение через обучение
Если вы действительно хотите стать лучше в какой-либо технологии, вам необходимо понимать ее ключевые концепции. Помимо обучения на практике, есть еще одна возможность - обучение путем обучения. Подумайте об этом: если вы можете объяснять концепции или методы другим людям, вы должны хорошо это понимать.
Таким образом, отличный способ изучить, например, React, - это подготовиться и рассказать о нем. Конечно, это может занять много времени. Однако добиться успеха в чем-то непросто и нужно потратить некоторое время.
На JSConf выступать не нужно (даже это было бы круто). Начни с малого! Вы можете подготовить доклад для членов вашей проектной команды. Возможно, ваша организация создала что-то вроде программы технических разговоров в качестве внутреннего способа обмена знаниями. Или вы идете еще дальше и выступаете на какой-нибудь встрече или в группе пользователей.
Если вы хотите вывести свои педагогические навыки на новый уровень, вы можете подготовить и провести учебный курс. Опять же, вы можете начать с коллег до того, как вы перейдете на «большую сцену», где задействованы внешние клиенты. Помимо многого обучения, вы повышаете свою личную ценность для работодателя.
Принять сосать
Это заявление запомнилось мне. Я подслушал это на фитнес-канале YouTube. Однако это справедливо и для обучения технологиям.
Полезно развить такое отношение, потому что это делает процесс обучения намного лучше. Думаю об этом. Совершенно нормально, что вы плохо разбираетесь в новых технологиях, потому что у вас есть тысячи открытых вопросов и вам не хватает предыдущего опыта. Эта фаза раннего обучения может расстраивать. Однако здесь у вас самый большой обучающий потенциал. На более поздних этапах выздороветь труднее. Это похоже на изучение новых фитнес-навыков.
Помните, что неудача относится к процессу обучения.
Есть побочный проект
Даже если для того, чтобы учиться, важно потерпеть неудачу, это вряд ли возможно в реальных проектах на работе. Поэтому, по крайней мере, для меня полезно иметь один или несколько сторонних проектов в качестве площадки для изучения нового. Вы можете экспериментировать с новыми вещами, а когда вы что-то узнали, вы можете включить это в свой проект на работе.
У такого побочного проекта есть то преимущество, что это весело. У вас нет контекста, который вас тормозит. Вы можете просто делать то, что хотите. Такие проекты также очень важны в тех случаях, когда ваш проект на работе не приносит радости из-за вещей, например, нехватки времени.
Учитесь у других
Не обманывай себя тем, что тебе не нужны другие люди, даже если ты неплохо разбираешься в некоторых технологиях. Вы можете многому научиться у коллег и других членов сообщества.
Помимо использования знаний других людей путем просмотра выступлений, проведения (бесплатных) онлайн-курсов или чтения статей в блогах, вы также можете многому научиться, работая вместе с коллегами. Следующие вещи полезны для вашего прогресса в обучении:
- Учитесь у других, выполняющих рецензирование вашего кода, например, с помощью запросов на вытягивание
- Учитесь на проверке кода другого кода, например, во время запросов на вытягивание.
- Занимайтесь парным программированием или групповым программированием с коллегами. Обязательно перемещайтесь по клавиатуре.
- Обсудите свои реализации с другими. Учитесь у более опытных коллег. Смиритесь с тем, что ваше решение, возможно, придется реорганизовать. Вы многому научитесь, сделав это.
Например, я относительно новичок в React. Во время пул-реквеста я узнал о рендеринге реквизита от коллеги. Затем я работал с этим шаблоном React и несколько раз реорганизовал свой код. Я несколько раз представил коллеге свое текущее состояние и быстро получил обратную связь. Затем я включил его в другую версию кода. В итоге код стал короче, чище, и я многому научился.
Постоянно адаптируйте свой подход к обучению
Я сравниваю обучение технологиям с обучением фитнесу. Иногда вы теряете мотивацию продолжать тренировку. Или ваш контекст меняется, например, потому что ваш напарник по тренировке уехал. Вам нужно что-то менять! Вам нужно адаптироваться!
Например, несколько лет назад я много ездил на работу на поезде. Я читал много статей в блогах и электронных книг или смотрел видео с конференций. У меня не было хорошего подключения к Интернету в поезде, поэтому я предпочел выполнять задачи офлайн.
Между тем я живу в городе, где находится моя работа. Теперь я экономлю много времени, потому что мне не нужно путешествовать. Однако я больше не читаю так много статей. С другой стороны, у меня есть еще около двух часов в день дома с хорошим подключением к Интернету. Так что в настоящее время мне нравится изучать вещи с помощью обучающих видео-платформ, таких как Egghead или Udemy.
Иногда мне приходится ехать одному на машине. Раньше я считал такое время потерянным. К настоящему времени я использую время в пути, чтобы послушать (технические) подкасты, например, Синтаксис. Еще я слушаю подкасты во время готовки.
Вы поняли! Измените свой подход к обучению, если вы потеряете мотивацию или веселье. То же самое верно, если ваш контекст изменился.
Делай и другие дела
Взаимодействие с технологиями каждый день и много часов в день в долгосрочной перспективе не работает. Вам нужно очистить свой разум, занимаясь и другими делами. Проводите время с семьей, занимайтесь хобби или просто не определяйте себя только с помощью технологий, даже если вам это нравится. В противном случае вы можете столкнуться с чем-то вроде усталости от JavaScript.
Чтобы хорошо разбираться в технологиях, вам также необходимо иметь здоровый дух и тело. Работайте также над своим физическим здоровьем, двигая телом или тренируясь. Не бойтесь чего-то упустить, если вы не тратите столько времени, сколько хотели бы, на изучение технических вещей. Опять же, в конечном итоге это лучше для вас. В противном случае вы когда-нибудь можете получить выгорание. Я должен признать, что сам борюсь с этой проблемой - я хотел бы изучать технические вещи в более быстром темпе и хотел бы одновременно заниматься большим количеством сторонних проектов. Однако вам нужно найти здоровый способ тратить достаточно времени на изучение технологий, но не пренебрегать другими важными вещами в своей жизни.
Вы можете найти такие инструменты, как Todoist, Feedly, Pocket и т. Д., Полезными для управления информационной перегрузкой и налаживания здорового процесса для себя.
Источники вдохновения и учебные ресурсы
Это субъективный и далеко не полный список. Он задуман как источник вдохновения для ваших требований к обучению.
- Чтобы изучить технологию, вы должны иметь хорошее представление об экосистеме. Практически на все существует потрясающий список. Например, чтобы получить полное представление о React, взгляните на этот потрясающий список.
- Если вам нравится детально изучать новые технологии, и если вы готовы потратить много часов на достижение этой цели, то обратите внимание на платформы видеообучения, такие как Udemy, Vue Master или Wes Bos. .
- Если вы предпочитаете более быстрый темп при просмотре видеокурсов, вам могут понравиться, например, Умник или YouTube.
- Если вы хотите учиться, читая (электронные) книги, я могу порекомендовать следующие ресурсы: A book Apart и Smashing Book.
- Вы можете использовать технические подкасты, чтобы получить вдохновение или узнать о новых темах, в которые вы сможете инвестировать позже. Сейчас мне очень нравится Синтаксис.
Подробнее откуда это взялось
Эта история публикуется в журнале Noteworthy, куда ежедневно приходят тысячи людей, чтобы узнать о людях и идеях, формирующих наши любимые продукты.
Следите за нашей публикацией, чтобы увидеть больше историй о продуктах и дизайне, представленных командой Журнала.