место в рейтинге
  • 211842
  • 952
  • 425
Нравится блог?
Подписывайтесь!

Как выиграть хакатон: 14 действенных идей

19-20 мая в Астане проходил Astana Hackathon, организованный "Astana Innovations" хакатон с призовым фондом в 1,000,000 тенге. Хакатон - отличная возможность перестать обсуждать свои бесконечные идеи с друзьями за кружкой пива по пятницам (только для того, чтобы на следующий день забыть обо всем и погрязнуть в рабочей рутине) и, наконец, все-таки взяться за реализацию. Мировая практика показала: за 24 часа можно создать ядро по-настоящему больших проектов. GroupMe, мобильное приложение для группового обмена смс-сообщениями, было создано за полутора суток в мае 2010 года во время хакатона на TechCrunch Disrupt New York. Чуть более года спустя GroupMe был куплен Skype за сумму порядка 80 миллионов долларов. Начальные версии FB Chat и FB Video были написаны за ночь во время хакатона в офисе Facebook в Пало Альто. И таких примеров десятки. В течение двух месяцев прошлой осени мне в качестве разработчика довелось поучаствовать в четырех hackathon'ах: PennApps (место проведения: University of Pennsilvania), Facebook Hackathon, Princeton Startup Weekend, hackNY (New York University). В этом посте хотелось бы поделиться некоторыми идеями на тему того, как успешно выступить на хакатоне.

1. Четко знайте свой проект до того, как прозвучит стартовый свисток. Хотя до начала хакатона ничего кодить нельзя, это не значит, что нужно приходить на мероприятие абсолютно без подготовки. Очень помогает приходить на событие с хорошо продуманной идеей, обсужденными "за и против", набросками и flow-chart'ами по интерфейсу.

2. Дизайн: в простоте - гениальность. В конечном итоге, именно дизайн продукта создает первое впечатление. И под этим я подразумеваю не только, как он выглядит, но и как он работает. Во всяком случае вы не хотите, чтобы ваш сайт словами Дмитрия Кирсанова выглядел, как "попугай в нечищенной клетке". Конечно, невозможно создать дизайн уровня Path, Flipboard или Pinterest, за сутки, однако, если знать пару "трюков", дела обстоят не настолько плохо. Один из таких "трюков" - Twitter Bootstrap, библиотека готовых HTML, CSS и Javascript компонентов для начинающих дизайнеров. Безусловно, важно кастомизировать эти шаблоны, иначе ваш сайт или приложение будут уж очень сильно напоминать тысячи других.

3. Minimum Viable Product. Важно помнить о том, что такое MVP (детали - в книгах/блогах Эрика Риса и Стива Бланка). Проект не должен быть неповоротливым и бесполезным гигантом (благо, учитывая лимит по времени, это и не очень возможно): он должен ясно передавать основное видение. Проект должен быть минималистичен, но полностью функционален. Все компоненты, которые вы не успели закончить, лучше полностью исключить. Как говорил Стив Джобс: "Фокус - это искусство говорить 'нет'".

4. Фреймворки на помощь. Ваша продуктивность не будет такой, как прежде, если твердо знать один веб-фреймворк. Последнее, что вы хотите делать во время соревнования - так это писать доморощенное управление базами данных или пользовательскими сессиями (подразумевается, что вы не пишете на PHP :-)). Если уже есть опыт использования Ruby on Rails или Django, то - вперед и с песней! Эти фреймворки - проверенный временем золотой стандарт. Если нет, то рекомендую научиться использовать "легковесные" микрофреймворки, такие как web.py, Flask или CherryPy, если вы знаете Python; и Sinatra, если вы пишите на Ruby.

5. Хостинг? Ваш проект будет более наглядным, если по истечении 24 часов он будет доступен онлайн. Опять же, настраивать сервер во время хакатона - потеря ценного времени, а перекидывание PHP файлов через FTP - мягко говоря, не очень эффективно. На помощь приходят такие облачные платформы (PaaS - platform as a service), как Google App Engine или Heroku. Очень рекомендую последний. Наряду с Ruby, Heroku также поддерживает разработку на Python, Scala, Node.js, Clojure и Java.

