Как обсчитать RFM-анализ за 5 шагов

RFM анализ это
Общий алгоритм обсчета
1 Построить из исходного датасета таблицу пользователей, определив для каждого количество транзакций, общую сумму платежей и дату первой и последней операции.
2 Вычислить дополнительные показатели
3 Определить границы RFM рангов и присвоить их каждому пользователю
4 Построить RFM таблицу, сгруппировав пользователей по рангам.
5 На основе RFM таблицы построить тепловую карту
Проектирование и расчет полумостового преобразователя на ферритовом кольце

В современной силовой электронике полумостовые преобразователи (half-bridge converters) занимают особое место как одна из самых универсальных и широко применяемых топологий для преобразования DC-DC и DC-AC. Сочетая простоту конструкции с высокой эффективностью, эти преобразователи позволяют преобразовывать входное напряжение в более высокое или низкое выходное напряжение. Так же данный тип преобразователя обеспечивает гальваническую развязку выхода от входа, что значительно расширяет области применения данной топологии. Так же следует добавить что транзисторы в данной топологии работают с более низкими напряжения, в отличии от пуш-пульной схемы где на каждый транзистор приходится удвоенное входное напряжение.
Читать далееМодель человеческого интеллекта. Часть 4: подкрепления и сложные паттерны

Часть 1: элементы памяти и убеждения
Часть 2: события
Часть 3: инстинкты
В этой части будет продолжено рассмотрение инстинктов.
Также появятся два новых типа элементов памяти: «позитив» и «негатив». Эти типы оказывают большое влияние на поведение человека и отвечают за влечения, желания, зависимости, фобии, влюбленности и сексуальную ориентацию.
Читать далее[Перевод] Какие они — лучшие программисты?

За свою жизнь я повстречал немало разработчиков и недавно задался вопросом: «А что делает разработчика одним из лучших? Что у таких людей есть общего?»
В надежде, что эти мои рассуждения послужат для кого-то вдохновением, я описал черты, которые встречал у большинства исключительных людей в нашей сфере. Лично я бы хотел, чтобы у меня был такой список, когда я только начинал. Следуя этому пути, я бы сэкономил уйму времени. Читать дальше →
Жизнь и смерть Карла Коха: первый хакер на службе КГБ в поисках всемирного заговора и тайны числа 23. Часть 5

В середине 1980-х годов Хакер-конспиролог Карл «Хагбард» Кох организовал в Ганновере группу единомышленников. С лета 1986 года они из смеси идейных и финансовых интересов начали сотрудничать с КГБ в поисках американских военных секретов через компьютерные сети. Дело шло неплохо, и всё могло оказаться незамеченным — но сисадмин одной из попавших в сферу их интересов лабораторий по имени Клиффорд Столл заметил странности и решил разобраться в происходящем. Всю осень 1986-го с растущим изумлением наблюдал за тем, как загадочные хакеры увлечённо бродят по серверам военных баз, заводов, полигонов и научных центров. И ладно бы только это — но американские спецслужбы в силу бюрократических маразмов упорно не желали браться за расследование. Их не проняло даже скачивание личных данных сотрудников ЦРУ — но в ноябре Столлу удалось выяснить ещё более дивное: эти самые неизвестные входили в американский сегмент сети через MITRE Corp., полусекретный центр, предоставляющий конфиденциальные услуги военным и спецслужбам. Читать дальше →
Разработка отладочной платы на микроконтроллере К1921ВГ015

Приветствую, Хабр!
Как я уже писал ранее, я не удержался и приобрел микроконтроллер К1921ВГ015. Так как пожеланий по отладочной плате после моей статьи почти не поступило, решил выжать из контроллера все по максимуму. Хотелось получить макет сразу с хорошим набором интерфейсов. Как мне показалось, это будет интереснее, чем голая плата с питанием и штыревыми разъемами. Читать дальше →
Кофе и чакры: асаны вместо кофеина

