Александр Климов, ведущий инженер-программист, член Академии технологий компании IBM
Недавно в Клиентском центре IBM прошел двухдневный хакатон с целью привлечения разработчиков к поиску и разработке перспективных идей и их ознакомления с платформой для разработки облачных сервисов IBM Bluemix*.
Участникам было необходимо организоваться в команды, придумать идею, разработать проект и презентовать его жюри хакатона, которое состояло из представителей компаний-организаторов — МТС и IBM. Жюри голосованием определяло победителей, чьи идеи и проекты как с технической, так и с точки зрения бизнеса, оказались наиболее интересными и убедительными. Обладатели трех первых мест получили денежные призы и незабываемый опыт ночной отладки и презентации своих приложений после бессонной ночи.
Всего в хакатоне приняло участие свыше 70 человек, которые организовали 12 команд и представили 11 проектов.
Команды, проекты и технологии
Среди представленных проектов было немало по-настоящему креативных идей и технологических решений, и жюри было непросто выбрать лучших. В итоге были выбраны следующие три проекта команд-победителей.
Просторобот (номинация Best Project)
Проект команды из МТС, придумавшей и разработавшей Telegram Bot, который, используя парадигму когнитивных вычислений, предоставляет пользователю удобный контроль за своими расходами, интеграцию с популярными социальными сетями и сервисами МТС. Одно из преимуществ проекта — отсутствие необходимости устанавливать новое приложение, так как использовалась уже существующая платформа — Telegram — с динамичной экосистемой разработчиков.
Fraud Detector (номинация Big Data)
Проект разработан также командой МТС, его основная концептуальная идея — решение актуальных проблем в области безопасности и телефонного мошенничества. Команда разработала Android-приложение, которое работало совместно с back-end сервисом, развернутым в Bluemix Java Instant Runtime. Были спроектированы и реализованы логика поиска и идентификации злоумышленников с использованием информации о звонках из открытых источников данных о телефонных мошенничествах и методики предиктивного анализа для выявления ранее не известных поведенческих паттернов злоумышленников.
Авточат (номинация Original)
Идея проекта — отправка сообщений на мобильный телефон по номеру автомобиля. Проект адресует ряд проблем, с которыми мы нередко сталкиваемся в городе, например, случаи, когда чья-то машина блокирует выезд, при этом заботясь о конфиденциальности пользователей — не раскрывая актуальных телефонов. Команда МТС, которая предложила эту идею, использовала Bluemix Node-RED — сервис, который посредством визуального прототипирования существенно упрощает и ускоряет разработку облачных приложений и IoT сервисов. Сервис Bluemix Watson Dialog помог расширить функционал элементами искусственного интеллекта для автоматизированного общения пользователей и машин.
Также хочется еще отметить проект EcoMAP, который поставил перед собой серьезную и амбициозную цель улучшения экосистемы города с помощью искусственного интеллекта. Идея проекта: пользователь фотографирует некий объект, сервис Bluemix Watson Image Recognition распознает этот объект и обращается в специальную базу, чтобы идентифицировать материал, из которого этот предмет сделан, чтобы предоставить ближайший адрес утилизации этого предмета. Это позволяет снизить степень загрязненности окружающей среды в городе и улучшить экологическую обстановку.
В целом, все участвующие команды использовали два подхода при проектировании и разработке своих приложений — Bluemix Instant Runtimes (IR) и Bluemix Node-RED.
Bluemix Instant Runtimes — это классический подход в PaaS системах, который предоставляет готовые для использования окружения для разработчиков, освобождая их от необходимости установки, конфигурации и администрования. Наиболее популярные Bluemix IR — Java, Python, NodeJS, Go и Ruby On Rails.
Второй подход, Bluemix Node-RED, в значительной степени ускоряет разработку приложений, так как не требует серьезных навыков в языках программирования и позволяет визуально моделировать работу приложения, оставляя генерацию и развертывание кода для Bluemix.
Некоторые команды активно использовали Bluemix Spark, точнее Spark-as-a-Service, для проектов, идеи которых либо были построены вокруг парадигмы Big Data, либо так или иначе оперировали подобными объемами данных, которые они хранили в Bluemix Object Storage (IBM Spectrum, ранее называвшийся GPFS).
Bluemix предоставляет возможность работать с Docker контейнерами — сервис IBM Containers, который также помог нескольким командам решить ряд задач, например, разработка сервиса-планировщика для Spark в контейнере.
Интроспектива: облака и разработчики
За два дня интенсивных брейнстормов, разработки и тестирования, все команды смогли проделать путь от идеи до функционирующего прототипа, и это впечатляющий результат. Особенно, учитывая, что некоторые идеи привлекли внимание своей востребованностью, технологическими изюминками и мотивацией презентующих команд двигаться дальше.
IBM Bluemix позволила реализовать свои идеи быстро, не требуя каких-либо серьезных инвестиций в обучение, хотя бы потому, что предоставляет широкий выбор технологий с открытым кодом, многим из нас знакомый — Java, Python, NodeJS, Containers и т.д. Более того, с IBM Watson появляются возможности создания новых так называемых когнитивных систем — систем, построенных на принципах искусственного интеллекта.
Безусловно, можно сказать, что такие системы уже существовали в том или ином виде, однако возможности интеграции с подобными сервисами с элементами искусственного интеллекта, которые предоставляет IBM Bluemix, позволяют существенно упростить и переосмыслить архитектуру приложений.
*Bluemix – это Platform-as-a-Service на базе популярной платформы с открытым кодом Cloud Foundry с обширным набором сервисов, позволяющих быстро и удобно создавать широкий спектр приложений. Каталог сервисов, доступных для разработчиков, предоставляет широкие возможности для создания таких современных систем как когнитивная аналитика, мобильные приложения, масштабируемые гибридные облачные системы, Internet of Things и многое другое. Ознакомиться с сервисом можно здесь.
Автор: IBM