Русский
Русский
English
Статистика
Реклама

Образование 2.0

Прокторинг на стероидах, или как контролировать онлайн-экзамены

20.04.2021 10:21:38 | Автор: admin

Недавно ProctorEdu и КРОК запустили систему для контроля онлайн-тестирования на экономическом факультете МГУ. Она помогает наблюдать за студентами, которые сдают экзамен.

Эта система подсвечивает нарушения, подсказывает, на кого и на что обратить внимание. В результате один преподаватель может контролировать разом несколько десятков студентов, сидящих у себя дома.

Такой подход к онлайн-обучению, прокторинг, первыми внедрили Coursera и Udemy. Разработчики ProctorEdu задумали собственную систему прокторинга в 2016 году именно для учебных заведений, но вскоре поняли, что она способна решать другие, более серьезные задачи.

В конце концов, многие хотя бы раз в жизни списывали в школе или вузе, и мир до сих пор не рухнул, но в некоторых ситуациях жульничество на экзаменах приводит к серьезным последствиям.

Взять тестирование на знание основ информационной безопасности. Сотрудники уязвимое звено в защите любой компании, и было бы действительно здорово, если бы все они выучили базовые меры предосторожности. Возможно, тогда бы Uber не оштрафовали на $1.2 млн. за утечку персональных данных, и не произошло скандала со взломом Twitter.

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

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

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

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

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

Как это работает

Во время экзамена ProctorEdu ведет запись с камеры, микрофона и экрана компьютера.

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

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

Обычно, когда алгоритм фиксирует нарушения, например, теряет человека из виду, система сначала выводит на экран предупреждение. Если участник не реагирует, ProctorEdu приостанавливает тестирование, до тех пор, пока он не исправится. При этом делается отметка о нарушении регламента, к которой можно вернуться позже при просмотре видеозаписи экзамена.

На основе нарушений по формуле рассчитывается рейтинг достоверности результатов экзамена.

E [0, 100] оценка доверия (если E < 0, то E = 0), xk усредненное за сеанс значение метрики k, wk весовой коэффициент метрики k, M {b1,b2,c1,c2,...} метрикиE [0, 100] оценка доверия (если E < 0, то E = 0), xk усредненное за сеанс значение метрики k, wk весовой коэффициент метрики k, M {b1,b2,c1,c2,...} метрики

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

Протокол сеанса в PDF-форматеПротокол сеанса в PDF-формате

ProctorEdu может работать в полностью автоматическом режиме, передавать рейтинг в систему тестирования, которая аннулирует результаты с низким рейтингом достоверности. Но для большей объективности обычно приглашают живого проктора. Он может просматривать записи участников с низким рейтингом доверия уже после экзамена, а может участвовать в нем с самого начала.

В таком сценарии проктор может эффективно контролировать до 30 участников. Ему практически не нужно вмешиваться в ход экзамена. Система сообщает о нарушениях в реальном времени и подсказывает, на кого из подопечных обратить внимание.

Проктор может развернуть видео на весь экран и приглядеться к происходящему, объяснить участнику, что тот делает не так, предупредить о нарушении, приостановить или досрочно завершить экзамен.

Такая технологическая поддержка облегчает работу проктора, ускоряет проведение онлайн-экзаменов и аттестаций и позволяет сохранить высокую достоверность результатов.

Ограничения браузера и детекция лиц

Запись камеры и экрана, распознавание лиц, логирование клавиатуры Это звучит не секьюрно, поэтому разработчики ProctorEdu сознательно отказались от идеи устанавливать свое ПО на компьютеры участников экзамена.

ProctorEdu работает через браузер при помощи супервизор SDK JavaScript-библиотеки, в которой реализованы алгоритмы машинного обучения.

SDK не требует установки расширений и плагинов. ProctorEdu интегрируется с сервисом онлайн-тестирования при помощи стандарта IMS LTI или нескольких API-команд. Система запускается на странице тестирования и работает параллельно с ним.

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

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

Распознавание лиц в ProctorEdu реализовано при помощи сверточных нейросетей с использованием OpenCV и Dlib. Они регулярно переобучаются на свежесобранных данных. Для детекции лиц используется отдельная модель.

Разработчики с самого начала планировали запустить эти алгоритмы в браузере. Обычно такие задачи решают при помощи компиляции C++ в WebAssembly (Wasm). Считается, что это хорошая практика.

