Тренажёр Python Задания, автопроверка, журнал
Учитель заводит класс и выдаёт задания, ученик пишет код прямо в браузере, а тесты проверяют решение сами. Python исполняется на стороне ученика — ставить на школьные компьютеры ничего не нужно.
| Ученик | 1 | 2 | 3 | 4 |
|---|---|---|---|---|
| Абрамова А. | ✓ | ✓ | ✓ | • |
| Волков Д. | ✓ | ✓ | ✗ | |
| Гусева М. | ✓ | ✓ | ✓ | ✓ |
| Дроздов И. | ✓ | • |
Кому и зачем
Обычный тренажёр учит одного человека. Этот — ведёт класс
Проверяет не учитель, а тесты
К заданию прикладываются тесты: входные данные и ожидаемый вывод. Ученик жмёт «Проверить» и сразу видит, что не сходится, — а учителю не приходится читать тридцать почти одинаковых программ.
Скрытые тесты
Часть тестов ученику не видна. Программу, подогнанную под один пример из условия, это отсекает сразу.
Журнал класса
Одна таблица: кто какое задание сдал, кто застрял. Видно код каждой попытки, а не только оценку.
Не только код
Кроме задач на программирование — тесты с выбором ответа: теория, синтаксис, чтение чужого кода.
Логины ученикам — списком
Учитель вставляет список фамилий, платформа выдаёт логины и PIN-коды одной таблицей на печать. Почта и личные данные детей не нужны.
Уроки переносятся файлом
Готовый курс выгружается и загружается JSON-ом: можно поделиться с коллегой или перенести на другой сервер.
Выберите решение и прогоните тесты
Три ответа на одну задачу — такие и приходят от класса. Открытые тесты ученик видит и отлаживается по ним, скрытые узнаёт только по вердикту.
Стенд проверки требует JavaScript. Сам тренажёр с редактором кода и автопроверкой открывается кнопкой ниже.
Здесь вердикты заранее записаны — стенд показывает логику проверки, а не выполняет Python. В самом тренажёре код ученика по-настоящему исполняется у него в браузере.
Что внутри
Python в браузере
Настоящий CPython, собранный в WebAssembly (Pyodide)
- Ничего не ставить на ПК
- Код не уходит на сервер
- Работает и дома
Тесты к заданию
Открытые — для отладки, скрытые — для честной сдачи
- Ввод и ожидаемый вывод
- Мгновенный вердикт
- Видно, что не сошлось
Журнал и классы
Успеваемость всего класса на одном экране
- Прогресс по каждому
- Код любой попытки
- Отметка о списывании
Уроки и темы
Курс из тем, уроков и заданий; выдача — по классам
- Свой порядок заданий
- Бонусные задачи
- Импорт и экспорт
Как начать вести класс
Зарегистрируйтесь учителем
Нужен только логин и пароль — ни почты, ни телефона
Заведите класс и учеников
Вставьте список фамилий: логины и PIN-коды платформа выдаст сама, одной таблицей
Соберите урок с заданиями
К каждой задаче добавьте тесты — часть открытыми, часть скрытыми
Выдайте урок классу
Ученики входят по логину и PIN и решают; результаты сходятся в журнал
Как учить программированию целым классом
Почему проверка «глазами» не масштабируется
Первая же самостоятельная работа по программированию упирается в арифметику: тридцать учеников, у каждого своя программа на пятнадцать строк, и каждую надо прочитать, запустить в голове и найти, где мысль свернула не туда. На один класс это час работы, на пять классов — вечер. Именно поэтому программирование в школе часто сводится к переписыванию примеров с доски: проверить переписанное быстро, а проверить придуманное — долго.
Автопроверка снимает ровно эту часть. Тест — это пара «что подали на вход» и «что должно получиться на выходе»; программа ученика запускается на всех тестах, и ученик видит результат сам, до сдачи. Учителю остаётся то, ради чего он и нужен: разобрать с застрявшим, почему не сходится. Журнал показывает, у кого какое задание зачтено, а у кого решение не проходит третий тест уже пятую попытку — это и есть список тех, к кому стоит подойти.
Открытые и скрытые тесты: зачем делить
Открытые тесты ученик видит целиком — с входными данными и ожидаемым ответом. Они нужны для отладки: непонятно, почему не сходится, — посмотри, на каком именно наборе. Без них проверка превращается в угадайку, а ученик злится на «красную кнопку», которая ничего не объясняет.
Скрытые тесты решают другую задачу. Программу можно подогнать под конкретный пример из условия — вплоть до «напечатать 15», — и открытые тесты она пройдёт. Скрытые ломают этот путь: подгонять не под что. Заодно они ловят честные, но неполные решения — те, где не продуман граничный случай: пустой ввод, ноль, единственный элемент. В стенде выше это показывает третье решение: рекурсия работает на обоих примерах из условия и разваливается на n = 0.
Почему Python исполняется в браузере
Обычно тренажёры с проверкой кода запускают программы ученика на сервере — и это две проблемы сразу: чужой код надо изолировать, чтобы он не положил машину, а на тридцать одновременных запусков нужны ресурсы. Здесь код выполняется прямо в браузере ученика: Pyodide — это настоящий CPython, собранный в WebAssembly. Сервер хранит задания, тесты и журнал, но чужой код не исполняет.
Для школы у этого есть практическое следствие: на компьютеры в кабинете не нужно ставить ни Python, ни IDE, ни расширения — а значит, не нужно и договариваться с тем, у кого есть права администратора. Работает на школьных машинах, на домашнем ноутбуке и на планшете одинаково. Оборотная сторона честная: первый запуск подгружает интерпретатор, это несколько секунд и заметный объём трафика, поэтому на уроке лучше открыть тренажёр заранее, а не по звонку.
Часто задаваемые вопросы
Нужно ли ставить Python на школьные компьютеры? expand_more
Код учеников уходит на сервер? expand_more
Какие данные детей нужны? expand_more
Что мешает списать? expand_more
Можно ли давать не только задачи на код? expand_more
Для каких классов подходит? expand_more
Это бесплатно? expand_more
Готовы завести класс?
Регистрация занимает минуту: логин, пароль — и можно собирать первый урок
rocket_launch Открыть тренажёр open_in_new