Начнем исследование мира технологий с изучения приложений, которыми вы каждый день пользуетесь. Кажется, что Netflix и Microsoft Excel различаются, но, по сути, они оба построены из одних и тех же строительных блоков. Мы заявляем, что каждое приложение сделано из одинаковых составляющих. Из каких? Читайте дальше.
Каждый раз при создании запроса в Google поисковая система просматривает более 30 триллионов страниц в интернете и находит первые 10 результатов. В 92 % случаев пользователь выбирает результат на первой странице (то есть топ-10). Найти 10 лучших из 30 триллионов результатов действительно сложно – почти так же сложно, как случайно найти монетку, упавшую где-то в Нью-Йорке. Тем не менее Google успешно делает это за полсекунды. Но как?
На самом деле Google не посещает каждую страницу в интернете каждый раз, когда создается какой-то запрос. Google фактически хранит информацию о страницах в базах данных (таблицы информации, как в Excel) и использует алгоритмы, считывающие эти базы данных, чтобы решить, что показать пользователю. Алгоритмы – это просто ряд заданных правил. У людей может быть встроен «алгоритм» для создания бутерброда с маслом и сыром, в то время как на компьютерах Google есть алгоритмы для поиска страниц на основе поискового запроса.
Алгоритм начинается с создания базы данных каждой страницы в интернете. Google использует программы, называемые «пауками», которые «ползут» по страницам, пока не найдут их все (или, по крайней мере, пока Google не решит, что этого достаточно). «Пауки» начинают с нескольких страниц и добавляют их в список страниц Google, называемый индексом. Затем они переходят по всем исходящим ссылкам на этих страницах и находят новый набор страниц, который добавляют в индекс. Далее они переходят по всем ссылкам уже на новых страницах и так далее, пока Google не найдет что-нибудь еще.
Это непрерывный процесс; Google всегда добавляет новые страницы в индекс или обновляет их, если они меняются. Индекс огромен, он весит более 100 млн ГБ. Для того чтобы поместить его на внешнем жестком диске объемом 1 ТБ, потребовалось бы 100 тысяч таких дисков, а если поставить их друг на друга, высота составит примерно 1,5 км.
Поиск в Google работает таким образом: он принимает запрос (текст, введенный в строку поиска) и просматривает индекс, чтобы найти наиболее подходящие страницы. Как Google это делает? Самый простой способ – найти определенное ключевое слово, что-то вроде нажатия Ctrl+F или Cmd+F для поиска в гигантском документе Word. Именно так работали поисковые системы 1990-х годов: они искали запрос в своем индексе и отображали страницы с наибольшим количеством совпадений, атрибут, называющийся плотностью ключевых слов.
Как выяснилось, эту схему довольно легко обойти. Если ввести в поисковую строку «шоколадный батончик Snickers», то можно предположить, что snickers.com окажется в списке первых найденных страниц. Но если поисковая система просто считала количество повторяющихся слов «сникерс» на странице, кто-то мог бы создать «левую» страницу со словом «сникерс, сникерс, сникерс, сникерс» и т. д., и таким образом она бы оказалась в числе первых в результатах поиска. Очевидно, что такая страница окажется не очень полезной.
Взамен алгоритма плотности ключевых слов основным нововведением Google стал алгоритм под названием PageRank, созданный Ларри Пейджем и Сергеем Брином в 1998 году в рамках работы над кандидатской диссертацией. Пейдж и Брин обратили внимание, что оценить приоритетность страницы можно, посмотрев на другие важные страницы, со ссылкой на нее. Это словно, находясь на вечеринке, узнать, что кто-то популярен, увидев этого человека, окруженного другими известными людьми. PageRank присваивает каждой странице оценку на основании других своих оценок, данных всем остальным страницам, которые дают ссылку на эту страницу. (Оценка тех страниц зависит от других страниц, которые дают на них ссылку, и т. д.; это рассчитывается с помощью линейной алгебры.)
Например, в случае создания новой страницы об Аврааме Линкольне, ее PageRank был бы очень низким. Но если бы какой-нибудь малоизвестный блог добавил ссылку на эту страницу, это повысило бы ее PageRank. PageRank больше заботится о качестве входящих ссылок, чем об их количестве, поэтому даже если десятки непопулярных блогов дадут ссылку на эту страницу, пользы будет мало. Но если бы газета New York Times (которая, скорее всего, имеет высокий PageRank) дала бы ссылку на нее, то ее PageRank взлетел бы.
Как только Google находит в своем индексе все страницы, в которых упоминается поисковый запрос, он ранжирует их по нескольким критериям, включая PageRank. У Google также есть много других критериев: он учитывает последнее обновление страницы, пропускает веб-сайты, похожие на спам (например, сайт «сникерс, сникерс, сникерс, сникерс», о котором писалось выше), учитывает местоположение (он может выдать сайт Национальной футбольной лиги, если пользователь ввел запрос «футбол» и при этом находится в США, и Английскую Премьер-лигу, если он ввел аналогичный запрос, находясь в Англии) и многое другое.
Однако у PageRank есть свои подводные камни. Подобно тому как спамеры злоупотребляют плотностью ключевых слов (как в случае со «сникерс, сникерс, сникерс, сникерс»), они начали создавать линкофермы, или страницы, содержащие тонны ссылок на сайты, не несущие полезного контента. Владельцы веб-сайтов могут платить линкофермам за добавление ссылок на страницы, что искусственно повысит их PageRank. Однако Google стала очень неплохо распознавать и игнорировать линкофермы.
Но существует еще несколько основных способов обмануть Google. Появилась целая индустрия поисковой оптимизации (SEO), помогающая владельцам веб-сайтов взломать алгоритм поиска Google и сделать так, чтобы их страницы появлялись в топе результатов поиска. Основная форма SEO – это получение большего количества страниц со ссылкой на желаемую страницу. SEO содержит множество других методов, например ввод правильных ключевых слов в название и заголовок страницы или создание перекрестных ссылок на страницы сайта.
Однако алгоритм поиска Google постоянно меняется; компания выпускает небольшие обновления более 500 раз в год. Периодически появляются серьезные обновления, и после выхода каждого из них SEO-специалисты пытаются найти способы использовать эти изменения для продвижения. Например, в 2018 году Google изменила свой алгоритм, чтобы ускорить загрузку страниц на мобильных устройствах. Ведущие специалисты предложили владельцам веб-сайтов создавать укороченные версии обычных страниц с помощью инструмента Accelerated Mobile Pages (AMP).
Утром каждого понедельника Spotify отправляет своим слушателям список из 30 треков, которые волшебным образом идеально соответствуют их вкусам. Этот плейлист под названием Discover Weekly мгновенно стал популярным: в течение шести месяцев после запуска, в июне 2015 года, он был прислан более 1,7 млрд раз. Но как Spotify настолько хорошо удается узнать предпочтения своих 200 млн пользователей?
Spotify действительно нанимает специалистов, которые вручную создают открытые плейлисты, но подготовить их для всех 200 млн пользователей никоим образом невозможно. Вместо этого Spotify применяет алгоритм, который запускается каждую неделю.
Алгоритм Discover Weekly начинает свою работу с изучения двух основных моментов. Для начала он просматривает все треки, которые прослушал пользователь и которые ему настолько понравились, что он добавил их в библиотеку или плейлист. Эта программа достаточно умна, чтобы понять, что если трек переключили в течение первых тридцати секунд, то, вероятно, он не понравился. Затем алгоритм рассматривает все плейлисты, созданные другими людьми, предполагая, что каждый из них объединен какой-то общей темой; например, может быть плейлист для бега или плейлист Beatles.
Получив эти данные, Spotify использует два метода поиска треков, которые могут понравиться. Первый метод предполагает сравнение двух наборов данных, чтобы выяснить, какие из новых треков относятся к тем, которые нравятся пользователю. Предположим, что кто-то создал плейлист из восьми треков и семь из них есть в библиотеке пользователя. Ему, скорее всего, нравится такая музыка, поэтому Discover Weekly может порекомендовать тот трек, которого нет в его библиотеке.
Алгоритм Spotify для автоматической рекомендации музыки. Источник: Quartz
Эта методика называется «совместная (коллаборативная) фильтрация», и именно ее использует Amazon, чтобы предложить товары, которые могут заинтересовать клиента, исходя из его истории покупок и покупок миллионов других пользователей. Список рекомендуемых фильмов, которые предлагает Netflix, видео, предлагаемые YouTube, и список возможных друзей на Facebook – все это возможно благодаря совместной фильтрации.
Совместная фильтрация становится все более полезной, так как сервис получает больше пользователей. В нашем примере, если у Spotify появляется больше пользователей, то программе легче найти человека с похожим вкусом и, следовательно, легче предложить рекомендацию. Но, по мере роста пользовательской базы, работа таких алгоритмов может стать медленнее и требовать большого объема вычислений.
Второй метод, который использует Spotify для создания плейлиста, – это «профиль вкуса». На основе только тех треков, которые прослушал пользователь и которые ему понравились, Spotify определяет, какие жанры (например, инди-рок или R&B) и поджанры (например, Chamber Pop или New Americana) он предпочитает, и рекомендует музыку этих жанров. Это другая форма стратегии Spotify – предлагать треки на основании ранее прослушанных.
Работа инженеров Spotify для создания этого алгоритма для рекомендации стоит очень дорого – они зарабатывают сотни тысяч долларов в год. Так зачем же компания этим занимается?
Во-первых, отличная система рекомендаций – это коммерчески привлекательная особенность, помогающая Spotify выделяться на фоне конкурентов, например Apple Music. А все потому, что одной только большой музыкальной библиотеки недостаточно. Говоря на языке бизнеса, музыка – это товар. Любой трек в приложении звучит примерно одинаково, будь то Spotify, или Apple Music, или что-нибудь еще – и состоятельный человек может получить лицензию на создание гигантской библиотеки.
Если все музыкальные стриминговые сервисы могут иметь фактически одинаковый набор музыки, Spotify нужна изюминка, которая будет выделять его на фоне конкурентов. И система рекомендаций, безусловно, отвечает всем требованиям – она считается лучше, чем у Apple Music.
И поскольку с привлечением большего количества пользователей совместная фильтрация улучшается, Spotify (у которого уже есть огромное количество пользователей) может продолжить укреплять свое лидерство.
Во-вторых, наличие персональных рекомендаций повышает вероятность пользования этим сервисом. Чем больше людей пользуются Spotify, тем больше алгоритмы узнают о вкусах пользователя и, следовательно, лучше рекомендуют музыку. При частом использовании Spotify подобранная им музыка будет довольно хорошей, и переход на Apple Music, который не знает предпочтений пользователя, будет ошибочным.
Высокая «стоимость переключения» снижает вероятность перехода пользователя к другому поставщику. (Говоря в более широком смысле, любые личные данные, которые вводятся в приложение, например создание плейлистов в Spotify, увеличивают стоимость переключения, поскольку приходится воссоздавать их в любом новом приложении.)
Одним словом, персонализированные плейлисты отлично подходят для слушателей и являются удачным бизнес-ходом для Spotify – неудивительно, что все больше и больше приложений предлагают персональные рекомендации.
Более миллиарда людей ежедневно просматривают свои ленты новостей на Facebook, а американцы тратят на него почти столько же времени, сколько и на живое общение. Лента новостей обладает огромным воздействием, поскольку к ней прикованы взгляды многих пользователей. Она может влиять на настроение, вовлечь в идеологические эхо-камеры или даже повлиять на то, за кого будет отдан голос на выборах. Одним словом, содержание ленты новостей имеет значение. Так как же Facebook решает, что появится в ней?
Упрощенное объяснение алгоритма новостной ленты Facebook. Источник: TechCrunch
В частности, как Facebook выбирает и сортирует сотни (или тысячи) свежих новостей, которые просматриваются ежедневно? Как и Google, Facebook использует алгоритм, выясняя, что является наиболее важным. Существует около 100 тысяч персонализированных факторов, но мы сосредоточимся на четырех основных.
Первый фактор – это автор поста. Facebook покажет пользователю больше постов тех людей, с которыми она общалась (например, с кем больше переписывалась или кого добавила в закладки), предполагая, что он с большей вероятностью заинтересуется их последующими постами.
Второй фактор – качество поста. Чем больше людей заинтересовалось постом (например, по количеству лайков или комментариев), тем интереснее, по мнению Facebook, этот пост и тем выше вероятность того, что он появится в топе ленты новостей.
Третий фактор – тип поста. Facebook определяет, какими типами постов (видео, статьи, фотографии и т. д.) пользователь чаще всего интересуется, и показывает ему больше подобных постов.
Четвертый и основной фактор – новизна: новые истории получают более высокий рейтинг.
Есть еще много факторов. Вот некоторые из них, по версии журнала Time:
Используйте телефон с медленной мобильной связью, и вы увидите меньше видео. Запись «Поздравляю!» в комментариях говорит о том, что пост, скорее всего, касается значимого события в жизни, поэтому он будет вверху ленты. Поставить лайк за статью после того, как вы кликнули на нее, – лучше, чем поставить его раньше, потому что это означает, что вы, вероятнее всего, прочитали хотя бы немного и статья вам понравилась.
Можно сказать, что Facebook действительно старается максимально увеличить вероятность того, что пользователю понравится контент или он оставит комментарий к посту в ленте новостей. Этот показатель называется «активность пользователей». В конце концов, чем больше им нравится их лента новостей, тем больше они будут прокручивать ее вниз, а значит, увидят больше рекламы. Разумеется, реклама – это то, от чего Facebook получает большую часть дохода.
Пример того, как Facebook оценивает сообщения и определяет, что появится в ленте новостей. Источник: TechCrunch
Этот алгоритм также работает на то, чтобы пользователи действовали в интересах Facebook. Каждый хочет, чтобы его посты отображались в топе ленты новостей его друзей, и, поскольку Facebook увеличивает количество вирусных постов, у людей появляется стимул создавать посты, которыми часто делятся. Чем больше репостов, тем больше новых постов, а это значит, что Facebook сможет запустить больше рекламы.
Алгоритмы, такие как алгоритм ленты новостей Facebook, – невероятно мощный инструмент, но опасность заключается в том, что хакеры все еще могут легко их обойти. Без контроля со стороны человека алгоритмы могут быть использованы против нас.
Известный пример – эпидемия фейковых новостей, которая охватила Facebook в 2016 году во время американских президентских выборов. Напоминаем, что алгоритм ленты новостей не учитывает правдивость или авторитетность поста; его интересует только максимальная активность пользователей. Распространители фейковых новостей пользовались этим с целью травли политиков, которые были им неугодны, и размещали в Facebook возмутительные и явно ложные новостные статьи. Естественно, такие статьи привлекали много внимания, на них кликали и оставляли под ними комментарии, поэтому алгоритм продвигал их в топ ленты многих пользователей.
К чести компании, с тех пор она выпустила обновления алгоритма новостной ленты, чтобы попытаться ограничить распространение фейковых новостей. В 2018 году Facebook объявила, что изменит свой алгоритм, чтобы сосредоточиться на «значимых социальных взаимодействиях», то есть она будет продвигать свежие новости ваших друзей, а не просто «кормить» информационным материалом. Однако, как признали в компании, выявлять «значимые социальные взаимодействия» гораздо сложнее, чем просто определять количество лайков и кликов по статьям.
Facebook также обращалась к людям, чтобы устранить недостатки в своем алгоритме ленты новостей. (Ирония заключается в том, что алгоритмы предназначены для сокращения объема работы, которую изначально должны были выполнять люди, но в компании признают, что алгоритмы не идеальны.) Например, Facebook представила функции, позволяющие людям отмечать фейковые посты, и начала привлекать фокус-группы, которые прокручивают свои ленты и предоставляют обратную связь специалистам, разрабатывающим алгоритм. (Все правильно, за просмотр Facebook можно получать деньги.)
Алгоритмы – не магические заклинания, управляющие миром. Это просто набор правил (хотя и сложных), написанный другими людьми, чтобы заставить компьютеры выполнять определенную задачу. И, как показывает Facebook, иногда машины и люди должны сотрудничать.
Предположим, вы хотите создать свою версию Google Maps. Для этого пришлось бы отследить каждую дорогу, здание, город и побережье на планете. Не исключено, что понадобился бы парк автомобилей, чтобы ездить по всему миру, фотографировать и проводить вычисления, как это делала Google для Google Maps. Кроме того, нужно будет встроить функции панорамирования, масштабирования и алгоритмы для поиска направления движения между двумя точками.
Мягко говоря, это очень сложно. Даже Apple Maps критиковали за то, что их стандарт качества не дотягивает до уровня Google Maps.
Поэтому когда таким приложениям, как Uber, Pokemon Go и Yelp, нужно добавить карту, показывающую, где находятся доступные автомобили, помочь игрокам, найти диких покемонов или показать ближайшие рестораны, они, скорее всего, не захотят тратить миллиарды долларов и тысячи часов на создание новой карты.
Если вы когда-либо пользовались этими приложениями, то наверняка знаете, как они решают эту проблему: встраивают карты Google Maps в свое приложение. Ищете ресторан? Yelp закрепляет отметку на карте Google в зависимости от вашего местоположения. Хотите доехать до центра на Uber? Приложение строит маршрут на карте Google и рассчитывает примерное время, которое понадобится на поездку.
Uber использует интерфейс Google Maps, чтобы сгенерировать карту и предсказать время в пути. Источник: Uber on Android
Google позволяет добавить небольшой фрагмент кода в приложение, чтобы создать Google Maps. Она также предоставляет другие фрагменты кода, позволяющие рисовать на картах, вычислять направления движения между точками и даже определять ограничение скорости для конкретной дороги. Все это дешево или даже бесплатно. Эти средства – большая победа для разработчиков; они могут использовать технологию, на совершенствование которой у Google ушли годы, дополнив ее всего несколькими строчками кода. Не нужно изобретать велосипед!
Фрагменты кода, которые позволяют заимствовать функционал или данные другого приложения, называются API-интерфейсами или программным интерфейсом приложения. Если коротко, API позволяет приложениям взаимодействовать друг с другом. Давайте рассмотрим три основных типа API.
Первый тип API, называемый feature API, позволяет одному приложению обратиться к другому, специализированному, для решения конкретной задачи, например для определения направления движения, отправки текстовых сообщений или перевода предложений. Это как вызвать сантехника или плотника, а не пытаться устранить засор или починить шкаф самостоятельно. Приложения используют все типы feature API. Программистам утомительно писать код, который будет отправлять электронные письма или текстовые сообщения, поэтому, если приложениям вроде Venmo нужно это сделать, они просто используют специализированный API. Обработка платежей по кредитным картам – достаточно сложный процесс, поэтому Uber передал эту задачу на аутсортсинг API-интерфейсу Braintree PayPal, который позволяет любому использовать алгоритм обработки кредитных карт PayPal, задействуя всего несколько строчек кода.
Второй тип API, называемый data API, позволяет одному приложению «попросить» другое передать какую-нибудь интересную информацию, например результаты спортивных соревнований, ретвиты или погоду на сегодня. Это похоже на звонок в турфирму, чтобы узнать, какие музеи и рестораны они рекомендуют посетить. ESPN предлагает API-интерфейс, позволяющий получать списки каждой спортивной команды Высшей лиги и счет каждой игры. Приложение метро Нью-Йорка позволяет отслеживать местонахождение поезда и прогнозировать время прибытия следующего на станцию. Существует даже API для получения случайных изображений котиков.
Последний вид API, hardware API, предоставляет разработчикам доступ к функциям самого устройства. Instagram устанавливает API-интерфейс в камеру телефона для увеличения, фокусировки и фотосъемки. Google Maps сами используют API геолокации телефона, чтобы выяснить, где находится пользователь. В телефоне даже есть такие датчики, как акселерометры и гироскопы, которые используются в фитнес-приложениях и определяют направление и скорость перемещения.
Стоит отметить, что API не идеальны. Их использование не только упрощает жизнь разработчикам приложений, но и делает приложения зависимыми от API. Если API для отправки электронной почты не работает, все приложения, использующие его, не смогут отправить электронные письма.
Если Google решит запустить собственный каршеринг, то теоретически она может ограничить доступ Uber к API Google Maps, чтобы снизить конкуренцию. Если бы Uber создал собственные карты, они не зависели бы от Google.
Несмотря на потенциальные риски для бизнеса, использовать API специализированной компании проще, надежнее и зачастую дешевле, чем пытаться разработать его самостоятельно.
Все это возвращает нас к вопросу: что общего между технологиями Uber, Yelp и Pokemon Go? Все они используют API, а именно API Google Maps, чтобы не изобретать велосипед. API-интерфейсы действительно являются основной частью практически любого приложения.
Если вы когда-либо использовали приложение для знакомств Tinder, то знаете, что прежде чем создать профиль, можно залогиниться через аккаунт на Facebook. При входе в аккаунт в Tinder загружается аватар, возраст, список друзей и страницы Facebook, которые вы лайкнули. Как вы уже, наверное, догадались, это делается через API, предлагаемый Facebook. С помощью технологии единого входа (SSO) API любое приложение позволяет пользователям создавать учетные записи, привязывая профили Facebook.
Зачем Tinder использует API? С одной стороны, это гарантирует отсутствие пустых профилей (которые никто не захочет свайпнуть), поскольку основная информация всегда импортируется из Facebook. Кроме того, требование входа через него предотвращает появление ботов и фейковых аккаунтов – Facebook уже проделала много работы для того, чтобы свернуть их деятельность. Также это помогает Tinder находить лучшие совпадения: собирая список друзей, он может показать, сколько у пользователя общих друзей с каждым потенциальным партнером, и это чувство связи, возможно, подталкивает людей к тому, чтобы свайпнуть еще. Наконец, получив доступ к профилям Facebook всех своих пользователей, Tinder может лучше понять их базовый контингент, например, возраст, местожительство или интересы. Такая информация помогает Tinder изменить дизайн приложения или стратегию рекламы.
Для пользователей вход через Facebook тоже удобен. Создавать профиль в Tinder намного быстрее, если большая часть основной информации и фотографий уже импортирована из Facebook. Просмотр более полных профилей и наличие меньшего количества ботов также повышают удобство пользования.
Tinder на Android. Обратите внимание, что вход в систему осуществляется через Facebook
Кроме того, вход через Facebook означает, что не придется запоминать еще один логин и пароль.
Почему Facebook предлагает API, позволяющий людям залогиниться на других сайтах, используя свои учетные данные Facebook? При использовании технологии единого входа (SSO) API, которую предлагает сервис для регистрации в Tinder, Facebook понимает, что вы являетесь пользователем Tinder. Она получает аналогичные элементы данных, когда вы хотите залогиниться на других сайтах через него. В дальнейшем Facebook может использовать эти данные для более эффективной таргетированной рекламы, например, показывая пользователям Tinder больше объявлений о свиданиях.
В 2018 году Tinder объявила, что пользователи смогут заходить в свой аккаунт по номеру мобильного телефона вместо учетной записи Facebook. Зачем?
Если коротко – конкуренция. В 2018 году Facebook анонсировала новый сервис для знакомств, который в значительной степени рассматривался как конкурент Tinder, при этом цена на акции основной компании-учредителя Tinder рухнула на 20 %. Tinder, вероятно, побоялась, что Facebook перекроет доступ к API, и хотела создать новый способ входа в систему без привязки к нему.
Как показывает эта история, API-интерфейсы – отличный способ для компаний получить данные и обеспечить частое использование. Они помогают приложениям сэкономить время на разработку и обеспечить более качественный функционал, но такое предложение не исключает риски.
Взгляните на эти скриншоты одного и того же фрагмента Washington Post. Заметили разницу?
Разные версии одного и того же заголовка в Washington Post. Источник: The Washington Post
Заголовки различаются! В 2016 году газета Washington Post предоставила авторам возможность указывать два разных заголовка одной статьи. Но зачем?
На самом деле этот эксперимент проводился для того, чтобы максимально увеличить количество кликов на статьи. В ходе него одной группе, скажем, половине случайно выбранных пользователей, автоматически показывается одна версия заголовка, остальным предлагается другая. Через некоторое время после начала эксперимента разработчики получают конкретную статистику или показатели, например количество кликов на заголовок. Они решают, какая версия лучше, и представляют ту, которая набрала большее количество кликов. Это простой, но действенный способ повысить эффективность работы приложения. Например, на первую версию вышеуказанного заголовка кликнули 3,3 %, а на вторую – 3,9 %. Изменение всего нескольких слов дало прирост в 18 %!
Эта методика называется A/B-тестирование – отличный способ повысить эффективность работы онлайн-продукта с помощью компьютера. Методика получила такое название потому, что сравнивается как минимум два варианта – A и B.
A/B-тестирование показывает как минимум два варианта одного и того же элемента (A и B), сравнивая соответствующие значения, чтобы выяснить, какой вариант показать всем пользователям. В данном случае – вариант А, с более высоким коэффициентом выполнения требуемых действий пользователей (или «кликов»). Источник: VWO
Не знаете, какой слоган заставит людей покупать? Вместо бесконечных дебатов просто проведите A/B-тестирование! Не знаете, какая кнопка «зарегистрироваться» будет более популярна среди пользователей – зеленая или красная? Проведите тестирование! (К слову, в ходе одного эксперимента на красную кнопку кликнули на 34 % больше респондентов.) Не знаете, какой аватар в Tinder больше свайпнут? Сервис позволяет запустить A/B-тестирование, чтобы выяснить, какие фотографии, если они есть в основных изображениях профиля, помогут получить больше свайпов вправо.
Вернемся к вопросу: почему же в каждой статье Washington Post предлагается две версии каждого заголовка? Это часть системы A/B-тестирования, которая называется Bandito. Она тестирует разные версии заголовка, чтобы понять, какой из них более кликабельный, чтобы потом чаще его показывать.
A/B-тестирование очень широко используется новостными агентствами. С помощью него BuzzFeed ищет самые кликабельные заголовки. Upworthy, конкурент BuzzFeed, обычно проверяет до 25 версий одного заголовка, стараясь найти идеальный вариант. A/B-тестирование играет очень важную роль: согласно Upworthy, разница между хорошим и идеальным заголовком – тысяча против миллиона просмотров.
Многие другие приложения и веб-сайты также проводят A/B-тестирование. Например, Facebook постоянно внедряет новые функции для «ограниченной группы испытуемых». Snapchat позволяет рекламодателям проводить A/B-тестирование своей рекламы, чтобы выбрать наиболее популярную. Даже обычные магазины могут проводить такое тестирование: на основании его результатов магазин может поменять фоновую музыку в торговом зале, чтобы покупатель максимально увеличил свои расходы.
Есть один важный момент, который необходимо учитывать при статистическом тестировании: нужно проверить, полученный результат реален или это просто случайность. Допустим, если подбросить монетку шесть раз и пять из них выпадет орел. В этом случае нельзя однозначно утверждать, что монетка действительно перевешивает в сторону орла – это может быть просто случайность. Но если подбросить монетку шестьсот раз и пятьсот из них выпадет орел, это уже о чем-то говорит.
Когда компании проводят A/B-тестирование, экспериментаторы представляют отчет о том, как изменились определенные показатели двух версий. Они также предоставляют статистику, называемую p-значение, показывающую вероятность того, что полученная разница значений обусловлена случайностью. Обычно если p < 0,05 (то есть вероятность того, что разница будет случайной, составляет менее 5 %), можно предположить, что изменение было значимым, или «статистически достоверным». В противном случае нельзя быть уверенным, что полученные данные – это не случайность.
Предположим, что для половины своих пользователей Amazon немного увеличила размер кнопок «Добавить в корзину», в результате продажи выросли на 2 %, при p = 0,15. И хотя кнопка большего размера кажется хорошим решением, есть 15 %-ная вероятность, что увеличение продаж произошло совершенно случайно, а не благодаря изменению кнопки. 0,15 больше, чем 0,05, поэтому тестировщики Amazon не будут вводить кнопку большего размера.
Поэтому если вы когда-нибудь поведетесь на заголовок-приманку «18 Food Arguments So Strong That They End Friendships», не расстраивайтесь – вы столкнулись с гремучей смесью социальных наук, разработки программного обеспечения и статистики. Как ни крути, а A/B-тестирование очень эффективно.