Чисто теоретически Wasm работает быстрее, чем JavaScript сценарий, но на практике выяснилось, что он медленнее, потребляет больше памяти и процессора, весит больше. Только загрузчик такого кода получается от 10 МБ.

Пришлось разрабатывать на JavaScript в несколько итераций. Первые версии были слабенькими и часто ошибались, но со временем команда ProctorEdu добилась стабильной работы и вывела это решение в продакшн.

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

За время обучения нейронка видела достаточно людей разных рас и возрастов, никто не ожидал возникновения такой проблемы. В конце концов выяснилось, что сетка здесь ни при чем, а дело в засветке. Африка просто слишком солнечная.

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

Сейчас разработчики планируют перенести в браузер и алгоритм распознавания лиц. Пока что модель великовата (2030 Мбайт с учетом сжатия), это в то время как все SDK весит около 1 мегабайта. Но здесь стоит постараться и найти решение.

Когда все изображения будут распознаваться в браузере, расходы на хостинг сократятся на добрых 30%. К тому же, на сервер будут передаваться только дескрипторы, по которым нельзя восстановить оригинальное изображение, а фото и документы так и останутся на компьютерах пользователей.

Серверная часть ProctorEdu

Кстати, об архитектуре системы.

Основной компонент ProctorEdu сервер приложений. Он работает на Node.js и занимается обработкой веб-запросов и веб-сокетных соединений. Сервер приложений связан с базой MongoDB. Там хранятся все данные, не являющиеся бинарными объектами. Для файлов, изображений, записей экзаменов предусмотрено отдельное S3-совместимое объектное хранилище.

Архитектура ProctorEdu включает отдельный сервис под API распознавания лиц и документов, и TURN-сервер для координации WebRTC-подключений между компьютерами участников.

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

Вся система поддерживает горизонтальное масштабирование. Ее компоненты упакованы в контейнеры. Их можно разбросать по разным физическим серверам и собрать кластерную конфигурацию в режиме мастер-мастер. Тогда нагрузка будет распределяться равномерно.

Обычно ProctorEdu разворачивают на базе одного из российских хостингов, поддерживающих хранение персональных данных, но систему можно запустить и на локальном сервере, как в проекте с МГУ и КРОК.

Требования к железу невысокие: компьютер с восьмиядерным процессором и 8 ГБ оперативной памяти потянет порядка 500 одновременных сессий. Однажды ProctorEdu обслуживала больше 5 тыс. одновременных участников экзамена и понадобилось всего 6 серверов для обработки клиентских запросов.

Можно ли обмануть систему?

Можно, но не так, как это обычно пытаются сделать.

В торговых сетях, где используют ProctorEdu, часто бывает так, что один сотрудник пытается пройти тесты за весь магазин. Порой пользователи подменяют видео с камеры на какую-нибудь видеотрансляцию. Так, однажды разработчики наблюдали, как тесты по технике безопасности на предприятии проходила известная порноактриса.

Был случай, когда один из участников подготовился особенно серьезно: напечатал чужое фото на листе А4, вырезал глаза, привязал резинку и использовал как маску.

Конечно, это все легко детектируется.

Раньше можно было поставить смартфон перед монитором так, что его не было видно с фронтальной камеры. Казалось, что участник постоянно смотрит только на монитор. Теперь ProctorEdu обеспечивает и боковой обзор. К системе подключается вторая камера или тот же смартфон.

Еще можно попробовать списывать при помощи удаленного рабочего стола или виртуальной машины. Отследить их с вкладки браузера практически невозможно. Чтобы закрыть эту возможность, в систему добавили интеграцию с Safe Exam Browser.

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

Конечно, и это не панацея. Если постараться, Safe Exam Browser можно обмануть. Еще можно раздобыть скрытые наушники или аппаратный сплиттер для мониторов. Любой алгоритм можно обойти, вопрос лишь в том, сколько усилий для этого потребуется. ProctorEdu делает так, чтобы было проще выучить, чем смухлевать. И наши клиенты подтверждают, что система успешно справляется с этой задачей.

Подробнее..

Эксперимент допуск или как студентов уму разуму научить

24.02.2021 08:04:01 | Автор: admin

Чем еще заняться в период пандемии и удаленки, как ни разглагольствованием о великом? У всех нас появилось много свободного времени, которое теперь не обязательно тратить на дорогу, и если кому-то не жалко тратить это время на просмотр сериалов, инстаграм и борьбу с диваном, то мне за первый месяц все это порядком поднадоело и захотелось чего-то продуктивного.

