Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 1 hour 44 min ago

Формат данных на C++, который не боится рефакторинга

Tue, 12/23/2025 - 13:00

Не про редактор и не про алгоритмы. Про то, как формат сохранения переживает переписывание логики, рост требований и годы разработки.

Есть миф, что рефакторинг ломает обратную совместимость. Я 5 раз переписывал редактор графов и не сломал ни одного файла. Рассказываю, как это возможно.

Почему данные переживают иерархии кода

Подборка атак через библиотеки: CVE в React Native и не только

Tue, 12/23/2025 - 13:00

Итак, 5 ноября команда JFrog опубликовала предупреждение об уязвимости CVE-2025-11953 в инструментах командной строки проекта React Native Community CLI. React Native — это платформа которую используют тысячи разработчиков для создания мобильных приложений, которые мы видим в App Store или Google Play. А React Native Community CLI через командную строку предоставляет инструменты для разработки и сборки этих приложений, куда как раз и входил злополучный пакет.

На первый взгляд, это еще один CVE в длинном списке. Но проблема глубже: уязвимость в популярном пакете может затронуть сотни проектов одновременно и ударить не только по продакшену, но и по устройствам разработчиков и CI-пайплайнам.

В статье разберем, как библиотеки из удобных помощников превращаются в точку входа для злоумышленников, почему такие инциденты не решаются простым апдейтом и какие механики атак через зависимости встречаются чаще всего. В конце обсудим дилемму — стоит ли вообще полагаться на сторонние фреймворки или лучше писать нативно. Детали под катом.

Читать далее

IPv6 в доменных сетях: скрытый фактор атак на Active Directory

Tue, 12/23/2025 - 13:00

Во многих современных IT-системах IPv6, как правило, включён по умолчанию. Это относится и к операционным системам, и к серверам, и к сетевому оборудованию, и к контейнерным платформам. Даже если в компании или проекте официально используется только IPv4, IPv6 чаще всего уже присутствует и функционирует — без явного внимания со стороны архитекторов и специалистов по ИБ. 

Это важный момент, потому что безопасность обычно строится вокруг того, что явно спроектировано. Если протокол не заложен в архитектуру, под него редко настраивают фильтрацию, мониторинг и контроль. IPv6 в таких случаях — не «новая технология», а незадокументированный элемент системы. 

Читать далее

Путевые заметки о знакомстве со Spring Data R2DBC

Tue, 12/23/2025 - 13:00

Привет, Хабр! Меня зовут Каненков Александр, я backend-разработчик в Домклик. Не так давно я резко и с головой погрузился в мир реактивного программирования и очень заинтересовался этой темой. Хочу поделиться кратким введением в Spring Data R2DBC, зачем это нужно, как начать использовать и какие преимущества даёт. Мы разработаем небольшое приложение, добавим flyway и напишем пару тестов.

Читать далее

[Перевод] Пожалуйста, реализуйте этот простой SLO

Tue, 12/23/2025 - 12:44

Приветствую, Новенький! Рад, что вы завершили онбординг в нашей корпорации ACME. У меня для вас есть первый тикет. Это простая задача, всего два сторипоинта, но она позволит вам немного научиться тому, как взаимодействуют наши сервисы. Просто реализуйте SLO доступности нашего сервиса Foo. Вы ведь знаете, как реализуются SLO?

Думаю, нам стоит стремиться к четырём девяткам. Я уверен, что вы в курсе всех best practices нашей отрасли, поэтому не буду надоедать вам советами. Если нужно, внизу есть бумажная Google SRE Book. Мне кажется, это быстрая задача; сможете представить свой SLO к пятничному демо?

Читать далее

Аналоги Trello в 2026: акцент не только на досках

Tue, 12/23/2025 - 12:42

Trello долгое время был удобной и устойчивой основой для российских команд, но сегодня, по моему опыту, он всё реже воспринимается как надёжный элемент рабочего стека. Этап срочной миграции уже пройден, и в 2026 году ключевой вопрос — не куда переехать, а какой инструмент можно использовать в долгую без продуктовых и инфраструктурных рисков.