6. "Преждевременная оптимизация - корень всех зол" (Дональд Кнут). Нужно оставить на полке такие мысли и бесполезные сомнения, как "Будет ли мой код эффективен, когда сервис будет использовать миллион человек?" Ваша цель быстро сделать работающий прототип и попытаться избежать ловушки перфекционизма. Есть огромное количество более полезных вариантов улучшения проекта, чем пытаться оптимизировать уже работающий алгоритм. Это не IOI, не ACM ICPC и не TopCoder =) Здесь работает лозунг Facebook: "Done is better than perfect".

7. Команда или прицип синергии: 1 + 1 = 10. Несмотря на то, что хакатоны - отличное место для того, чтобы встретить интересных людей, лучше приходить на них с уже готовой командой. Командой, где каждый хорошо знает свои сильные стороны и эффективно дополняет друг друга. Эмпирически, мне кажется команды в 2-3 человека работают лучше всего. Превысьте эту норму и получите типичный эффект, описанный Фредериком Бруксом в небезызвестной книге "Мифический человеко-месяц". Вкратце, этот эффект можно сформулировать так: "Если проект не укладывается в сроки, то добавление рабочей силы задержит его еще больше".

8. API: стойте на плечах гигантов. Набор различного рода функций и процедур, предоставляемый всевозможными сервисами, позволит быстро получить доступ к интересным данным, готовым для дальнейшего анализа. Twitter предоставляет доступ ко всей публичной информации, с которой ассоциируется сервис: твиты, фолловеры, пользовательские профайлы, листы, местоположения, тренды и т.д. Если, к примеру, вы хотите сделать каталог мобильных фотографий по тематическим категориям или по разным городам нашей страны, к вашим услугам - Instagram API. Вот классный пример того, что можно построить, используя Instagram. Если есть желание создать онлайн-гид по городу, систему рекомендаций ресторанов или приложение, которое отвечает на сакраментальный вопрос: "Куда пойти сегодня вечером?", отличным выбором мне видится Foursquare API. А вот и галерея примеров лучших приложений, построенных на 4sq. Набор алгоритмов машинного обучения от Google Prediction API в свою очередь может помочь в создании рекомендательных систем, классификации email'ов и документов, анализа текста и тому подобное. Есть много других интересных API, но это заслуживает отдельного поста.

9. Не тратьте время впустую. Часто был свидетелем того, как команды часами спорили о том, какое название придумать своему проекту. На хакатоне это совершенно не имеет значения, поэтому не стоит уделять этому "упражнению" более 10 минут. На худой конец напишите простой скрипт на Питоне, который генерирует разные благозвучные последовательности согласная-гласная-согласная-гласная-согласная разной длины и проверяет доступен ли данный домен (примечание: на это может уйти больше 10 минут). В конечном счете, название наверняка придет к вам во второй половине хакатона, когда ваш проект начнет принимать более или менее полноценный вид. Время конечно. Создайте девелопер-аккаунты на API, которые планируйте использовать, и напишите для тренировки пару примеров API вызовов до начала хакатона. Подготовьте и настройте весь набор инструментов, которые вы обычно используете, будь то Xcode, MySQL, Photoshop или Git. Не гнушайтесь использовать open source code на Github, заимствуйте понравившиеся элементы дизайна (css, javascript) с помощью Chrome Web Inspector или Firebug. Все дьяволы (и к слову, ангелы) - в деталях.

10. Хакатон не время изучать новые технологии. Если ваша цель выиграть, оставьте без внимания желание выучить новый язык программирования или новый фреймворк. Сосредоточитесь на том, что знаете, и выжмите из этого максимум.

