Разбор одной инженерной задачи: как приложение рядом с игрой читает чат прямо из памяти процесса, почему первый способ это делать сжигал половину ядра и что пришло ему на смену. Тема — память чужого процесса, строка, которая не стоит на месте, и мёртвая копия, неотличимая от живой.
Читать далееЗадумывались ли вы когда-нибудь о том, что на самом деле происходит под капотом, когда вы рендерите приложение React? Мы знаем, что React строит дерево DOM и отображает UI на экране, но как React конструирует это дерево и как он эффективно обновляет его при изменении состояния?
В этой статье мы рассмотрим React Fiber — основной движок согласования (reconciliation) React. Мы рассмотрим, как React строил DOM до v15, недостатки этой ранней стековой (stack) модели с точки зрения производительности и то, как асинхронная архитектура Fiber решает эти проблемы, начиная с React v16 и до React v19.
Читать далееПривет, Хабр! Я Евгений Шувагин, последний год работаю над компонентом Face-Shot в Т-Банке.
Представим ситуацию: клиент хочет перевести большую сумму, используя мобильное приложение. Внутренние системы видят подозрительную активность и запрашивают проверку по селфи, человек наводит камеру на лицо — получает отказ. А все из-за того, что на бэкенде была получена размытая фотография потолка с кусочком лица пользователя, по которому никак не понять, действительно ли это владелец счета хочет провести операцию. Клиент звонит в поддержку, злится. Банк теряет доверие. Именно такие сценарии заставили нас серьезно заняться качеством записываемого фото.
Читать далееВы можете назвать свою компанию красиво: вплести свое имя или вдохновляющий текст. Но это не гарантирует безопасность бизнеса, если вы не учли требования закона к интеллектуальной собственности.
При чем здесь интеллектуальная собственность?
Название организации, название бренда или название компании – это слова из обычной речи. В разговоре вы их используете без последствий для себя и своего бизнеса.
Другое дело, если вы хотите закрепить название компании исключительно за собой. С этого момента вы имеете дело с фирменным наименованием – объектом интеллектуальной собственности.
Интеллектуальная собственность охраняется законом по-особенному.
Читать далееКак просьба друга «настроить кассу» закончилась open-source ERP, тринадцатью российскими интеграциями и нейросетью, которая теперь считает закупки, ищет косяки в учёте и пишет владельцу в Telegram.
Есть у меня друг. Назовём его Артём.
Полгода назад он решил открыть ресторан. Небольшой: пятнадцать столиков, кухня, бар, доставка. Никакой федеральной сети и отдела автоматизации на сорок человек. Обычный ресторан, где владелец ещё вчера выбирал стулья, сегодня разбирается с поставщиком мяса, а вечером внезапно узнаёт, что касса тоже требует внимания.
Примерно за месяц до открытия Артём пришёл ко мне с классической фразой:
— Слушай, тыжепрограммист. Помоги систему настроить. Ну чтобы касса, кухня, заказы — всё нормально работало.
Если вы когда-нибудь были «тем самым знакомым программистом», то примерно понимаете, чем обычно заканчивается слово «помоги». Сначала задача выглядела просто: выбрать что-нибудь вроде iiko, поставить, настроить и забыть.
В итоге я полез смотреть, как вообще устроен ресторанный софт, перебрал несколько систем, остановился на open source, русифицировал его, прикрутил российские кассы, банки, 1С, маркировку, агрегаторов доставки, а потом зачем-то решил, что обычной автоматизации мне уже мало.
Так в ресторане появился DeepSeek, который скоро заменит Артема, а может и всех остальных. Сам будет заказывать еду, сам кушать... ну это я отвлекся.
Сразу важный момент. Я не писал ресторанную ERP с нуля. Это был бы отличный способ потратить много времени и получить плохую кассу. Я взял готовую open-source систему и начал допиливать её под конкретный ресторан. И вот здесь всё стало интереснее.
Читать далееЕсли вы пытались спарсить сайт на Cloudflare через Selenium или Playwright и упёрлись в бесконечный «Verify you are human» — дело не в вашем коде. Дело в том, что Cloudflare палит автоматизацию браузера ещё до того, как отработает первая строчка JS‑скрипта.
Читать далееПредставим, что вам предстоит приобрести новый автомобиль. Хотел бы я сказать, что сам столкнулся с таким выбором, но увы и ах… С одной стороны — красивый внедорожник с трехлитровым бензиновым двигателем, а с другой — технологичный электрокар с возможностью бесплатно парковаться и большой переноской (зарядкой-удлинителем). Что вы выберете? Скорее всего, «электричку», которая будет работать и в бензиновый кризис. При этом пару лет назад многие наоборот выбрали бы кроссовер. Получается, при любой крупной покупке надо учитывать риски и возможности в долгосрочной перспективе, а не только ситуацию здесь и сейчас.
Что же выбрать?Полтора года назад разговор про AI и архитектуру обычно сводился к одному вопросу: насколько быстрее теперь пишется код. Сейчас вопрос звучит иначе. Если значительная часть проектирования и реализации переходит к AI‑агентам — что происходит с самой системой принятия архитектурных решений?
Читать далееStockfish умеет находить сильные ходы. Но браузерному расширению ещё нужно понять, какая из нескольких досок относится к текущей партии, дождаться стабильной позиции, пережить остановку service worker и не показать устаревший результат.
Дальше не про кнопки, а про проверки: какая доска настоящая, не протух ли ответ, пока считал движок, куда девать WASM, когда Chrome гасит service worker, и почему «сыграй как 1500» нельзя получить, урезав глубину. Отдельно, без эвфемизмов: подсказка в партии с человеком — это чит.
Читать далееИз новостей: аудитория The Rogue Prince of Persia достигла 1 миллиона игроков, 2 миллиона вишей у новой Onimusha, Харви Смит открыл собственную студию, Уоррен Спектор ушёл из индустрии, Double Fine пытается выжить через KS, 4 миллиона проданных копий у 007 First Light.
Из интересностей: как создать 3D-рендерер для Playdate, 5 месяцев на игровой движок и месяц на игру, как дырявый Shareware‑диск позволил спиратить Quake, алгоритм для бесшовной генерации подземелий.
Читать далееDoorDash построили внутреннюю платформу для облачных AI-агентов под названием Flux. Масштаб уже впечатляющий: за один месяц 2026 года через неё прогнали 130 000 инженерных задач, включая свыше 25 000 автоматических код-ревью в неделю и более 10 000 запусков playbook'ов из более чем 300 уникальных сценариев — всё это работает без участия человека, параллельно и круглосуточно.
Почему ушли от локальных агентов на ноутбуках
Команда описывает три конкретных ограничения агентных воркфлоу, запущенных прямо на машинах инженеров:
Читать далееЭтой весной мне понадобился лист QR‑кодов с подписями: по коду на каждую позицию, чтобы скачать PDF, распечатать и разрезать. Онлайн‑генераторы делают коды по одному или просят подписку за пакет, так что я написал свой сервис на PHP 8.2. В посте про то, что интереснее разработчику: чистое детерминированное ядро с golden‑тестами байт‑в-байт, кириллические домены и punycode, кириллица, которую TCPDF молча теряет в SVG, артикулы в виде 4.6E+12 из Excel, “прозрачный” PNG с маджентовым фоном и самописный EAN-13 с оракулом в тестах.
Читать далееЗаходят как на электронную почту разработчики на C++, а там письма про легаси.
И это не начало анекдота, а начало email-проекта Ghost in the code — серии писем от опытных инженеров о том, какие инструменты и процессы помогают наладить работу с легаси-кодом. Среди авторов — Антон Полухин, Константин Владимиров, Андрей Карпов и другие инженеры из крупных технологических компаний. Первое письмо придет 15 сентября, а пока выясним, о чем расскажут эксперты и что ждет тех, кто решит все задачи от авторов.
Погрузиться в легасиКогда используешь корпоративный VPN для рабочих сервисов и локальный прокси для “внешних” сайтов, то иногда просто добавить основной домен в прокси оказывается недостаточно:
YouTube может остаться без превью, Letterboxd — без постеров, а ChatGPT — без загрузки файлов.
Расскажу, как сделал свой велосипед сделал Chrome-расширение, которое ищет такие внешние зависимости в двух режимах: анализирует уже загруженную страницу или записывает домены, появившиеся во время конкретного действия. И почему отсеять аналитику и фоновый шум, выбрать безопасную область правила и при этом не запрашивать доступ ко всему трафику оказалось сложнее, чем просто собрать список доменов.
Читать далееКаждый, кто хоть раз устанавливал Linux вручную, знает этот ритуал: загрузиться с Live‑образа, запустить fdisk или parted, создать таблицу разделов, отформатировать их в btrfs/ext4, создать субтома, а затем вручную примонтировать всё это в /mnt.
Конечно, такой подход можно использовать и при установке NixOs. Но вопрос — зачем?
Это не только полностью противоречит самой сути NixOS — системы, где всё должно быть описано декларативно в коде, но и существенно влияет вообще на удобство использования этой системы в будущем. Стоит вам захотеть развернуть точно такую же конфигурацию на другом сервере или ноутбуке, и весь ручной процесс разметки приходится повторять заново, вспоминая точные флаги монтирования вместо того, чтобы написать всего лишь одну команду.
В этой статье мы этим вопросом и займёмся, а поможет нам в этом известная утилита disko. Мы напишем чистый декларативный конфигурационный файл в ДВУХ вариантах:
Читать далееAI-агента сегодня можно собрать за несколько часов. Но это не значит, что бизнес понимает, где его действительно стоит внедрять.
Компании часто начинают с Build: выбирают модель, подключают Jira, GitHub, MCP, собирают workflow. А уже потом пытаются понять, какую проблему они вообще решили.
В статье разбираю другой подход: сначала найти места, где команда теряет время на восстановление контекста, ручную координацию и переключение между системами. Для этого мы используем Context Audit и понятие контекстного долга.
Поговорим о том, как увидеть такие проблемы в Jira, Confluence и GitHub, почему не каждую из них стоит автоматизировать и что делать после аудита.
Читать далееКак я улучшил гибридный квантово-устройчивый протокол шифрования за 4 месяца экспериментов. Разбор различных методов ротации ключей, NTT и других нюансов проектирования протоколов шифрования с объяснением.
Читать далееВ середине августа 2026 года в китайском закрытом сегменте появились подробности закрытого показа кремниевого подразделения Xiaomi. Компания привезла рабочий инженерный прототип под названием Xiaomi AI Cube.
И это уже не очередной неттоп на мобильном процессоре Intel или AMD. Перед нами компактная рабочая станция, собранная, собственно, под вполне конкретную задачу - локальный запуск открытых нейросетей размером до 120 миллиардов параметров без подключения к облаку и без видеокарт Nvidia.
Читать далееШирокое распространение СМИ в сети привело к формированию группы тематических экспертов — лидеров общественного мнения — блогеров. Их задача — оценка и анализ фактов, подача информации через призму собственного мнения.
Закономерно, мысленное упражнение, как человек, оставивший след в истории, оценил бы тот или иной современный факт.
Читать далееЗдравствуйте, уважаемые читатели.
В мае мы выпустили 2-е издание (на русском языке - первое) фундаментальной книги Дениса Бахвалова "Оптимизация производительности современных процессоров". Денис Бахвалов, легендарный в узких кругах разработчик процессоров из компании "Intel", ведёт классный англоязычный блог Easyperf, в котором рассуждает на разнообразные темы, связанные с профилированием процессоров, поиском узких мест, машинным кодом, а также со своей книгой. Сегодня предлагаем вам перевод одной из самых глубоких и стратегически важных статей этого блога, многие аспекты которой подробнее раскрыты в книге. Далее - от автора
Читать далее