Обновить
128K+
177
Ксения Мосеенкова@kmoseenk

Переводчик, редактор

151
Рейтинг
205
Подписчики
Отправить сообщение

Жёлтый код, красный код: что делать во время инженерного кризиса

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели3.4K

Когда сбои идут один за другим, а клиенты уже не разбираются, кто виноват — ваша система или облачный провайдер, обычной расстановки приоритетов становится недостаточно. В статье — практический разбор Code Yellow и Code Red: как вовремя объявить инженерную эскалацию, организовать работу команд и вернуть инфраструктуру в стабильное состояние.

Изучить опыт

Внутри Apple Neural Engine в M4. Часть 1: реверс-инжиниринг

Уровень сложностиСложный
Время на прочтение9 мин
Охват и читатели6.7K

Можно ли заставить Apple Neural Engine делать больше, чем позволяет Core ML? Авторы разобрали стек ANE в M4 до закрытых API, научились компилировать и запускать модели напрямую и заодно выяснили, что часть привычных представлений о возможностях ускорителя требует пересмотра.

Читать разбор

XDP: практический гайд по разбору сетевого трафика с eBPF

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели11K

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

Разобрать XDP

Как потеря 17% сессий запустила цепную реакцию в инфраструктуре Discord

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели10K

25 марта 2026 года голосовая и видеосвязь Discord перестала нормально работать для большинства пользователей. Причиной стал не один большой сбой, а цепочка событий: изменение конфигурации Kubernetes привело к потере части пользовательских сессий, затем система столкнулась с лавиной переподключений и новыми узкими местами в инфраструктуре.

В статье команда Discord разбирает этот инцидент изнутри: как 17% остановленных сессий запустили каскадный отказ, почему механизмы восстановления сами стали источником нагрузки и какие архитектурные изменения помогли сделать систему устойчивее.

Читать разбор

Как NASA измеряла дальность до Apollo с метровым разрешением — на технике 1960-х

Уровень сложностиСредний
Время на прочтение20 мин
Охват и читатели17K

Чтобы измерять дальность до Apollo у Луны с метровым разрешением, NASA использовала псевдослучайные коды, корреляцию слабого сигнала и сложную радиосистему S-диапазона. Разбор от Ken Shirriff, как всё это работало на транзисторной логике 1960-х годов.

Заглянуть внутрь

5 ошибок аналитика, из-за которых требования не выдерживают тестирования

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели8.8K

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

Перейти к разбору

Генератор ID для микросервисной архитектуры: гайд по масштабированию целочисленных идентификаторов

Время на прочтение7 мин
Охват и читатели9.1K

В распределённых системах генерация уникальных ID быстро становится архитектурной задачей: центральная база создаёт узкое место, а переход на UUID может оказаться невозможным из-за унаследованного кода. Разберём рабочий подход с отдельным сервисом, диапазонами идентификаторов и защитой от потери ID при сбоях.

Читать далее

Одна ошибка с индексами Postgres, из‑за которой растут WAL и нагрузка на запись

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели10K

Если CREATE INDEX CONCURRENTLY или REINDEX INDEX CONCURRENTLY завершается с ошибкой, Postgres оставляет после себя невалидный индекс. Многие инженеры считают такие индексы безобидными заготовками, которые просто ждут удаления. В конце концов, планировщик ведь не использует их в запросах, верно?

Нет. Невалидные индексы совсем не безобидны. Они продолжают потреблять ресурсы, генерировать ввод‑вывод, мешать оптимизациям и даже создавать конкуренцию за блокировки — при этом не давая никакого выигрыша в производительности запросов.

В этой статье мы на реальных примерах рассмотрим скрытые издержки невалидных индексов, о которых должен знать каждый администратор Postgres.

Проверить индексы

Как проверить все Python‑окружения на опасные пакеты без запуска Python

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели13K

Вредоносная зависимость может годами лежать в забытом проекте, а обычная команда pip freeze — запустить оставленный злоумышленниками код. Разберём, как собрать реестр виртуальных окружений и с помощью uv безопасно проверить версии пакетов во всех локальных проектах.

Проверить пакеты

Как выстроить доверенный TLS в Kubernetes без InsecureSkipVerify

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели9.1K

Трафик внутри Kubernetes может быть зашифрован и при этом оставаться уязвимым: сервисы принимают самоподписанные сертификаты, а API-сервер не проверяет подлинность kubelet. В этой статье разберём рабочую схему с внутренним CA, cert-manager, trust-manager и контроллером одобрения CSR, которая позволяет убрать небезопасные исключения и выстроить единую цепочку доверия для рабочих нагрузок и управляющей плоскости.