11. Презентация: действия важнее слов. Жюри и аудитория не увидят, сколько труда было вложено в ваш код. Они будут оценивать конечный продукт и то, как вы его презентуете. Слайды - признак того, что вам нечего показать. Даже, если вы используете Prezi :) Поэтому уделите все отведенное время на непосредственное демо проекта. Приведите пример того, как реальные пользователи найдут продукт полезным. "Болеутоляющее продается лучше, чем аспирин". Покажите проблему и как вы ее решаете. Не стоит заставлять аудиторию скучать описанием использованных технологий или того, чего не хватает в вашем продукте. Фокусируйтесь на том, что есть. Презентация должна быть динамичной, интерактивной (в этом аспекте преимущество, к примеру, имеют приложения, которые могут в реальном времени анализировать твиты или смс-сообщения зрителей, сидящих в зале), полна страсти и воодушевления со стороны участников команды.

12. Знайте критерии оценки и свою аудиторию. Такими критериями на астанинском хакатоне, к примеру, были локальность проекта, его полезность, степень готовности и техническая сложность, уникальность и новизна идеи, удобство использования и дизайн. В перерывах общайтесь с менторами и другими коллегами-участниками, внимательно слушая их отзывы и замечания. Пригласите на демо своих друзей/родственников: поддержка и шум трибун во время презентации только помогают!

13. Не забывайте о простых лайф-хакинг принципах эффективной работы. Прийти выспавшимся. Не игнорировать питательный завтрак/обед/ужин. По возможности брать пятиминутный перерыв каждый час, чтобы прогуляться, "перезарядить" батарейки и, в конечном счете, взглянуть на проблему свежими глазами. Иначе сэкономленные полчаса выльются в часы долгой, медленной и непродуктивной разработки.

14. Путь важнее цели, но цель важнее пути. Ну и следуя законам жанра, ни одна из выше описанных идей не будет действенной "серебряной пулей", если в итоге не построить классный проект и не получить удовольствие от процесса.

Удачи и побед!
Мой Твиттер: @suleimenov

P/S: Источник "невтемной" фотографии - мой инстаграм. На ней запечатлен момент из хакатона в ноябре 2011 года в компании Ooyala (Mountain View, CA). Если есть фотографии победителей Astana Hackathon 2012, отправляйте, буду рад заменить =)

Арман Сулейменов suleimenov
http://www.cs.princeton.edu/~asuleime/
21 мая 2012, 11:22
6985

Loading...

Комментарии

Так-то вполне адекватные замечания.
Samson
0
0
по астанинскому хакатону скоро будет полноценный фотоотчет) хороший ивент)
nurma
1
0
Спасибо за ссылки на классные сервисы!
Всегда пожалуйста!
nurma
0
0
а ваши проекты посмотреть можно?
Да, конечно, многие уже оффлайн, но ссылки на доступные проекты здесь: http://www.cs.princeton.edu/~asuleime Сразу скажу, все были сделаны во время хакафонов и далее не поддерживались =)
неужели не хочется сделать боооольшой проектище от корки до корки? )
Правильные советы! Добавить даже нечего.
Это, очевидно, один из недостатков того, что я написал. Хорошие посты начинают дискуссии, порождают новые мысли ;)
askara
0
0
привет! отличный материал, напишите e-mail, вышлю фото.
Спасибо! Мой e-mail: suleimenov @ gmail dot com. Было бы удобно через Dropbox ;)
Отличные рекомендации (применимых для запуска любых софтверных стартапов), в мемориз, рахмет)!
tonami
1
0
Отличный пост!
Кто знает, намечаются ли серьезные хакатоны (в КЗ) летом?
Спасибо! Насчет лета не знаю даже. Надеюсь появятся энтузиасты, чтобы что-нибудь организовать.
Здравствуйте!

