Байесовские А/Б-тесты: средние
-Блокнот: https://github.com/andrewbrdk/Bayesian-AB-Testing/blob/main/Байесовская_оценка_АБ-тестов.ipynb
-Все видео: https://www.youtube.com/playlist?list=PLqgtGAeapsOPpV0FqeXEpWosHBW8ZebYl

Измерение, сбор, анализ и представление информации
Байесовские А/Б-тесты: средние
-Блокнот: https://github.com/andrewbrdk/Bayesian-AB-Testing/blob/main/Байесовская_оценка_АБ-тестов.ipynb
-Все видео: https://www.youtube.com/playlist?list=PLqgtGAeapsOPpV0FqeXEpWosHBW8ZebYl
SEO — бессмертная база без которой не работает сайт
1C Франчайзи пришёл в сентябре 2024 на рекламу. Хотел продвигаться по Москве и Московской области. С помощью рекламы загрузить работой отдел продаж. Но мы не взяли проект в работу. И вот почему.
Сайт был не готов к рекламе: не было нужных страниц, форм заявок, цен, отзывов и т.п. Провели SEO-аудит и выкатили огромное количество правок. До решения проблем с сайтом работать с рекламой отказались.
Основные проблемы по итогам аудита:
Ошибки в вёрстке
Ошибки в навигации
В Яндекс Метрике настроены только автоцели
Проблемы с коммерческими факторами и юзабилити
И т. п.
После доработки сайта и настройки базового SEO, запустили рекламу. За 2 месяца завалили заявками отдел продаж заказчика так, что пришлось приостановить рекламу.
Подробный кейс со всеми нюансами здесь.
P.S.
Анонсы статей и кейсов выкладываю в Телеграм-канале.
♨️ Горячая тема - сайты теряют органический трафик из-за нейровыдачи в поиске.
Вместе с SEO начинайте упарываться в GEO (Generative Engine Optimization), AIO (AI Optimisation), LEO (LLM Optimization) или AEO (Ask Engine Optimization) - название еще не закрепилось.
Если отбросить кликбейтные заголовки и инфорциганщину, в сухом остатке:
⤴️ SEO всегда разделялось на техническую оптимизацию и продвижение.
И да, к технической оптимизации сейчас появилось больше требований.
⤵️ Антитренд
Попадание в нейровыдачу, снизит количество переходов и конверсий, т.к. пользователь получает в выдаче не всю информацию о товаре или услуге, а ответ нейронки перемешан с информацией с разных сайтов.
Иными словами: отсутствие переходов рассматривается как следствие, а не причина.
Пока наблюдаем, оптимизируемся и смотрим на нейровыдачу, как на точку контакта с брендом.
Байесовские А/Б-тесты: примеры байесовского моделирования
-Блокнот: https://github.com/andrewbrdk/Bayesian-AB-Testing
-Все видео: https://www.youtube.com/playlist?list=PLqgtGAeapsOPpV0FqeXEpWosHBW8ZebYl
Байесовские А/Б-тесты: общая картина
-Блокнот: https://github.com/andrewbrdk/Bayesian-AB-Testing
-Все видео: https://www.youtube.com/playlist?list=PLqgtGAeapsOPpV0FqeXEpWosHBW8ZebYl
Представлена бесплатная платформа Pagy, которая позволяет создавать лендинги и небольшие веб-проекты за секунды. Работает в браузере и собирает сайты или визитки без привлечения дизайнера, верстальщика. Не требует никакой установки ПО. Все просто: выбираете шаблон и сразу его редактируете, пишите текст, вставляете ссылки и пикчи. Ни одной строчки кода писать не нужно, хостинг не требуется. Есть аналитика метрик сайта и сотни уже готовых дизайнов от разрабов и коммьюнити.
ИЩЕМ ЗАМЕНУ КОФЕИНУ с помощью ChatGPT
Я люблю кофе, но, как и у некоторых других людей, у меня повышается давление и сильно учащается пульс от большого количества выпитого кофе, а 2..3 порции порции на меня уже не действуют. На дворе 21 Век в разгаре и существование аналогов кофеина без раздражающих побочных эффектов весьма вероятно.
Я попросил помощи у ChatGPT и он успешно создал очень сложную таблицу с легальными аналогами кофеина и даже с вычисляемым столбцом на основе НЕЧЁТКИХ критериев (если вы это сможете на SQL - Вы гений!), но плохо справился с сортировкой в этой таблице.
Внимание: ниже изображение, ссылки некликабельные. Я ничего не продаю.

