Каталог животных из приютов и культурный код москвича: что создали «Лидеры цифровой трансформации»
«Лидеры цифровой трансформации» — это конкурс на соискание премий Мэра Москвы, победители которого определяются по итогам 48-часового хакатона. Он направлен на разработку полезных сервисов для города и его жителей. В конкурсе приняли участие 357 команд из 76 регионов России, победителями стали 10 коллективов. Каждой из лучших команд положена премия — миллион рублей. Mos.ru пообщался с тремя победителями и выяснил, в чем секрет успеха и как их разработка поможет городу.
Дом для каждого питомца
В Москве работают приюты для бездомных животных. Чтобы помочь питомцам найти новый дом, Департамент жилищно-коммунального хозяйства предложил участникам хакатона создать общую базу бездомных животных из городских приютов. За непростую задачу взялась команда Meteora (Андрей Мазняк, Денис Ямалиев, Сергей Чернов, Филипп Семиров и Михаил Китаев). Менее чем за 48 часов они создали прототип базы бездомных животных, адаптированный для размещения на mos.ru.
Сервис автоматизирует учет оставшихся без владельцев собак и кошек. О проекте и своих впечатлениях рассказал Андрей Мазняк:
— Эта система упрощает документооборот для сотрудников приютов, а также позволяет контролирующим организациям получать всю отчетность легко и быстро. И самое важное — мы создали прототипы публичного каталога животных из приютов, в котором люди смогут подобрать питомца. Это общая база для всех приютов Москвы, в профиле каждого животного будут фотографии, информация обо всех медицинских процедурах, например стерилизации, прививках. В будущем планируется разместить сервис на mos.ru. Исходные данные были из разных приютов, все в разном формате, привести это к единообразию было непросто. Но мы справились. Самое сложное — это ограничение по времени. Около 40 часов минус сон — получается 30–35 часов, конечно, за это время сложно сделать готовый продукт. Тем не менее мы создали рабочую модель, которую сейчас дорабатываем, и надеюсь, у нас получится внедрить систему.
Я собрал команду из друзей, четверо из нас работают в одной компании, так что мы уже сработались, понимаем друг друга с полуслова. Среди нас четверо разработчиков, мы выбрали такую технологию, чтобы разработка была на одном языке программирования. Мы могли друг друга подменять, помогать с более сложными задачами.
Это уже не первый хакатон для нашей команды. Это отличная возможность прокачаться, проверить свои силы, а ограничение во времени — стимул сделать все рационально, быстро и просто. Также это возможность сделать что-то полезное и заодно обзавестись новыми знакомствами. Денежная премия тоже неплохой стимул.
У нас уже были похожие проекты. Например, мы делали соцсеть для животных и сервис поиска пропавших животных, эта тема нам близка.
Культурный код москвича
Команда Сocki (Артем Чеботарев, Илья Митусов, Кирилл Мойсеенко, Иван Рубненков и Даниил Орехов) разработала сервис для столичного Департамента культуры. Он создает культурный портрет москвича и предоставляет пользователям персональные рекомендации по организации досуга. Илья Митусов рассказал, как работает сервис и что было самым сложным при его разработке:
— Наш сервис достаточно прост. У Департамента культуры накапливается информация о том, какие книги люди берут в библиотеках, на какие занятия ходят и какие мероприятия посещают. Мы создали так называемый культурный портрет горожанина. Зная, какие книги предпочитает тот или иной пользователь, наша система предлагает культурные мероприятия, а также секции или кружки, которые подойдут именно этому человеку.
Все это было реализовано в виде веб-сервиса, то есть на определенном сайте можно вбить свой библиотечный ID и получить персональные рекомендации. Для повышения эффективности основного решения мы разработали два дополнительных инструмента: телеграм-бота, который может дать персонифицированные рекомендации по литературе, и небольшую игру, которая позволяет собрать дополнительные сведения о пользователе. Мы предлагали на выбор три цитаты из литературных произведений. Цитату, которую выбрал пользователь, мы учитывали в рекомендательной системе.
За несколько недель до «Лидеров цифровой трансформации» я участвовал в другом хакатоне в составе другой команды, там мы заняли третье место. На работе я поделился впечатлениями с коллегами, они заинтересовались, и мы решили создать команду и поучаствовать в «Лидерах». Пул задач был довольно большой, мы выбрали ту, которая показалась всем наиболее интересной, — создание рекомендательной системы. Нам понравилось, что задача совмещала культурную тематику и разработку рекомендательного сервиса, интересную задачу, которую можно решить алгоритмами машинного обучения.
В составе нашей команды есть и эксперты по аналитическим данным, и backend-разработчики, которые могут настроить сервер и сделать веб-интерфейс, и дизайнер. В общем, весь набор специалистов, которые нужны для решения подобной задачи.
Когда времени мало, главное — все спланировать, понять, какую задачу ты будешь решать, расписать ее, определить уровень детализации, выделить ключевые моменты. Мы получили задачу вечером в пятницу и в первую очередь набросали план и определили конечную точку, куда мы идем. Потом легли поспать — это важно, чтобы не делать ошибок, — и собрались в субботу с утра пораньше. Еще раз верифицировали план, внесли корректировки, и каждый в спокойном рабочем режиме занимался своей частью. Старт хакатона был вечером в пятницу, а готовое решение нужно было отдать в воскресенье в 13:00. Кто не успел — тот опоздал, все просто.
У нас не было предварительных наработок, но было понимание, как решить задачу. Наш проект был аккуратным и лаконичным, мы больше фокусировались на законченном работающем решении, а не на качестве алгоритмов: улучшать их можно бесконечно. Я думаю, ключевой фактор успеха в том, что мы подошли к этому проекту как к бизнес-процессу. Есть задача, есть сроки, мы сделали план, хорошо выполнили наиболее важные вещи и уже в оставшееся время докручивали алгоритмы.
Также успешной оказалась и архитектура решения, которое мы выбрали. У других команд нужно было вводить дополнительную информацию о пользователе: сколько ему лет, что он любит и так далее. А наше решение учитывало так называемый кросс-культурный мэппинг: мы, зная информацию о том, какие книги пользователь предпочитает, могли предложить ему подходящие секции, кружки и мероприятия.
Помощь на старте
Команда PPnP.me (Павел Крылов, Леонид Кравцов, Степан Денисов, Матвей Котцов и Денис Козлов) предложили решение для разработки сервиса «Легкий старт» для предпринимателей. Он помогает выбрать подходящее место для нового бизнеса, анализируя большое количество данных и опыт других бизнесменов. Сервис выдает пользователю наиболее подходящие точки на карте и объясняет, по каким критериям они были выбраны. Павел Крылов рассказал, как будет работать сервис и чем отличается от других аналитических систем, а также рассказал, как появилась молодая команда PPnP.me и какие у нее планы на будущее:
— У города накопилось большое количество данных, и часть из них находится в открытом доступе. Это огромная база, например данные о расположении объектов бизнеса, об инфраструктуре, о количестве населения, данные из ЕГРЮЛ и ФНС, информация из новостей о том или ином районе.
Но предприниматели — и вообще обычные люди — не всегда понимают, как эти данные анализировать и использовать. Мы собираем информацию из множества доступных источников и анализируем ее с помощью математических моделей. Предприниматели на выходе видят оценку потенциальной точки для открытия бизнеса. Мы даем список рекомендованных точек, пользователь видит сначала общий рейтинг по каждой из них, а затем мы разъясняем, почему та или иная точка вошла в этот список, например по таким критериям, как расстояние до метро, пассажиропоток, стоимость аренды и другие параметры. Каждый показатель мы оцениваем по десятибалльной шкале.
Конечно, уже существуют разные сервисы аналитики, но предприниматели им не очень доверяют, потому что не понимают, как они работают, как в них происходит выбор локации. А мы делаем модель выбора точки, понятной и интерпретируемой, показываем, на основе каких данных мы сделали тот или иной вывод. Когда человек начинает свое дело, он берет на себя риски — мы снижаем эти риски, показывая, что можно ожидать от выбранной локации.
Сейчас проходит Mosbootcamp, где мы совместно с Департаментом информационных технологий дорабатываем этот проект, чтобы провести пилотную апробацию решения: показать предпринимателям, как работает наш сервис.
Нас заинтересовала эта задача, потому что для ее решения используется анализ данных, но при этом она достаточно прикладная. Есть конкретная понятная проблема, есть люди, которые с ней сталкиваются, и нужно предложить решение, законченный сбалансированный продукт.
Самым сложным было определить первоначальный вектор решения: какие данные использовать, какую математическую модель выбрать и так далее. Как в любом хакатоне, не обошлось и без технических трудностей, но благодаря поддержке менторов и организаторов мы со всем справились.
В нашей команде PPnP.me все студенты, трое из Высшей школы экономики, один из МГТУ имени Баумана и один из РГАТУ имени Соловьева. Мы таким составом давно участвуем в соревнованиях — за год мы были на 12 хакатонах, из них в восьми победили. Хакатоны дают возможность решать реальные задачи бизнеса, окунуться в новую атмосферу, пообщаться с экспертами и набраться опыта. В целом это интересный формат, где за ограниченное время можно узнать много новой специализированной информации и сделать настоящий продукт, который решает актуальные задачи.
К ограничению по времени мы привыкли, стараемся заранее перед каждым хакатоном закрыть все дела по учебе и работе, чтобы не отвлекаться. Мы уже определили для себя некоторый подход к разработке, понимаем, на что оставлять больше времени, а на что меньше. Естественно, менее чем за два дня сделать полностью работающую систему невозможно, поэтому мы расставляем приоритеты. Например, мы понимаем, что математическая модель и интерфейс для нас намного важнее, чем система регистрации пользователей или механизм оповещения. Очень помогает, что у нас сработавшаяся команда, мы хорошо знаем друг друга, понимаем, что можем ожидать.
Я думаю, приз мы потратим на развитие своих профессиональных компетенций. Кто-то хочет пойти на курсы, кто-то — обновить технику для работы. Плюс в будущем мы планируем организовать совместное дело, для регистрации тоже понадобятся деньги, поэтому часть премии мы отложим на это.