Обращаюсь к Вам , т.к.незнаю куда уже обращаться. Утратил во все веру и нет сил сражаться больше за собственную же заработную плату. Дело в том, что я работал в г.Алматы на Тулебаева 15, уг.ул.Маметова в рекламном агентстве ТОО"Advertising-center", бывшая компания ТОО "Жарнамалык орталыгы центер" сменили название чтоб уйти от налогов это я знаю точно. Помимо рекламного агентства у них же там же еще 2 компании. Зарплату мне должны с того года за 3 месяца. И до сих пор прошу ее как незнаю даже кто. Официально я не устроин был, поэтому незнаю куда идти и бежать! И я не один такой кому они должны с того года. Они должны менеджеру проработавшей у них больше двух лет Ли Татьяне, дизайнеру за 4 месяца того же года Лукашене Анастасии. Пивоварова Юлия у них работавшая менеджером полгода, так и не получила вообще денег, и у нее умер отец, так они даже не дали денег на похороны и уволили без каких либо объяснений. И по сей день в компании работают люди на которую ходят в надежде на получение заработной платы, в компании и людей уже не осталось....у них нет не сочувствия не сострадания. Даже дворникам не платят пол года, которые то получают по 10 000 в месяц. Издевательство да и только. И не кого не боятся не людей не Всевышнего. В компании не кто не обращается за помощью , т.к. зашуганы все. Зарплаты у всех белая, и минимальная черная меньше 30 000 тенге, чтоб меньше платить налоги. Директор Компании Куденко А.В. и его жена Продиус Ж.А., бухгалтер коротая помогает управлять всей этой махинацией Федюнина А.П. тел.данной организации 273-33-16, 390-52-01. Находятся они на территории СТО WIZARD, в аренде и них уже довольна долгие годы.. Я надеюсь Вы найдете управу на них и поставите на место, они не только людям зарплату не платят, но и от всех налогов уходят. Куда только смотрят все! У них есть оборудование продав которое с помощью управленческих органов могли бы расплатиться с долгами многих людей. У меня больной сын рак крови у него и попрошайничаю собственную же зарплату за 3 месяца по 40 000 тенге, 120 000 тенге итого. Обиваю пороги их, а в замен слышу только приходите завтра, на следующей неделе, "отфутболивают" меня и все. А работать не могу за сыном смотрю. Ночью работаю охранником.Эти деньги очень нужны. Сестренка тоже у них работала и так же кинули. А эти деньги очень нам нужны.

Я даже не ради себя прошу а ради сына и всех тех кого они так кинули, ОБРАТИТЕ ВНИМАНИЕ на эту компанию. Займитесь ею. УМОЛЯЮ ВАС!
Надо прекратить это безобразие и пресечь как можно скорее, сколько можно издеваться над людьми.

Разместите Данное сообщение у себя в блоге если кто хочет помочь, пускай люди знают что есть такая кощунственная организация. И чтоб избегали данного места работы и чтоб знали как там издеваются над людьми. Заранее Вам благодарен!
и совсем не "невтемная" фотография)
ну раз ты так думаешь, оставим без изменений =)
Dr_Rat
0
0
"было создано за полторы сутки в мае 2010" сразу видно писало "зверье", правильно будет было создано за полутора суток в мае 2010
Спасибо! Согласен с замечанием: www.gramota.ru К счастью, мягко говоря, никогда не страдал безграмотностью, но активно не пишу на русском уже более 7 лет. И все-таки содержание - король, а все остальное - важно, но второстепенно.
p/s: о каком "зверье" идет речь?

Оставьте свой комментарий

Спасибо за открытие блога в Yvision.kz! Чтобы убедиться в отсутствии спама, все комментарии новых пользователей проходят премодерацию. Соблюдение правил нашей блог-платформы ускорит ваш переход в категорию надежных пользователей, не нуждающихся в премодерации. Обязательно прочтите наши правила по указанной ссылке: Правила

Также можно нажать Ctrl+Enter

Популярные посты

Войдите в ТОП-30 суперавторов Ювижн и зарабатывайте на этом!

