← Все статьи

Карта вместо списка: как превратить курс в Moodle в путешествие

Карта вместо списка: как превратить курс в Moodle в путешествие

Курс в Moodle почти всегда выглядит одинаково: длинный список разделов, внутри — ссылки на тесты, файлы и задания. Ученик видит, что ему нужно сделать, но не видит, куда он идёт, сколько уже прошёл и почему шаги стоят именно в таком порядке.

Я попробовал заменить этот список картой. Не просто картинкой поверх курса, как иногда поступают от безысходности, а живой картой: точки на ней открываются и закрываются по правилам Moodle, а пройденные шаги отмечаются сами. Когда мы показали прототип заказчику, первая реакция была «а что, так тоже можно?».

В этой статье — три такие карты для трёх разных логик курса, как они устроены и что нужно настроить в Moodle, чтобы сделать такую же.

Демо-галерея: https://demo.el-blog.ru/ — все три карты можно покликать в гостевом режиме (отметки сохраняются только в вашем браузере) или зарегистрироваться и пройти курсы в роли ученика.

Чем плох список

Список разделов хорошо отвечает на вопрос «что тут есть». Но у ученика другие вопросы:

  • Где я сейчас? В списке все пункты выглядят одинаково. Галочки выполнения есть, но их надо искать глазами.

  • Что дальше? Закрытые шаги либо скрыты, либо показаны серым с длинным текстом условий.

  • Почему в таком порядке? Список всегда линеен. Даже если методист задумал свободный порядок или выбор из двух веток, ученик видит одну длинную ленту.

  • Сколько осталось? Процент прохождения виден в личном кабинете, а не на странице курса. И он ничего не говорит о том, что ждёт на финише.

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

Главная идея: Moodle — движок, карта — витрина

Несмотря на кажущуюся кастомность курса, вся логика остаётся в Moodle, в тех же настройках, что и в обычном курсе:

  • Отслеживание выполнения решает, когда шаг считается пройденным.

  • Ограничения доступа решают, когда шаг открывается: по дате, после другого шага, по оценке.

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

Обмануть карту нельзя. Закрытый шаг не откроется даже по прямой ссылке: его закрывает сам Moodle, а не рисунок. Время тоже берётся с сервера, так что перевод часов на компьютере ничего не даст.

Тему можно менять, не трогая логику. Тот же курс можно показать как восхождение на гору или как путешествие по тропе — меняется только файл оформления. А одно оформление подойдёт курсам на совсем разные темы, если у них одинаковая логика прохождения.

Три логики — три карты

Вид карты задаёт не тема курса, а то, как его проходят. В галерее три самых частых варианта.

Восхождение: шаг за шагом

Курс адаптации новичка на 30 дней нарисован как подъём на гору. Базовый лагерь — знакомство с компанией, дальше шесть лагерей: культура, рабочие инструменты, безопасность, команда, первая задача, разговор с наставником. На вершине — итоги испытательного срока.

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

Архипелаг: в любом порядке

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

Итоговая практика — маяк. Он загорается, когда пройдены любые 4 острова из 6: на карте в этот момент буквально начинает крутиться луч света. До этого подпись под маяком показывает «2 из 4». Подходит для тренингов навыков и библиотек модулей, где важнее охват, чем порядок.

Метро: с выбором ветки

Курс по работе с данными нарисован как схема метро. Синяя ветка «Основы» ведёт к пересадке «Чистые данные». Оттуда расходятся две ветки: красная «Аналитика» и зелёная «Визуализация». На конечную станцию «Проект» можно приехать по любой из них.

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

Что общего у всех трёх

  • Три состояния точки: закрыта, открыта (медленно пульсирует), пройдена.

  • Карточка шага: по нажатию — описание, время и формат задания, кнопка перехода. У закрытого шага — объяснение: «Откроется после «Моя команда»» или «Откроется 15 декабря · через 3 дня».

  • Панель прогресса: столько-то из стольких и цели с наградами — значок за половину пути, сертификат за финиш.

  • Телефон: на узком экране карта перестраивается вертикально, а не сжимается до нечитаемого размера.

Как это работает под капотом

Карта состоит из трёх слоёв, и только первый из них решает, что ученику можно, а что нельзя.

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

Движок — небольшой скрипт. Он спрашивает у Moodle состояние курса через тот же встроенный сервис, которым Moodle строит оглавление курса (core_courseformat_get_state). В ответ приходит, какие элементы ученик видит и какие уже выполнил. Когда ученик возвращается на вкладку с картой после задания, скрипт спрашивает ещё раз — и новая точка «оживает» без перезагрузки страницы.

