Для преподавателей
Как мы учим: методичка для преподавателей
Короткий путеводитель по тому, как устроено хорошее онлайн-обучение и на какие исследования мы опираемся. Это рекомендации, а не обязательные правила: они помогают сделать курс, который ученики проходят до конца и после которого умеют, а не только «прочитали».
Зачем эта страница
Преподавание — такая же инженерная дисциплина, как программирование: у неё есть проверенные приёмы, измеримые эффекты и известные ошибки. Курс, собранный «по ощущениям», часто выглядит солидно, но ученики бросают его на третьем модуле или доходят до конца, так и не научившись писать код сами.
Поэтому один принцип на всю страницу:
Ниже — главные идеи с источниками. Не нужно читать всё из списка литературы: достаточно понять идею и знать, куда копать, если тема заинтересует.
Начинаем с цели, а не с материала
Самая частая ошибка — начать с вопроса «что я расскажу». Надёжнее идти в обратную сторону. Этот подход называют обратным проектированием (Backward design, Wiggins и McTighe[2]):
- Что ученик будет уметь после модуля? Не «знать про циклы», а «написать цикл, который считает сумму элементов списка».
- Как мы это проверим? Какая задача или вопрос докажут, что ученик умеет?
- Только потом — что объяснить, чтобы ученик справился с этой проверкой.
Цели, задания и проверка должны совпадать. Джон Биггс назвал это согласованием (constructive alignment[3]). Если в теории объяснили синтаксис, а в задаче требуется придумать алгоритм, ученик проваливается не потому, что глупый, а потому, что проверяют то, чему не учили.
На практике: в описании модуля 2–4 цели, каждая начинается с глагола («напишет», «найдёт ошибку», «сравнит»). К каждой цели — хотя бы одна задача или вопрос.
Таксономия Блума: какие бывают цели
Чтобы цель была проверяемой, удобно пользоваться пересмотренной таксономией Блума (Anderson и Krathwohl, 2001[1]). Она делит учебные цели на шесть уровней от простого к сложному. Каждый следующий уровень опирается на предыдущие, поэтому в курсе нужны все — но нельзя застревать на первых двух.
| Уровень | Глаголы для цели | Чем проверить у нас |
|---|---|---|
| Запомнить | назовёт, перечислит, узнает | Тест с вариантами: «какой оператор…» |
| Понять | объяснит, предскажет, приведёт пример | Тест «что напечатает этот код?» |
| Применить | напишет, использует, решит | Задача с автопроверкой по готовому условию |
| Анализировать | найдёт ошибку, разберёт, сравнит | Задача «исправь код» в заготовке, тест «где ошибка» |
| Оценить | выберет лучшее решение, обоснует | Тест «какое решение быстрее и почему» |
| Создать | спроектирует, соберёт, придумает | Итоговая задача модуля, свой проект |
Хороший модуль поднимается по лестнице: несколько вопросов на понимание, затем задачи на применение, в конце — задача, где нужно соединить несколько тем. Если все задачи курса — «перепиши пример с другими числами», ученик дойдёт до конца, но не сможет написать программу с нуля.
Структура урока
Дэвид Меррилл сравнил десятки моделей обучения и выделил общие для них «первые принципы»[4]. Обучение работает лучше, когда ученик решает реальную задачу и проходит четыре фазы:
- Активация — вспомнить, что уже известно. Одна-две фразы: «В прошлом уроке мы хранили одно число в переменной. А если чисел сто?»
- Демонстрация — показать, а не только рассказать: пример кода и что он выводит.
- Применение — ученик делает сам и получает обратную связь. У нас это задачи и тесты.
- Интеграция — использовать новое в своём контексте: задача «сделай для своих данных», связь со следующей темой.
Похожую последовательность описал Роберт Ганье в «девяти событиях обучения»[5]: привлечь внимание, сообщить цель, напомнить пройденное, дать материал, сопроводить, дать попробовать, дать обратную связь, проверить, закрепить.
Как это ложится на наш урок:
| Часть урока | Что в ней |
|---|---|
| Начало теории | Зачем это нужно (живой пример задачи) и цель урока одной фразой |
| Теория | Одна идея, разобранный пример, что выведет код. Коротко: 5–10 минут чтения |
| Тест | 2–4 вопроса на понимание сразу после теории |
| Задачи | От «допиши строку» к «напиши сам». Последняя — с темой из прошлых уроков |
Когнитивная нагрузка: почему меньше — лучше
Рабочая память человека маленькая: одновременно в ней удерживается несколько новых элементов. Теория когнитивной нагрузки Джона Свеллера[6] объясняет, почему новичок «теряется» в уроке, где сразу новые синтаксис, понятие и задача. Выводы для курса:
- Одна новая идея на урок. Тема большая — делите на несколько уроков.
- Сначала разобранный пример, потом задача. Новичку полезнее изучить готовое решение с пояснениями, чем сразу решать самому (эффект разобранного примера, Sweller и Cooper[7]).
- Постепенно убирайте подсказки. То, что помогает новичку, мешает тому, кто уже разобрался (эффект обращения экспертности, Kalyuga[8]). В первых задачах модуля — заготовка с почти готовым кодом, в последних — пустой редактор.
- Без лишнего. Ричард Майер в исследованиях мультимедийного обучения[9] показал: декоративные картинки, посторонние истории и «интересные факты» не по теме ухудшают усвоение. Картинка в уроке — если она объясняет (схема памяти, блок-схема), а не украшает.
- Объяснение рядом с тем, что объясняют. Комментарий к строке кода — на этой строке или сразу под примером, а не тремя абзацами ниже.
Как учить именно программированию
У обучения программированию есть своя исследовательская область (computing education research). Несколько приёмов из неё, которые легко сделать на нашей платформе.
PRIMM: сначала читать, потом писать
Методика PRIMM (Сью Сентанс и соавторы[10]) — пять шагов работы с кодом:
- Predict — предскажи, что выведет код, не запуская его.
- Run — запусти и сравни с предсказанием.
- Investigate — разберись, как он работает: что будет, если поменять эту строку?
- Modify — измени код под новую задачу.
- Make — напиши похожую программу с нуля.
У нас: Predict — тест «что напечатает этот код?», Run и Investigate — пример в теории, Modify — задача с рабочей заготовкой, которую нужно изменить, Make — задача с пустым редактором.
Задачи Парсонса
Ученик получает правильные строки кода в перемешанном порядке и должен расставить их (Parsons и Haden[11]). Синтаксис уже дан, остаётся логика — хороший промежуточный шаг между чтением и написанием. Отдельного типа задачи для этого нет: положите перемешанные строки в заготовку и проверяйте по выводу.
Подписи подцелей
В разобранном примере подпишите не каждую строку, а шаги решения: «1. Читаем данные», «2. Перебираем элементы», «3. Выводим результат». Исследования Лорен Маргулье с коллегами[12] показали, что такие подписи помогают перенести решение на новые задачи: ученик запоминает структуру, а не конкретный код.
Что происходит внутри
Многие ошибки новичков — от неверного представления о том, как выполняется программа: «переменная хранит формулу», «цикл выполняется один раз». Бенедикт дю Булэ назвал упрощённую модель исполнения «условной машиной» (notional machine[13]). Показывайте её явно: таблица значений переменных по шагам, схема «имя → значение», пошаговый разбор цикла.
Самая практичная книга на эту тему — «Teaching Tech Together» Грега Уилсона[14]: она бесплатна и написана для тех, кто учит программированию, не будучи профессиональным педагогом.
Задачи и тесты
Задачи и тесты — не только проверка, но и сам способ учиться. Вот три наиболее подтверждённых эффекта из когнитивной психологии (обзор — Dunlosky и соавторы[15]):
- Практика извлечения. Вспоминать полезнее, чем перечитывать: после теста материал помнится дольше, чем после повторного чтения (Roediger и Karpicke[16]). Поэтому тест после теории — обязательная часть урока, а не формальность.
- Интервальное повторение. Повторение с перерывами работает лучше, чем подряд (Cepeda и соавторы[17]). Возвращайте старые темы в задачах поздних модулей: в задаче про словари пусть пригодится цикл из второго модуля.
- Чередование. Задачи разных типов вперемешку учат выбирать подходящий приём, а не повторять последний (Rohrer и Taylor[18]). В итоговой задаче модуля не говорите, какую тему применять.
Хороший тест с вариантами
- Неверные варианты — это типичные ошибки учеников, а не очевидная ерунда. Тогда выбор неверного ответа говорит, какое заблуждение у ученика.
- Пояснение к ответу объясняет, почему так, — это и есть обратная связь.
- Вопросы «что напечатает код» лучше вопросов «как называется оператор»: они проверяют понимание, а не память на термины.
Хорошая задача с автопроверкой
- Условие проверяет ровно то, что объяснили в уроке (согласование).
- Сообщение о проваленном тесте помогает: «для пустого списка ожидали 0, получили None», а не просто «неверно».
- Тесты не дают подогнать ответ под один пример.
Как всё это технически собрать — в справке «Задачи с автопроверкой кода».
Особенности онлайн-обучения
Онлайн-ученик учится один, в любое время и бросает тихо — просто перестаёт заходить. Что с этим делать, подсказывают две известные модели.
Модель Community of Inquiry (Garrison, Anderson и Archer[19]) выделяет три «присутствия», без которых онлайн-обучение не складывается:
- Преподавательское — чувствуется, что курс ведёт человек: понятная структура, ваш голос в тексте, ответы на жалобы и вопросы.
- Социальное — ученик не один: сообщество, обсуждения.
- Познавательное — ученик думает и решает, а не только читает.
Пятиступенчатая модель Джилли Салмон[20] описывает путь онлайн-ученика: освоиться и мотивироваться → найти своих → обмениваться информацией → строить знания → развиваться самостоятельно. Первые шаги важнее всего: если ученик не разобрался, как всё устроено, дальше он не пойдёт.
Выводы для курса:
- Быстрый первый успех. В первом уроке ученик уже запускает свой код и получает «решено».
- Короткие уроки. Урок, который проходится за 15–20 минут, легче вписать в день.
- Отвечайте на жалобы. Жалоба на урок — бесплатное тестирование курса. Быстрый ответ — и есть преподавательское присутствие.
XP, уровни и стрики на платформе поддерживают привычку, но не заменяют интересную задачу. Геймификация — это игровые элементы в неигровом контексте (Deterding и соавторы[21]), и она работает, только если под ней есть содержательная учёба.
Технологии и ИИ
SAMR: что технология меняет в задании
SAMR (Рубен Пуэнтедура) делит использование технологий на четыре уровня: замена (Substitution) — то же, что на бумаге; улучшение (Augmentation) — то же, но с новыми удобствами; преобразование (Modification) — задание заметно меняется; переосмысление (Redefinition) — то, что без технологии невозможно. Модель популярна, но научных проверок у неё мало[22], поэтому пользуйтесь ей как вопросом к себе, а не как стандартом: «технология в этом уроке что-то меняет или просто переносит учебник на экран?»
Автопроверка кода — пример преобразования: ученик получает обратную связь за секунды и может пробовать, пока не получится. Видео, повторяющее текст урока, — замена.
TPACK: какие знания нужны преподавателю
Ли Шульман ещё в 1986 году заметил[29]: знать предмет и знать педагогику по отдельности недостаточно. Нужно особое знание на их стыке — как объяснять именно этот предмет, какие ошибки в нём типичны и какие примеры срабатывают. Он назвал его педагогическим знанием содержания (PCK). Пунья Мишра и Мэтью Кёлер добавили третью составляющую — технологию — и получили модель TPACK (Technological Pedagogical Content Knowledge[23]).
В модели три базовых вида знаний и четыре их пересечения. Хороший урок рождается в центре, где сходятся все три.
| Знание | Что это | Пример у нас |
|---|---|---|
| CK — предмет | Само содержание | Вы знаете, как работают списки в Python |
| PK — педагогика | Как люди учатся вообще | Практика извлечения, разобранные примеры, обратная связь |
| TK — технология | Как работают инструменты | Редактор урока, тесты, автопроверка, ИИ-помощник |
| PCK — педагогика предмета | Как учить именно этому | Новички путают изменение списка и создание нового — нужен пример, который это показывает |
| TCK — технология и предмет | Как инструмент меняет сам предмет | В песочнице нет интернета и файлов — задачу формулируем через ввод и вывод |
| TPK — технология и педагогика | Какой инструмент под какую учебную цель | Тест — проверить понимание, задача с автопроверкой — дать потренироваться с мгновенной обратной связью |
| TPACK — всё вместе | Урок, где содержание, метод и инструмент работают друг на друга | Тест «что напечатает код» ловит путаницу со списками, задача с заготовкой даёт её исправить, сообщение теста объясняет, где ошибка |
Чаще всего у авторов курсов сильнее всего CK: они отлично знают язык. Слабое место — PCK, знание того, где новички спотыкаются. Его можно быстро нарастить: посмотрите в «Аналитике» задачи, где много попыток и мало решивших, прочитайте жалобы и вопросы к ИИ. Это и есть карта типичных ошибок вашего предмета.
Вопросы к себе при подготовке урока:
- Что в этой теме новички понимают неправильно? (PCK)
- Какой из наших инструментов лучше всего поймает это заблуждение — тест, задача, пример в теории? (TPK)
- Что ограничения платформы меняют в задаче — и не проверяю ли я в итоге умение обойти песочницу вместо темы урока? (TCK)
Учтите и критику: составляющие TPACK на практике трудно разделить и измерить, исследователи до сих пор спорят о границах между ними[30]. Это не стандарт, а полезная карта: она подсказывает, какого знания не хватает, когда урок «не идёт».
ИИ-помощник
ИИ-помощник в уроке объясняет и подсказывает, но не заменяет ваше объяснение. Урок должен быть понятен без него. Если ученики часто спрашивают ИИ об одном и том же месте — значит, это место урока стоит переписать.
Доступность и понятный язык
Вместо подстройки под «тип ученика» (см. мифы) работает другой подход — универсальный дизайн обучения (UDL, CAST[24]): давать всем несколько способов понять материал, включиться в него и показать результат. Схема плюс текст плюс код — понятнее любой из трёх частей по отдельности, и не важно, кто «визуал».
- Код — текстом, а не картинкой: его можно скопировать и найти поиском.
- У схем и картинок — подпись, что на них.
- Короткие предложения, термин — с объяснением при первом появлении.
- Обращение на «ты» или «вы» — одно на весь курс.
Мифы, на которые мы не опираемся
Эти идеи широко распространены, но исследования их не подтверждают. Не стройте на них курс и не повторяйте их ученикам.
- Стили обучения («визуалы, аудиалы, кинестетики», VARK, «типы по Юнгу» и MBTI в обучении). Обзор Pashler и соавторов[25] не нашёл убедительных доказательств, что подача под «стиль» ученика улучшает результат. Способ подачи надо выбирать под содержание: схему алгоритма лучше показать, а код — дать попробовать.
- «Пирамида обучения» с процентами («запоминаем 10% прочитанного и 90% сделанного»). У этих цифр нет источника; их приписали «конусу опыта» Эдгара Дейла, в котором процентов не было[26].
- «Левополушарные и правополушарные люди». Крупное исследование снимков мозга не нашло, что у людей «доминирует» одно полушарие[27].
- «Мы используем 10% мозга». Работают все отделы мозга, просто не все одновременно.
Чек-лист перед публикацией
- У каждого модуля 2–4 цели с глаголами «напишет», «найдёт», «сравнит».
- К каждой цели есть задача или вопрос, которые её проверяют.
- Задачи модуля поднимаются по уровням Блума, а не стоят на одном.
- Один урок — одна новая идея, 5–10 минут чтения теории.
- Перед самостоятельной задачей был разобранный пример.
- После теории — тест на понимание, неверные варианты — типичные ошибки.
- У ответов тестов есть пояснения.
- Подсказки в заготовках уменьшаются от начала модуля к концу.
- Поздние модули возвращают темы ранних.
- В первом уроке ученик запускает свой код и получает «решено».
- Код — текстом, у картинок есть подписи, нет украшательств.
- Вы сами прошли курс как ученик: все задачи решаются.
После запуска: как понять, что курс работает
Дональд Киркпатрик предложил оценивать обучение на четырёх уровнях[28]: понравилось ли → научились ли → применяют ли → какой результат. Нам доступны первые два, и смотреть их стоит регулярно:
- Учительская → «Аналитика» → курс. Средний процент прохождения и таблица сложности задач: где много попыток и мало решивших — там объяснение не сработало или задача проверяет не то.
- «Жалобы». Повторяющиеся жалобы на один урок — первый кандидат на переписывание.
- «Сообщество» — вопросы и отзывы учеников.
Курс — не книга, которую издали и забыли. Лучшие курсы переписываются по данным учеников несколько раз.
Термины, которые встретите
| Термин | Что это |
|---|---|
| ADDIE | Классический цикл разработки курса: анализ → проектирование → разработка → внедрение → оценка |
| Instructional design | Педагогический дизайн — проектирование обучения, всё, о чём эта страница |
| SCORM, xAPI | Технические стандарты: как упаковать курс и передавать результаты между системами обучения. Не методики. Курсы у нас собираются в своём редакторе, эти форматы не нужны |
| Формирующее и итоговое оценивание | Проверка «по ходу», чтобы помочь учиться (тесты в уроке), и проверка «в конце», чтобы зафиксировать результат (итоговая задача) |
| Скаффолдинг | «Строительные леса» — временная поддержка (заготовка, подсказка), которую постепенно убирают |
| Зона ближайшего развития | Понятие Льва Выготского: то, что ученик пока не может сам, но может с помощью. Задачи должны попадать сюда — не слишком легко и не непосильно |
Что почитать
Если начинать с одной книги — Teaching Tech Together Грега Уилсона. Если с одной статьи — обзор техник обучения Dunlosky и соавторов. Остальное — по интересу.
- Anderson L. W., Krathwohl D. R. (ред.). A Taxonomy for Learning, Teaching, and Assessing: A Revision of Bloom’s Taxonomy of Educational Objectives. Longman, 2001.
- Wiggins G., McTighe J. Understanding by Design. 2-е изд. ASCD, 2005.
- Biggs J. Enhancing teaching through constructive alignment. Higher Education. 1996. Vol. 32. P. 347–364.
- Merrill M. D. First principles of instruction. Educational Technology Research and Development. 2002. Vol. 50, № 3. P. 43–59.
- Gagné R. M. The Conditions of Learning. Holt, Rinehart and Winston, 1965 (и последующие издания).
- Sweller J. Cognitive load during problem solving: Effects on learning. Cognitive Science. 1988. Vol. 12, № 2. P. 257–285.
- Sweller J., Cooper G. A. The use of worked examples as a substitute for problem solving in learning algebra. Cognition and Instruction. 1985. Vol. 2, № 1. P. 59–89.
- Kalyuga S., Ayres P., Chandler P., Sweller J. The expertise reversal effect. Educational Psychologist. 2003. Vol. 38, № 1. P. 23–31.
- Mayer R. E. Multimedia Learning. 3-е изд. Cambridge University Press, 2020.
- Sentance S., Waite J., Kallia M. Teaching computer programming with PRIMM: a sociocultural perspective. Computer Science Education. 2019. Vol. 29, № 2–3. P. 136–176.
- Parsons D., Haden P. Parson’s programming puzzles: a fun and effective learning tool for first programming courses. Proceedings of the 8th Australasian Computing Education Conference (ACE). 2006.
- Margulieux L. E., Guzdial M., Catrambone R. Subgoal-labeled instructional material improves performance and transfer in learning to develop mobile applications. Proceedings of ICER. 2012.
- du Boulay B. Some difficulties of learning to program. Journal of Educational Computing Research. 1986. Vol. 2, № 1. P. 57–73.
- Wilson G. Teaching Tech Together. CRC Press, 2019. Бесплатно онлайн: teachtogether.tech.
- Dunlosky J., Rawson K. A., Marsh E. J., Nathan M. J., Willingham D. T. Improving students’ learning with effective learning techniques. Psychological Science in the Public Interest. 2013. Vol. 14, № 1. P. 4–58.
- Roediger H. L., Karpicke J. D. Test-enhanced learning: Taking memory tests improves long-term retention. Psychological Science. 2006. Vol. 17, № 3. P. 249–255.
- Cepeda N. J., Pashler H., Vul E., Wixted J. T., Rohrer D. Distributed practice in verbal recall tasks: A review and quantitative synthesis. Psychological Bulletin. 2006. Vol. 132, № 3. P. 354–380.
- Rohrer D., Taylor K. The shuffling of mathematics problems improves learning. Instructional Science. 2007. Vol. 35. P. 481–498.
- Garrison D. R., Anderson T., Archer W. Critical inquiry in a text-based environment: Computer conferencing in higher education. The Internet and Higher Education. 2000. Vol. 2, № 2–3. P. 87–105.
- Salmon G. E-moderating: The Key to Teaching and Learning Online. Routledge, 2000 (и последующие издания).
- Deterding S., Dixon D., Khaled R., Nacke L. From game design elements to gamefulness: defining “gamification”. Proceedings of MindTrek. 2011.
- Hamilton E. R., Rosenberg J. M., Akcaoglu M. The Substitution Augmentation Modification Redefinition (SAMR) model: a critical review and suggestions for its use. TechTrends. 2016. Vol. 60. P. 433–441.
- Mishra P., Koehler M. J. Technological pedagogical content knowledge: A framework for teacher knowledge. Teachers College Record. 2006. Vol. 108, № 6. P. 1017–1054.
- CAST. Universal Design for Learning Guidelines. udlguidelines.cast.org.
- Pashler H., McDaniel M., Rohrer D., Bjork R. Learning styles: Concepts and evidence. Psychological Science in the Public Interest. 2008. Vol. 9, № 3. P. 105–119.
- Subramony D., Molenda M., Betrus A., Thalheimer W. The mythical retention chart and the corruption of Dale’s Cone of Experience. Educational Technology. 2014. Vol. 54, № 6. P. 6–16.
- Nielsen J. A., Zielinski B. A., Ferguson M. A., Lainhart J. E., Anderson J. S. An evaluation of the left-brain vs. right-brain hypothesis with resting state functional connectivity magnetic resonance imaging. PLOS ONE. 2013. Vol. 8, № 8. e71275.
- Kirkpatrick D. L., Kirkpatrick J. D. Evaluating Training Programs: The Four Levels. 3-е изд. Berrett-Koehler, 2006.
- Shulman L. S. Those who understand: Knowledge growth in teaching. Educational Researcher. 1986. Vol. 15, № 2. P. 4–14.
- Graham C. R. Theoretical considerations for understanding technological pedagogical content knowledge (TPACK). Computers & Education. 2011. Vol. 57, № 3. P. 1953–1960.
Для учеников у нас есть короткая памятка «Как учиться на sudoteach» — она опирается на те же исследования. Можно давать на неё ссылку в первом уроке курса.