Четверг, 19.09.2024, 14:10
Мой сайт
 
Меню сайта

Наш опрос
Оцените мой сайт
Всего ответов: 3

Статистика

Онлайн всего: 8
Гостей: 8
Пользователей: 0

Форма входа

Главная » 2013 » Декабрь » 27 » Три программиста, не считая джависта, на DOU Hackathon: F
01:25
 

Три программиста, не считая джависта, на DOU Hackathon: F

23 октября 2012 г., 14:30 по Киеву, вторник. Ничего не предвещало беды. Но именно тогда в личной почте я увидел то, что не могло меня не заинтересовать…

Адрес отправителя был мне не знаком, но в теме письма фигурировало слово Hackathon, что сразу меня натолкнуло на воспоминания о том, самом первом Хакатоне в Харькове, на котором довелось побывать. Недолго мешкая, открыл письмо, а там… приглашение на очередной Хакатон. Приглашение?! Раньше всегда был просто анонс на DOU о новом Хакатоне, а сейчас пришло приглашение. Выглядело это не так, как обычно. Немного времени в сочетании с Гуглом быстренько привели меня на уже созданную статью на DOU, посвященную именно этому финальному батлу. Когда-то мы уже участвовали в подобном мероприятии в Харькове, были еще молоды и не поняли, что к чему и с какой идеей надо идти на подобные ивенты. Поэтому пообещали себе взять реванш и как бы там ни было, обязательно сходить еще раз.

Хакатон!? Ах да… Что же это?

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

Время – деньги. Пора действовать!

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

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

Обед в шесть вечера – не всегда плохо

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

Во время моего «обеда» на кухню зашел Егор Рубанский, да, кстати, тоже бывший участник Хакатона. Разговорились мы о предстоящем мероприятии, ну и как-то зашел разговор, что недавно Егор наткнулся на статью с описанием некоторых тестов на координацию и методик оценивания результата и пробовал подобное делать с ребенком дома. Учитывая, что у нас на дворе XXI век, весь рассказ об экспериментах с тестами на координацию был подкреплен тем, что бы круто это все сделать с Kinect. Ха! Сказано – сделано! И в этот момент в моей голове рассказ о тестах на Kinect преобразовался в полноценный проект, который как раз и претендовал на звание того невероятного и безумного.

Собственно, идея

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

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

Полоса белая, полоса черная…

Ну вот, наконец-то, за неделю до старта, у меня в голове четко сформировалась идея проекта. Но – одно но. Четко за неделю с приходом идеи ушла команда. Саша и Влад отказались ехать, и остался я один, зато с идеей. Ну как бы раз взялся, надо идти до конца. Неделя на сбор команды… 170 человек в офисе… и-и-и… бинго! За три дня собрали команда, которая была готова идти в бой и писать что угодно и на чем угодно, да еще и сколько угодно!

Собственно, в результате мы имели .NET Team с примесью Java в составе: Артем Сорокин, Александр Остапенко, Зарина Хадикова, Алина Бережная, ну и я, да ?. Три .NET девелопера + практикант и джавист… почти все готово! Все члены команды были посвящены в идею проекта и одобрили ее, название команды пришло прямо из контекста, билеты на поезд были куплены в тот же вечер… итого, команда «Три программиста, не считая джависта» за пару дней до начала ивента была вооружена Kinect, ноутбуками и готова к выезду.

Место встречи изменить нельзя

24 ноября, суббота, 6:40 по Киеву. Железнодорожный вокзал яркими разноцветными огнями встречает пассажиров. За 10 минут до отправления вся команда уже в сборе, и мы выдвинулись в путь. На первой же платформе нас ждал комфортабельный поезд Hyundai с заявленной максимальной скоростью полета 160 км/ч и прохождением пути до Киева за 4 часа и 40 минут. Первое впечатление – навороченная электричка в хорошей комплектации. Далее было выявлено, что Wi-Fi в ней исключительно для галочки, а розетки каждые 20 минут отключаются на 30 секунд (может, и магия, но повторялась с завидной периодичностью).