Начитавшись разных статей и книжек про эффективность, а также вдохновившись такими людьми как Стив Джобс сразу хочется пойти и перевернуть этот гребаный мир. Но уж коли никто не хочет дать мне тот самый рычаг, попробуем перевернуть что-то поменьше. Например, нашу закостеневшую систему образования. Ну или не совсем систему, скорее так, маленький ее кусочек, а затем посмотрим на результат. По традиции тренироваться принято на кошечках, а в моем случае на студентах. Эксперимент уже проведен, результат оказался положительным. А благодаря пандемии появилось время об этом написать.

Сразу хотел бы предупредить о двух вещах: во-первых, ни один студент во время экспериментов не пострадал, во-вторых, писать статью я начал еще где-то полгода назад, но мне текст казался сырым, а времени поправить его не было, но в эти выходные все-таки удалось это сделать, и я решил публиковать, иначе еще на полгода зависнет! В общем, эта статья сильно запоздала с выходом (или точнее ее автор запоздал с написанием). Но я лично клинический оптимист, так что надеюсь она все равно будет полезна. Уж если не читателям, то хотя бы автор получит фидбек (стакан же всегда полон, если не водой, то воздухом).

Почти четыре года назад мне довелось стать преподавателем двух предметов в Новосибирском Государственном Университете на Факультете Информационных Технологий. Потом из-за нехватки времени появилось желание отказаться от преподавания одного из них, но лектор попросил оставить хотя бы одну группу. Предмет, на мой взгляд, бесполезный, а введен он был для галочки.

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

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

  1. Git

  2. Jira\Redmine\Trello

  3. Code review

  4. Unit-тестирование

  5. CI\CD

В прошлой статье я подробно рассказывал про эти нововведения, не хотелось бы повторяться. Скажу только, что все эти вещи, как и проведение мини-хаккатона с поеданием пиццы, было решено сохранить и приумножить. Вообще студенты - народ специфический, они хотят только развлекаться, а от них требуют учиться, так вот я всегда говорю, что те, кому удастся найти баланс между первым и вторым самые счастливые люди. Вот и я ставлю своей целью пустить их энергию в нужное русло. И чтобы им было в кайф, надо сделать так, чтобы формат занятий был близок к их привычной среде обитания!

На что вообще клюют студенты-перваки? Надо чтобы было драйвово, интересно, понятно, стильно, модно, молодежно. Кстати, многие аутсорс-компании тоже делают на этом акцент, и мне не верится, что это случайность. Теперь информатика это предмет все обо всем, этакий окружающий мир для программистов.

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

  1. Отменяем лабы и домашки. Пусть все делают на самих парах. Я буду показывать, а они повторять

  2. Оценка должна быть за посещаемость. Иначе вообще никто ходить не будет

  3. Все работы делаются вubuntu. На выбор студентов можно установить ее себе на ноут, можно пользоватьсяVirtualBoxилиWSL

  4. Все, что делают студенты должно быть наглядно. Им это нравится. Круто же когда ты увидел не чиселки в консоли, а открыл самостоятельно настроенный сайт в браузере. Магия должна быть видна невооруженным взглядом

  5. Стоит сделать акцент на таких вещах какNPMиyeoman, они просты и в то же время позволяют делать сложные вещи, это опять же должно повысить интерес к самому процессу и приучить ребят работать в консоли

  6. Часть заданий нужно сделать в группах, это повысит ихSoftSkills

Лайфхак. Если хочется расположить людей к себе, их нужно накормить. Для голодных студентов это актуально вдвойне.

Каждую пару я захожу в одну из кофеен, расположенных в универе, и покупаю себе кофе. Я стал периодически покупать большой ЭмЭмДемс и оставлять его на первой парте. Все желающие могли угоститься. И теперь в девять утра полная аудитория довольных студентов. И нет, мне не платили за рекламу m&m's. Да и в принципе за преподавание платят смешные деньги хватает в аккурат заправить полный бак моего крокодила.

Но я не жалуюсь, у меня прекрасная работа, а вот это все - для души! Но в целом, за страну обидно, не должно быть преподавание благотворительностью!Но вернемся к нашим студентам! Взамен старых лабораторных нужно было что-то придумать, и, отталкиваясь от описанных выше принципов, был составлен примерный список заданий. Список был довольно внушительный, но тогда мне казалось, что ребята из НГУ должны были справиться. Пришлось некоторые вещи скорректировать в процессе. Основной критерий тут достаточно прост, если видно, что студентам становится не интересно, то нужно что-то менять.С другой стороны, без завышенных требований не получилось бы узнать максимум.Далее постараюсь кратко, но емко рассказать о самих заданиях и том, как проходил процесс их освоения.

