Недавно помогал в подготовке одной задачки и ее проведении на хакатоне. Обещал сделать некоторый обзор того что там происходило. Плюс решил вообще рассказать про то где мы участвовали и своё отношение к хакатонам.
В своей жизни я участвовал в хакатонах и их аналогах всего несколько раз.
Один раз мы с Васей и Андреем выиграли “День Радио”, некоторую локальную физтеховскую активность, максимально похожую на хакатон. Выиграли мы её с прототипом той штуки которая в итоге стала нашим стартапом по радужке глаза. На хакатоне познакомились с Vocord, в котором потом двое друзей работали пару лет. Ну и было много забавных людей. Например вторая победившая команда забросила свой проект и создала небезызвестный Copter Express
Второй раз – хакатон который устроил Intel в честь выхода первой массовой версии RealSense. Демо-версия этой штуки с надписью “не для продажи” до сих пор у меня в загашниках лежит. Хакатон мы тоже выиграли. Но главным достижением хакатона я назвал бы две другие вещи:
- Познакомились с Artec3D которые там участвовали. Это привело к двум годам плодотворного сотрудничество в ходе которого мы сделали им прототип и доказали что он может работать. А потом поучаствовали в разработке офигенного робота-сканера. Не знаю, выпустил ли в итоге его Артек, но этот опыт нас феерически бустанул по робототехнике.
- Познакомились с студентами физтеха, которые познакомили нас потом со своим одногруппником (?) с которым мы работаем до сих пор:)
Третий раз – участвовали в одном из Kaggle-конкурсов. Место было далеко не в топе, но для первого раза, наверное, норм. Этого нам хватило чтобы понять что в Kaggle больше участвовать не хотим. Зато нас пригласили в Yandex на ML-тренировку рассказать про наш опыт. Там мы познакомились с Максом, который через два месяца основал CherryLabs, пригласил нас с Васей поработать вместе (и вот уже 4 года вместе работаем).
На этом мой опыт как участника закончился. Что я из него вынес? Главное – что хакатоны это такие места где можно познакомиться с кучей интересных людей. При этом я понимал, что участвовать где-то ради приза нелогично.
Но, общение можно так или иначе другими способами организовать. А хакатоны сильно выматывают. Особенно продолжительные.
Но я соглашался участвовать как судья/эксперт. Немного помогал в хакатоне который Gagarins Capital проводил. Этим летом помогал ребятам который делали https://ycloud.school/ как судья/эксперт.
Так что когда ребята из НПКЦ, которых я консультирую, попросили помочь с идеей задачи на хакатон + посудить – я конечно согласился.
Задача, на мой взгляд, получилась достаточно забавная – попробовать предсказать как врач оценит разметку нейронной сети. Она более чем актуальна, я ни разу не натыкался на такие системы в проде, она имеет много подходов к решению.
Безусловный минус с нашей стороны – мы не успели сделать большой датасет. Точнее сделать успели, но так как НПКЦ – организация большая, у них возникли проблемы с некоторыми легальными аспектами. Пришлось идти по обходному пути, датасет был из 300 примеров.
Так как датасет был маленький – то предупредили перед началом, что в случае если будут одинаковые решения по точности (в пределах дисперсии результатов) – будем судить по формальным критериям – наличию документации, наличию докеров / рабочих колабов, наличию комментариев в коде, которые позволяют просто и быстро проверить решение. Соответствию документации и коду.
Такой подход, в каком-то смысле тоже можно считать ошибочным. Если вводишь в качестве единственной оценки – метрику, то на все остальное можно плевать. По крайней мере с моральной точки зрения. Но мы реально хотели иметь критерии которые бы не сводили конкурс к рандому.
А вот то что произошло по ходу хакатона – мне ужасно не понравилось. Мне кажется что в первую очередь – это ошибки со стороны организаторов. Ситуации – очевидные, и очевидно что эти проблемы должны были возникнуть при тех правилах которые они придумали:
- Призы были только для первого места. Приз который был для второго места – это какой-то дикий треш которым, как я понимаю, никто не воспользовался. Я понимаю, что “миллион рублей” – звучит красиво. Но, возможно, лучше все таки было выдать 500/300/200? Такой лажи я не видел ни на одном хакатоне где был. У нас было 3 команды с близкими результатами – реально было очень обидно кого-то выбирать.
- Организаторы не обеспечили прозрачность судейства. Это вообще какой-то былинный отказ.
Ребята, вы работаете с гос. деньгами. Вы, конечно, со всех сторон обложились бумажками, чтобы государство к вам не прикопалось. Но вы понимаете, что прикрываясь бумажками и не делая открытого судейства – вы имеете хейт со стороны всех команд? Что стоит сделать трансляцию выбора итоговой команды? Что стоит подробно рассказать про каждую команду и её положение? Что стоит честно опубликовать протоколы жюри? Я не знаю.
Организаторы предлагали всем командам созвониться с жюри и обсудить своё место. Но просили не показывать командам решения их конкурентов если оно не было выложено в открытый доступ.
Нет, я, конечно, понимаю почему организаторы так поступили. Организация такого хакатона требует немерянное количество бумаг. Весь хакатон должен пройти по заранее описанному протоколу. И большая часть этих заскоков берётся от того что в какой-то бумажке что-то написали. Например “каждый участник имеет право собственности на свое решение, без согласия участника его нельзя публиковать”. Такой пункт был в бумагах, нам его показали.
Из таких проблем и заскоков которые я насчитал – было ещё 3-4 пиздеца, про которые мы узнали уже по ходу хакатона.
Мастерство организаторов – не допускать такого идиотизма со стороны заказчика, если оно есть. Или придумать протоколы устойчивые к нему.
В целом, я слышал, что то что творилось у нас – это были ещё цветочки по сравнению с остальными треками. - Очевидно, что несколько команд были негативно настроены в конце. Не важно почему. Пукан пригорает, правила неправильно поняли, а может правда где-то кто-то их обидел.
Вместо того чтобы работать с этими командами – организаторы полностью слились, перевесив весь фидбек и ответы на судейскую команду.
Про негативный фидбек команд я промолчу. С кой-кого я пригорел сильнее чем от организаторов:)
Что для себя я вынес.
Про судейство. Есть одна вещь которая меня умиляет. Выше были описаны несколько хакатонов где я был. И вот. Ни на одном из них не было прозрачного судейства. Не было ни одного опубликованного заранее критерия. И не было ни одного вопроса после хакатона. Почему? Потому что все эти хакатоны были организованы частными компаниями. Может какие-то команды и обижаются, но обычно ничего не высказывают. Это частные фирмы – частные правила.
А вот с гос хакатонами так нельзя. Наше сегодняшнее общество не готово принимать экспертизу от любых судей со стороны государства. Сразу возникают вопросы. Наверное это чертовски логично, я бы поступил так же. Но до того как не посмотрел на это внутри – не прочуял нюанса.
Для себя я вынес лишь одну штуку – как судья больше участвовать в любых хакатонах финансируемых государством не буду. Затраченные нервы не стоят получаемого фана. Две ночи не мог заснуть, все обдумывал какого хрена люди творят хрень.
Summary
Итого, что хочу сказать про свое отношение к хакатонам и прочим конкурсным активностям:
- Попробовать такое – интересно для опыта. Есть люди которых драйвит конкурсная активность. Есть которых нет. Я, скорее, отношусь к второму классу. Но, омерзения не вызывает. Так что если тема интересная/команда интересная – то можно и участвовать.
- Хакатоны – это концентрация умных и активных людей в одном месте. Если вы хотите интересных знакомств – это один из путей их приобретения. Но надо понимать, что далеко не единственный.
- Хакатон (хороший), это концентрация экспертов. На хакатоне вы сможете откатать свою интересную идею/проект и получить фидбек.
Глобально, как я написал, для меня сейчас не интересно ходить на хакатоны как участник. Так же – теперь буду сторониться любой связи с хакатонами которые хоть как-то связаны с государством.
Привет. Не совсем понял о чем речь.