Сегодня мы рассмотрим простой базовый фреймворк для дизайна сплит-теста, который можно удобно использовать продуктовым аналитикам в своей работе. Разберем использование этого фреймворка, его теоретическую и математическую основу, и также поговорим о продуктовых аспектах заведения A/B-тестов — когда продакту и аналитику заводить A/B-тест не нужно. Вам понадобятся: представления о продуктовых метриках, знания python, первичные представления о математической статистике и чуточку воображения.
Все потоки
Новости
Управление зависимости в Go
Одна из основных фич Go это система управления зависимостями. В начале своего пути Go полагался на GOPATH, что иногда вызывало сложности и ограничения для разработчиков. Однако с появлением Go Modules в Go версии 1.11, ситуация изменилась. Go Modules представили более гибкий инструмент для управления зависимостями, позволяя более эффективно управлять библиотеками и их версиями.
Go Modules был введен в Go с версии 1.11 как официальная система управления зависимостями. Она позволяет автоматически загружать зависимости, управлять версиями, и облегчает совместную работу.
У нас есть должность «бадди» — приятеля, который поможет во всём
«Дмитрий, помогите, пожалуйста, у меня не открывается рабочий стол. Уже половина десятого, а я ещё не залогинилась. Что мне делать? Как быть? Меня уволят».
Это позвонила Даша, новая сотрудница. Позвонила она своему бадди, человеку, отвечающему за то, чтобы новички нормально въехали в работу. С Дашей работал Дмитрий — главный инженер процессинга. И да, он сделал работу поддержки.
У нас это обычная история. Первые дни на новой работе — это стресс. Нужно познакомиться с коллегами, получить доступы к проектам, вникнуть во внутренние процессы компании и т.д.
Короче, адаптироваться. На это уходит какое-то время.
Каждому новому члену команды нужен свой Дмитрий. Ему можно задать глупые вопросы, с которыми иногда неловко идти к руководителю. Например, кому звонить, куда бежать, где кулер.
Легче обратиться к приятелю.
Как правило, в компаниях и так никого не бросают на произвол, мы просто решили закрепить эту практику. В нашем банке есть сообщество бадди, в нём уже 120 человек.
Кто такие бадди? Сотрудники, которые готовы помочь адаптироваться. Это не про руководство или наставничество, а про поддержку и комфорт.
Сейчас я расскажу, какую роль играют бадди в нашей системе онбординга.
Методы балансировки в А/Б тестировании
Привет, Хабр! Как часто вы думаете о балансе? Балансе вселенной, личной жизни и работы, балансе БЖУ в своем рационе или балансе в банке. Мы в команде ad-hoc X5 Tech не только думаем о балансе, но и сталкиваемся с ним в работе. Сегодня поговорим о балансировке при анализе причинности. Это важный инструмент статистики, который помогает нам выяснить, как одни величины влияют на другие. Балансировка здесь — это способ убрать ошибки, которые могут возникнуть из-за разных распределений переменных в разных группах. Расскажем о различных методах балансировки, об их работе, преимуществах и недостатках каждого. Также затронем проблемы и ограничения, связанные с балансировкой. Запасайтесь чаем, мы начинаем!
Истории
«Нелокализованное необходимо локализовать» или как «ЛАНИТ-Интеграция» создала автономную ИТ-инфраструктуру
События последних лет развернули ведение бизнес-процессов у подразделений международных компаний на 360 градусов. Не секрет, что многие зарубежные организации отключают свою ИТ-инфраструктуру от российских дочек, что ставит отечественный бизнес под угрозу. Есть и другая сторона медали, когда компания из России, работающая с зарубежными облачными платформами и цифровыми сервисами, решает от них отказаться.
Наш заказчик – крупная компания-производитель – принял решение создать автономную ИТ-инфраструктуру на базе отечественных решений. Как команда из «ЛАНИТ-Интеграции» реализовала такой проект и с какими трудностями столкнулась, читайте в этой статье.
Ключ от всех дверей: единый провайдер аутентификации Blitz IDP
Всем привет! Представьте огромную связку ключей, которую вам приходится всюду таскать с собой, перемещаясь по условному офисному зданию, в котором множество дверей. Типы замков разные, ключей много, вы постоянно путаетесь в них. Неудобно, не правда ли? Если проводить параллели с IT и пользователями, то такая ситуация вполне возможна при одновременном использовании большого количества приложений с локальной аутентификацией. Поэтому в нашей компании мы решили применить такой продукт, как единый провайдер аутентификации на базе Blitz Identity Provider. Еще один несомненный плюс использования IDP — возможность подключения к нему всех необходимых каталогов пользователей: ведь их вполне может быть гораздо больше, чем один. Статья предназначена для архитекторов решений и поможет продумать оптимальную структуру и перспективы развития ИТ-продуктов в части аутентификации, а также избежать граблей, на которые наступали мы.
Работа с хранилищами в Kubernetes: руководство для инженеров
Как DevOps-инженер я часто сталкиваюсь с необходимостью глубокого понимания тонких аспектов Kubernetes. Одним из таких ключевых элементов является управление хранилищем данных. Хотя этот элемент иногда остаётся в тени других задач, его важность для успешного развёртывания и поддержки приложений велика.
Накопленный мною опыт в этой области стал основой для этой статьи.
Я сфокусируюсь на трёх ключевых элементах управления хранилищем в Kubernetes:
- PersistentVolumes (PV).
- PersistentVolumeClaims (PVC).
- Storage Classes.
Эти компоненты играют важную роль не только в выборе подходящих типов хранилищ, но и в их эффективном управлении, особенно в сценариях высокой нагрузки.
Так, при развёртывании масштабируемого веб-приложения, которое обрабатывает большие объёмы пользовательских данных и транзакций, хорошо настроенное управление хранилищем заметно повышает производительность и доступность данных. И тогда при увеличении нагрузки на приложение доступ к данным остаётся быстрым и надёжным, задержки уменьшаются, общее взаимодействие пользователя с приложением улучшается.
Например, у нас была задача обеспечить надёжное и масштабируемое хранение данных в веб-приложении для управления клиентскими заказами. Мы настроили в Kubernetes Storage Class на основе SSD для базы данных (что не является хорошей практикой): это помогло обеспечить быстрый доступ и обработку транзакций. А для логов и нечасто применяемых данных использовали отдельный Storage Class с HDD, и это позволило снизить затраты.
А главное, Storage в Kubernetes — это такая штука, которую ты сделал и забыл, дальше оно там само работает.
Рассказываю детально.
Об особенностях электротехнических (и не только) сообществ: опасная сделка 2
Данная статья продолжает цикл о юридических особенностях контрактной разработки электроники, при которой обеими сторонами являются физические лица. Как и в предыдущей статье, будет взгляд со стороны заказчика, со стороны исполнителя, а также комментарии юриста.
Два стула Авито
17 ноября суд принял иск бывших сотрудников Авито к компании и направил Авито запрос на предоставление доказательств законности увольнения.
Авито ожидаемо не вышло с мировым соглашением и подтвердило приверженность досудебной позиции в комментариях CNews.
Более того, в компании пошли дальше и заявили: «Говорить о снижении зарплат некорректно, так как в рублевом эквиваленте все вознаграждения не изменились и не ухудшились»
Звучит резонно. Но есть нюанс: сотрудники договаривались с компанией не об этом.
Курс «PostgreSQL для начинающих»: #2 — Простые SELECT
Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих", подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре".
Сегодня поговорим о самых простых, но важных, возможностях команды SELECT
, наиболее часто используемой при работе с базами данных - формировании выборок (VALUES
), их ограничении (LIMIT/OFFSET/FETCH
), фильтрации (WHERE/HAVING
), сортировке (ORDER BY
), уникализации (DISTINCT
) и группировке (GROUP BY
).
Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись.
FizzBuzz for Senior
Алоха всем.
Ни для кого не секрет, что алгоритмические задачи уже стали/становятся обыденными на техническом интервью. Кто то может любить это, кто то ненавидеть, но факт остается фактом, что бы пройти собеседование нужно научится решать алгоритмы.
А как быть интервьюерам? Какую задачу дать кандидату? Как понять сигналы, что кандидат "шарит"?
Я наткнулся на интересную статью по интервью на Senior инженера C++. Там у парня спрашивают базовую задачу FizzBuzz.
В этой статье мы рассмотрим бенчмарки различных решений на Java, начиная от простых вариантов и заканчивая многопоточными реализациями. Давайте разбираться вместе!
Спам в маркетинге — всемирная боль, или чрезмерно эффективный инструмент?
О спаме в маркетинге. Почему используют? Почему скрывают использование? Как использовать. Диллетанство. Плохой юмор. Отсутствие цифр (потому что мои не авторитетны, а других не публикуют). Всё как всегда. А, ну и смешные картинки с голубями, сгенерированные нейросетью.
Делаем модератора на базе ChatGPT
Простой туториал, в котором я расскажу как сделать автомодератора на базе GPT-3.5 от OpenAI, и как сделать это так, чтобы проверка одного сообщения стоила дешевле одной копейки...
Давайте представим следующее:
Вы владеете форумом с большим количеством участников. Вроде бы, всё было хорошо, но в один момент страна в которой Вы проживаете решает запретить использовать слово "Борщ", Вы просто не можете его произносить. Говорите "Борщ" – тюрьма.
Ближайшие события
ИКРОС-5000 (Инфракрасный репитер оптического сигнала)/Или Li-Fi на коленке…
Не так давно, загорелся темой передачи данных оптическим способом, на большие расстояния.. Все это по мотивам предыдущего поста: Рассуждения на тему организации системы передачи данных Интернет трафика на подвижных составах РЖД
Так вот, не сильно много думая по поводу схемных решений, решил организовать все банальным способом, а именно: ретрансляцию оптического сигнала медиа конвертера, только в качестве среды, уже выступает не оптоволокно, а IrDA матрицы на большую мощность..
В общем и целом, на данный момент имеются составленных мной, два схемных решения, - это передатчик и приемник сигнала.. Соответственно таких приемо-передатчиков должно быть два, с одной стороны Rx/Tx и с другой стороны также Rx/Tx..
Мало того, реализованы должны быть не просто Rx и Tx, а подобие оптического дифференциала, когда с одной стороны есть два передатчика на разные длины волн, с другой стороны два приемника на эти же длины волн.. Причем когда Передатчик 1 передает сигнал, в это же время Передатчик 2, сигнал не передает.. и соответственно на оборот..
Делается это для того, чтобы как можно меньше терять данных, или неверно их воспринимать на стороне приемников.. В схемных решениях которые я демонстрирую ниже, это пока не реализовано, но поправлю и выложу позднее..
Ну собственно и сами схемные решения, с Вашего позволения, сильно не пинать.. т.к. набросал все часа за четыре, причем даже номиналы не успел рассчитать.. Но судя по всему, это меньшее из бед, с чем придется столкнуться при реализации такого устройства..
Математика и физика для простой и результативной учёбы (Серия: Cельскому учителю в помощь). Часть I
Сельские учителя спросили, как готовить детишек, чтоб по способностям и возможностям они не отличались от ровесников, живущих рядом с ведущими университетами с их богатыми библиотеками и высокой научной культурой. Так родились эти лекции. Они хороши для работающих на результат учителей небольших городков и деревень, любящих естествознание школьников от 14 лет (либо детей от 7 лет с учителем), и, несомненно, студентов младших курсов университетов.
Атомарный подход в Unity v.2.0
Привет, Хабр! 👋
Меня зовут Игорь, и я Unity Developer. Последние несколько месяцев я реализовывал зомби шутер на атомарном подходе. Несмотря на то, что подход оказался очень удобным и гибким, я столкнулся я рядом архитектурных проблем в процессе разработки. Поэтому в этой статье я хотел бы раскрыть текущую концепцию атомарного подхода: объяснить что это такое, какие есть преимущества и недостатки, и самое главное, показать как правильно использовать атомарный подход у себя в проекте.
Stone. Квалификаторы и идентификаторы
Использование библиотеки DI с новых взглядом набирает обороты. И автор хотел бы рассказать еще об одной идее, которую сподвигли сделать библиотекой такой, какой она сейчас является.
Собственные решения для разработчика развивать и разрабатывать оказалось крайне удобно. Архитектура библиотеки и ее фичи разрабатывались под конкретные задачи в проектах. И особенный случай в проекте, заставил переосмыслить всем привычные квалификаторы для DI, и добавить что-то новое.
Случай, кстати, оказался не новый, и автор много его встречал в различных проектах. Так что, думаю для многих из читателей такой пример покажется до боли знакомым.
CLI'нический парсинг
Каждый программист однажды получает по голове необходимостью парсить аргументы командной строки и вот это наконец случилось со мной - так почему бы не использовать это как возможность (написать какую-то дичь) (CLI парсер)? Скажу сразу - мы тут чтобы развлекаться, потому требования к парсеру будут... Интересные
CEO Nvidia: для создания независимой электронной отрасли США понадобится около 20 лет
На конференции DealBook New York Times генеральный директор Nvidia Corp. Дженсен Хуанг заявил, что США, вероятно, понадобится пара десятков лет для того, чтобы стать независимыми в поддержании собственной цепочки производства и поставок чипов.
Руководитель Nvidia затронул эту тему в отношении собственной компании. Ее нормальная работа зависит от множества компонентов, поставляемых с разных частей света. Дженсен Хуанг считает, что передовые полупроводниковые технологии можно развивать не только на Тайване, намекая на TSMC (Taiwan Semiconductor Manufacturing). Он уверен, что в США можно создать автономную отрасль разработки и производства электроники, но на это понадобится много времени. Подробности — под катом.
Как я чуть не стал миллионером, продавая воздух, или почему Россия – не Америка
Все знают, что Россия — энергетическая сверхдержава, она же – «разорванная в клочья Обамой бензоколонка». Но не все знают, как это может отражаться в области развития математического моделирования. Расскажу одну жизненную историю.
Начну с далекого 2007 года. Довелось мне в те времена поработать на крупном заводе, который «эффективные менеджеры» как раз делили на несколько отдельных предприятий, каждое из которых крутилось, как могло. В том цеху, который и стал одним из таких предприятий, на токарных станках могла крутиться (и крутилась!) металлическая болванка размером с автобус. А в печку для нагрева металла можно было затолкать паровоз. Целиком. Когда я в первый раз увидел токарный станок, на котором крутится и обтачивается деталь размером с автобус, моему восторгу не было предела. Гордость за страну переполняла до состояния «в зобу дыханье сперло». А потом старожилы показали ту часть цеха, где стояли фундаменты таких же станков и пояснили:
- А вот тут были станки для точной обработки. Их продали китайцам по цене металлолома.
- А почему вот другие не продали?
- Потому, что у них точность обработки такая, что их только в металлолом можно сдать. Поэтому они здесь работают и крутятся как могут, и обтачивают валы турбин Siemiens.
Схема бизнеса был гениальна: Siemiens привозил на завод многотонные болванки, их неделями и месяцами обтачивали до состояния заготовок и увозили для чистовой обработки в Германию. Где уже выполняли чистовую доводку на точных и дорогих станках. Главные затраты при черновой обработке – это износ станков и инструмента, зарплата токаря и электроэнергия, необходимая для вращения тонн металла. Поскольку электроэнергия в РФ дешевле немецкой, недели обработки болванок с лихвой окупают транспортировку, а низкая точность обработки не требует дорогого обслуживания и мало чувствительна к износу еще советского оборудования. В итоге весь бизнес заключался в «перепродаже» дешевой электроэнергии из РФ в Германию, но в виде металлических обточенных болванок.