Йога не приветствует кофе и учит, как его заменить. Однако кофе — это не просто бодрящий напиток, это способ выдержать дедлайны и созвоны. Когда же налита десятая (или пятидесятая) чашка – пора вспомнить о том, что из йоги может нам помочь.
Читать далее«Сейчас за такое нас бы уничтожили» — Джеймс Кэмерон о кастинге Васкез из «Чужих» (1986)

Воспоминания постановщика об истоках дизайна героини и её смартгана.
Для зрителей, хорошо знакомых с творчеством Джеймса Кэмерона, далеко не секрет, что режиссёр не привык попусту растрачивать актёрский капитал, когда речь заходит о кастинге второстепенных персонажей.
Управление проектами: дайджест публикаций #30

Модель Белбина, парадокс Моравека и пирамида Минто, ресурсное планирование и классические законы разработки ПО, юз-кейсы и нескучные ретроспективы, а также много и интересно про управление рисками - всё интересное, что писали на этой неделе про управление проектами. Мы прочитали все публикации и выбрали для вас самые крутые и полезные. Читайте, сохраняйте и применяйте!
Читать далееПутешествие на Эверест с детьми: мой личный опыт

Что бы вы ответили на предложение подняться к базовому лагерю Эвереста с маленькими детьми (предположим, они у вас есть)? Наверное, что это безумная идея. Но на самом деле все не так страшно — и это я говорю, основываясь на собственном опыте. Сложно? Безусловно. Но для нас это того стоило: впечатления останутся на всю жизнь.
Мы с мужем покоряли тропы Гималаев в Северной Индии, шагали по горам Таджикистана и Кыргызстана, прошли десятки километров по просторам Патагонии. И все же ничто не сравнится с тем, что мы пережили, отправившись к базовому лагерю Эвереста.
Конечно, я не буду призывать вас срочно паковать рюкзаки и повторять наш маршрут: тут все зависит от возможностей и состояния здоровья членов семьи, безопасность в любом случае всегда должна быть на первом месте. Но мне хочется поделиться историей нашего удивительного путешествия — вдруг наш опыт окажется для вас полезным.
Читать далее[Перевод] Разбор уровней валидации

Валидация и обработка ошибок — это фундаментальная задача, с которой сталкивается каждый разработчик, будь то работа с HTTP-запросами, управление очередями задач, обработка событий или асинхронная коммуникация между компонентами системы.
Почему это важно?
Выбор стратегии напрямую влияет на:
[Перевод] Лучшие практики для работы с агентным программированием от Anthropic

Claude Code — это инструмент командной строки для агентного программирования.
В этой статье от Anthropic рассматриваются советы и приемы, которые доказали свою эффективность при использовании Claude Code в различных кодовых базах, языках и средах.
Читать далееТак прав или неправ правый руль? Или грустная повесть настоящего разведчика данных

Я вожу машину и живу на Дальнем Востоке России. Праворульные изделия японского автопрома доминируют в парке личного автотранспорта. Периодически возникают холивары на тему запрета праворульных авто, ввиду их повышенной аварийности при правостороннем движении. Но вот убедительных доказательств тому нет, или есть?
Читать далееGame Engine 3 — оболочка для визуального программирования игр на Python (от идеи до реализации)

Привет, Хабр! Сегодня я хочу рассказать о своём проекте — «Game Engine 3», программной оболочке для создания двумерных игр и приложений.
Game Engine 3 — это инструмент для создания 2D?игр с физикой и анимацией. С открытым исходным кодом, интуитивным редактором визуального программирования на основе нодов и возможностями работы с графикой, физикой и анимацией, он подходит как для новичков, так и для профессионалов. В этой статье разберем, что делает эту оболочку уникальной.
Читать далееВ поисках острова стабильности. От циклотронов до пояса астероидов