ПоднимаемGitlabна локальной машине.Тогда автору показалось это не слишком сложным (инструкция на сайте есть, команд всего несколько), зато очень впечатляющим, круто, когда на твоей машине поднялся огромный сайт с кучей кнопочек и настроек. Плюс ко всему это хорошо коррелирует с рассказом проGitиCI\CD. Здесь был мой первый промах - студентам оказалось сделать подобные вещи сильно сложно. Задача осложнилось тем, что студенты устанавливали себе разные дистрибутивы, и у кого-то все взлетело сразу, а у кого-то вообще никак не стартовало. В общем, они долго плевались и делали это с неохотой. В следующем году это задание будет выброшено, уж слишком сложно получилось. В следующем году планирую сделать определенный образ убунты вVirtualBox, чтобы выполнив все действия по инструкции, все заработало.

УстанавливаемDockerи делаем то же самое в доккере. Это всего одна команда, и тут ребята должны были понять, для чего этот самый докер нужен, и как сильно он упрощает жизнь (не кидайтесь помидорами, я знаю, как он может усложнить жизнь, но они же пока маленькие, не стоит их сразу пугать.) Надо сказать здесь ребятаточно также разбились на два лагеря: те у кого личные ноутбуки с успехом поддерживаютDocker(это либо те, у кого поддерживаетсяHyper-Vили либо же те, кто пользуетсяUbuntuкак основной системой) и те, кому пришлось долго возиться сDockerToolboxиVirtualBox. Я разрешил тем ребятам, у кого не удалось настроить окружение, просто забить на это задание и посмотреть, как это должно выглядеть у той половины, которой все удалось настроить. Задание с докером не хотелось бы выбрасывать особенно потому, что оно отлично вписывается в рассказ про облачные сервисы на подобииAzureиAmazon.Добиться цели, конечно, удалось, ребята увидели, что множество команд можно заменить одной, если вDockerесть уже готовое решение. Но само задание надо будет доработать напильником.

Создаем проект наApacheCordova.Используем тот жеyeoman, комплим и заливаем результат на телефон. Благо, сейчас это можно сделать достаточно просто и даже без проводов. Здесь снова акцент идет на наглядность. Менять в самом проекте ничего не нужно, ну разве что поиграться с какими-нибудь названиями или заголовками. Это было первое задание, когда у студентов действительно загорелись глаза. В следующем году это задание будет передвинуто в самое начало для большей мотивации.

Создаем проект наAngular. Мы создавали обычныйHelloWorld. Суть в том, чтобы показать студентам процесс создания проекта. Хотелось, чтобы они увидели разные подходы и не испугались, когда их попросят сделать что-то подобное на работе или в универе. Помню, как сам впадал в ступор, когда приходилось делать подобные вещи, потому что в универе привыкаешь к тому, что как правило надо открытьVisualStudio(илиIdea) и нажать кнопочку наGUI-интерфейсе Создать проект. Но не для всего естьGUIинтерфейс, да и не всегда он нужен. Вроде простая истина, но процесс ее осознания достаточно сложный, а для того, чтобы облегчить эту учесть достаточно всего один раз об этом рассказать.

Последние два задания потребовали наличияNodeJsи это хорошо коррелировало с рассказом про консольные скрипты и что их можно писать не только наbashилиpowershell, но такжеpythonили дажеjs. Просто для каждого языка есть свой интерпретатор. Это опять же не делает их знатоками в данных областях, но расширяет их кругозор.

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

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

Еще в силу моей занятости, несколько пар пришлось отменить. Но восстанавливать как-то надо. По традиции сделали мы это наYoutube. Но как сказал один из наших преподавателей про онлайн-образование: Лекция по интернету - это худшее, что могли придумать, я ведь никогда в жизни столько сам с собой не разговаривал. Все-таки тяжко говорить, не видя других лиц и их реакции.

Подводя итоги

