Как мы создали ИИ-стартап на хакатоне выходного дня в Германии
Вот краткий отчет о моих выходных на хакатоне в Кельне, где мы стремились создать AI-стартап всего за два дня. Мы прошли путь от подачи идей в пятницу вечером до демонстрации работающего приложения к воскресенью. Кодили до поздней ночи, решали технические проблемы в последнюю минуту и даже подготовили презентацию за несколько минут до демонстрации. В качестве бонуса я привел список основных пунктов, которые необходимо выполнить для создания стартапа.
Несколько недель назад я оказался в Кельне на захватывающем хакатоне AI Startup Hackathon, организованном Startplatz, расположенном в самом сердце MediaPark.
День 1: Идеи и формирование команд (пятница, с 18:00 до 22:00)
Мероприятие началось с того, что около 40 участников анонимно представили свои идеи. После демократического голосования восемь лучших концепций были отобраны для разработки. Эти идеи варьировались от медицинской диагностики (наше детище, прозванное «Доктор Хаус») до ИИ, оценивающего очки в Warhammer!
Шаг 1. Начните с идеи
Определите уникальную концепцию, которая решает нерешенную проблему или улучшает существующие решения.
Вот снимок разнообразия и креативности, продемонстрированных в питчах:
ИИ для диагностики (наш): Быстрая медицинская диагностика
LLM без галлюцинаций: Цель — создать более надежную языковую модель.
Управление базой знаний с помощью ИИ
Распознавание жестов для бесконтактного управления воспроизведением: Инновационные пользовательские интерфейсы с помощью компьютерного зрения.
SchoolGPT: Применение новой технологии в образовательных учреждениях.
Оценка очков в Warhammer с помощью ИИ
И еще несколько проектов, каждый из которых обладает большим потенциалом.
2. Определите, какую проблему вы решаете.
Определите, с какими проблемами сталкиваются ваши потенциальные клиенты и как ваш продукт может эффективно решить эти проблемы.
Затем каждая команда доработала свои идеи, взвесив все «за» и «против», потенциальное влияние и бизнес-модели. День завершился общением за пиццей, задав непринужденный, но амбициозный тон выходным.
Ночь 1: Знакомство с Кельном
В то время как другие уединялись отдыхать, я исследовал ночную жизнь Кельна — от шумных деловых районов до спокойных жилых кварталов. Мой маршрут включал в себя кулинарные остановки и размышления на берегу реки. Однако драйв основателя стартапа никогда не ослабевает; я набросал в Xcode ранний вариант нашего приложения-диагноста. Позже меня позвал долг из моего основного предприятия MajorDom, потребовав несколько часов работы в Jira, чтобы поддерживать наши другие проекты в рабочем состоянии.
День 2: интенсивное развитие и неожиданные повороты (суббота, с 8:00 до 22:00)
Благодарен за гостеприимство коворкинга: я успел позавтракать и провести час в «медитации» с закрытыми глазами, прежде чем в 9:15 погрузиться в работу.
Заряженные энергией, мы начали с оживленной разминки, за которой последовала проницательная лекция о разработке клиентов (customer development) и позиционировании продукта. Мы сразу же проверили полученные знания на практике, проведя несколько интервью, чтобы лучше изучить общественное мнение и уточнить направление нашего проекта.
3. CustDev: Определите целевую аудиторию.
Поймите, кто ваши клиенты, каковы их потребности и как они себя ведут. Проведите интервью с ними на ранних этапах разработки, чтобы уточнить направленность вашего продукта.
Также важно задавать вопросы о прошлом и настоящем, например «Как часто вы посещаете врача?», но не вопросы о будущем, например «Стали бы вы использовать приложение вместо этого?». Первые вопросы дают реальную картину, а вторые — ненадежные галлюцинации. Также не стоит начинать интервью с фразы «Мы разрабатываем приложение, которое заменит врача», потому что тогда разговор станет эмоциональным, и люди будут подстраивать ответы под вас, вместо того чтобы говорить правду, которая может вам не понравиться. Вместо этого задавайте максимально нейтральные вопросы, не предполагающие определенный ответ.
Некоторые из наших интервью с клиентами можно найти здесь.
Кроме того, интервью с потенциальными клиентами могут дать вам первый список FAQ, который поможет улучшить ваш питч. Наш FAQ можно найти здесь.
4. Анализ альтернатив и конкурентов.
Проведите тщательное исследование как прямых конкурентов, так и смежных игроков рынка. Поймите их сильные и слабые стороны, а также то, как они удовлетворяют потребности клиентов.
Хотя мы не нашли прямых конкурентов, мы все же отметили другие проекты в этой области, которые могли бы быть нам полезны. Список находится здесь.
5. Разработка УТП и питча
Составьте уникальное торговое предложение, в котором четко сформулируйте, чем ваш продукт отличается от других и чем он лучше. Подготовьте убедительную презентацию для различных заинтересованных сторон (инвесторов, клиентов, партнеров).
Поскольку мы не нашли прямых конкурентов, создать уникальное предложение было несложно, поэтому мы просто описали наше обновленное видение.
6. Определите модель монетизации и бизнес-модель.
Определите, как ваш бизнес будет зарабатывать деньги — через подписку, рекламу, прямые продажи и т. д. Решите, будете ли вы работать по схеме B2B (business-to-business), B2C (business-to-consumer) или по другой схеме, например SaaS (Software as a Service). Подумайте о масштабируемости и возможности получения регулярного дохода.
Наш проект оказался довольно гибким в плане монетизации, поэтому мы можем экспериментировать с разными вариантами: от SaaS подписки для пользователей до B2B-партнерства с больницами. Наш список можно посмотреть здесь.
В середине дня нас ждал приятный сюрприз — к нам заглянули два инженера из Microsoft, чтобы поделиться своими знаниями о data science, GPT и ИИ, а также дать ценные советы и подсказки. Признаться, я, возможно, задремал во время 20-минутного сегмента, посвященного промпт инженерии, но уверяю вас, остальное было интересным.
7. Создайте концепцию для проверки идеи
Разработайте Proof of Concept, чтобы продемонстрировать осуществимость вашей идеи в решении поставленной задачи. Используйте ее для сбора отзывов и внесения необходимых корректировок.
Большая часть дня была посвящена разработке. Пока конкурирующие команды боролись с GPT и их API, наша команда решала этические дилеммы, разбиралась с нюансами европейских регуляций и тонкостями промтов, в результате чего мы перешли от приложения, ориентированного исключительно на медицину, к более общему лайфстайл приложению. Тем временем я боролся с желанием заснуть под столом, но продолжал писать код.
К позднему вечеру наш пробный вариант концепции был почти готов: минималистичный интерфейс приложения на SwiftUI с бэкендом FastAPI, использующим (не очень) быстрый API ChatGPT. На нашем пути стояла только ошибка валидации 422, вызванная небольшим несоответствием моделей данных между фронтендом и бэкендом, но было решено заняться этой проблемой после ночного отдыха.
Мы завершили день пиццей и общением. К счастью, на этот раз мне удалось снять номер в отеле всего в пяти минутах ходьбы от места проведения хакатона — наконец-то заслуженный сон был в пределах досягаемости.
День 3: финальные разработки и двойные демонстрации (воскресенье, с 9:00 до 14:00)
Последний день разработки часто включает в себя доработку и масштабирование идей, но в этот раз задача была сложнее. Мы находились на грани между категориями медицины и лайфстайла, и каждая доработка подталкивала нас в сторону одной из них. Я верю в создание продуктов без ограничений и компромиссов — моя философия проста: если вам это не нравится, не используйте это.
Хороший сон принес ясность и новое смелое видение. Утром я первым делом поделился этим прорывом с командой, набросав на флипчарте новую стратегию. Мы решили разделить наши усилия на два разных приложения: одно — сугубо медицинское, оставаясь верным нашей первоначальной концепции, а другое — чисто для образа жизни, как запасной вариант.
Мы разделились на две подкоманды по два человека для работы над проектами. Медицинское приложение и его бэкэнд были быстро доведены до ума и стабилизированы. Благодаря Ngrok мы получили публичный URL-адрес для нашего бэкенда, что позволило оживить «Доктора Хауса» как раз к началу демонстрации. Тем временем команда, ориентированная на лайфстайл, использовала более простой подход с конструктором partyrock из aws, чтобы завершить работу над приложением «Лучший друг» (демонстрация находится здесь).
За 20 минут до конца выступления мы поняли, что не подготовили официальную презентацию — по иронии судьбы, именно это было основной утренней задачей! Время поджимало, но накидать несколько слайдов не является чем-то сложным, если знаешь, что делаешь.
Задача усложнялась тем, что каждой команде было выделено всего пять минут на презентацию и еще пять на ответы вопросы — едва ли достаточно, чтобы рассказать об одном продукте, не говоря уже о двух. Время на презентацию вышло прямо перед началом демонстрации, но нам повезло (или мы это спланировали, никто точно не знает): первым вопросом из зала была просьба показать демо. Такой «случайный» выбор позволил нам выкроить несколько дополнительных минут демонстрации под видом ответов на вопросы. С помощью airplay мы транслировали скринкаст с iphone на экран сцены через мой macbook, превратив нашу презентацию в интерактивное шоу «У кого что болит?», что было довольно забавным.
Что дальше?
8. Разработка и запуск MVP по принципу Парето (80–20)
Сосредоточьтесь на 20% функций, которые обеспечивают 80% ценности. Быстро разработайте и запустите минимально жизнеспособный продукт, чтобы начать цикл обучения, стремясь обеспечить максимальную ценность при минимальных затратах времени и ресурсов.Помните, что красота технологии заключается в итерациях. Начните с простого, создайте прототип и постоянно совершенствуйте его. Каждый шаг вперед приближает вас к овладению искусством разработки программного обеспечения и, возможно, к следующему большому прорыву в технологиях.
К сожалению, у нашей команды нет возможности работать над этим стартапом фулл-тайм, поэтому мы опубликовали все результаты нашей работы в открытый доступ. Слайды вы можете найти здесь, а текст моего питча здесь (написан по памяти неделю спустя). Вся информация о проекте, включая наши заметки и исходный код, находится на GitHub.
О других интересных проектах периодически пишу в телеграм.