Сегодня я вновь затрону полюбившуюся моим читателям тему знаковых иллюстраций в науке и напомню об одной из важнейших идей на стыке химии и физики, появившихся в XX веке. Это недостижимый (пока?) «остров стабильности» - область дальних трансурановых химических элементов, период полураспада которых значительно дольше, чем у более лёгких атомов, расположенных между ураном и «ближней отмелью» этого «острова». Гипотезу о существовании «острова стабильности» была выдвинута в середине 1960-х, а получением элементов, теоретически расположенных на этом «острове» в 2000-2010 занимались группы физиков из Дубны, Дармштадта и Ливермора. Благодаря их усилиям, удалось достроить последний полный период таблицы Менделеева, известный в настоящий момент. Он начинается с франция (Fr), открытого в 1937 году и радия (Ra), открытого в 1898 году, а заканчивается оганесоном (Og), открытым в 2002-2005 годах под руководством Юрия Цолаковича Оганесяна.
Читать далееOpenBLAS/gemm отстаёт на RISC-V
В ходе недавних исследований мы выполнили комплексное тестирование производительности математической библиотеки OpenBLAS на платформе RISC?V и выявили существенную разницу в скорости выполнения ключевой операции матричного умножения cblas_sgemm по сравнению с архитектурой x86 — производительность оказалась значительно ниже. cblas_sgemm — функция для умножения матриц, состоящих из 32-разрядных вещественных чисел. Хотелось бы обратить внимание на то, что функция матричного умножения gemm, соответствующая стандартам BLAS, используется во многих библиотеках и алгоритмах. А OpenBLAS — одна из самых популярных реализаций стандарта BLAS с оптимизацией под различные платформы.
Так на x86_64 OpenBlas получает производительность примерно 80–90% от теоретического максимума процессора. А на Risc?v примерно 20–25%. Также была рассмотрена самостоятельно реализованная функция перемножения матриц mini?gemm по алгоритму описанному в статье. При этом наша реализация получает производительность 30–35% от максимума. Из чего встает два вопроса: почему на RISC?V не получили 80%, как на x86_64 и как так вышло, что наша реализация обогнала OpenBLAS.
Читать далее[Перевод] Настройка soft-AP с использованием модуля Espressif и ESP-IDF

Перевод статьи с небольшими правками для ESP-IDF 4.4.5.
В этом руководстве показано, как настроить soft-AP с использованием модуля Espressif и ESP-IDF. Оно охватывает процесс создания проекта, настройки Wi-Fi и обработки событий подключения с помощью event loop и логирования.
В любом Wi-Fi-приложении первым шагом является установление соединения между устройством и маршрутизатором. В терминологии Wi-Fi устройство называется станцией (STA), а маршрутизатор — точкой доступа (AP). В большинстве случаев модуль Espressif работает как станция, подключаясь к существующему маршрутизатору. Однако перед этим пользователь должен пройти процесс provisioning — то есть ввести SSID и пароль маршрутизатора.
Существует несколько способов provisioning, но наиболее распространённые — это через Bluetooth и Wi-Fi. При использовании Wi-Fi процесс обычно выглядит следующим образом:
Читать далееКогда линковщик предаёт: как одинаковые символы из разных библиотек ломают ваше приложение
При линковке приложения с двумя статическими библиотеками, в которых определён один и тот же символ, возникает классическая и потенциально фатальная проблема — двойное определение символа. Вроде бы всё просто: multiple definition
— ошибка, надо переименовать. Но не тут-то было.
Разберёмся, как устроен линковщик, почему конфликты могут не проявляться сразу, и как на проде всё может пойти не так. Ну и конечно, как эту проблему исправить, не трогая архитектуру проекта.
Читать далееЭра мультиагентов? Как LangChain, только на стероидах: протокол Agent2Agent (A2A) от Google + MCP

Эра мультиагентов? Как LangChain, только на стероидах: протокол Agent2Agent (A2A) от Google + MCP
Представьте себе будущее, где десятки ИИ-агентов от разных производителей легко и безопасно общаются друг с другом. Звучит фантастически? Уже нет! Google только что выпустил революционный протокол Agent2Agent (A2A), способный полностью изменить ваш подход к автоматизации и совместной работе систем искусственного интеллекта.
Почему это важно? A2A позволяет агентам ИИ объединяться, решая задачи быстрее и эффективнее, чем когда-либо. Это значит меньше затрат, выше производительность и, главное — полная свобода интеграции агентов от любых поставщиков.
Хотите узнать первым, как именно работает A2A и почему Google делает ставку на мультиагентное будущее?
Не упустите возможность заглянуть в завтрашний день!
Читать далее[Перевод] История о потоке UI, зависавшем при вызове ядра
Однажды клиент обратился ко мне с вопросом о застарелом, но частом зависании, причину которого никак не удавалось выявить. Насколько можно было судить, поток пользовательского интерфейса направлял вызов в ядро, и этот вызов просто зависал без видимых причин. К сожалению, в дампе ядра не выводился стек пользовательского режима, поскольку стек был вытеснен из памяти. Причём, это логично: ведь зависший поток не использовал свой стек. Поэтому, как только в системе возникал дефицит памяти, этот стек из памяти вытеснялся.
Читать далееПростой пример использования в ПЛК нейросетевого контроллера