Блог DataArt, декабрь 2012, Три программиста, не считая джависта, на DOU Hackathon: Final BattleНо ничего, мы не привередливые, как только уселись, сразу же принялись к подготовке к предстоящему бою. Всего несколько часов на обсуждение проекта, кто и что будет делать, освоение Kinect SDK и других полезных библиотек, настройка ноутов для тру нон-стоп девелопмента, создание репозитория и т. д.

Эм-м, не знаю, как оно и у кого там было, но еще на моменте освоения какой-то там документации я отошел ко сну. Периодически просыпаясь (спать в этих чудо-креслах у меня почему то нормально не вышло), поглядывал на экраны в вагонах. Максимальную скорость зафиксировал 163 км/час. Идет поезд нормально, особо не дергаясь и шатаясь. Хорошая шумоизоляция в вагоне практически не пропускала стук колес, только слышался легкий свист ветра, который смешивался и легким постукиванием Александра по клавиатуре. Периодически по вагону проносились порывы ветра, и становилось прохладно. В целом, я бы поставил «три с плюсом» за якобы крутой сервис, из которого есть только скорость перемещения между населенными пунктами, мягкие кресла (удобство – на любителя) и розетки через ряд.

Подъем! Ее величество Столица!

Блог DataArt, декабрь 2012, Три программиста, не считая джависта, на DOU Hackathon: Final BattleВремя в поезде пролетело незаметно, и вот мы уже выгружаемся со всей нашей техникой в Киеве. Сразу чувствуется другая атмосфера в городе. Выйдя из поезда, не нужно далеко ходить, чтобы понять, что город просто развивается семимильными шагами (особенно, когда давно в нем не был) по сравнению с Харьковом. Когда выходишь с вокзала, на горизонте радуют глаз небоскребы в клубах дыма, выросшие буквально за несколько лет. Ладно, хватит любоваться. Куда бы ты ни приехал, всегда на вокзале встречает он… «Макдональдс»! Пара часов до старта – самое время перекусить свежей местной продукции «Мака» и все же еще раз разобраться, зачем мы приехали и что собираемся сделать. Насладившись божественной пищей, потеряли дар речи и ничего толком мы обсудить не смогли. Ну да ладно, так даже веселей. Час до начала – самое время попробовать найти место сбора.

Сутки креатива объявляются открытыми…

Пара пересадок на метро, допрос пары прохожих и GPS приводят нас к замечательному месту для креативного времяпровождения – «Часопис». Первое впечатление – это просто супер!

Карта размещения зон в «Часопис»

Вот бы нам в Харьков такое заведение. Чего там только нет, каждая зона по-своему оборудована и украшена соответствующими предметами экстерьера, диваны, пуфы, настольные игры, x-box и даже кикер (Артем с Сашей, правда, сказали, что кикер у нас в DataArt лучше, чем там :)).

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

Вот пришло время старта. Все прибывшие собрались в этой замечательно «библиотеке» для знакомства, поиска команды (для тех, кто приехал сам) и представления идеи. По сравнению с Хакатоном в Харькове, в котором я участвовал, финал выглядел достойно. Собрались люди из многих городов Украины и, судя по представлению идей, настроены были серьезно. Особенно это подчеркивали слова о Kinect и квадракоптере (и наличие аппаратов) от других команд и поначалу на вид суровые ребята из Яндекса. После представления команд были безвозмездно розданы разработчики, которые приехали сами по себе, еще раз всем напомнили правила ну и Яндекс объявил конкурс. На сайте ДОУ условие звучит так: «Яндекс вручит отдельные призы разработчикам, которые смогут успешно применить в своих проектах любую из технологий Яндекса». Ну, из описания сразу же был сделан вывод, что, если призы дают за успешно примененную технологию от Яндекс, применить ее не так уж и просто. Но пообещали сами себе, что неплохо было бы хоть попробовать посмотреть, что есть интересного в Яндекс API и как с этим работать.

