Хакатон «Мини-мини» (для второго курса)
Хакатон «Мини-мини» для второго курса — это интенсивное шестичасовое соревнование по разработке программного продукта, которое проводится с десяти утра до четырех часов дня. В хакатоне участвуют команды из трех-четырех человек, всего обычно бывает до восьми команд. Мероприятие максимально приближено к реальной работе IT-специалистов и требует серьезной подготовки.
Подготовка начинается за четырнадцать дней. Организаторы придумывают три разных кейса, чтобы разные команды работали над разными задачами и не было соблазна списывать друг у друга.
Первый кейс звучит так: «Разработать веб-приложение для библиотеки колледжа, которое позволит студентам искать книги по автору, названию или ключевому слову, а также просматривать, есть ли книга в наличии и на какой полке она находится».
Второй кейс: «Создать телеграм-бота, который каждое утро отправляет студентам расписание пар на текущий день с учетом замен и переносов».
Третий кейс: «Разработать калькулятор калорий для столовой колледжа, в который можно ввести названия блюд и их вес, а он подсчитает общую калорийность и содержание белков, жиров и углеводов». Каждый кейс сопровождается техническими требованиями: какие технологии допустимо использовать, какие форматы данных ожидаются на входе и выходе.
За неделю до хакатона организаторы настраивают виртуальные машины или Docker-контейнеры с чистой средой разработки, чтобы студенты не тратили время на установку библиотек и компиляторов. В каждой виртуальной машине уже предустановлены Python, Django или Flask, Node.js, MySQL или SQLite, а также Git. Студентам дают доступ к этим контейнерам через SSH, чтобы они могли работать удаленно, если это необходимо.
За два дня до хакатона приглашаются три ментора — это преподаватели профильных дисциплин и один действующий разработчик из местной IT-компании. С ними проводится инструктаж: они будут ходить между командами каждые тридцать минут, задавать наводящие вопросы, например, «А как вы будете обрабатывать ситуацию, если пользователь введет нечисловое значение?», но они не имеют права давать готовые решения или писать код за студентов. Их задача — направлять и подталкивать к правильным архитектурным решениям.
В день хакатона в десять часов утра все участники собираются в компьютерном классе. Ведущий объявляет о начале и говорит:
«Уважаемые участники, сегодня вам предстоит превратить идею в работающий продукт за шесть часов. Ваша главная цель — сделать так, чтобы приложение запускалось без ошибок. Мы будем оценивать вас по четырем критериям: работоспособность — это пятьдесят процентов оценки, качество кода и наличие комментариев — двадцать процентов, удобство интерфейса — пятнадцать процентов и качество презентации — еще пятнадцать процентов. Время пошло!»
Капитаны команд подходят к столу жюри и вытягивают конверт с названием своего кейса, после чего команды рассаживаются за компьютеры и начинают работу.
С десяти тридцати до двух тридцати длится интенсивная работа. Команды пишут код, проектируют базы данных, создают интерфейсы. Менторы подходят к каждой команде один раз в полчаса и задают уточняющие вопросы, записывают свои наблюдения о командной динамике. В час дня организаторы приносят пиццу и воду, чтобы участники могли пообедать, не отвлекаясь надолго от работы. Перерыв длится не больше тридцати минут, после чего все снова садятся за компьютеры.
В два тридцать работа над кодом прекращается. Даже если приложение не дописано, участники должны остановиться и подготовить презентацию. На подготовку презентации дается один час. Команды создают несколько слайдов, на которых кратко описывают архитектуру своего решения, сложности, с которыми столкнулись, и показывают, что у них получилось запустить.
В три тридцать начинается питч-сессия. Каждая команда выходит к проектору, и у нее есть ровно пять минут на демонстрацию. Запрещено говорить фразы «мы не успели» или «мы не доделали» — вместо этого нужно показывать то, что работает, и говорить, какие улучшения были бы добавлены, если бы было больше времени. Жюри сидит в первом ряду и внимательно слушает, а после каждой презентации задает уточняющие вопросы, например, «Почему вы выбрали именно эту базу данных?», «Как вы обеспечиваете безопасность ввода данных?» или «Какой был самый сложный баг и как вы его исправили?». Ответы на вопросы тоже идут в зачет.
В четыре часа дня жюри уходит на совещание на пятнадцать минут, а ведущий проводит со зрителями и участниками интерактив: он показывает фрагменты кода на экране и просит найти в них ошибки, а правильно ответившие получают небольшие призы, например, брелоки с символикой колледжа. В четыре пятнадцать ведущий объявляет победителей. Первое место получает команда с самым стабильно работающим приложением и лучшей презентацией, второе и третье места распределяются по сумме баллов. Все участники получают сертификаты, а победители — подписки на платформы онлайн-образования, футболки с принтами кода или внешние аккумуляторы для зарядки телефонов.
Чтобы оставлять комментарии, вам необходимо авторизоваться на сайте. Если у вас еще нет учетной записи на нашем сайте, предлагаем зарегистрироваться. Это займет не более 5 минут.