Современный мир движется к объединению технологий: промышленной автоматизации и искусственного интеллекта. Но для меня, занимающегося программированием в сфере АСУ ТП, было трудно понять, как на ПЛК, с его скромными техническими характеристиками и средой Codesys или TIA Portal можно применить технологии ИИ. На форумах готового решения не нашел, но проникся мыслью, что лучше обучить нейросеть на Python, а затем готовые веса и структуру перенести в Codesys. Я решил использовать OpenAI Gym, задачу CartPole. Это классическая задача обучения с подкреплением, где цель агента состоит в том, чтобы удерживать шест в вертикальном положении, выбирая действия (движение влево (0) или вправо (1)), на основе текущего состояния системы. План действий: для получения весов написать класс нейросети на PyTorch с использованием пакет DEAP. После этого написать Modbus TCP сервер на Python с окружающей средой CartPole, подсоединиться к нему с помощью ПЛК. Полученные данные обрабатывать в ПЛК и передавать сигнал, который будет управлять тележкой, на сервер.
Читать далееBSCP и с чем его едят?

Привет!
Меня зовут Владимир и я старший исследователь веб?уязвимостей.
На днях я успешно сдал сертификацию от PortSwigger BSCP (Burp Suite Certified Practitioner) и хочу поделиться своим опытом и советами, а также разобрать что вообще встречается на экзамене.
Читать далееСинхронизация контактов с Obsidian

В своих заметках часто хочется сослаться на определённого контакта. Более того, именно в заметках хочется отметить кого-то определённого и описать, в чём его особенность.
Например, контакт строителя, который делал ремонт в спальне и запомнился отличными навыками по электрике.
Писать подобные заметки в самой телефонной книжке не очень удобно, и сложно впоследствии находить нужные контакты.
Дублировать контакт в Obsidian — это и время занимает, и неизбежно приведёт к конфликтам в данных.
Ведение части контактов в телефонной книжке, а части — в Obsidian — вообще приведёт к хаосу, в котором непонятно будет, как и где искать нужный контакт.
В очередные выходные пришла идея: почему бы не сделать синхронизацию телефонной книжки с Obsidian?
Читать далееКвантовые компьютеры для чайников

Квантовые компьютеры часто звучат как что-то из научной фантастики – говорят, они способны на чудеса вычислений, недоступные обычным ПК. Но это не магия, а реальная технология, основанная на законах квантовой физики. Квантовые компьютеры уже существуют и работают в лабораториях по всему миру, хотя пока далеки от повседневного использования. К теме приковано огромное внимание: правительства инвестируют миллиарды (Китай, США, Европа и др.) в развитие квантовых технологий, а ведущие компании соревнуются, кто продвинется дальше. Давайте разберёмся простыми словами, что такое квантовый компьютер, чем он отличается от привычного, за счёт чего достигается его мощность и как эти странные машины могут изменить наш мир.
Читать далееКак Microsoft задушил Delphi, создав .NET: история одного программиста и одного чемодана

Личный взгляд программиста с стажем на то, как Microsoft переманил Хейлсберга, создал .NET и вытеснил Delphi с технологической сцены. История предательства, перехода эпох и чемодана, который до сих пор скрипит в углу.
Как Microsoft задушил Delphi читать далееОтквантифицируйте ваши JIRA-ретроспективы, чтобы раскрыть полный потенциал

