ItCube — Releases
Changelog und Versionsgeschichte.
v2.1.0
LatestПанель управления с аналитикой и кабинет родителя
Панель управления
- Задачи, отсортированные по доле решивших снизу вверх: показывает не активность, а тему, которую стоит переобъяснить
- Посещаемость по неделям и по группам, сдачи работ по дням, разбивка по языкам
- Вопросы теста с самой низкой долей верных ответов
- Считается запросами с группировкой, графики нарисованы разметкой — библиотеки ради двух диаграмм в проекте нет
Управление
- Люди с фильтром по роли и поиском, заведение и правка учётных записей
- Группы вместе с расписанием и составом
Кабинет родителя
- Посещаемость, результаты, расписание и контрольные своих детей
- Кода ребёнка родитель не видит намеренно: разбор решения — дело преподавателя
- Связь взрослого с ребёнком многие-ко-многим: у ребёнка бывает двое взрослых, у взрослого двое детей в разных группах
Найдено тестами
- Пароль ехал в общем массиве данных, и правка профиля с пустым полем обнулила бы его
- Контроллер групп обращался к полю slug, которого в форме нет: любое сохранение падало бы
v2.0.0
Второе рождение: Laravel, проверка кода, три языка
Заново
- Переписано с процедурного PHP 2023 года на Laravel 13; от старой версии осталась только предметная область
- Преподаватель и ученик теперь в одной таблице с ролью полем, вместо двух таблиц и двух входов
- Отметка посещаемости привязана к группе: в старой схеме у ходящего на два направления день был неразличим
- Ученик может числиться в нескольких группах, а не в одной
Задачи с кодом
- Четырнадцать языков: Python, JavaScript, TypeScript, PHP, C, C++, Java, C#, Go, Rust, Ruby, Паскаль, SQL, Bash
- Проверка по нескольким наборам данных, у каждого свой вход, ответ и баллы
- Скрытые наборы: видно только «сошёлся или нет», без входа и без ожидаемого ответа
- Редактор с отступом по Tab, номерами строк и запуском на своём вводе
- Проверка идёт в очереди: замер показал, что пять кейсов на Go занимают около минуты
Тесты и контрольные
- Тесты с таймером, который сам отправляет ответы по истечении времени
- Контрольная собирает тесты и задачи в одну работу с окном сдачи
- Ведомость приводит балл каждой работы к назначенному ей весу и считает по лучшей попытке
Язык
- Русский, английский и немецкий; ключ перевода — сама русская строка
- Команда lang:check сверяет словари с кодом, тесты не дают им разъехаться