Войдите в ТОП-30 суперавторов Ювижн и зарабатывайте на этом!

Дорогие ювиженцы. Соотечественники и соотечественницы. Авторы. Мы возобновляем нашу, не побоюсь этого слова, культовую акцию по вознаграждению топовых авторов. По итогам каждого календарного...
niyazov
вчера / 17:54
  • 81476
  • 68
Не пропущу! Отношение водителей к жизни человека: как уступают дорогу «скорой» в Европе и у нас

Не пропущу! Отношение водителей к жизни человека: как уступают дорогу «скорой» в Европе и у нас

На днях в YouTube появился ролик, запечатлевший совершенно обыденную для европейцев ситуацию. Но для нашего человека – совершенно нетипичную и оттого вызывающую у некоторых из нас слёзы восторга.
openqazaqstan
18 марта 2017 / 20:22
  • 5936
  • 9
Престарелый старец-киборг Рокфеллер предлагал уничтожить 90% населения Земли

Престарелый старец-киборг Рокфеллер предлагал уничтожить 90% населения Земли

Первую пересадку сердца Рокфеллер пережил в 1976 году на 62-м году жизни. Последнюю пересадку ему сделали в августе 2016 года. Пересадка сердца такому старому пациенту не имеет аналогов...
Timur_Tregulov
21 марта 2017 / 23:10
  • 5920
  • 51
Компания LG Electronics открыла предзаказ на новый флагман LG G6

Компания LG Electronics открыла предзаказ на новый флагман LG G6

LG Electronics объявляет о начале предварительного заказа онлайн на новый смартфон LG G6. Оформить предзаказ можно на сайтах магазинов электроники до 16 апреля 2017 года.
LG Electronics
вчера / 14:20
  • 4259
  • 0
H&M-ское безумие или Что народу по карману?

H&M-ское безумие или Что народу по карману?

На счет качества: я спросил у знакомых и мне сказали, что та или иная вещь носится сезон. В хорошем случае и бережном отношении немногим больше. Кофточки - моя слабость, наверное...
RustemZhali
18 марта 2017 / 18:32
  • 4527
  • 30
Беременность по-американски. Никто не ждет до 40 дней, с малышом гуляют с первого дня

Беременность по-американски. Никто не ждет до 40 дней, с малышом гуляют с первого дня

Мои волшебные 9 месяцев протекали в новой среде и далеко от всех родственников и подружек. Никто из моих знакомых в США на тот момент не успел обзавестись малышом, поэтому мне не с кем было...
Zarema_
23 марта 2017 / 9:25
  • 3562
  • 14
Алматы – это город-урод. Если вы живете здесь, то сами найдете кучу примеров

Алматы – это город-урод. Если вы живете здесь, то сами найдете кучу примеров

Париж, Рим, Барселона, Лондон, Алматы, Венеция – выберите город, который на ваш взгляд кажется лишним в этом списке. Если бы не было слова "урод", было бы легче определиться?
corridere
21 марта 2017 / 14:59
  • 3919
  • 75
Будьте бдительны при покупке цифровой техники! «Наебизнес» в магазинах техники

Будьте бдительны при покупке цифровой техники! «Наебизнес» в магазинах техники

Покупая бытовую технику в магазинах будьте внимательны. Сейчас практикуется впаривание дополнительных услуг по настройке. Прежде чем оформлять, проверьте суммы и уточните у манагеров если что-то не сходится.
dr_Motor
20 марта 2017 / 2:13
Посчитав сколько я смогу сэкономить на еде, я понял, что это очень приличная сумма

Посчитав сколько я смогу сэкономить на еде, я понял, что это очень приличная сумма

Именно сейчас я начинаю понимать, как себя чувствуют иногородние студенты, которые живут общежитиях у нас в Алматы. Я не говорю, что они живут плохо, но многие из них рассчитывают только на свои...
noyanovmyras
23 марта 2017 / 0:18
  • 2466
  • 59