Как вы проводите ретроспективы в своей команде? Используете Confluence или Miro с такими техниками, как ‘start, stop, continue’ или 4L? Как вы количественно оцениваете, стала ли ваша команда лучше за определённый период — будь то год или квартал? Полагаю, что никак, ведь извлекать данные из визуальных инструментов или вики-страниц, которые часто хаотично оформлены за целый год, — задача непростая.
Сколько раз вы помечали проблему как «TBD», которая в итоге оказывалась в бэклоге среди других таких же «TBD», которые позже было трудно приоритизировать? А если некоторые из этих «TBD» требовали одобрения от топ-менеджмента — например, на получение бюджета на увеличение вычислительных мощностей для быстрой компиляции или запуска тяжёлых тестов? Предполагаю, что в половине случаев вы оставляли попытки предоставить достоверные данные для обоснования бюджета или приоритизации задач.
Я тоже проходил через это, пока не реализовал решение для JIRA — Multi-team Metrics & Retrospective. Очевидно, что один из самых критически важных этапов ретроспективы — это анализ невыполненных коммитментов, что чаще всего означает незавершённый скоуп задач. Самый эффективный способ прогрессировать во времени я считаю анализ проваленных задач в каждом конкретном случае — согласно соответствующей метрике за конкретный период времени: будь то спринт, месяц, квартал, полугодие, год или релиз в PMIS (трекере задач).
Читать далееОповещение о РО через колонки Яндекса (Ну или в целом получение сигналов в УДЯ)

Система и алгоритм оповещения о ракетной опасности с использованием Яндекс Станций. Пользователь вручную создает сценарии для устройств «Умного дома Яндекса» с использованием «Лампочки», которая включается при сигнале о РО и выключается при сигнале ОТБОЙ.
Стэк: Python, telethon, aiogram 3.x, mqtt, postgresql.
Читать далееЛичные границы в IT: как перестать быть «всем должен», даже если ты senior или тимлид

Меня зовут Дмитрий, и я рассказываю как справляюсь с такой проблемой как «Выстраивание личных границ». Даю несколько советов и техник, которые работают для меня.
Читать далееПишем web-фреймворк на Go: как работают современные web-фреймворки под капотом

В данной статье представлен пошаговый процесс разработки легковесного веб-фреймворка на языке программирования Go. Основываясь на стандартной библиотеке net/http, мы исследуем ключевые концепции, лежащие в основе современных Go-фреймворков, таких как Gin, Echo и тд.
Читать далееСвайп, дофамин, иллюзия выбора: как сервисы превратили любовь в цифровую рулетку

Современные сервисы знакомств оптимизированы не для создания пар, а для монетизации одиночества через манипуляцию дофаминовыми циклами. Конфликт интересов между пользователями и платформами усугубляется архаичными социальными стереотипами и отсутствием платформ использующих современных технологии для поиска (хотя вроде и есть ML,скоринг, кластеризация..) И в таргетинге работают уже в весь рост. Там это выгодно. А выгодно ли сервисам?
Читать далее[Перевод] Почему мир теряет цвет?

Прогуливаясь по обычной парковке, вы окажетесь в море чёрных, белых и серебристых автомобилей. Включите Netflix дома или посмотрите фильм в кинотеатре — и на обоих экранах вы увидите одинаково выцветшую цветокоррекцию. Взгляните на логотипы крупнейших компаний мира — и заметите, как палитра становится всё беднее.
Всё это указывает на одно: цвет исчезает из нашего мира.
Читать далееМихаил Острогорский — о том, как в России появились технические писатели и как они создали свою профессию