Защитить Kubernetes-кластер

Как загрузить любой шрифт Google Fonts на дисплей ESP32 — без Processing и ручной конвертации

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели15K

Встроенных шрифтов TFT_eSPI хватает ровно до того момента, когда интерфейс ESP32 хочется сделать аккуратнее обычного тестового стенда. В статье автор показывает браузерный генератор для Google Fonts и собственных TTF, а заодно объясняет, как устроен формат VLW и что важно учесть при работе со сглаживанием, LittleFS, переносами строк и размером файла.

Настроить шрифты

Кто платит за ИИ-продуктивность: почему выгорают middle-инженеры

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели14K

В современной разработке AI-ассистенты для кодинга создали кризис, о котором никто не говорит. Junior-инженеры работают быстрее, чем когда-либо. Senior-инженеры проектируют архитектуру с меньшими усилиями. А что происходит с вашими middle-инженерами?

Они тихо тонут: большую часть времени вылавливают ошибки AI, которые не попадают ни на один дашборд.

Я называю это проблемой «невидимого валидатора». Опираясь на опыт создания AI-платформ, которые обслуживали более 100 миллионов пользователей на enterprise-масштабе, в этой статье я разберу, как ваши лучшие инженеры субсидируют продуктивность всех остальных… и что сделать, пока они не ушли.

Разобрать проблему

ИИ в инженерной команде: практический гайд по обмену рабочими приёмами

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели8.2K

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

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

Читать гайд

ИИ ускорил разработку. Почему продакшен стал ломаться чаще

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели11K

Искусственный интеллект уже ускорил написание кода, а способность систем безопасно принимать изменения осталась прежней. Отсюда – аккуратные пулл-реквесты, зелёные тесты и инциденты, которые проявляются только в продакшене. В статье разбираем, где возникает этот разрыв и какие инженерные guardrails помогают удержать скорость без роста хрупкости.

Разобраться в рисках

Apple выпустила Mac с багом в ПЗУ. 35 лет его спасала некорректно закодированная инструкция 68030

Уровень сложностиСложный
Время на прочтение20 мин
Охват и читатели17K

Macintosh Classic II десятилетиями загружался благодаря случайному поведению процессора Motorola 68030. Ошибка в ПЗУ уводила выполнение за пределы таблицы переходов, прямо в середину другой инструкции, но некорректно закодированная CAS каким-то образом исправляла регистр A1 и спасала систему от падения. Автор обнаружил это в MAME, проверил на настоящем Classic II и выяснил, почему современные эмуляторы до сих пор воспроизводят работу этого компьютера неточно.

Читать расследование

Как оценить библиотеку для ИИ-агентов без слепой проверки финального ответа

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели6.4K

ИИ-агент может вернуть правильную строку и при этом пройти к ней самым дорогим маршрутом: читать лишний код, угадывать API, падать на ошибках и заново собирать решение. Для разработчика библиотеки это уже не косметическая проблема, а новый слой качества инструмента. На примере transformers разбираемся, как устроить стенд оценки, который смотрит на путь агента: трейсы, токены, время, ошибки и поведенческие маркеры.

Читать далее

Как собрать собственный dial-up-провайдер на Raspberry Pi

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели13K

Что получится, если взять Raspberry Pi, USB-модем, имитатор телефонной линии и старый iBook G3 с AirPort? Локальный dial-up-провайдер, который подключает ретрокомпьютер к интернету через Wi-Fi на скорости 33,6 Кбит/с. В этой статье автор собирает такую схему дома, разбирается с mgetty, PPP и модемным рукопожатием — и заодно показывает, почему эксперименты со старым железом всё ещё помогают лучше понимать современные сети.

Разобрать проект

Когда ИИ-агент ошибается молча: 6 отказов, которые не видно по ответу

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели8.8K

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

Разобрать отказы

25 виртуальных процессоров в одном железе: как Space Shuttle обрабатывал ввод-вывод

Уровень сложностиСредний
Время на прочтение23 мин
Охват и читатели14K

У компьютеров Space Shuttle был отдельный процессор ввода-вывода, который связывал бортовую вычислительную систему с датчиками, дисплеями, двигателями и другими узлами шаттла. Внутри он оказался куда интереснее обычного интерфейсного блока: 24 сетевых подключения, манчестерское кодирование, PROM с микрокодом и 25 виртуальных процессоров, работающих на одном физическом процессоре.

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

Разобрать IOP

Как внедрять AI-агентов в легаси-код без тихих регрессий

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели11K

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

Разобраться в подходе
1
23 ...

Информация

В рейтинге
34-й
Зарегистрирован
Активность