Как устроены in-process базы данных, какие архитектурные подходы определяют развитие веба, что проверить перед переходом на Android 17 и как работают товарные рекомендации ВКонтакте? Собрали материалы сентября из каналов VK Hub. Сохраняйте подборку, чтобы почитать на досуге А чтобы первыми узнавать о новых статьях и разборах, подписывайтесь на профильные хабы. 👉 Backend VK Hub In-process базы данных: libSQL, DuckDB и LanceDB In-process базы работают внутри процесса приложения и позволяют читать локальные данные без сетевых задержек: libSQL подходит для обработки транзакций, DuckDB — для аналитики, LanceDB — для векторного поиска. В карточках разбираем архитектуру, результаты бенчмарков и ограничения каждого решения. Алгоритмы вытеснения кеша: как выбрать, какие данные оставить Кеш не может хранить всё, поэтому приходится выбирать, какие данные важнее прямо сейчас. Разработчик Сергей Лебедев разбирает основные алгоритмы вытеснения и объясняет, как они помогают находить баланс между долей попаданий в кеш и расходом памяти. JDK 27: компактные заголовки объектов и экономия памяти В JDK 27 компактные заголовки объектов включены по умолчанию. Они могут сократить объём живых данных в куче на 10–20% — эффект зависит от нагрузки. В статье разбираем, как работает механизм, какие у него ограничения и что стоит учитывать перед использованием на проде. 👉 Frontend VK Hub Архитектурные векторы: мейнстрим Серверные шаблоны, jQuery, SPA, SSG, SSR, islands и Server Components — веб-разработка не движется к единственной универсальной архитектуре. Разбираем, как развивались основные подходы, какие задачи они решают и почему новые решения не всегда вытесняют старые. Архитектурные векторы: альтернативы Не все веб-приложения должны строиться вокруг SPA на JavaScript или TypeScript с клиентским состоянием и JSON API. Продолжаем разбор архитектур и рассматриваем альтернативные подходы, которые предлагают по-другому организовать фронтенд. text-box-trim: как избавиться от лишних отступов вокруг текста Почему при одинаковых отступах сверху и снизу заголовок всё равно выглядит смещённым? Дело в особенностях текстовых метрик и half-leading. В статье разбираем, как свойства CSS text-box-trim и text-box-edge помогают точнее управлять вертикальными отступами, какие значения использовать и на какую поддержку браузеров рассчитывать. 👉 Mobile VK Hub Android 17: изменения, которые могут незаметно сломать работу приложения После повышения targetSdk до 37 некоторые привычные сценарии могут перестать работать без ошибок компиляции и предупреждений в логах. Разбираем 6 изменений Android 17, которые затрагивают рефлексию, работу с SMS и другие механизмы, и рассказываем, как проверить их влияние на приложение. kotlinx-coroutines-test: 6 инструментов для стабильных тестов корутин В карточках разбираем возможности kotlinx-coroutines-test: виртуальное время, runTest, разные диспетчеры, backgroundScope и подмену Dispatchers.Main. iOS 27: что изменилось в поведении @State При сборке в Xcode 27 экземпляры классов, которые инициализируются прямо в объявлении свойства @State, создаются лениво и не пересоздаются при каждом обновлении родительского View. Разбираем, как это влияет на инициализацию моделей, какие ограничения сохраняются и что проверить при переходе на новый SDK. 👉 AI VK Hub Hamiltonian Spectral Recommender: динамическая модель интересов пользователя Как предсказывать развитие интересов пользователя в рекомендательных системах? Исследователи предложили модель Hamiltonian Spectral Recommender. Исследователь AI VK Александр Тараканов разбирает устройство модели и результаты экспериментов. Lean: как устроена машинная проверка математических доказательств В статье разбираем, как работает Lean, почему машинная проверка важна и чем проверенное формальное доказательство отличается от признанного научным сообществом решения задачи. Как работают товарные рекомендации в ленте ВКонтакте Для товарных публикаций, или шопсов, команда AI VK разработала отдельную рекомендательную систему Рассказываем, как работают эти рекомендации.