Learning for Mastery
VS
Getting Shit Done

Вася
и его путь к успеху

  • Школа
  • Университет
  • Курсы в какой-нибудь компании
  • Стажировка
  • Проект
  • Поехали!

Васины знания

Вася научился...
играть по правилам:

  • Получать оценки
  • Сдавать экзамены
  • Проходить собеседования
  • Находить код в интернете

Со временем это проявляется

Ничего, починим!

Не чинится :-(

Васина работа

Результат подхода

Learning for
Getting Shit Done

Вася старался,
но его завели не туда...

Обучение без пробелов

(Learning for Mastery)

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

— Никакого ООП пока не научишься строить абстракции на функциях!

Подготовка JS-разработчика

В списках только JS и фундаментальные знания.

Основы (1—3 года)

Вася научится если будет:

  • Разбирать материал до тех пор, пока не усвоит.
  • Честно, самостоятельно выполнять все практические задания. Менторы и другие студенты помогут.
  • Сможет погрузиться в тему, увлечется ей.
  • Будет пробовать, ошибаться и исправляться. Задавать «дурацкие» вопросы, выяснять все, что не понял.
  • Будет переходить на следующий уровень только когда усвоит предыдущий.

Почему не книги?

На курсах больше отдачи, поддержки, вовлеченности. Есть менторы, код проверяется.

Пройдя курс, вы поймете, освоили вы его или нет. С книгой так не получится.

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

Потом можно добавить более академический материал.

Построение абстракций, управление сложностью:

Языки

  • Programming Languages: A, B, C — как разные языки решают разные задачи. Типизация, энергичные и ленивые вычисления, парадигмы, синтаксис, семантика и идиоматика языков.
  • Programming and Programming Languages — книга по университетскому курсу на основе HTDP и SICP, но по-современному: в языках уже давно не актуально разделение парадигм, в них просто добавляют фичи.

Зачем нужен академический материал?

Подробно это расписано на сайте Teach Yourself Computer Science. Там же есть своя, всеобъемлющая, подборка неувядающих книг и курсов по информатике.

Учиться — сложно.

Программировать — сложно.

Учить только библиотеки и фреймворки без укрепления фундамента — тупиково.

Учеба с пробелами в знаниях влечет недопонимание и ошибки.

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

Конец

Спасибо за внимание

andreymiskov.ru