Операционная система Telegram: директор по продукту Futurico о том, как должны выглядеть полноценные чат-боты
Директор по продукту Futurico (развивает проекты Dirty и «Лепрозорий») Денис Ширяев опубликовал в своем блоге материал, в котором порассуждал, как будут выглядеть чат-боты в будущем, и предложил концепцию операционной системы, построенной на разговорном взаимодействии. Редакция публикует материал с разрешения автора.
Эта статья будет интересна тем, кто увлекается продуктологией или работает в этой сфере в ИТ, и тем, кто задавал себе вопрос «Как я буду запускать приложения через пару лет?» или «Что вообще такое чат-боты сейчас и потом?». Здесь не будет красот UI - скорее размышления на тему будущего UX. А еще речь пойдет только о мобильных операционных системах - так как эта основная зона моих интересов и экспертизы. Так что усаживайтесь поудобнее - поехали, а я постараюсь не быть занудой.
Боты не огонь
Примерно так я бы охарактеризовал нынешнее положение дел в индустрии чат-ботов. Часть ботов никогда не поймут, что вы от них хотите, другая часть ляжет в тот момент, когда вы решите послать запрос, третью часть еще нужно найти - причем нужно знать, как искать, читать какие-то отзывы и обзоры. И все это на фоне отсутствия вменяемой монетизации (кроме b2b-разработки или подписки) и таргетированной рекламы.
Случайный бот предлагает увеличивать инвестиции по 3% в день, вау, повезло
Еще один бот даст мне свои функции, но только после подписки на канал - механика интересная, но ведь я ничего не понимаю
Добавьте сюда еще и то, что порог входа в индустрию разработки чат-ботов ниже обычного. То есть как ниже - он ниже требований, которыми необходимо обладать для создания нативных приложений под iOS, Android или Windows Phone - еще до начала разработки в каждой из этой экосистем есть тонны материалов об «идее» платформы, о том, почему ваше приложение могут не пропустить, о лучших UX/UI-решениях и так далее.
С чат-ботами другая история - туда пускают почти всех и дают вам возможность писать на том языке, на котором вы привыкли. В итоге получается что-то очень модное, малофункциональное, неудобное, но «маркетинговым» шумом и забивающее реальные перспективы.
Есть две хорошие статьи на тему того, почему чат-боты, по мнению авторов, не взлетят в текущем виде - одна на русском, другая на английском. Если коротко, то обе утверждают, что чат-боты - это дань моде. И мне тоже лень расписывать, что понимать суть фраз в нормальном виде (NLP) мы пока все еще не можем - я думаю, это всем очевидно.
К примеру, заказать пиццу через бота в голову пока не приходит, так как количество полей, которые необходимо заполнить, довольно большое, а никаких интеграций пока с сервисами, где эти данные уже вбиты, нет. Другое дело приложение - скачал, выбрал пиццу, с одной кнопки прописал геопозицию, с другой - телефон, и сиди ешь свою салями уже через 30 минут.
Справедливости ради, повторный заказ сделать через чат-бота можно уже быстрее, так как данные-то заполнены - осталось только найти его в списке контактов, но найти что-то в этом огромном списке чатов - та еще задача.
Лаунчер смерти
У приложений в iOS и Android и чат-ботов помимо схожей функциональности есть еще одно слабое место - то, как их запускают. Иными словами, лаунчер.
Семь экранов приложений, с которыми я пытаюсь жить
Насколько я знаю, Apple отказалась от моделей смартфонов с объемом памяти в 16ГБ, а в Android уже годы существует поддержка microSD. Что это означает для конечного потребителя? Очень много приложений. Так много, что многие из них останутся на годы в памяти телефона, будучи запущенными один или два раза. Не поможет тут ни пуш от создателя программы в попытке вернуть пользователя (пушей уже так много, что паттерн по умолчанию - отключать их), ни яркая иконка, ни виджет или стикер, который вы добавите в приложение.
Братская могила приложений - это то, куда сваливается все и у всех - за исключением каких-то 10?20 приложений, которые вы используете как основные сценарии в повседневной жизни. Возможно ли вернуться из этой точки невозврата? Наверное, да, и есть методы - но тут мы это не обсудим. Проблема большого количества приложений настолько актуальна, что ее решают сами производители ОС для устройств: кто-то более успешно - как Windows Phone со своей плиткой в зависимости от актуальности данных в приложении, кто-то менее - как в Android и iOS.
Но железный факт - визуально найти на телефоне что-то глазами после полугода использования, а еще и с папками, виджетами или живыми обоями - это просто непосильная задача.
Окей Google, что же я хотел?
Все операционные системы пока сошлись в одном - эти 10?20 приложений, которые входят в зону внимания пользователя, и те, которые вы помните - очень удобно ищутся быстрым поиском. Все производители дали возможность свайпа для поиска с одного жеста - и это действительно удобно, если пользователь знает, что он ищет.
Некоторые производители пошли дальше - помимо результатов поиска они пытаются подсвечивать релевантные данные по запросу, но в моей практике там часто находится мусор от разработчиков, которые очень хотели бы попасть в выдачу хоть как-нибудь по запросу, а потому полезность функции спорная.
Если я не ошибаюсь, iOS с девятой версии пытается посоветовать вам, какое бы приложение запустить - прямо рядом с быстрым поиском. Скорее всего, так же делает и Android - это хорошая попытка и движение в сторону решения проблемы загруженности устройства для пользователя, но работает эта функция в реалиях технологических возможностей. Это значит, что работает она так себе, и алгоритм цепляется за паттерны поведения, которыми вы руководствуетесь в данный момент, взяв телефон. Никакой фантастики, в общем, будете каждый день в 8:00 начинать утро с Instagram - в рекомендациях каждое утро будет Instagram.
Про Telegram тут даже добавить особо нечего, там единственный способ что-то найти - это поиск, особенно когда вы подписались на 20 каналов, 40 чатов, везде отключены уведомления, а лента продолжает скакать по последнему комментарию (кстати, на «Лепре» такая сортировка лет десять уже, она правда удобная, но имеет лимит количества пользователей в ленте).
О, а что если рендерить приложения на клиенте?
На последней конференции Google I/O в 2016 году нам всем показали прототип экосистемы Google Instant Apps - это, в том числе, одна из попыток решить проблему выше, но немного с другой стороны и уже хожеными тропками.
Если коротко, то сценарий там мало чем отличается от веб-приложений - после перехода из поисковой выдачи телефон рендерит на клиенте не веб-страницу, а кусок приложения. Приложение при этом может получить доступ ко всем вещам, которые ему могут быть нужны: датчикам, памяти, камере, контактам и так далее.
Это, конечно, любопытная технология и довольно логичная в рамках ОС, но чем тогда это отличается от чат-ботов? Там ведь тоже приложение или функция возникают на клиенте в момент запроса к сервису. И в чем тогда глобальная разница между веб-приложением, приложением для смартфона и чат-ботом? А ни в чем. Самое время вернуться к Telegram.
Операционная система Telegram
Предположим, что Павел Дуров сошел с ума и решил, что время для его ОС пришло, несмотря на то, что это дорого и никому не нужно. Но очень ему захотелось свой Telegram Home. И вот вам в руки попало такое устройство, выпущенное каким-то HTC, уже подвязанное к вашему аккаунту где угодно.
Какие задачи вы можете решать? Как вы их решаете? Я буду описывать без фанатизма, общими красками, чтобы просто донести суть.
Фото и видео
Давайте попробуем представить, какие функции вы решили бы приложением камеры в Telegram OS: по умолчанию все фото и видео - таймлайн сверху вниз. Все автоматически созданные облаком видео-стори приходят как входящие. Вы можете редактировать каждое фото ровно так же, как вы уже можете это делать во всех ОС, открыв фото. Можете отправить геометку и получить все ваши фото оттуда. Вы можете отправить серверу контакт или фото и получить все фото с ним. Шеринг - изи катка - примерно как уже работает в Telegram.
Instagram Heartstone
С этим пришлось выдумать костыль. Предположим, что все полноэкранные приложения, будь это игры и видео или какие-то тяжелые редакторы, очень требовательны к ресурсам, а еще для них очень важно никогда не терять текущую сессию работы с приложением. Поэтому вы всегда видите превью последней сессии, а информация о том, что же добавилось в новой версии приложения, приходит как нормальное входящее сообщение.
То есть, нажав на последнюю сессию видео или игры, вы ее открываете на том же месте и получаете все ровно так же как на любом другом устройстве на всех девайсах сразу.
Звонок
Здесь все предельно просто: отправили на сервер новый телефон или фото визитки или просто фото номера как исходящее и получили вопрос «Звоним или добавляем в контакты?». Начали вводить текст - получили предложение имени для контакта. Таймлайн входящих и исходящих звонков ровно такой же, как и везде. Можно еще популярные контакты сразу показать, но это так, опция. После установки связи видна клавиатура, стандартная и привычная всем.
Новости или RSS
Это даже расписывать не буду. Это просто работает уже сейчас и с этим Telegram отлично справляется (вроде @feedsRSSBot). Шеринг сообщений, просмотр ссылок во внутреннем браузере - все работает прекрасно.
«Яндекс. Навигатор»
Тоже максимально упростим: отправили голосом адрес - маршрут построен. Отправили улицу - вопрос, чего вам там нужно. Начали вводить адрес - получили автоматическую рекомендацию. Информация о пробках и проблемах на дороге - входящие сообщения. Режим навигации - полноэкранное приложение, так как все-таки важно не отвлекаться, безопасность же, все дела. То есть важно сразу пользователю предложить вариант, который он сможет выбрать, тапнув на него - «поехали» можно сказать и голосом, этого будет достаточно для пользователя.
Я думаю, дальше уже даже без скриншотов можно - и музыка, и банк-клиент - что угодно вписывается в стандартный и привычный UX мессенджера между пользователем и функцией. Я долго пытался представить приложение, которое не удалось бы перепроектировать под такую механику, и пока все еще его не нашел.
Навесить быстрых и легких UX-сценариев, да еще и при на 100% рабочем NLP в выдуманной ОС - это не слишком-то сложная задача. Само собой, что-то можно было бы сделать лучше, что-то - выкинуть, что-то я забыл, но это выходит за рамки этой статьи на тему того, как же мы будем потреблять функции приложений через какое-то время.
Так вот, вернемся к этому скриншоту, на который мы уже смотрели выше:
Это все тот же лаунчер - он может быть плиточным, горизонтальным, вертикальным. Он может быть каким угодно, но он абсолютно не нужен, если все, что я описал выше, работает и понимает пользователя.
А теперь мы просто отключаем выбор приложения и оставляем одно поле ввода и череду входящих-исходящих сообщений с функцией быстрого поиска:
Страшновато стало, правда? Теперь все функции, которые я расписал выше в примерах, можно использовать сразу, не открывая приложения. Более того, его не нужно скачивать, так как типичный магазин приложений в такой концепции заменяется на «привелегию получить запрос пользователя». ОС сама уточнит (если ей это необходимо), что вам нужно - на основе типа данных, которые вы ей посылаете, и с учетом аудио-видео-гео-сенсоров устройства.
Это еще и при том, что, скорее всего, такой UX позволит слушать пользователя постоянно, но реагировать только в те моменты, когда это действительно нужно. И эта концепция не исключает возможности оставить какие-то приложения в более или менее классическом виде - на случай, если вы ретроград.
Получается, что концепция App Driven Messaging OS - это и есть настоящие чат-боты (которых сейчас почти нет на рынке), а приложения - это часть процесса общения между пользователем и функцией. Это может быть веб-приложение, игра, но все это вписывается в форму чата. И очень плотно пересекается с темой умных помощников в стиле Siri и Google Now - так как задачу распознавания потребностей пользователя ОС будут брать на себя, а вам всего лишь нужно будет адаптироваться под требования платформы.
Вы хотите пиццу - вы просите (устно, буквально) пиццу и подтверждаете заказ. Хотите посчитать курс валют - и просто это делаете (как делает Google Now уже сейчас). Чатитесь с другом - и во время общения вам предлагают воспользоваться какими-то функциями уже сейчас (inline bots).
Так что же это, приложения исчезнут и станут чат-ботами?
Да хрен там. Нас ждет мир параллельной архитектуры, где есть умный ассистент и его гибкие возможности обработки запросов без скачивания приложения. Мир, где будут классические iOS- и Android-приложения, адаптированные под чатоподобную архитектуру (два примера), и мир «классических», постепенно устаревающих приложений.
В общем, нас ждет, как всегда, все и сразу. И параллельно. Рынок движется в сторону NLP - что совершенно точно, настоящие чат-боты лишат нас огромного количества лишних кнопок. Такой подход в разработке в идеале избавил бы нас «однодневных» приложений - созданных под конкретное событие или случай, вроде Google I/O.
А пока нам приходится называть чат-ботами костыли, которые пытаются быть умнее, чем приложения, но у них это не выходит, однако их делают и делают. Если вы один из таких разработчиков - посмотрите лучше в сторону приложений, скорее всего, ваш бот будет актуален через какое-то время, но при интеграции с Siri или Google Now, так как задача распознавания текста или речи пользователя - это не ваша задача, это задача операционной системы.
Появление ADM OS не означает, что UI-дизайнерам будет меньше работы, это значит, что ее будет больше - им придется учитывать human touch в общении с пользователями. Это будет проектирование не только про глубину тапа до достижения функции и юзабилити дизайна, но и реакции приложения на запрос пользователя - на то, каким тоном отвечает на вопрос ваш чат-бот.
Иными словами, чат-боты, приложения, веб-приложения - все это лишь функции умного ассистента, которого мы (люди) вот-вот достроим. И если вам режет глаз сочетание «Операционная система Telegram», то это была абстракция, от которой уже можно отказаться, давайте ее называть «Операционная система Siri» и «Операционная система Google Now», «ОС Жимолость».
А если вам вдруг понравилось то, что вы прочитали, то вот мой Telegram-канал - о технологиях, об алгоритмах, о всяком.