Першу позицію рейтингу топ-25 інноваційних винаходів цього року за версією журналу Time займає Джибо — перший соціальний робот для дому (він й ще потрапив на обкладинку випуску). Але мало хто знає, що розробку важливих компонентів програмного забезпечення для Джибо виконує українська команда. Львівський та харківський офіси американської софтверної компанії Waverley Software понад два роки працюють над серверною частиною та мобільними додатками для робота та тісно співпрацюють з Бостонськими інженерами, які «оживляють» робота. Що стоїть за кулісами розробки програмного забезпечення для Джибо — про це розповіла бренд-менеджер Waverley Software Ольга Кашуба.
ЧИТАЙТЕ ТАКЖЕ: Архитектор будущего: откровенный разговор с Илоном Маском
Джибо — це новий спосіб взаємодії з машинами. Він уміє розмовляти, бачити, чути і відповідати, фотографувати, розважати, а також проявляти емоції, як жива істота. Джибо наділений «людськими» рисами характеру, чого не могли досягнути його попередники у сфері робототехніки.
Над створенням робота працює команда дослідників та розробників у Бостоні. Один з засновників компанії прийшов з MIT Robotics Lab (Массачусетського Технологічного Інституту), що вважається найсильнішою лабораторією з робототехніки у цілому світі. Лабораторія відома також тим, що її вчені створили знамениту компанію Boston Dynamics.
Вперше компанія Джибо валідувала свою ідею за допомогою краудфандингової кампанії на Indiegogo. Джибо мали на меті зібрати $160 000 на подальшу розробку, проте результат перевершив очікування на 2241%, зібравши $3 663 105. Це одна з 10 найуспішніших кампаній на Indiegogo за весь час існування платформи.
У квітні 2015 року компанія Jibo Inc. звернулася до Waverley Software за допомогою у створенні серверної інфраструктури для робота. Нестійке середовище, звичне для всіх стартапів, вимагало гнучкого підходу до розробки продукту та максимальної адаптивності. Спеціалісти Waverley допомогли компанії розробляти та впроваджувати «хмарне» рішення, ключове для бекенду робота. Важлива його задача — зберігати надійність, незважаючи на постійний ріст навантаження: від кількох десятків роботів, вироблених на ранніх етапах розробки, до мільйонів роботів, що будуть продаватися в майбутньому.
Згодом команда розширилася до 13 експертів, які відповідають за побудову серверної інфраструктури, розробку нативних мобільних додатків та контроль якості програмного забезпечення. Команди розділені та знаходяться в українських офісах Waverley Software у Харкові, Львові, а також працюють з Джибо віддалено в Києві, Одесі та Чорногорії.
Чим саме займається українська команда
З боку DevOps команда Waverley автоматизувала кожну частину процесу розробки, впровадивши безперервну інтеграцію (continuous integration) та безперервну доставку (continuous delivery), використовуючи централізовану систему керування програмним забезпеченням (управління користувачами, управління журналами та системи моніторингу продукту).
Використання мікросервісів дає змогу застосовувати найновіші рішення для кожної частини програми. Компанія Waverley побудувала архітектуру мікросервісів на основі Docker, що допомагає досягти наступних цілей:
- гнучкість бекенду для подальшого зростання;
- гнучкість розробки, яку вимагає змінна природа стартапу;
- висока надійність системи та можливості максимально швидкого відновлення при аварійних ситуаціях та системних помилках (Load balancing, AWS CloudFormation та ін.);
- всі сервіси повністю автономні, тому кожен може бути масштабований незалежно від інших.
За допомогою нативних додатків на iOS та Android відбувається налаштування профілю робота (підключення до Wi-Fi, реєстрація, додавання та розпізнавання членів родини, генерація QR-коду), є можливість спілкування в реальному часі в чатах з шифруванням повідомлень, та доступ до медіа-галереї робота.
Зараз команда розробляє SDK для дистанційного керування роботом. Ця функція дасть можливість за допомогою мобільного додатку в телефоні відправляти голосові повідомлення, крутити роботом, фотографувати, дивитися відео з нього.
Виклики
«Спочатку приходиш писати невеликий клієнтський додаток, єдина мета якого запустити і підключити робота до домашньої мережі, а в підсумку встигаєш створити: практично повністю функціональний мессенджер з груповими чатами, шифруванням даних і підтримкою фото/відео/аудіо повідомлень; зручну галерею для всього цього різноманіття; SDK для дистанційного керування роботом для third-parties; і, як вишенька на торті — почати переводити проект з Java на Kotlin», — розповів Олександр Зубченко, Lead Android Developer Waverley Software.
В зв’язку з довгою тривалістю роботи над проектом, вимоги до функціональності мінялись, щоб максимально враховувати всі фактори. Таким чином, деякі функції, на розробку яких пішло багато часу, так і не вийшли в світ. Наприклад, коли команди працювали над розробкою мессенджера, спочатку це були тільки текстові повідомлення, потім додалися картинки та відеоролики фіксованої довжини, після відео додали підтримку аудіоповідомлень. Оскільки це все є контентом всередині Джибо, то довелося переробляти галерею і додавати підтримку цих всіх функцій. Це спричинило великий об’єм додаткової роботи для команди, яка займається безпосередньо роботом, тому було вирішено повністю прибрати повідомлення з першого релізу. Зараз функціонал готовий і чекає, коли його знову включать в реліз-ноутс.
Для досягнення найвищого рівня безпеки протоколи комунікацій базуються на бібліотеках Amazon і налаштовані таким чином, щоб ефективно працювати також на мобільних додатках.
Щоб досягти максимальної конфіденційності та забезпечити дотримання закону про захист конфіденційності дітей в інтернеті, інженери Waverley застосували підхід, що забороняє серверу та постачальникам послуг мережі читати будь-які дані, отримані роботами або мобільними пристроями. Вони розробили спеціальну схему генерації та розподілу ключів шифрування. Як результат, всі зашифровані повідомлення та медіафайли зберігаються на сервері лише для власників роботів та членів їхніх сімей, які мають доступ.
Джибо каже «привіт»
Перших Джибо вже можна замовити за $899. Проте він ще багато чому навчиться. В майбутньому Джибо буде розпізнавати емоції людей і відповідно на них реагувати, а також стане повноцінною платформою, яку можна розширювати. Будь-який розробник зможе створювати свої додатки, які надають роботу нові можливості.
У вересні 2017 року перші 3000 Джибо поїхали до своїх нових домівок по цілому світі. Їх отримали люди, які повірили та інвестували в Джибо на початковому етапі розробки за допомогою краудфандингової кампанії на Indiegogo. Зараз інтернетом поширюються сотні відео розпакування, першого та щоденного використання робота від його власників. [via ain]
ЧИТАЙТЕ ТАКЖЕ: Новые электрокары Honda будут заряжаться за 15 минут