В первом цифровом столбце не удалось отсортировать числа по убыванию. Пытался примерно 15-20 минут. Пробовал разные промпты и пояснения. Это странно.
Этот инструмент (ChatGPT) отлично понимает команды манипуляции таблицей, в данном пример я попросил создать таблицу на основе данных с крупных магазинов, указал какие столбцы нужны и какая в них должна быть информация, указал порядок столбцов, в том числе относительный, типа столбец с такими данным добавь перед таким-то столбцом.
ChatGPT смог создать СВОДНЫЙ столбец на основе ранее созданных столбцов.Это столбец со взвешенными суммами весов веществ в других столбцах и коэффициенты взвешивания ОН сам нашел и нашел весьма точно.
Причем для каждого продукта ОН смог найти состав веществ по определенным критериям и перечислил их, создав отдельный столбец. Не все вещества, а только по определенным фильтрам (только такие, которые не являются кофеином, но оказывают воздействие, сходное с действием кофеина. Попробуйте самостоятельно без ИИ запрограммировать такой запрос на SQL с учетом нечеткого критерия схожести воздействия и еще определите коэффициент похожести для создания взвешенной суммы масс веществ в порции БАД.
ChatGPT даже частично смог отсортировать по взвешенной сумме. Но выполнив так много сложной работы в сортировке он немного ошибся.
По мотивам статьи, которую я перевел и опубликовал у себя в ленте - https://habr.com/ru/articles/899382/
Я чекнул этот кейс на своем проекте и результаты не совпали с выводами автора.
Я сделал все точно также, как описано в статье и нет, не увидел я корреляции между 130 днями и статусом просканировано не проиндексировано. Страницы с таким статусом есть и меньше чем через 130 дней после последнего сканирования, как показано на скрине.

Такие страницы пропадают только на 13 днях, а с 13 и выше периодически встречаются выпавшие страницы.
Так что, не сходится кейс, но как мнение, почему бы и нет)))
Смотрел проект в тревел сегменте, трафик по всему миру (чистый бурж).
Redash в Amvera Cloud
Сегодня мы выпускаем Redash, как преднастроенный сервис.
Redash позволяет осуществлять запросы к базам данных и визуализировать результаты. Это хороший и простой BI-инструмент, которым мы пользуемся сами.
Для установки Redash необходимо заполнить по инструкции несколько переменных/секретов для подключения к PostgreSQL и Redis, и выбрать тариф от 290 р./мес.
Amvera Cloud — это облако для простого деплоя приложений через git push. Встроенный CI/CD, бэкапы и мониторинг позволяют развернуть проект тремя командами в IDE и не думать о настойке инфраструктуры. А встроенное проксирование к OpenAI, облегчает работу с LLM. Amvera проще, чем использование VPS.
Как Telegram искажает ссылки с Habr
Отправил в телеграм ссылку на статью с habr, скопировав из адресной строки.
Выглядит как просто адрес статьи - habr/companies/.../articles/xxxxxxx
Но после создания предпросмотра в телеграм кроме ссылки появляется КДПВ, заголовок и начало текста статьи. Вроде всё правильно. Но только ссылка уже дополнительно после адреса содержит ?utm_source=vk_habr&utm_medium=social&utm_campaign=yyyyyyy
И при нажатии на ссылку предпросмотра пойдёт другая статистика - не прямая ссылка, а из рекламной кампании.
Как минимум - это сработало при пересылке статьи "Как устроен китайский завод электроники глазами русского инженера".
Я подумал, что такой адрес у КДПВ, но нет - вроде картинки все на habrastorage.
Или хабр отдаёт тегированные ссылки.
Жалко, нет хаба "Телеграм"
Анализируем access_log в bash
Если вы стали жертвой фрода, ваш сайт пытались взломать или нагрузка на ваш ресурс резко возросла, найдите IP злоумышленников и заблокируйте доступ в .htaccess с помощью директивы Deny:
Deny from 111.22.33.44
IP злоумышленников есть в файлах access_logs (логи доступа). Чтобы найти IP, с которого посетили, например, 'order/1234', переходим в папку с логами и вводим команду:
$ grep 'order/1234' * | awk '{print $2}' | uniqЕсли таких страниц много, создайте файл со списком url (например, ban.txt) и найдите сразу все IP одной командой:
$ grep -f ban.txt * | awk '{print $2}' | uniqОбратите внимание, что файл нужно создавать в unix (из-за разницы в том, как ОС делают переносы строк). Список запретных URL особенно эффективен, чтобы найти тех, кто сканирует сайт на уязвимости: например, ищет администраторскую (admin, root), техническую (var, database, php) и отладочную информацию (debug, test, error, exception).
А еще давайте найдем тех, кто создает аномально много запросов:
$ cat access_log-20241030 | awk '{print $2}' | sort | uniq -c | sort | tail -5Вывод команды покажет 5 наиболее активных посетителей в указанном логе (access_log-20241030) с количеством запросов. Проверьте тех, кто создает в намного больше запросов, чем остальные — это могут быть как очень активные пользователи или боты поисковых систем, так и злоумышленники.
Сегодня Яндекс.Метрика отключила сервис мониторинга сайтов.
Я создал замену: Телеграм-бот, который следит за доступностью сайтов и присылает уведомления, если что-то не так.
Сервис Яндекса умел отправлять письма и SMS двух видов:
Проблемы с доступностью сайта.
Сайт снова доступен.
В своём боте я сделал чуть больше проверок:
Сайт недоступен/снова доступен.
Изменился заголовок сайта.
Может выручить, если в какой-то момент вместо сайта появится заглушка "домен не прилинкован к директории" или что-то в этом роде.
Истекает срок действия SSL-сертификата или домена.
Изменился конечный адрес (если срабатывает переадресация).
Казалось бы, простой пингатор, но на деле нюансов оказалось очень много. Может быть, напишу статью с техническими деталями.
Старался от души и сделал полезный инструмент для владельцев/администраторов сайтов.
Пока что всё бесплатно, пробуйте!
Telegram-бот "Мониторинг сайта"