Блог DataArt, декабрь 2012, Три программиста, не считая джависта, на DOU Hackathon: Final BattleСобственно, разговоры закончились и вот он, старт! Все на своих местах, картинка загрузки Visual Studio на всех 5-и ноутах, пустой проект, коммит, чекаут… пока все по плану. Создание базы в Харькове, хостим тестовые сервисы на ноуте… Собираемся все вместе через Хамачи. Пара часов и… вуаля! Теперь самое сложное. Что такое Kinect SDK и как с ним работать!? Открываем семпл, смотрим с умным лицом… и где то на этой стадии, почему то решается, что жизненно необходимо научить Kinect распознавать личность ребенка, который будет проходить тест.

Зарина отважно бросается на решение этой задачи и обещает написать либу на .NET, которая будет уметь распознавать лица, используя OpenCV. Да-да… мы и Зарину приобщили к программированию (джависты, не бейте, я по-доброму :)). В это время идет исследование умений Kinect методом тыка проб и ошибок и какие-то громкие споры Артема и Александра, ну и, конечно же, беготня и прыжки перед Kinect/ Параллельно Алина начинает писать веб-клиент для этого всего, все еще непонятно чего, а я – проектировать базу и писать сервисы.

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

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

Блог DataArt, декабрь 2012, Три программиста, не считая джависта, на DOU Hackathon: Final BattleОчередной чекпоинт и поход в поисках круглосуточного магазина. Выйдя ночью в город, мы просто были потрясены прогрессом в развитии инфраструктуры города и ночной жизнью. Город живет круглые сутки, все светится, вокруг красивые высокие здания. Ну да ладно, побродив среди всей этой красоты, мы все же нашли то, что искали. Это был супермаркет недалеко от площади Льва Толстова (если я ничего не напутал). Возле магазина было много молодежи и как-то странно, или, я бы сказал, даже немного нагло они распивали пиво и орали песни. Мы как бы ни против подобного, просто в Харькове такого уже давно не видели. Обычно таких ребят быстро забирают, особенно возле метро. Ну да ладно, повеселились и снова за работу…

Отведав энергетиков и сверху залив их кофе, подумали, что надо бы с чем-нибудь от Яндекс все же интегрироваться. Долгими мучениями и анализом существующих API был сделан вывод, что нам в принципе толком нечего использовать по назначению. Но надо – значит надо. Было решено зачем -о фотографии, которые воспитатель будет загружать из веб-приложения хранить на Яндекс.Дисках. Нужно оно нам было или нет – ответ, скорее всего, очевиден, но важно было интегрироваться хоть с чем-то, что содержало в названии Яндекс.

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

Чем дальше, тем меньше времени оставалось. Какие то нетрезвые алгоритмы и издевательства над прямыми, т. е. кривыми (да-да, дошло уже до самих тестов на Kinect), разговорчики приложения для Kinect и дрессировка Kinect Артемом (или частенько – наоборот).

От скуки решил я даже маленькую приложеньку для Windows Phone 7 написать, чтобы было, вроде бы как для родителей, как и обещали. Ну, вот как то так мы и дожили до конца. Все это кашляло, чихало, дико тормозило, но работало (из Киева в Харьков за данными в базу оказалось далековато ходить :)).

Артем колдует на демонстрации Kinect-части нашего приложения

К демо все выглядело замечательно, кроме того, что за 24 часа Kinect так и не научился толком нас слушать. Рисовать рукой плавные линии оказалось очень даже тяжело и на эту часть было потрачено очень много времени. Т. ч. до попытки определения возможных заболеваний ребенка мы даже не дошли. Вроде бы как, если правильно встать и правильно будет падать свет, правильно станут звезды и т. д., то наше Kinect-приложение могло распознать личность человека на основе фотографии, сравнивая ее с загруженными фотками при регистрации новых детей в дет. садик/группу.

Kinect в этом случае оказался далеко не на высоте: разрешение камеры составляет всего 640х480 и, в свою очередь, Kinect SDK отдавало фотографию около 90х100, что должно было быть преобразовано до 200х200, иначе OpenCV возмущался. В общем, конечно же, никто из нас не догадывался даже, что с Kinect выйдет такой нежданчик.

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

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

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

Что касается остальных проектов – мы были просто разочарованы, когда по баллам нас обходили просто никакие (простите за прямоту): абсолютно без идеи, новизны и крутости в исполнении. Ну да ладно, победителей не судят. Просто для подобных мероприятий необходим маленький и веселый проект, который быстро и качественно пишется, а потом всей командой можно гулять по городу, общаться, веселиться и тд. Это не конкурс стартапов, а ивент just for fun, т. к. польза от большинства проектов просто отсутствует.

