Продолжаю беседы с нашим техлидом Дмитрием. Сегодня — о том, как взлом одного npm-аккаунта за 3 часа распространил RAT на 174 000 пакетов и почему стандартные инструменты вроде NPM Audit это не поймали. Разбираем инцидент с Axios: механику атаки, слепые пятна в CI/CD и то, что реально работает. 30 марта 2026: что произошло за 3 часа 30 марта 2026 года в npm появились две вредоносные версии Axios — 1.14.1 (тег latest) и 0.30.4 (тег legacy). Axios — JavaScript-библиотека для HTTP-запросов с ~100 …
Если предыдущая часть была посвящена аспектам, связанным с публикацией сообщений, то в этой части основное внимание уделено обработке сообщений, проектированию консьюмеров и проблеме ребаланса в консьюмер группе. ConsumerРазберем основные способы масштабирования потребления сообщений из топика и увеличения пропускной способности консьюмеров. Партиции и их количествоПропускная способность обработки данных из топика ограничена, в первую очередь, количеством партиций, а не тем как много консьюмер…
ПредисловиеНадеюсь, все смотрели «Властелин колец»: там был харизматичный волшебник Гэндальф. В начале фильма (и книги) к его имени добавляли «Серый», а затем его стали величать «Белым». Так вот, это обозначение его ранга в иерархии магов. Можно уже открыть форточку для проветривания. Чтобы поменять статус, требуется преодолеть нечеловеческие испытания и обрести просветление. Так и в IT: пройдя все невзгоды, ты становишься сеньором. А сегодня я постараюсь облегчить вам этот путь.Конец эпохи «Че…
Сразу скажу: это перевод моей же статьи на Medium, но с небольшими дополнениями и более практичным разбором реализации.TL;DRВот ссылки на демо‑страницу проекта и мой GitHub: Github Demo Когда я впервые решил поэкспериментировать с 3D в браузере, мне казалось, что это что-то очень сложное: матрицы, движки, WebGL, куча формул. Но на практике, чтобы собрать простой 3D-рендерер, достаточно базовой тригонометрии, понимания перспективы и пары аккуратных преобразований координат.По сути, вся “магия” …
Сегодня разберём тему, которая кажется элементарной, но на практике вызывает кучу вопросов. Речь о кнопке «Назад» в приложении на Vue.Казалось бы, что тут сложного? Кликнули - ушли на предыдущую страницу. Но нет. Большинство разработчиков, даже с опытом, не до конца понимают, как устроена навигация в роутерах и как работает история браузера. А это критично, когда речь заходит о предсказуемом поведении приложения.Немного жизни из собеседованийКогда на интервью я спрашиваю: «Как вы реализуете пер…
Вот уже 18 лет статический анализатор кода PVS-Studio находится на рынке. За это время он обзавёлся поддержкой языков C, C++, C# и Java. Разумеется, останавливаться на этих языках мы не планируем, и в этой статье расскажем про разработку нового JavaScript/TypeScript анализатора, который выйдет уже совсем скоро.ВведениеПоддержка анализатора для одной из самых популярных семей языков ECMAScript была лишь вопросом времени, учитывая их доминирующую популярность у программистов на протяжении долгих …
Статья о том, как попытка разобраться в валидации объектов привела к созданию библиотеки валидации схем с runtime-интроспекцией, а на её основе — отдельных библиотек для type-safe маппинга объектов и генерации форм.Предыстория: большие объекты без TypeScriptНесколько лет назад в одном из моих проектов на чистом JavaScript возникла задача: валидировать большие вложенные объекты со сложной структурой. Объекты содержали различные подобъекты, к каждому из которых применялись свои правила валидации …
Playwright 1.59 — не очередное инкрементальное обновление. Это заявка на то, куда движется автоматизация тестирования, и это направление глубоко агентное. Если вы ждали, когда инструменты догонят AI-driven воркфлоу, о которых все говорят, этот релиз закрывает разрыв.Разберём каждую крупную фичу и, что важнее, как каждую из них можно применить немедленно.🎬 Screencast API: тесты теперь показывают, что делаютГлавная фича релиза — новый page.screencast API. Это не просто запись видео под новым имен…
Вместо предисловия: проблема, которая бесила меня годамиУ каждого из нас есть «чёрная дыра», куда уходят полезные ссылки. Кто-то сохраняет их в «Избранном» браузера, кто-то пишет сам себе в Telegram, кто-то держит десяток вкладок открытыми «на потом». У меня была та же проблема. Я пробовал Notion, Evernote, Google Keep, Obsidian - всё это мощные инструменты, но для простого «сохранить ссылку и не забыть» они часто избыточны.Так родилась идея KylikLink - минималистичного PWA-приложения для замет…