Front end IT news Без рубрики

Обучение здорового человека: Как выучить новые технологии пока они еще в тренде1 min read

16.01.2020 3 min read

Обучение здорового человека: Как выучить новые технологии пока они еще в тренде1 min read

Reading Time: 3 minutes

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

 С чего начать изучение новых технологий?

На протяжении последних 10 лет я ежегодно встречаю разные ответы на этот вопрос. Прежде всего, не нужно вестись на новые методики обучения, которые гарантируют освоить С++ за 24 часа и PHP за неделю. Вместо этого стоит определиться, что мы хотим узнать о технологии и как в дальнейшем будем её использовать. 

Шаг 1. Разбираемся, зачем нам нужна новая технология. 

Наш ответ облегчит планирование обучения. Тут может быть два варианта:

  • Технология нужна для получения новой работы 

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

В чем его суть:

  1. Формируем набор технологий, которые нам нужно выучить. Мы находим его в описании вакансии или узнаем от менеджера. А выглядит он примерно так: Angular 8, Rxjs, NgRx, Typescript, Node.js, Webpack, Angular CLI. 
  2. Для каждого термина делаем 3-4 пункта с источниками информации. 
  3. Ищем материалы на YouTube (с формулировкой «Rxjs туториал»), Medium, Habr. 

Со 100% вероятностью на них можно найти обучающие материалы, которых с головой хватит для ознакомления с технологией.

  • Технология нужна для продвижения по карьерной лестнице 

Иногда мы меняем деятельность, чтобы убежать от рабочей рутины. 

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

Тут уже в дополнение к «базовому алгоритму» необходимо заручиться экспертным мнением более опытного коллеги. Принцип тот же самый: некий набор технологий, каждую из них нужно найти, изучить, попрактиковать. Но как раз «некий набор технологий» и является сложным понятием. Векторов изучения в ИТ невероятное множество. Так что если с головой погрузиться в туториалы, то можно затеряться в дебрях информации. А вот ментор, исходя из своего опыта, подскажет, на чем именно стоит сконцентрироваться и где найти наиболее эффективную схему обучения.

Шаг 2. Определяем, насколько глубоко нужно разобраться в тематике

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

Суть заключается в следующем.

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

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

Так, реализация всего функционала сайта «Todoist» станет отличной тренировкой нового фреймворка для построения веб-страниц. Другой вариант — реализовать свою версию сайта «TVMaze».

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

Какой из этого вывод?

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

Резюмирую сказанное несколькими тезисами по обучению. Распечатайте и положите на видном месте:  

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

«Базовый» алгоритм подразумевает понимание объема технологий/задач/библиотек, которые нужно выучить. Он определяет несколько ключевых источников поиска информации. 

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

План действий: определяемся с объемом задач, ищем пару готовых туториалов для каждой технологии, проходим их, закрепляем практикой. Профит!

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

— Перечень популярных технологий необходимо обновлять минимум каждый год. А после — специально выделять время для его освоения.

Людям с опытом в сфере я очень рекомендую комбинировать новые технологии в практических примерах. Допустим, если вы хотите изучать React, то в практической работе используйте еще и весь сопутствующий стек. Таким образом будет формироваться навык работы с технологией не в вакууме, а в реальных условиях работы.

Front Team lead в EPAM. 7+ лет в сфере IT. Full stack-разработчик, сертифицированный специалист Microsoft, опытный наставник. Постоянно улучшает свои навыки программирования и умеет заинтересовать даже самых заскучавших студентов.