Не спали уже больше суток, и усталость настигала… До поезда – полтора часа. Вяло поплелись на вокзал, т. к. демо затянулось, и погулять по городу не успели. Назад опять же на нашем «Столичном экспрессе», только теперь уже в первом классе. Кресла чуть шире и больше места между рядами, розетки на каждом ряду кресел, за нереальную сумму услуга доставки еды из вагона-ресторана ну, и безумный сквозняк, что просто свойственно украинскому первому классу.

Отпечаток в наших сердцах…

По словам очевидцев:

Александр Остапенко: «Я очень рад, что участвовал в столь интересном событии. 24 часа программирования… Казалось бы, долго и сложно… Но, стоило приехать и почувствовать атмосферу радости, которую излучали более сотни участников, – все сомнения канули в лету — спать никто не будет. Ни ночь, не усталость не могли остановить героев, которые на свой страх и риск согласились на столь отчаянный подвиг. Работа кипела и за столами, и на кухне, на улице, в местах для перекуров. И вот он, момент истины, которого так все ждали. Судьба разработчиков в руках всех присутствующих. Это всеобщее голосование, которое определит победителей. Стоит отметить замечательную организацию проекта. Все желающие получили комфортное рабочее место, это достойно похвалы.

Артем Сорокин: «Поездка выдалась интересной. Ехали на поезде «Интерсити»,потому дорога в Киев была быстрой и казалась прогулкой в незнакомый район Харькова. Приехав туда, удивились прогрессу роста киевской инфраструктуры;Харьков начинает казаться среднестатистическим ПГТ.
Много интересных людей, креативное место проведения, абсолютно неформальная обстановка – все это поддерживало хорошее настроение, а известность Хакатона и чувство конкуренции, не давало возможность прилечь поспать.
Писали мы код 24 часа. Ощущения в процессе написания кода в полусознательном состоянии очень необычные :) Хочется всего и ничего – и чтоб приложение работало и чтоб поспать можно было.
Видишь необычные метаморфозы в мониторе своего ноутбука, а сердце от количества выпитого кофе и энергетиков лезет наружу.
В общем, дожили мы до презентации, показали свое полурабочее приложение и потихоньку начали готовиться к поездке назад. Впечатление о представленых проектах у меня сложилось двойственное: с одной стороны, люди, выигравшие Хакатон, показывали действительно необычные и креативные вещи, но, с другой стороны, применяемость и надобность таких проектов в жизни стремиться к нулю.
Резюмируя – огромное количество впечатлений, испытанных в такой ограниченный промежуток времени, наполнили хорошим настроением и рвением на всю наступающую рабочую неделю».

Зарина Хадикова: «Хакатон. День:ого, сколько людей, и местечко ничего. Кодить, кодить, пора кодить, когда уже можно кодить?
Хакатон. Ночь: Повсюду беспорядочно валяются тела спящих программистов, из разных уголков доносятся звуки стучащих по клавишам пальцев…
Хакатон. Утро: Спать, спать, хочу спать, когда уже можно спать?»

Алина Бережная: «Было здорово, царила приятная рабочая атмосфера. Время пролетало незаметно, команды создали много интересных проектов. Интересный и полезный опыт. Приятно порадовало место проведения, креативное пространство. И на правах антирекламы – спать в «Хюндае» очень неудобно. А, еще тостики были вкусными XD».

От себя могу сказать – было весело! Красивый город, особенно ночью, приятное место «Часопис» и сам Хакатон оставили положительные впечатления надолго. Этот Хакатон был и правда финальным, и проведен достойно.

Запись создана: Среда, 19th Декабрь, 2012 в 19:19.

Просмотров: 176 | Добавил: yourepso | Рейтинг: 0.0/0
Всего комментариев: 0
Поиск

Календарь
«  Декабрь 2013  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
3031

Архив записей

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Copyright MyCorp © 2024Бесплатный конструктор сайтов - uCoz