Алгоритм создания технических курсов, которые хочется проходить до конца
Алгоритм создания технических курсов, которые хочется проходить до конца

Есть разные метрики успешности курса:

  1. Индекс потребительской лояльности (Net Promoter Score, NPS) — сколько людей рекомендуют курс друзьям.

  2. Индекс удовлетворённости (Customer Satisfaction Index, CSI) — насколько курс в целом нравится ученику.

  3. Процент завершения курса (Completion Rate, COR) — собственно, сколько людей дошло до конца.

Я приверженец COR как универсальной метрики качества курса, потому что я считаю интерес и вовлечённость ученика главными компонентами. Поэтому весь алгоритм построен вокруг того, чтобы сделать процесс обучения максимально интересным.

1. Определите цель курса с точки зрения ученика

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

Поэтому смотрите на курс глазами ученика: зачем он пришёл к вам, какую задачу он хочет решить? И, что ещё более важно — как эта информация влияет на структуру и содержание курса?

Именно от цели курса зависят все следующие этапы (метафора про камень и круги на воде). Поэтому уделите этому большое внимание, проведите исследование, для чего на самом деле ученику будет нужен ваш курс.

2. Создайте проект, выполняемый в конце курса

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

Чтобы добиться интереса, придумайте проект и постройте весь процесс обучения от него. Покажите его в самом начале и скажите: «Ребят, вот наша точка Б и весь наш курс будет движением к этой точке» (этот приём называется «демонстрация результата», мы к нему ещё вернёмся позже).

Понятно, что для того, чтобы это сработало, проект должен быть сексуальным для ученика. Отвечайте на эти вопросы, чтобы «прокачать» его:

  • Как ученик понимает, что проект помогает ему в достижении цели?

    Определите характеристики проекта, из-за которых ученик думает: «Чёрт побери, а ведь это то, что мне нужно!».

    Например: цель — трудоустройство. Возьмите типовую задачу на будущей работе или реальное тестовое задание.

  • Что ученик может добавить в проект от себя?

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

    Например: ваш проект — статичная вёрстка интернет-магазина. Пусть ученик сделает магазин своих любимых вещей вместо абстрактных картиночек и товаров. Этот приём называется «самовыражение».

  • Как проект учитывает контекст ученика?

    Добавьте то, что позволит ученику ассоциировать себя с проектом. Что-то связанное с окружением, задачами, интересами. Хорошо, если у вас получится найти что-то узкое, если нет — используйте приём «поп-культура».

    Например: если на курсе по Figma вам нужно сделать макет афиши, то пусть это будет постер Comic Con.

3. Разбейте создание проекта на стадии

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

Например: результат вашего курса — работающий сайт с базой данных.

Не делайте стадии слишком обширными («Frontend» и «Backend»). Это приведёт к тому, что проекты будут реализовываться очень долго и это наскучит. Старайтесь сделать так, чтобы работа над одним проектом не шла дольше 20 занятий (с учётом теоретической подготовки).
Но и слишком конкретизировать стадии тоже не стоит («Понятие блочных и строчных элементов», «CSS-селекторы»). Это уже конкретные учебные темы, а их вы будете делать позже, в 6 пункте.

Хороший пример: «HTML-теги», «CSS-классы», «CSS-анимации».

4. Отсортируйте стадии и сделайте план курса

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

Если в вашем курсе одно следует из другого — идеально, тогда просто выстройте их по очереди.

Если же стадии не так сильно связаны друг с другом — штош, тогда просто отсортируйте их по сложности. Однако, есть нюанс: необязательно придерживаться именно хронологической последовательности. Может оказаться, что самые простые вещи в проекте реализуются в конце. Тогда смело размещайте их в начале курса. Как это может получиться — в следующем пункте.

5. Создайте проекты, выполняемые в конце каждой стадии

Я не зря сказал относиться к стадиям как к мини-курсам, потому что каждая стадия, как и курс, должна заканчиваться проектом. Причём требования к проекту те же самые: ученик понимает, как ему помогает выполнение этого проекта, используется «самовыражение» и «поп-культура». Так вышло.

Однако есть разница: у финальных проектов стадий может использоваться ещё один приём, «частичная готовность». Это когда вы для выполнения работы даёте материал, в котором уже что-то есть. Этот приём может быть использован для разных целей, в том числе для игнорирования более сложных тем, которые необходимы для реализации проекта, но будут изучаться позже.

Например: у вас курс по 3D-моделированию. Самым первым проектом в начале обучения может быть ремикс освещения сцены из популярного мультфильма с тем, чтобы сцена передавала совершенно другую эмоцию. По идее, для создания рендера необходимо знать моделирование, материалы и т. д. Но с помощью «частичной готовности» ученик фокусируется только на освещении, а всё остальное (модели, материалы, сцена) у него уже есть.