Невидимый трекинг через куки
Всем привет. Тестирую формат постов и, заодно, делюсь подсмотренной идеей трекинга пользователей «без палева», который прямо-таки очень тяжело отловить (если не делать отладку HTTP-запросов) и очень технически сложно заблокировать.
Разработчики [CENSORED], придумали практически безотказный способ отправлять логи, даже если пользователь использует блокировщики. Схема простая:
Случилось событие, которое нужно затрекать.
С помощью JavaScript создаётся кука, имя которой соответствует определённому формату + рандомная строка-суффикс, а в значении содержится urlencoded-набор-параметров-значений.
Любой следующий запрос к сервису содержит эту куку. Сервис в ответе в хэдерах пишет, что куку нужно удалить. Кука отправилась и удалилась, никто ничего не заметил, никаких лишних запросов, трекинг-данные доставлены.
PROFIT.
Я читал много разных новостей про экзотические способы трекинга, но конкретно этот обнаружил самостоятельно. Буду рад, если покормил чью-то паранойю.
Какие качественные и количественные исследования стоит проводить в рамках Discovery-процесса?
Качественные:
Глубинные интервью
Помогают получить искреннее мнение вместо социально одобряемых ответов, в отличие от фокус-групп. К глубинным интервью еще относят и другие форматы, например, CustDev, которые выявляют проблемы и потребности пользователей.
CJM
Делим пользователей на сегменты и общаемся с каждым из них. Дальше просим пройти определенный сценарий и рассказать об опыте взаимодействия с продуктом, от первого знакомства до первой покупки. Так выявляем трудности на каждом этапе.
Юзабилити-тестирование
Перед запуском продукта создаем кликабельный прототип сервиса и просим пользователя выполнить задачу. Главное — не подсказывать и не убеждать в удобстве прототипа, а оценить его объективно. На выходе получаете тест первого клика и тепловую карту сервиса. Метод подходит для проверки дизайна и контента и помогает выявить эффективные решения.
Количественные:
Количественный опрос
Проводим их после качественных исследований для подтверждения результатов. Это простой способ привлечь респондентов и быстро собрать репрезентативную выборку. В итоге получаем статистически значимые данные по интересующим вопросам.
A/B-тесты
Делим респондентов на 2 группы: тех, кто видит старый интерфейс, и тех, кто видит новый или экспериментальный. Иногда показываем два варианта дизайна для выбора лучшего. После сбора достаточного количества данных завершаем тест и подводим итоги.
Как понять, что пора заканчивать процесс Discovery
В этом поможет закон убывающей полезности. Как он работает, объясним на примере.
Когда мы проводим качественные исследования, берем 5–7 человек на один сегмент целевой аудитории. Социология и статистика показывают, что этого достаточно, чтобы выявить 80–90% проблем сегмента. Конечно, мы можем опросить и 30 человек, но выявим ли мы таким образом 100% проблем? Скорее всего, мы потратим намного больше ресурсов, а в итоге сможем лишь незначительно уточнить данные.
Закон убывающей полезности работает и в случае исследования конкурентов — изучать всех не имеет смысла. Мы просто утонем в данных. Есть три сигнала, которые четко указывают, что Discovery пора заканчивать.
Когда кончаются гипотезы. Вы провели несколько итераций исследований и поняли, что пополнять бэклог больше нечем: новых инсайтов нет.
Когда гипотез слишком много. Вы проводите исследования и продолжаете пополнять бэклог снова и снова, задач там уже на три квартала вперед.
Когда заканчиваются время и деньги. Исследования можно проводить бесконечно, но у любой задачи есть дедлайны и бюджеты.
Мы всегда можем вернуться к Discovery, чтобы проверить какую-то фичу. Например, если поменяли интерфейс — можем провести юзабилити-тестирование. Но на самом первом этапе, когда мы еще только выясняем потребности пользователя, нужно уметь вовремя остановиться.
Подробнее о процессе Discovery — в большой статье.
Почему размер телефона имеет значение
На дизайне до безобразия редко вспоминают, что люди привыкли пользоваться разными смартфонами. Одни обожают лопаты до локтя, другие — миниатюрные аппараты, которые умещаются в ладони. А между тем, первые исследования о том, как люди держат в руках телефон и планшет, появились на Западе еще в 2010-х.
Вот недавний кейс из нашей практики. Заказчик сделал в мобильном приложении ленту с фотографиями. И всё бы хорошо, но было одно «но». Чтобы листать кадры, нельзя было просто свайпать. Вместо этого нужно было жать на кнопку в самом низу фото. Причем на маленьких девайсах блок с фото, заголовком и самой кнопкой не умещался на экране. Чтобы ее увидеть, нужно было скроллить вниз. И далеко не каждый это понимал.
Более того, если пользователь находил заветную кнопку и перелистывал фото, ему приходилось скроллить вверх, чтобы увидеть ее целиком. Чувствуете, как больно? При этом на большом IPhone Pro Max всё было в полном порядке — красиво и удобно.
Этот кейс напоминает нам, что у пользователей разный опыт, и это не всегда очевидно. А ведь есть еще куча более тонких нюансов:
💬 Что, если пользователь предпочитает планшет?
💬 А если он использует только левую руку, потому что в правой держит кофе?
💬 А вдруг это приложение для готовки, и с ним удобнее работать голосом?
Иногда детали просто невозможно узнать без исследования. А без этих деталей сделать удобный интерфейс — очень, очень сложная задача.
Больше постов о метриках и исследованиях — в нашем канале.
5 принципов именования и документирования аналитических событий
В нашей практике мы часто сталкиваемся с одной и той же проблемой: компании собирают огромное количество аналитических событий, но те зачастую плохо задокументированы или не задокументированы вообще. Поэтому понять, что и как работает, особенно новичку, сложно. Чтобы исправить эту ситуацию, мы выработали пять правил, которым стараемся всегда следовать.
1. Единое место документации событий. Создайте единое место документации всех событий (будь то Notion, Confluence, Google-документ или система аналитики с встроенным трекинг-планом) и используйте только его как источник правды.
2. Единая нотация. Выберите одно соглашение о наименовании (нотацию) и придерживайтесь его. Вот наиболее используемые из них:
all lowercase — page view;
snake_case — page_view;
camelCase — pageView;
Proper Case — Page View;
Sentence case — Page view.
3. Структура в названии событий. Обычно название события — это комбинация названия объекта, совершенного над ним действия и, при желании, категории события.
4. Понятные названия. Название события должно быть четким, понятным и легкочитаемым. Оно должно отражать логику события без необходимости изучения задачи на разработку.
5. Единый справочник параметров. Определите список параметров всех событий и пользователей, максимально опишите их, укажите возможные значения параметров, их обязательность и тип. Переиспользуйте параметры в событиях.
Подробнее о каждом пункте мы рассказываем в отдельной статье.
Как устранить фрод, обучая ИИ на качественных лидах
Компания по продаже участков в подмосковных поселках столкнулась с проблемой фрода. Почти 38% рекламного бюджета на контекстную рекламу в Яндекс Директ приходилось на фейковые заявки от несуществующих пользователей.
Опасность фрода кроется не только в потерях здесь и сейчас, но и работает на перспективу. Настройки алгоритмов автостратегий ломаются. ИИ не понимает разницы между качественными и некачественными лидами, и начинает массово приводить фрод.
СМС-верификацию мы отвергли сразу. В продажах земельных участков каждое обращение на вес золота, и усложнение лид-формы может отпугнуть некоторых пользователей.
Мы взялись за автостратегии в Яндекс Директе и направили их внимание в нужное русло: стали передавать в Метрику информацию о качественных лидах. Оптимизировали рекламные кампании именно по этой цели и система стала понимать, что нам нужны только те заявки, которые потом перейдут в разряд квалифицированных.
В итоге в пик фродовой активности качественных лидов было только 62%, а после введения этого метода, их стало 85%.