Было бы нечестно сказать, что все прошло гладко, скорее здесь был первый блин комом.Я взял достаточно высокую планку, многие вещи студентам были не понятны. Пришлось на ходу переобуваться и менять задания, но думаю в следующем году получится найти баланс между сложностью и заинтересованностью, при котором все будут довольны. Позитивно сказалась работа в группах, индивидуально ребята не могли все осилить, а когда в группе есть 1-2 человека более сильных, то процесс идет лучше. Тут главное не допустить ситуации, когда только эти двое работают, а остальные сидят в телефонах. Еще один прием, который я взял на вооружение, дать ребятам разные задания, а затем сделатьswapи заставить их научить друг друга. Все это повышаетSoftSkills, которые обязательно пригодятся в жизни.

В целом, студенты были довольны предметом. По моим ощущениям, им было куда интереснее, чем прошлые два года. Удалось хоть не на много, но расширить их кругозор и заинтересовать их магией программирования. В начале этого семестра был удивлен тем, что студенты, которых мне довелось учить информатике год назад, сами связались со мной и попросили преподавать у них Объектно-Ориентированное Программирование. Хотя еще на парах по информатике я говорил им, что это две совершенно разные вселенные, на ООП халявы не будет, из-за ООП люди вылетают из универа, но их это не остановило. Что ж, хотят пожестче пускай.

А еще не так давно пара студентов с четвертого курса попросились ходить на пары по тому же ООП. Я опять же не против и добавил этих ребят в общий чатик в ВК, и вот какой получился у них диалог. Все-таки приятно, когда старания не проходят даром!

Касаемо ООП все осталось как и раньше, ничего лучше я придумать не смог. Мы все так же играем в реальную работу, заливаем код вGit, двигаем задачи вTrello, создаем пул-реквесты, используемIoC-контейнеры и пишемUnit-тесты. Подробно об этом я писал в прошлой статье.

Еще как оказалось, если взять ребят, которых я уже учил, им гораздо легче рассказывать про сложные вещи. Они уже более или мене подготовлены, они знают что-то в теории и теперь им можно показать, как оно работает на практике. Можно быть уверенным, что ребята имеют некоторый бэкграунд. В общем, это круто, когда можно не учить с нуля, а продолжить их обучение. Получается, что это уже не два отдельных предмета, а целая система, в которой прошлые школьники вначале получают полезную и легко воспринимаемую информацию, а по мере их взросления коэфициент ответственности растет, и на втором курсе им уже придется пыхтеть изо всех сил. Разве не так и должно быть все устроено в жизни? И мне бы хотелось дать им такие знания и возможности, при которых, если не все, то большая часть дверей для них будет открыта. Опыт оказался весьма интересным, и нужно развивать такие подходы в дальнейшем. Когда удастся все сбалансировать, думаю, будет полезно посмотреть в сторону развития в студентахSoftSkills, но пока это только перспективы. А пока, было бы очень полезно получить фидбек от читателей на тему того, что они думают на этот счет.

Подробнее..

Проектное обучение в университете что это значит на практике?

12.06.2021 20:19:26 | Автор: admin

Вступление

Привет, меня зовут Даниил, я студент второго курса радиофака в УрФУ. Сколько помню свое обучение в универе, у нас постоянно продвигалась концепция проектного обучения. Захотелось рассказать, как оно проходит именно с точки зрения студента.

Индивидуальные образовательные траектории

Все предметы делятся на два типа - обязательные и по выбору

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

Необязательные предметы - это пул курсов, из которого студент должен выбрать дополнительный предмет на следующий семестр. Важно отметить, что выбрать больше или меньше нормы нельзя. Если в программе написано, что нужно выбрать два доп. предмета, то крутись как хочешь, но выбери два. А чтобы выбор был осознанным, проводят стримы, где преподаватели рассказывают о наполнении своего курса и организационных моментах.

Полный список предметов в ИРИТ-РТФПолный список предметов в ИРИТ-РТФ

Даже если на первом курсе ты понял, что кодить это не твое, то у тебя всегда есть шанс попробовать себя в чем-то еще, не переводясь в другой институт. Возможность менять направления очень важна в проектной деятельности.

Окей, а что такое проектное обучение-то?

На каждом курсе есть предмет, который называется "проектный практикум". Это, по мнению нашего вуза и есть проектное обучение. Давайте разбираться как это обучение проходит.

В начале каждого семестра подготавливается список проектов, которые предлагают компании-партнеры вуза. Студенты выбирают понравившийся им проект, работают над нам в течение семестра и на сессии защищают проделанную работу. Отмечу, что можно придумать свой проект и/или продолжать работать над проектом с прошлого семестра (Если разрешит куратор проектного практикума)

