Представляем Авраама
Недавно мы начали создавать продуктовые туры в ACT.md, и хотя это было не так сложно с технической точки зрения (благодаря Shepherd и Tether от HubSpot), было много мелких препятствий для появления маленьких коробочек на сайте. экран (а потом не появится):
- Составьте контент для каждого шага тура.
- Напишите код тура JavaScript для каждой страницы.
- Создайте таблицу базы данных для хранения данных о завершении тура для каждого пользователя.
- Реализуйте REST API для пометки тура как завершенного.
- Запрограммируйте некоторую логику, чтобы определить, должен ли пользователь видеть обзор страницы.
- Тщательно проверьте все эти маленькие кусочки.
- Предоставляйте пользователям обзоры продукта.
Эта работа привела к лучшему опыту для наших пользователей — теперь мы можем вводить важные концепции и новые функции по мере того, как они изучают интерфейс, — но я был потрясен утомительной работой. Как небольшая команда UX, поддерживающая многих разработчиков с полным стеком, мы должны убедиться, что хорошие решения UX, такие как встраивание полезного контента, также являются очевидными решениями в коде: когда полезные шаблоны интерфейса становятся повсеместными, их внедрение должно стать проще.
В этом духе мы создали Abraham: гем Rails, который после установки выполняет все вышеперечисленные шаги и превращает их в это:
- Составьте контент для каждого шага тура.
- Предоставляйте пользователям обзоры продукта.
Повторяющийся код JavaScript теперь представляет собой простой файл конфигурации, который разработчики, дизайнеры и сотрудники службы поддержки могут читать и настраивать:
Кроме того, его легко интернационализировать.
Что дальше?
В то время как версия 1.0 действительно помогает нам в ACT.md, есть несколько очевидных направлений, которым следует следовать Абрахаму:
- Предоставьте дополнительные параметры Shepherd с помощью упрощенного синтаксиса конфигурации YAML.
- Поддержка туров по новым функциям, которые показываются только пользователям, активным на момент выпуска.
- Дайте пользователям возможность пересмотреть уже пройденный тур, если они захотят повторить его позже.
- Показывайте целевые туры на основе демографических данных пользователей или других переменных.