Если вы планируете привлекать больше клиентов, мы можем сделать аудит вашей контекстной рекламы, найти новые точки роста и построить стратегию масштабирования продаж.
Согласно исследованию экспертов «МегаФона» и «Яндекс Браузера», свыше 70% фишинговых ссылок в сети приходится сегодня на поддельные сайты компаний, сервисов инвестиций и известных брендов. Большой популярностью у мошенников также пользуется создание фейковых розыгрышей призов и конкурсов, рассказали Хабру в «Яндексе».

По данным профильной аналитики, более 60% выявленных за полгода фишинговых ресурсов имитируют интерфейсы популярных сервисов для инвестиций. Ещё 10% — это фейковые веб-сайты, маскирующиеся под известный бренд или компанию. При этом злоумышленники часто используют доменное имя, схожее с настоящим адресом, например: www.[название бренда].id4007[.]ru.
Остальные 30% фишинговых сайтов относятся к различным категориям. Специалисты по ИБ часто обнаруживают сайты, имитирующие соцсети, ресурсы с призывом проголосовать за друзей, фейковые сайты по продаже билетов на массовые мероприятия, а также поддельные ссылки под видом личного кабинета онлайн-банков и государственных порталов. Кроме того, мошенники часто создают сайты по обмену криптовалюты и с несуществующими розыгрышами призов.
Аналитики «МегаФона» и «Яндекс Браузера» отметили, что активным каналом распространения фишинговых ссылок являются электронные письма и мессенджеры, через которые мошенники устраивают спам-атаки.
Ранее «МегаФон» и «Яндекс Браузер» запустили проект по обмену найденными фишинговыми ссылками. Специалисты обеих компаний ежемесячно отрабатывают список из нескольких тысяч подозрительных ресурсов.