Оформление — отдельный файл с фоном, маркерами и координатами точек. Это шаблон: в «Горе» 8 мест под лагеря, в «Архипелаге» — порт, 6 островов и маяк, в «Метро» — 8 станций. Чтобы сделать новую карту на готовом шаблоне, достаточно поменять тексты шагов — рисовать ничего не нужно.

Что настроить в Moodle

Большая часть работы — это хорошо собранный курс, а не код. Порядок такой:

  1. По элементу на каждую точку карты. Тест, задание, страница, форум, H5P — неважно. Если в шаге несколько элементов, карта следит за главным, например за итоговым тестом.

  2. Отслеживание выполнения у каждого такого элемента. Именно по нему точка становится пройденной. Условие выбираете вы: просмотр, отправленная попытка, проходной балл.

  3. Ограничения доступа под логику карты:

    • шаг за шагом — условие «Выполнение элемента» с предыдущим шагом;

    • одна из двух веток — набор условий с переключателем «любое из»;

    • «4 из 6» — шаги в одной категории журнала оценок по 1 баллу, и условие «Оценка» за эту категорию не ниже 66,67 %;

    • по календарю — условие «Дата».

  4. Режим отображения ограничений — «показывать серым», а не «скрывать». Иначе Moodle не расскажет о закрытом шаге, и карте нечего будет показать.

  5. Место для карты. В первом разделе курса — элемент «Текст и медиа» («Пояснение»), в нём через кнопку «Исходный код» одна строка вида <div id="course-map-onboarding">.

  6. Движок и оформление. Администрирование → Внешний вид → Дополнительный HTML → «Перед закрытием BODY». Скрипт срабатывает только на странице, где есть место для карты, остальные страницы не затрагивает.

  7. Связка точек с элементами. В настройках карты у каждого шага указывается номер элемента курса — число из его ссылки …/view.php?id=123.

Проверить себя удобно в демо-режиме: если добавить к адресу курса &cmdemo=1, карта перестанет слушать Moodle и позволит отмечать шаги вручную. Удобно, чтобы показать заказчику, как будет выглядеть курс в середине пути.

Ограничения

Прежде чем приступить к работе над своим суперкурсом, стоит проверить пять вещей.

  • Нужен доступ администратора. «Дополнительный HTML» — настройка всего сайта. Преподаватель с правами только на курс поставить карту сам не сможет — понадобится администратор сайта.

  • Нужен Moodle 4.0 или новее. Сервис, через который карта узнаёт состояние курса, появился только в четвёртой версии. На 3.x карта в таком виде не заработает.

  • Правила живут в двух местах. В настройках карты они нужны для подписей «Откроется после…», а реально шаги закрывает Moodle. Если поменять условие только в одном месте, доступ останется верным, но подпись будет врать.

  • «4 из 6» — обходной путь. В Moodle нет условия «выполнено N из M», поэтому приходится считать через журнал оценок. Это требует аккуратной настройки категорий и стоит проверить на своём сайте до запуска.

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

Как выбрать карту для своего курса

Начинайте не с темы, а с вопроса: как ученик движется по курсу? Ответ подскажет форму карты, а тему потом можно подобрать любую.

Как движется ученик

Форма карты

Условие в Moodle

Для каких курсов

Строго по порядку

Тропа, гора, линия метро

«Выполнение элемента»

Адаптация, охрана труда, марафоны

В любом порядке, финал после N шагов

Острова, районы города, карта сокровищ

«Оценка» за категорию

Тренинги навыков, библиотеки модулей

Общая база, дальше выбор

Метро, дерево навыков

Набор условий «любое из»

Программы по ролям и уровням

По календарю

Адвент-календарь, смена сезонов

«Дата»

Сезонные активности, ежедневные практики

Одна и та же форма одинаково хорошо подойдёт курсу по продажам, по истории или по кибербезопасности. Адаптацию можно нарисовать как гору, а можно — как план офиса с кабинетами; логика останется той же.

Что дальше

Это первая статья серии «Moodle на 200%» — о том, как выжать из обычного Moodle больше, чем файлы и тесты. В следующих статьях:

  • шесть типов карт курса и как выбрать свой — подробнее, чем таблица выше;

  • как настроить ограничения и отслеживание выполнения так, чтобы карта ожила, — пошагово и без кода;

  • как делать красивые страницы в редакторе Moodle без единой строки CSS.

Попробуйте карты сами: https://demo.el-blog.ru. Если хотите такую карту для своего курса или научиться делать такие карты самостоятельно — напишите мне.