6. Разбейте каждый проект на темы и отфильтруйте их

Здесь вы делаете примерно то же самое, что и в 3 пункте, но теперь самое время сформулировать именно учебные темы. Старайтесь выдерживать масштаб тем таким, чтобы на 1 уроке проходить только 1 тему.

После нужно устроить резню: убрать темы, которые не являются обязательными для выполнения конкретного проекта. Можно вынести их в список для самостоятельного изучения, или выделить один урок и галопом пробежаться по всем. Но помним: любая подаваемая информация должна иметь чёткую привязку к проекту. Информация, которую ученик не понимает, как использовать = фу, скучная информация.

Например: в стадии «HTML-вёрстка» с проектом «Статичная вёрстка интернет-магазина» тема «История возникновения HTML» хоть и кажется важной, но будет лишней.

7. Сгруппируйте темы в серии из 3 уроков (спринты)

Спринты состоят из 3 уроков и имеют одинаковый шаблон:

  • 1 урок. Теория, тема А.

    На первом уроке вы изучаете новую тему. Например: блочные и строчные элементы в HTML.

  • 2 урок. Теория, тема Б.

    На втором уроке вы изучаете другую новую тему. Например: одинарные HTML-теги.

  • 3 урок. Практика, А+Б.

    А на третьем происходит закрепление, ученик в течение всего урока самостоятельно выполняет задание, которое объединяет в себе 2 предыдущие темы. Важно! На 3 уроке не происходит изучение новых тем, только самостоятельная практика. Например: вёрстка макета, использующего разные блочные и строчные одинарные HTML-теги.

Благодаря единому шаблону, спринты сильно облегчают работу над учебным планом.

8. Спроектируйте уроки

Самая объёмная и сложная часть — планирование уроков. На каждом уроке должен быть мини-проект или задача, следующая тем же правилам: ученик понимает полезность, используется самовыражение и поп-культура. И вся теория подаётся как способ реализации этого проекта.
Вот типовая схема урока:

  1. Начало (10%).
    Вначале покажите, что ученики получат в конце. Сделайте разбор результата, порассуждайте, что потребуется для его выполнения. Это даёт понимание и выстраивает правильные ожидания от новой информации.

  2. Теория (30%).
    Всегда привязывайте теорию к конкретной задаче, которую она решает.
    Используемые приёмы:
    «От проблемы». При объяснении новой темы сформулируйте проблему, которую она решает (иногда её приходится создавать искусственно).

    «От боли (рефакторинг)». Перед объяснением темы дайте небольшое задание, при выполнении которого ученик столкнётся с неудобствами (или ошибками). Подавайте новую тему как решение этих неудобств.

    Например: при объяснении CSS-классов сначала дайте задание сверстать 10 одинаковых блоков с помощью атрибута style, а потом изменить каждый.

    «Повтор». Пошагово выполняйте задачу, комментируя логику своих действий. Ученик повторяет за вами.

  3. Практика (50%).
    Самая важная часть урока, на ней происходит закрепление материала. Практика всегда должна занимать большую часть.
    Используемые приёмы:
    «Аналогия». Дайте задачу, аналогичную той, что вы выполняли совместно, но слегка измените форму.

    «Частичная готовность». Этот приём также может использоваться и для практики: приготовьте задание, но большую часть материала в нём сделайте готовым, чтобы ученик сфокусировался только на конкретной теме. Со временем готовность материала можно уменьшать.

  4. Конец (10%).
    Обсудите пройденный материал, а главное — покажите конечный результат следующего урока. Если у вас получится сделать интересную штуку, это создаст петлю интереса ученика.


Итак, если коротко говорить, то на этом всё. На самом деле, за кадром осталось ещё много вещей (например, сбор обратной связи во время обучения, анализ образовательных потребностей и т. д.). Так вышло. Но для начала вам пока хватит и этого.

Не болейте и делайте крутые курсы!

Алексей Илларионов

Основатель IT-школы Алексея Илларионова. Делаем двухгодичные курсы для подростков с 80% дохождением. И ещё курсы на заказ :)

Комментарии (2)


  1. maxgammer
    21.04.2022 11:02

    В названии указано ...."технических курсов", а пример с тегами HTML. Сразу вопрос, а на реальных технических курсах пробовали?


    1. superalesha Автор
      21.04.2022 12:41

      Ну, мы учим Javascript, NodeJS, Unity C#. Вполне себе техническое ) А примеры с тегами HTML использованы, чтобы было понятно большему числу.