Читать далее

Почему мы прокрастинируем на самом деле

Tue, 12/23/2025 - 12:40

Решил поделиться одной точкой зрения, которую заметил на радарах уже давно, по поводу прокрастинации как на работе, так и в личных делах. Тема кажется мне актуальной, потому что сам подвержен подобному конфликту и многие команды в компаниях, с которыми провожу общение.

Представим: важная задача висит в списке, дедлайн маячит, ты понимаешь, что делать её надо прямо сейчас…
Именно в этот момент ты:

Читать далее

Автоматизация фоновой аналитики в финтехе с помощью background LLM‑агента: реальный опыт

Tue, 12/23/2025 - 12:39

Всем привет, меня зовут Максим Шаланкин, Machine Learning Team Lead в команде финтеха Big Data MWS. Внутренняя аналитика в финтехе живет в режиме постоянной гонки: новые клиенты приходят, ведут себя по‑разному, а бизнесу нужно быстро понимать, чем группы с разными сценариями отличаются друг от друга. При этом значительная часть работы аналитика — это однотипное сравнение когорт и поиски закономерностей в табличках и графиках. Фоновый LLM‑агент, который умеет сам поднимать данные, запускать статистические проверки и возвращать готовые инсайты, заметно сокращает путь от данных до решения.

Под катом — разбор, как устроен такой background‑агент для анализа активности новых клиентов, на чем он основан, как мы минимизируем галлюцинации и почему выбрали архитектуру, похожую на Claude Skills, а не идем в сторону MCP‑подхода.

Читать далее

Топ-5 фишек Python, которые вы, скорее всего, упустили

Tue, 12/23/2025 - 12:36

На дворе 2025 год. Мы привыкли к f-строкам и тайп-хинтингу, но всё ещё тащим в продакшен привычки из Python 3.6.

Вы знали, что блок else в цикле for выполняется вовсе не тогда, когда «цикл не сработал», а наоборот? А что громоздкий try-except pass для игнорирования ошибок — это антипаттерн, который заменяется одной элегантной строкой из стандартной библиотеки?

В статье — топ-5 прагматичных фич (от match/case с гардами до itertools.batched), которые позволяют писать декларативный код и выбрасывать лишние if и флаги. Никакой воды, только примеры «Было / Стало».

Читать далее

Как сайты вычисляют мошенников? Детект впна, рейтинг номеров и трекинг курсора

Tue, 12/23/2025 - 12:35

Мошенник заходит на Озон купить товары и воспользоваться для этого данными украденных банковских карт. Ставит прокси, меняет айпи, использует антидетект браузер, закупает пачку номеров. Подготавливает дропов и адреса ПВЗ. Он регистрирует несколько аккаунтов, добавляет товары в корзину и нажимает оплату. На одном акке сайт зависает, на другом требует подтвердить личность, а третий аккаунт живой.

Как Озон заподозрил мошенника, если он учел все и не сделал никаких ошибок.
Что происходит под капотом и что стало с третим аккаунтом?

В этой статье мы разберем как работает эта система, откуда она берет данные и почему Китайский сценарий развития интернета уже наступил

Читать далее

Вы больше не новичок в Git. Повышаем квалификацию с помощью 7 команд

Tue, 12/23/2025 - 12:35

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

Читать далее

Как отправлять первые сообщения в Telegram из n8n и поднять конверсию на 40%

Tue, 12/23/2025 - 12:30

У Telegram-ботов есть критичное ограничение: они не могут писать первыми. Только реагировать на команды пользователя. А менеджеры по продажам хотят писать первыми. Очень сильно хотят.

И не зря: воронки, в которых менеджер связывается с клиентом в течение первого часа, показывают конверсию на 40% выше, чем те, где пользователя ведут в бота.

Проблема в том, что обеспечить быстрый контакт сейчас непросто:

Дозвониться до клиента сложно — многие не берут трубку от незнакомых номеров

Заставить пользователя подписаться на бота после заявки — конверсия режется в разы