В 2019-2020 годах было прям совсем плохо. После выбора проекта ты оставался с ним на один. Не было четких сроков и задач. Куратор проекта редко появлялся и никак не мог повлиять на развитие проекта. В итоге команды придумывали что-то свое, пилили на коленке за неделю до сдачи и защищали как абсолютно новое инновационное решение.

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

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

Проблемы проектного практикума

Постарался расположить в порядке важности

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

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

Третья- нет никакой профессиональной ориентации. Никто не рассказывает о том, какие есть профессии в ИТ и в чем их разница.

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

Пятая - компании присылают "ТЗ" на проект и забивают. Официально, за каждой командой студентов закрепляют куратора от компании, который должен взаимодействовать с ними. На практике до этого "куратора" невозможно достучаться и в итоге все проекты реализовываются, что называется, из головы.

Конечно, с нас собирают обратную связь через всякого рода опросники и общие чаты. Остается надеяться и верить, что наши просьбы будут услышаны.

Возможные варианты решения проблем

Тут я хочу поделиться свои рассуждениями о том, как можно исправить сложившуюся ситуацию.

Что нужно сделать:

Поменять основную метрику - пусть это будет не оценка от преподавателей, а сколько проект смог заработать. Мне кажется, что если ориентировать студентов на прибыльность их проекта, то они лучше разберутся в том как устроен ИТ рынок и научатся работать с реальными потребителями.

Нужно доносить до людей идею, что успешный проект - это не только работа программистов, но и продактов, дизайнеров и т.д. И параллельно с этим открывать курсы о продуктовой разработке.

Рассказывать о всем многообразии профессий в ИТ. Простого курса видосов на эту тему вполне хватит.

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

Вместо заключения

Честно скажу - мне нравится когда у меня есть возможность выбирать предметы и проекты. Я бы не хотел вернуться в старую систему образования, где все решено за тебя. Выбор предметов вкупе с проектами дает возможность попробовать себя в разных ролях и профессиях.

Думаю, что проектное обучение - это движение в правильном направлении.

Подробнее..

Как мы сдавали онлайн экзамены в ВУЗах прошли сертификацию, выиграли несколько онлайн олимпиад

18.04.2021 00:07:30 | Автор: admin

В начале года у меня был разговор с моим хорошим другом студентом одного московского вуза, он рассказал, как в условиях карантина и массовой удаленки ему приходится сдавать экзамены. Я узнал новое для себя слово "прокторинг". Естественно, как человек любопытный, сразу же после беседы полез смотреть, что это за чудо-юдо такое.

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

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

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

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

И так в чем заключается онлайн прокторинг? В основе своей это наблюдение за экзаменуемым посредством WEB камеры; контроль звуков в комнате экзаменуемого; и контроль экрана монитора.

Что теоретически может контролироваться с помощью WEB камеры: аномалии в направлении взгляда; закрытие части лица; наличие других лиц в кадре; обнаружение вторичных гаджетов; обнаружение книг и заметок; обнаружение невербальной коммуникации; обнаружение калькулятора (если это не разрешено).

Что теоретически может контролироваться с помощью микрофона: обнаружение человеческого голоса; обнаружение шелеста бумаги.

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

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

Для нас это стало вызовом, сможем ли мы обойти организационные и технические ограничения прокторинга. Первое к чему мы приступили это детальное изучения правил прокторинга. И исходя из правил вырабатывали стратегию поведения. Местами они отличались в основе своей их можно было свести к следующим пунктам.

  • обеспечить необходимые условия для работы системы прокторинга, в том числе в соответствии с рекомендациями к подготовке рабочего места; Освещенность и чистый рабочий стол.

  • использовать для идентификации оригинал документа, удостоверяющий личность;

  • не покидать зону видимости веб-камеры во время выполнения заданий;

  • при выполнении заданий экзаменуемый по требованию проктора обязуется расположить камеру так, чтобы обеспечить видимость любого места в комнате;

  • в случае отсутствия технической возможности для реализации вышеуказанного пункта (например, недостаточный угол обзора видеокамеры, встроенной в ноутбук или монитор компьютера) экзаменуемый по требованию проктора обязан показывать лист с решением задания по запросу проктора во время проведения экзамена;

  • не отключать микрофон и не снижать его уровень чувствительности к звуку во время тестирования;

  • использовать только одно средство вывода изображения (монитор), одну клавиатуру, одну компьютерную мышь;

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

  • не использовать средства виртуализации;

  • не проговаривать вопросы и задания вслух с уровнем громкости обеспечивающим возможность третьим лицам услышать текст заданий/вопросов;

  • выполнять инструкции проктора;

  • немедленно сообщить Проктору о нарушениях правил, произошедших не по вине экзаменатора.

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