Для меня, студента, а потом выпускника московского технического вуза по специальности «Прикладная математика», середина 1990-х годов выглядела дивным новым миром и взрывом возможностей. Появлялись новые российские компании, новые продукты, приходили в Россию иностранные компьютерные и софтверные компании. И всё это было окружено многочисленными выставками, всевозможными семинарами, презентациями, журналами и еженедельниками.
«Войти в айти» тогда было сравнительно просто: бери и делай то, что можешь и умеешь или хочешь, хотя и не очень умеешь, но знаешь, что так бывает, и можешь убедить окружающих, что ты — как раз тот, кто так может.
В начале 1990-х был такой еженедельник «Софт Маркет» — первое (по крайней мере, так говорят) специализированное компьютерное издание в России. Меня взяли туда внештатным корреспондентом. Я прислал им книгу своих стихов и предложение: давайте сделаем у вас новую рубрику, литературное творчество программистов, я буду ее вести.
Они сказали: стихов не надо, а вот корреспондент нам сейчас нужен. Так я стал компьютерным журналистом.
Но оказалось, что для журналиста я недостаточно язвителен, а для автора рекламных статей слишком правдив. Пришлось перейти к крупной форме.
В одно прекрасное утро я выкинул со своего личного сайта всё, кроме объявления о том, что я готов писать техническую документацию. Дальше случилось удивительное: посыпались заказы. Оказалось, что это вообще кому-то нужно. Что я технический писатель, мне потом кто-то из этих заказчиков и рассказал.
Читать далееНе попадись на крючок: 7 признаков фишингового письма или сообщения

Каждый из нас хоть раз получал странное письмо якобы от банка, соцсети или госслужбы с просьбой срочно перейти по ссылке, ввести данные или открыть вложение. Это фишинг — старый как мир, но все еще до обидного эффективный метод мошенничества. Он не ломает системы напрямую, он «ломает» нас — пользователей, играя на невнимательности, доверии или страхе. Последствия могут быть плачевными: от кражи паролей и денег до компрометации рабочих аккаунтов.
Читать далееОбратная сторона перфекционизма. Как желание сделать лучше мешает вам делать хоть что-нибудь?

А вообще что такое перфекционизм? Это когда человек стремится к некоему идеальному, безупречному результату. Ну, вы поняли — вот такой «супергерой» трудоголик, который в погоне за совершенством забывает про отдых и здравый смысл.
Читать далееЧеловекоцентричность: прогресс через помещение человека в центр цивилизации

Исторически борьба за общее благо и интересы каждого человека не имеет ничего общего с обеспечившим базовое материальное благополучие человека и человечества прогрессом цивилизации. Прогресс двигался в борьбе за частное благо за общий счёт, войной всех против всех за то, чтобы принудить одних работать на себя, и не дать другим это сделать с собой. От зари цивилизации до глобализации, от аграрных экономик до фундамента планетарной цивилизации, созданного связавшим планету в одну экономическую систему капитализмом, человек был инструментом и строительным материалом прогресса. Читать дальше →
Правила проектирования MES-систем, которые мы выработали

MES-системы — интерфейсы от которых зависит эффективность производственного процесса. Основная задача — обеспечить управление, ускорить принятие решений и снизить ошиби на всех этапах.
Разбираем как проектировать MES-систему, чтобы она была удобной в эксплуатации.
Читать далееСекретный путь в геймдев: зарабатывай и учись, «не» создавая игру

Привет всем хейтерам и благодетелям! Вновь я пишу статью для "саморекламы" специально для "диванных экспертов".
Как и всегда, в этой статью я поделюсь своим опытом и мнением за 6 лет скитания в игровой индустрии.
Не нажимай на эту кнопкуМобильная разработка за неделю #584 (14 — 20 апреля)
В этом выпуске обеспечение архитектурных правил с SwiftLint и муляция бесконтактных карт, тестирование Android-приложений в масштабе Netflix и разрешения в Appium, полная инструкция по разработке PWA, защита данных пользователей от скриншотов, анти-этичный ИИ и многое другое. Заходите!
Как скрестить консалтинговый подход и методологии из IT для найма персонала в строительные компании

В строительстве принято работать долго на одном месте, а искать сотрудников — по знакомству. Я пришёл с другим бэкграундом: консалтинг, управление IT-командами, структурные подходы. И понял, что можно взять лучшие практики из этих сфер и применить их к найму в строительстве. Что, если подойти к подбору как к бизнес-задаче — с гипотезами, итерациями и ретроспективами? Попробовал. Получился процесс, в котором всё можно оценить по времени и результату. Найм из случайности превратился в управляемый процесс.
Читать далее