Denis Gladkikh

outcoldman

My personal blog about software development

  • 04 Apr 2011
  • outcoldman, Ярославль, HackDay

hackday-logoНа этих выходных, а именно 2 и 3 апреля 2011 в Ярославле проводился HackDay #12. Впечатления только позитивные, лучше мероприятие по формату и придумать нельзя. Не совсем доволен участием своей команды, а точнее своим. А теперь обо всем по-порядку.

Если кто не знает, то идея HackDay – в представлении и реализации проектов с нуля (конечно же, многие приходят с заготовками) за ограниченное количество времени, в нашем случае за два дня. Я был в проекте Андрея Майорова, с которым я знаком достаточно давно, так же из моих знакомых там был Максим Высоких (мой бывший коллега из компании ФогСофт), плюс у нас в команде было еще 2 студента (Андрей и Кирилл), а так же еще плюсом 3 разработчика (Юрий, и два Александра). Собственно, под конец HackDay расстроило три вещи: а) то, что мы не смогли доделать проект до конца (посмотрев свысока на окончательную работу, такое ощущение, что мы, вообще, практически, ничего не сделали из главных поставленных целей); б) расстроило, что не участвовал в других проектах, каждый из них был по-своему интересным; в) немного расстроился, что не послушал ни одного мастер класса, ну наверстаю на ADD-2.

А начинала наша команда даже очень хорошо. У нас был очень хороший руководитель проекта Андрей, который грамотно поставил план действий, обсудил use cases, спецификации и т.п. Собственно, он же просто замечательно координировал работу команды на протяжении двух дней. Чтобы все было по-взрослому, я дома подготовил виртуальную машину с установленным Visual SVN Server, CCNet и SQL Server и Visual Studio 2010 SP1 на борту. Пока поначалу обсуждалась спецификация, я краем уха слушал, настраивал CCNet, проинициализировал проект, и даже создал таблицы в БД. Первая проблема, с которой мы столкнулись, практически все были уверены, что MVC 3 ставится с VS2010 SP1. Соответственно, у меня ее не было на сервере (проект не собирался), а у некоторых и на машинах (соответственно, не возможно было работать с проектом). Одна машина у нас, вообще, была с Linux, использовали ее для верстки. Интернет в корпусе университета очень сильно подвел, сам же wifi (развернут он был компанией DLink) был в порядке. Скачать с интернета было не реально что-то, скорость меньше 6 килобайт в секунду. Но в результате я нашел установщик MVC3 у себя на ноутбуке, правда, ставился он тоже не у всех с первого раза. Дальше я занялся кодированием, взял на себя задачу регистрации на нашем сайте при помощи Twitter. Прочитал мануалы, пытался скачать какие-нибудь готовые библиотеки, даже уже почти сам дописал свою реализацию Twitter OAuth, как все-таки удалось скачать Twitterizer (тот что Lite, такой вот интернет у нас был). На этом участие в первый день у меня закончилось, мне нужно было удалиться по личным делам (убежал около 5-6 часов вечера), оставив ноутбук, так как их у нас была не хватка.

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

 P1020379            P1020381

Во второй день я пришел не совсем в форме (личные дела прошли очень удачно), оклемался только к середине дня. Я взялся за косметические правки сайта, так как он более или менее уже был в рабочем состоянии. И, в общем-то, на этом рабочий день HackDay закончился. Андрей подготовил презентацию и продемонстрировал проект. Очень хотели успеть выложить проект на хостинг, но в университете помимо того, что интернет был слабый (во второй день лучше, чем в первый), были заблокированы все порты кроме http и https, поэтому никакого RDP. Все же Андрей через знакомого залил проект на хостинг, но чуть позже нашей презентации.

В итоге, вот что у нас получилось http://navral.ru. Мы заняли 3-е место. Думаю, что могли бы и второе, если бы сделали все, что было запланировано. Второе место заняла команда с проектом Городской маршрутизатор, ничего особенного, стандартная задача – стандартное решение. Первое место заняла команда безумных студентов (с ИВТ) с проектом “Волк с яйцами”. Их проекта нет на сайте (у них, вроде, был какой-то другой сначала проект). Идея проекта в следующем, есть игра – волк и яйца (посмотреть можно, например, тут, если кто не помнит). Там у волка есть 4 положения, куда он может поставить корзину. С другой стороны, веб-камерой распознается лицо человека, область съемки делится на четыре зоны. В зависимости от того, где находится голова (в какой из зон), туда и ставит волк корзину. Очень подвижная игрушка получилась. Вот тебе и Kinect упрощенный. Правда, я так и не понял, про какую математику говорили студенты, что они использовали в этом проекте (даже говорили, что любят матан), если они сами сказали, что скачали готовую библиотеку для распознавания лиц. Не очень понял. Но в целом, они молодцы, и, думаю, что 100% все проголосовали за них, лучше готового проекта не было. И их бы мы не победили бы даже с готовым проектом.

Сейчас в голове родилось две идеи. Первая: было бы классно и полезно для веб-студий устраивать такие же соревнования. Дается 2 дня, в команде может быть 1 дизайнер, 1 менеджер, 4 программиста (ну как-то так), и нужно за это время создать решение для какого-нибудь проекта-задания. Можно использовать любые наработки, любые свои фреймворки. По окончании студиям проставляются места. После таких соревнований мелкие и молодые студии могли бы пробивать для себя достаточно быстро путь вверх. Правда, есть и другая проблема, крупные компания, боясь запачкаться, будут отмазываться от таких мероприятий с возгласом “Что нам делать нечего? А все что сделано на этом мероприятии и в подметки не годится тому, что могли бы сделать мы.” Хотя, если соревнование было бы ежегодным, то может быть со временем интересующихся в соревновании веб-студий становилось бы все больше. Идея вторая, хорошо бы иметь место-инкубатор, где любой мог бы запостить свою идею, найти единомышленников, людей, готовых реализовать этот проект, ну и реализовать его. Примерно такой проект я хотел реализовать на этом HackDay, но из-за того что не смог бы провести весь день, удалил его. Может в следующий раз.

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

Have a question? Want to follow up? Send a comment? Or just ask for help or consultation? Send me an email at public[at]denis[dot]gladkikh[one more dot]email.