Некоторые организации не желали тратить деньги на системы прокторинга и пытались обеспечить контроль посредством систем видео связи Skype или Zoom, некоторые обеспечивали пост прокторинг просили прислать видеофайл с записью экрана и web камеры программой захвата экрана и веб камеры.

Был случай, когда задания были направлены на почтовый ящик экзаменуемого, их под видео в Skype необходимо было скачать решить отсканировать и направить организаторам экзамена. Запись монитора компьютера при этом не велась, но требовалось установить камеру чтобы было видно экзаменуемого, письменный стол, и по возможности экран компьютера. Мы во время экзамена вошли на почтовый ящик экзаменуемого выполнили решения, отсканировали его своим сканером, а потом положили наши сканы в расшаренную папку на компьютер экзаменуемого. Он сделал вид что отсканировал свою работу на своем сканере, а отправил наши уже загруженные сканы. Поскольку контроль почерка не проводился за эту работу мы получили 100 из 100 условных балов. Кода мы связывались с организаторами пытались объяснить, как обошли контроль, было видно, что они нас даже не понимали.

Очень часто прокторинг обеспечивался следующим образом сайт, на котором демонстрируются задания, и браузер просят включить демонстрацию экрана доступ к веб камере и микрофону.

В данном случае нам необходимо было получить задания, которые демонстрировались экзаменуемому. Мы делали скриншоты экрана каждые 10 сек в расшаренную папку, для этого написали простое приложение, которое не видно не в панели задач не в диспетчере задач. Виден процесс, название которого не чем не выделяется. Отследить факт снятия скриншота достаточно сложно, а запретить практически невозможно, тем боле что его можно делать на уровне драйвера. Или воспользоваться картой захвата.

Необходимо было организовать канал обратной связи использовать микронаушник не очень хотелось поскольку мы посчитали неспортивным. Мы обнаружили что чувствительность нашего микрофона недостаточно хороша чтобы определить некоторые низкочастотные звуки, но при этом проходит все необходимые проверки. Поигравшись чувствительностью микрофона и АЧХ колонки, мы добились того что смогли передать и воспроизвести низкочастотный звук различаемый экзаменуемым, но при этом не фиксируемый микрофоном. Звук при этом так себе, но можно разобрать концепцию решения задачи. Для коммуникации экзаменуемого с помощником использовали обычный беспроводной дверной звонок. Что позволяло коммуницировать в режиме да/нет.

Излишние требования к прокторингу затрудняют работу самих организаторов. Показательным примером была олимпиада по информатике университета одного IT университета. Необходимо было вести запись рабочего экрана и с двух камер с помощью программы OBS. Причем перед началом экзамена необходимо было продемонстрировать подключенное оборудование разрешение монитора и потвердеть то что подключен один монитор, продемонстрировать диспетчер задач. Организаторы потребовали, чтобы время в панели чтобы во время записи панель задач не скрывалась, а системное время показывалось с точностью до секунды, для этого пришлось править реестр. Затем необходимо было этот видео файл размером более 5-6 ГБ загрузить на облачное хранилище и ссылку отправить организаторам. При этом необходимо было подключаться через Zoom, в Zoomе выбрать виртуальную камеру OBS которая передавала видеопоток с двух web камер и захвата экрана. Это вызвало кучу головной боли у организаторов, поскольку настройки программы OBS и правка реестра вызывала огромные проблемы у пользователей несмотря на подробную инструкцию.

Поскольку в ходе олимпиады необходимо было писать код. А человек, который учавствовал не то что не умел программировать он даже печатать нормально не умел. Необходимо было расширить функционал нашего приложения. Суть его заключалась в следующем. Мы, анализируя задания получение со скринов писали код программки в обычный текстовый файл. Затем загружали его в папку на компьютере экзаменуемого. Программка отслеживала нажатия клавиш и в случае комбинации трех заранее выбранных клавиш. Считывала этот файл, а затем по нажатию любой клавиши на клавиатуре выводила на экран нужный символ. От экзаменуемого в данный момент требовалось в лучших традициях голливудских фильмов про хакеров, просто нажимать кнопки на клавиатуре как на пианино. По признанию самого экзаменуемого, самое сложное было в тот момент сдержать улыбку и держать poker face. В данной олимпиаде мы вошли в топ 5 лучших после чего опять написали организаторам, и все рассказали. На удивление в данном случае нас выслушали с особым вниманием и обещали принять меры.

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