А чем дольше тянется первый контакт, тем холоднее лид

В этой статье мы разберёмся, как сделать так, чтобы мы могли связаться с потенциальными покупателям, не дожидаясь когда они активируют бота.

Читать далее

Opex и Capex-затраты на внедрение и поддержку ERP-систем

Tue, 12/23/2025 - 12:15

Любой вид деятельности, организация и ведение бизнеса априори предполагают несение затрат. В зависимости от вида деятельности или вида бизнеса затраты принято делить на затраты производства и издержки обращения. Все затраты и расходы, связанные с производством товаров, работ и услуг – это затраты производства. Затраты, связанные с реализацией, продажей товаров, готовой продукции потребителям – издержки обращения.

Успешное ведение бизнеса, как и любого вида производственной и иной деятельности, предполагает организацию контроля за эффективностью работы компании путем оптимизации расходов. Термин «оптимизация» расходов в целях получения конкурентного преимущества на рынке предполагает широкое ее использование, в том числе оптимизация:

Читать далее

QR-код генераторы: топ 5 сервисов для создания QR-кодов

Tue, 12/23/2025 - 12:07

QR-коды сегодня применяются в разных сферах: автоматизация процессов, реклама, платежи, быстрый доступ к информации, маркировка товаров, платежи и так далее. Существует огромное количество сервисов (генераторов QR-кодов) для их создания, платных и бесплатных. Если выбрать неподходящий сервис, могут возникнуть проблемы: нечитаемые коды, утечки данных, потеря денег на печати. В этой статье разберем все важные моменты.

Читать далее

Истории подколов, розыгрышей и шуток над коллегами на работе в IT команде

Tue, 12/23/2025 - 12:06

Всем привет! В преддверии нового года хочу рассказать истории подколов, розыгрышей и шуток над коллегами по работе. Так уж получилось, что я попал в одну из IT команд зелёного банка и отработал там три года. Как вы понимаете зелёный банк — это корпоративная среда, дресс код в одежде, всегда и везде официальный и деловой стиль. Не скажу про себя, что я хулиган, скорее спокойный интроверт, но больше люблю конечно неформальную обстановку с домашним уютом, чего в нашей команде просто не было. В общем-то это и подвигло меня на действие. Как мне кажется, а это моё субъективное мнение, все шутки были строго безобидными, в худшем случае коллеги негодовали или ворчали, можете это решить сами насколько они были жёсткими.

Дисклеймер. В статье под катом все приколы, розыгрыши и шутки выполнены профессионалом, я действительно всё это проделал, однако, стоит предупредить, если кто-то хочет попробовать что-то из этого повторить, то это может привести к неопределённым последствиям, стоит об этом помнить!

Читать далее

Убийственный китайский аутсорсинг: когда цепочка становится абсурдно длинной

Tue, 12/23/2025 - 12:05

Не секрет, что на рынке хостинга полно мелких реселлеров, покупающих услуги у крупных провайдеров и перепродающих их под своим брендом. Это нормальная практика - так малый бизнес входит на рынок без больших вложений, а пользователи получают возможность разместиться на надежных мощностях крупного провайдера (куда их обычно не пускают из-за мелочного объема). Но порой такая цепочка превращается в абсурдную матрёшку с несколькими уровнями вложенности: "ВасяХост" покупает мощности у "МегаСервера", а тот арендует их в "ГлобалХостинг", который, в свою очередь, держит их в "ХостингЮниверс" (на всякий случай - все названия выдуманы и совпадения случайны). В итоге, когда сервер ложится в три часа ночи, техподдержка первого уровня героически пересылает тикет дальше по цепочке, пока не доберётся до человека с реальным доступом к серверу. Со всеми временными потерями, разумеется.

Поэтому, каждый раз, когда я вижу подобный хостинг с многоуровневой системой аренды, я вспоминаю историю из Китая 2019 года, звучащую как комедия в духе братьев Коэнов. Перед Новым годом принято рассказывать отвлеченные истории, поэтому позвольте мне поведать и эту. Итак, некий бизнесмен нанял киллера за $280,000, чтобы устранить конкурента. Но наемник тоже оказался предпринимателем и делегировал задачу…

