IT Herald

Backend

Нет предела тому, насколько плохим может стать код

Привычные метафоры вроде «тонущего корабля» для описания заброшенных кодовых баз создают иллюзию неизбежного конца. Но в отличие от физических объектов, код может становиться хуже бесконечно, и техдолг не имеет аналога банкротству — нет пути к чистому перезагрузу.

Cloud in a Bottle: личное облако для каждого

Cloud in a Bottle — платформа для самостоятельного развертывания контейнеризованных приложений на личном сервере. Проект направлен на то, чтобы сделать самохостинг простым и доступным, вернув контроль над ПО от облачных сервисов обратно пользователям.

Визуализация Vtables в Rust: Как работает dyn Trait в памяти

Разработчик разобрался, как в Rust работает динамическая диспетчеризация через dyn Trait и как она отличается от виртуальных функций C++. Оказалось, что vtable в Rust находится не внутри объекта, а во внешних статических данных.

.gitignore — игнорируй всё по умолчанию

Противоположный подход к управлению .gitignore файлами: вместо того чтобы разрешить всё по умолчанию и селективно игнорировать файлы, можно игнорировать всё и явно разрешить только нужные файлы. Такой подход помогает избежать случайного коммита мусора вроде .DS_Store, node_modules или IDE конфигов.

Сайт государственного учреждения взломан спустя часы после выпуска патча CVE

Компания Rietta обнаружила, что критическая уязвимость в Ruby on Rails (CVE-2026-66066) была использована для атаки на сайт государственного учреждения уже через восемь часов после развёртывания патча. Proof-of-concept код попал в публичный доступ ещё до завершения их защиты, и это показало, что скоординированное раскрытие уязвимостей перестало работать как задумано.

Хорошо, но масштабируется ли это?

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

Portal от Spotify сократил потребление токенов Claude Code на 90%

Инженер Spotify описал, как с помощью Portal и двух режимов работы (bulk-reader и code-writer) удалось сократить расход токенов Claude Code на 90%. Решение использует маршрутизацию задач между дорогостоящей frontier моделью и более экономичной worker моделью.

IBM Bob: ИИ-ассистент для разработчиков

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

Статическое выделение памяти и константная работа

В ответ на обсуждение проблемы памяти в системах с объектными пулами рассмотрены два подхода к разработке надёжного кода: статическое выделение памяти при инициализации и гарантированная константная трудоёмкость алгоритмов независимо от нагрузки.

Главный поток браузера — дорогой ресурс

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

Предварительный релиз Polars 2.0

Команда Polars выпустила первый release candidate версии 2.0: потоковый движок становится движком по умолчанию для всех запросов LazyFrame, а сама библиотека — заметно строже к неявным преобразованиям типов и несовпадениям данных.

Новости и дайджесты — в Telegram @it_herald