Далее мы столкнулись с системой examus или Экзамус на данный момент это самая совершенная система прокторинга. Но ее использование вызывает кучу вопросов. Сама система представляет собой расширение, для браузера которое требует доступ к камере микрофону, может вести запись экрана. Анализирует запушённые приложения, подключенное оборудование историю браузера и историю поиска. И требует отключить антивирус на компьютере. По их заявлениям они обладают достаточно серьезными возможностями ИИ для анализа поведения экзаменуемого, анализа его клавиатурного почерка, экзаменуемого и планируют контролировать пульс ЭКГ и другие биометрические параметры. Система требует прав администратора в системе и может залезть куда угодно на компьютере. Она собирает обрабатывает кучу персональных данных.

Следует отметить что examus является закрытой системой нигде не публиковался аудит кода и ее истинные возможности и методы контроля. И даже для ВУЗов не раскрываются ее полный функционал.

Отдельный вопрос вызывает документ о политике приватности программы, в котором содержится абстрактный пункт о возможности передавать личную информацию при заключении коммерческой сделки

Студенты ВШЭ выражали претензии, публично заявив о недоверии к ней, и направив ректору просьбу пересмотреть решение об экзаменации через систему Экзамус. Их недовольство спровоцировали стандарты проведения экзамена и вседозволенность программы. Студентам удалось выйти на связь с директором Экзамуса. Хотя он и ответил на вопросы, его комментарии почти не внесли ясности. Мониторинг ранее открытых сайтов объяснялся необходимым "для статистики и повышения эффективности работы сайта", а пункт о личных данных оказался якобы обычной практикой IT-компаний, и необходим из-за обязанности передавать данные в правоохранительные органы.

Поскольку в данном случае это были не олимпиады, а сессионные экзамены и за попытку списывания у студента могли бы быть серьезные проблемы. К вопросу подошли максимально серьезно. Мы поставили себя на место прокторов и думали, как и что бы мы контролировали в системе.

Было принято решение не использовать виртуальную машину поскольку программе достаточно легко определить, что она запущенна в виртуальной среде. Так же приняли решение проводить тестирование на чистой только что установленной ОС и после экзамена откатывать ОС к изначальному состоянию.

Поскольку система скорее всего реализует функцию keylogger, было принято решение отказаться от трюка с клавиатурой. Мы использовали 2 одинаковые радио клавиатуры и мыши, а система видела только радио модуль, а радио модуль реагировал на обе клавиатуры, можно было в соседней комнате набирать текст. Все файлы скриншоты шифровались внутри программки и максимально пережимались и отправлялись на локальный сервер через https со стороны что система общается с роутером. Программка была максимально замаскирована под системное приложение. В этом году мониторинг биоактивности в этом году не проводился. Но мы относимся этим заявлениям максимально серьезно.

В итоге мы успешно сдали все сессионные экзамены в нескольких вузах.

Так же мы без особых проблем прошли прокторинг при Сертификация по Яндекс.Директу. но там система не определяла вообще ни чего и можно было спокойно пользоваться программами удаленного доступа.

Выводы

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

Для студента данная система добавляет просто огромное количество стресса, помимо самого экзамена заставляет переживать за интернет соединение, работу компьютера, вдруг он посмотрел в окно почесал за ухом, и система приняла это за попытку коммуникации.

Данные системы будут дальше развиваться и применяться поскольку это существенно дешевле чем реальные экзамены.

Я даже боюсь представить каково это сдавать экзамен под детектором лжи.

Планы на будущее

  • Попробовать применить IP KVM, мы хотели его попробовать сразу, но не успели заказать и оттестировать.

  • Раздобыть карту захвата, которая не определяется системой и позволяет добавить в видеопоток на монитор собственную информацию попробуем реализовать технологию picture by picture.

  • Будем разрабатывать собственную клавиатуру, которая бы позволяла обеспечить подключение других систем.

  • Будем думать, как можно будет подделывать информацию с датчиков ЭКГ и пульса.

Все имена изменены все совпадения случайны.

Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru