Начнем с важного и разберемся, зачем нужна новостная лента и почему в ней опять что-то меняется. В ленте мы общаемся с друзьями и самыми разными авторами: это развлекательные паблики, бизнес, СМИ, блогеры, тематические СМИ. Лента помогает узнавать новости, высказывать мнение, обсуждать события и быть в курсе всего, что происходит прямо сейчас.
У нас очень амбициозные цели по развитию ленты:
- сделать идеальный сервис для общения читателей и авторов;
- выделить самое важное среди огромного количества информации и показать новости в правильном порядке; < li>создать удобный и быстрый интерфейс для просмотра текстов и мультимедиа и общения на всех платформах.
Есть две ключевые подзадачи: интересный контент и удобный интерфейс.
Эксперименты с контентом
У нас параллельно работают сотни разных моделей умной ленты и рекомендаций — не все эксперименты видны пользователям. Иногда они отличаются в мелочах: мы показываем на 1% больше контента от друзей, чем от издателей, и смотрим, как это влияет на использование новостной ленты. Иногда тесты более радикальны: мы ранжируем ситуативный контент и то, что всегда актуально, принципиально по-другому. Это сильно меняет композицию ленты для читателей. Одни посты актуальны всего несколько часов (новости СМИ, анонсы, спортивные результаты), а другие публикации могут быть интересны много дней (обзоры, статьи, фото с отдыха).
Некоторые эксперименты можно оценить за пару дней — тогда обновления быстро включаются для всех пользователей. Другие тесты, наоборот, могут длиться больше месяца. Привычки пользователей не меняются так быстро, и нам важно оценить результаты через несколько недель.
В сложном продукте невозможно сразу определить идеальную формулу; это путь итеративных улучшений. Мы шаг за шагом проверяем сотни гипотез. Например:
- посты с большим количеством комментариев интереснее;
- долгое чтение поста — более важный сигнал, чем лайки;
- посты в закладках — самые интересные;< /li >
- длинные чтения и короткие текстовые сообщения должны показываться в разное время дня для каждого пользователя;
- сообщения, прокомментированные друзьями, более интересны, чем другие.
Все эти гипотезы мы проверяем в первую очередь на себе: внедряем новую фичу в алгоритм и сами начинаем ее использовать. Если он нам нравится, мы включаем его в тестовую группу пользователей. Смотрим на объективные метрики, оцениваем статистическую значимость эксперимента. Делаем выводы: либо выкатываем на всех, либо дорабатываем дальше. И так уже несколько лет с момента запуска смарт-ленты. Тысячи различных гипотез и экспериментов. В результате каждой появляются новые мысли и предположения, впереди еще огромный список идей.
Работаем над интерфейсом
Вроде ничего сложного в новостной ленте и нечего выдумывать в плане интерфейсов? Но на самом деле это еще и постоянный поиск красоты.
Вот как изменилось отображение поста за последние годы:
При этом рекомендации в постах выглядят принципиально иначе. Почему? Тут совершенно другие модели потребления и акценты в плане восприятия. В ленте мы подписаны на конкретных авторов, нам важно, кто написал пост, когда, обсуждают ли его друзья. И можно ли быстро ответить, например, написать комментарий.
А в рекомендациях мы не знаем автора. Скорее всего, для нас важен контент, поэтому мы обычно представляем посты по-разному:
Рекомендации также включали эксперименты. Мы показывали автора поста по-разному, ставили лайк в режиме компактной ленты и так далее. Даже сейчас на iOS и Android интерфейсы немного отличаются, так как на этом эксперименты не заканчиваются.
Мы смотрим, какие задачи пользователи чаще всего решают в ленте, и стараемся сделать интерфейс идеальным для этих задач. И вот над чем мы сейчас работаем.
1. Лента без дополнительных счетчиков
В ленте хочется максимально удобно читать сам контент и меньше отвлекаться на разные счетчики. Поэтому в рамках одного эксперимента мы не показываем количество лайков и репостов, оставляем только комментарии. Есть гипотеза, что это может положительно сказаться на вовлеченности и количестве активности в ленте в целом, а со временем сделать сами лайки более значимыми.
Зачем ты оставил комментарии? Это не просто счетчик. Комментарии также являются контентом, информацией, дополняющей пост. Счетчик комментариев поможет вам решить, следует ли переходить к отдельному экрану сообщений для чтения обсуждений. Иногда они интереснее самой публикации.
Как мы будем оценивать эксперимент? По объективным показателям и отзывам пользователей. Иногда встречаются жалобы, что необычно, но и положительных отзывов много, что действительно удобно, когда лента более лаконичная и нет перегрузки лишней информацией. Но интерфейс запустили недавно, пока рано оценивать объективные метрики продукта. В начале всегда есть период адаптации.
Мы планируем протестировать другие версии интерфейса, в которых нет счетчиков, но будет сделан упор на контент. Если объективные метрики показывают рост активности в ленте (время, количество сессий, вовлеченность и так далее) и отзывы читателей и авторов скорее положительные, то, возможно, эта версия когда-нибудь будет распространена на всех.
2. Простое создание закладок
Еще одна идея, которая в настоящее время тестируется, — переместить кнопку закладки на экран ленты. В нашем общении с пользователями мы много раз слышали идею о том, что лайки можно использовать как способ сохранить пост «на потом». Для этого у ВКонтакте есть более удобный инструмент, чем лайк, сервис закладок. Поэтому в эксперименте мы заменяем счетчик просмотров постов в ленте на кнопку добавить в закладки. Этот тест уже запущен, мы собираем мнения и метрики.
3. Компактное отображение постов
Помимо счетчиков и кнопок действий, мы уже довольно давно делаем упор на компактность постов. К сожалению, есть много примеров, когда запись в ленте может занимать два-три экрана телефона, что объективно неудобно. Поэтому мы запустили эксперимент, где показываем не все вложения, а только ключевые.
Преимуществ у такого подхода много: лента становится визуально приятнее и удобнее. Но это сильно ломает ряд привычных шаблонов. Например, удобно провести опрос и две фотографии выбрать лучшую. А если скрыть фото для такого поста и оставить только опрос, то все удобство теряется. Поэтому изучение этого эксперимента продолжается.
4. Скорость
Помимо визуально заметных экспериментов, мы сейчас активно работаем над задачей ускорения работы самого интерфейса. Речь идет о скорости загрузки ленты, медиаконтента, открытия экрана с комментариями.
Наши серверы обрабатывают десятки тысяч запросов фидов в секунду. Поэтому быстрая загрузка фида и раздела рекомендаций требует не меньше творчества и усилий, чем идеальный интерфейс с точки зрения расположения элементов. Для улучшения этого плана у нас есть отдельная команда, которая создает специальные базы данных, максимально оптимизированные под наши задачи.
Кроме того, мы реализуем хитрую логику многоэтапного кеширования информации. Он включает кеш на мобильном клиенте — для моментальной загрузки данных, полученных в предыдущих сессиях. А еще — разнообразные кеши на сервере, которые позволяют делать множество расчетов наперед.
5. Удобные комментарии
За последний год в комментариях многое изменилось. Мы сделали их двухуровневыми — этого очень не хватало. Но впереди еще огромный план явных улучшений.
Дискуссии с десятками разных тем и сотнями участников разговора уже сложно просматривать с телефона. Не так давно мы запустили удобный рейтинг веток комментариев: вы можете посмотреть самые интересные или самые новые. Но в целом мы еще в начале пути. В планах значительно улучшить алгоритмы обнаружения интересных комментариев и показывать их выше, реализовать обновление и получение комментариев и ответов в режиме реального времени. Кроме того, сделать интерфейс максимально удобным для пользователя в формате, похожем на беседу, и реализовать уведомления и интерфейсы, позволяющие быть в курсе самых интересных для пользователя дискуссий.
Заключение
Дьявол кроется в деталях. Мы много работаем над охватом, разными форматами, возможностями монетизации и прочим, чтобы сделать систему контента максимально удобной для авторов и читателей. Но при этом мы считаем, что параллельно с общей стратегией и фундаментальными запусками критически важно проработать все мельчайшие детали новостной ленты и рекомендаций. Следите за новыми экспериментами и обновлениями.