Читать далее

[Перевод] RAG нового поколения: как заставить ИИ не врать

Tue, 12/23/2025 - 12:05

На прошлой неделе в OpenAI посреди ночи случился переполох. Был выпущен GPT-5.2, и трон мирового ИИ снова сменил владельца.

Крупное обновление всего через четыре месяца - это необычно. Триггером стало давление конкурентов. Reuters сообщает, что Альтман объявил «красный код» еще в начале декабря, чтобы ускорить разработку, и подоплекой этого стал ответ на Gemini 3 от Google.

Сама OpenAI позиционирует это не как набор новых фич, а так: «Мы улучшили производительность в таких областях, как интеллект, обработка кода и понимание длинных текстов, и особенно усилили возможности создания таблиц, презентаций и выполнения других сложных многоэтапных задач».

Другими словами, GPT-5.2 - это не «мажорное обновление», а скорее отточенная версия, которая повышает надежность, работу с длинным контекстом, использование инструментов и генерацию для практических приложений. Можно с уверенностью сказать, что это не новая игрушка, а рабочий инструмент, который стал проще в использовании.

Читать далее

Азбука тензорных сетей, часть 2: тензорный поезд из кружочков и палочек

Tue, 12/23/2025 - 12:04

Привет, Хабр! На связи вновь Алексей Капранов, архитектор-исследователь в команде квантовых вычислений Cloud.ru. В первой части мы узнали, что такое тензорные сети, познакомились с графическим представлением, вспомнили основные операции и подумали над алгоритмической сложностью.

Прошлая статья была подготовительной и немного философской преамбулой. Сегодня мы продолжим знакомиться с тензорными сетями и наконец-то доберемся до представления тензорного поезда, которое получим при помощи сингулярного разложения.

Рекомендуется к прочтению ML/AI‑исследователям и инженерам, которым интересны продвинутые методы понижения размерности; исследователям алгоритмов и численным аналитикам, а также всем, кто интересуется математикой и знаком с линейной алгеброй.

Читать далее

Зачем ребёнку субитизация и как играют с детьми в семье айтишников

Tue, 12/23/2025 - 12:01

Привет, Хабр! Меня зовут Андрей. Я работают в российской ИТ-компании «Криптонит» и воспитываю семилетнюю дочь, которая с каждым годом осваивает всё более сложные активности. Мы уже паяли, шифровали, придумывали игры самостоятельно и дорабатывали готовые. В этой статье хочу поделиться недавним опытом и разобрать несколько разноплановых настолок. Одни помогут продуктивно провести время с ребёнком (заодно и самому переключить мозги), а другие — развить у ребёнка самостоятельность, способность концентрировать внимание и субитизацию прямо как у разведчика. Особенно пригодятся игры на долгих новогодних праздниках.

Читать далее

Как я нашёл уязвимость в JavaScript-движке, или Почему корень из нуля чуть не сломал браузеры

Tue, 12/23/2025 - 12:01

Сколько будет корень из нуля? Даже школьник ответит не задумываясь: ноль. Но если задать этот вопрос JIT‑компилятору Maglev внутри движка V8, то при определённых обстоятельствах он сначала скажет: «ноль», а потом решит сэкономить на проверке безопасности и отдаст злоумышленнику доступ к памяти браузера.

Меня зовут Паша Кузьмин, я занимаюсь практической безопасностью Яндекс Браузера и проекта Chromium. В нашей команде мы регулярно разбираем уязвимости и исследуем методы атак — чтобы защищать пользователей до того, как их атакуют злоумышленники. Сегодня расскажу про CVE-2025-9864 — уязвимость, которую я нашёл в движке V8.

Это история о том, как безобидный Math.sqrt(0) превращается в use‑after‑free, а затем в произвольное чтение и запись памяти. Разберём проблему по шагам: от теории до работающего эксплойта.

Читать далее

Who's online

There are currently 1 user and 1 guest online.