Кемеровский Хакатон, или «как на моем ноутбуке появилась первая наклейка»
В первые выходные дни апреля, со 2-го по 3-е числа месяца, в рамках фестиваля «IT-Salad» города Кемерово проходил Хакатон «Taste-IT». Он был посвящен разработке мобильных приложений, игр, программированию микроконтроллеров и созданию проектов интернет-вещей. Организаторами мероприятия оказались люди из Microsoft Student Partners, КемГУ и КузГТУ. Генеральным партнером выступила компания «Сибирские Сети».
Формирование команды
Мысль о создании небольшой программы возникла еще полгода назад. Я высказал идею своему одногруппнику, и он решил, что ее стоит реализовать в виде мобильного приложения. Однако, на этом мы закончили развитие проекта, ведь тогда по некоторым причинам очень сложно было все организовать.
За три недели до старта, пока в рамках фестиваля в РЭУ и КемГУ проводились семинары/мастер-классы, я случайно узнал о Хакатоне и тут же начал искать команду, взяв за основу почти забытую идею. В первую очередь пригласил одногруппника, с которым начали проектировать дизайн. Планировали оставить написание всей программной части на время проведения Хакатона, продумав только концепцию. Вскоре в команду вписался хороший дизайнер, который также внес огромный вклад в дальнейшую работу.
Так появилась DevCom.
Что мы знали? Чем владели? По факту, на момент старта в нашем распоряжении был опыт владения языками C++ и HTML, а также общее представление об объектно-ориентированном программировании. Сложность Хакатона заключалась в том, что мы собирались писать на малоизвестном нам языке, C#. С другой стороны, я мог свободно изменять код XAML, а мой товарищ читал специализированную литературу в течение всех трех недель. Короче говоря, уже тогда мы поняли, насколько интересно будет проходить мероприятие.
Суть проекта
Довольно простая идея. Мы захотели сделать приложение, предлагающее пользователям подбирать одежду по своему вкусу в зависимости от текущей погоды. Возможно, идея не нова. Но, судя по проведенным нами исследованиям магазинов трех мобильных платформ, хорошего аналога все еще не было. На фоне имеющихся наша программа смотрелась куда качественнее.
Так, взвесив многие аспекты, в том числе рыночные, было решено писать приложение под Windows Phone.
UPD: Спустя полтора года я довел идею приложения до релиза, но уже на платформе Android. Вы можете скачать программу из маркета Google Play и потыкать.
Подготовка и начало Хакатона
Наша команда пришла на площадку КемГУ (где мы и проводили эти выходные) раньше участников и организаторов. Некоторое время нас попросту не пускали в учебное заведение, ведь никто не взял с собой паспорт. Как оказалось, охрана не знала о намечающемся мероприятии.
Скоро мы увидели знакомые лица — это были люди из MSP, несшие плакаты и продукты питания в нашу сторону. Через некоторое время мы сидели в творческой гостиной, предвкушая старт мероприятия.
Выступили спонсоры. Организаторы дали последние напутствия. Команды презентовали свои идеи. Так начинался Хакатон.
День
Каждый пришел со своим оборудованием. Мы надеялись на то, что, как только займем рабочие места, примемся писать код и делать какие-то зарисовки. Но на деле почти у всех команд возникали сложности: к примеру, из четырех наших функционирующих ноутбуков к процессу работы готов был только один. На системе «Mac». На второй мы сумели поставить среду разработки «Visual Studio 2013» и подключить к нему «Windows Phone» вместо эмулятора. Третий использовался в качестве поисковика — мы искали информацию, которая как-либо могла бы помочь в процессе конструирования кода на C#. Впрочем, ночью мы нашли применение и четвертому ноутбуку. Считая, что концепция согласована и утверждена, мы начали работать. Но и тут возникали разногласия. Мне казалось, что нужно добавить больше страниц для удобства пользователя (около 5), но наш дизайнер хотел разместить все на двух-трех страницах. Спустя некоторое время был установлен копромисс, и тогда мы взялись за написание кода.
Ночь
К полночи кое-что уже было готово, и нам начинало казаться, что оставалось много лишнего времени, поэтому мы решили отвлечься. Достав четвертый ноутбук, я настроил онлайн-трансляцию мероприятия. Пока дизайнер сидел в видеочате, парни из команды, разрабатывавшей браузерную игру, тоже решили отдохнуть и веселились, крутя сальто перед камерами. Третий человек — кодер — пытался разобраться с C# и параллельно отрегулировать детали нашего приложения. Он пояснял это тем, что наутро мы вряд ли сумели бы собраться с мыслями и сделать все так, как было задумано.
Утро
Особенно весёлым было утро на Хакатоне. Я вроде бы соображал, думал о проекте и его реализации, пока конструировал код. Но стоило мне отойти от процесса ненадолго, как я чуть не засыпал.
До сих пор не могу вспомнить, что происходило утром. Знаю, что я был в панике, понимая, что осталось уже немного времени до сдачи проекта. Хотелось больше времени, но и в тот же момент я мечтал о сне. Появлялось желание побыстрее уехать домой. Какой-то парадокс.Впечатления другого члена команды.
Ближе к рассвету мои мысли начали искажаться. Я переставал следить за поведением и речью, и таким образом обнаружил себя спящим на сдвинутых друг к другу стульях. Друзья сказали, что я заснул минут на 15, после чего вскочил, подсказал им идею по поводу кода, и потом снова лег спать.
Всем командам было тяжело. Пожалуй, эта часть мероприятия оказалась самой суровой. Не обошлось без помощи со стороны организаторов.
Демонстрация нашего проекта
Время разработки подходило к концу. Мы вносили последние доработки и были готовы показать проект членам жюри. Язык нашего дизайнера был подвязан, поэтому самую ответственную задачу (выступление) мы поручили ему. Я в свою очередь продемонстрировал, как работает приложение. Затем посыпались каверзные вопросы, на которые мы пытались отвечать всей командой. Стоял там, и думал: «Завалим!». На самом деле, оказалось иначе.
Кстати говоря, мы взяли первое место в области мобильных приложений. Получили неплохие призы на сумму около 10-12-ти тысяч.
Так на моем ноутбуке появилась первая наклейка.
Итоги
- Ничего не идет так, как изначально планировалось. Тщательная подготовка не гарантирует победы.
- Участие в Хакатоне — бесценный жизненный опыт.
- На мероприятии невольно заводятся полезные знакомства. Хакатон — это шанс проявить, показать себя.
- Процесс создания проекта идет очень весело, а при виде других работающих людей появляется энтузиазм.
- Хакатон не стоит воспринимать как соревнование. Это встреча любителей IT-технологий. Место, где приходит вдохновение и идеи льются рекой.
- Восстановление организма после мероприятия заняло чуть больше суток.
Спасибо организаторам за возможность поучаствовать в подобном мероприятии. Отдельное спасибо за чтение!