Куда исчезло 400 MiB в Node.js контейнере
Кейс, в котором после перезапуска подов память у одного экземпляра Node.js резко прыгала дискретными шагами и больше не возвращалась. Анализ через /proc и V8 inspector показал, что рост сидит в private dirty anonymous памяти процесса и требует смотреть не только на heap, но и на реальную картину аллокаций в момент нагрузки.
https://frn.sh/pmem/
Кейс, в котором после перезапуска подов память у одного экземпляра Node.js резко прыгала дискретными шагами и больше не возвращалась. Анализ через /proc и V8 inspector показал, что рост сидит в private dirty anonymous памяти процесса и требует смотреть не только на heap, но и на реальную картину аллокаций в момент нагрузки.
https://frn.sh/pmem/
👍2🤯1🙏1
Скрытая цена копипаста кода в ChatGPT
ИИ ускоряет разработку только на бумаге: исследование METR показало, что опытные разработчики на сложных задачах становятся на 19% медленнее, потому что теряют контекст и тратят время на отладку и уточнения. Главная проблема не в качестве генерации, а в workflow с постоянными переключениями и объяснениями того, что IDE и проект уже знают.
https://dev.to/ziva/the-hidden-cost-of-copy-pasting-code-into-chatgpt-dl2
ИИ ускоряет разработку только на бумаге: исследование METR показало, что опытные разработчики на сложных задачах становятся на 19% медленнее, потому что теряют контекст и тратят время на отладку и уточнения. Главная проблема не в качестве генерации, а в workflow с постоянными переключениями и объяснениями того, что IDE и проект уже знают.
https://dev.to/ziva/the-hidden-cost-of-copy-pasting-code-into-chatgpt-dl2
👍6🙏1💯1
Безопасность Node.js март 2026
Обновления для веток 25.x, 24.x, 22.x и 20.x закрывают несколько уязвимостей в TLS, HTTP обработке, permission model, URL парсинге и HMAC валидации, включая сценарии с DoS, крашем процесса и потенциальной утечкой через timing.
https://nodejs.org/en/blog/vulnerability/march-2026-security-releases
Обновления для веток 25.x, 24.x, 22.x и 20.x закрывают несколько уязвимостей в TLS, HTTP обработке, permission model, URL парсинге и HMAC валидации, включая сценарии с DoS, крашем процесса и потенциальной утечкой через timing.
https://nodejs.org/en/blog/vulnerability/march-2026-security-releases
👍2💯1
Разработка серверных приложений на Vite через плагин vavite
vavite позволяет использовать Vite как транспайлер и бандлер для серверного кода, упрощая разработку и сборку SSR и не только SSR сценариев. Подключайте плагин в vite.config, создавайте entry.server.ts и получайте быстрый dev с HMR, а в production запускайте сервер отдельно.
https://github.com/cyco130/vavite
vavite позволяет использовать Vite как транспайлер и бандлер для серверного кода, упрощая разработку и сборку SSR и не только SSR сценариев. Подключайте плагин в vite.config, создавайте entry.server.ts и получайте быстрый dev с HMR, а в production запускайте сервер отдельно.
https://github.com/cyco130/vavite
GitHub
GitHub - cyco130/vavite: Develop server-side applications with Vite
Develop server-side applications with Vite. Contribute to cyco130/vavite development by creating an account on GitHub.
👍1
Как с помощью ИИ превращать макеты Figma в production код
ИИ сам по себе не генерирует код в рамках дизайн системы, поэтому сделали MCP, который описывает компоненты, токены и правила доступности в машинном виде, и агентский пайплайн на LangGraph, который пошагово конвертирует Figma в готовые компоненты без ручной правки.
https://engineering.monday.com/how-we-use-ai-to-turn-figma-designs-into-production-code/
ИИ сам по себе не генерирует код в рамках дизайн системы, поэтому сделали MCP, который описывает компоненты, токены и правила доступности в машинном виде, и агентский пайплайн на LangGraph, который пошагово конвертирует Figma в готовые компоненты без ручной правки.
https://engineering.monday.com/how-we-use-ai-to-turn-figma-designs-into-production-code/
❤1🔥1💩1
Бесплатный онлайн анализатор логов в браузере
Открывайте лог файлы до 10GB+ прямо в браузере без загрузки, с приватностью и быстрым поиском. Есть форматирование в JSON и агрегация ошибок для удобной диагностики.
https://www.logvoyager.cc/
Открывайте лог файлы до 10GB+ прямо в браузере без загрузки, с приватностью и быстрым поиском. Есть форматирование в JSON и агрегация ошибок для удобной диагностики.
https://www.logvoyager.cc/
❤2👍1🔥1💯1
Визуализатор event loop для JavaScript
Интерактивная визуализация микрозадач, макрозадач и порядка выполнения в браузере, которая позволяет быстрее понять асинхронность. Отлично подходит для отладки и обучения, когда нужно увидеть реальную очередность без догадок.
https://event-loop-visualizer-ruby.vercel.app/
Интерактивная визуализация микрозадач, макрозадач и порядка выполнения в браузере, которая позволяет быстрее понять асинхронность. Отлично подходит для отладки и обучения, когда нужно увидеть реальную очередность без догадок.
https://event-loop-visualizer-ruby.vercel.app/
❤3👍2
Reatom: ультимативный менеджер состояния и логики для виджетов и SPA
Reatom дает реактивное управление состоянием без прокси, с атомами и computed, а также мощными эффектами для async с отменой, ретраями и кэшированием. Подходит для небольших виджетов и больших приложений, поддерживает расширения и TypeScript, а ядро весит около 2 KB gzipped.
https://github.com/reatom/reatom
Reatom дает реактивное управление состоянием без прокси, с атомами и computed, а также мощными эффектами для async с отменой, ретраями и кэшированием. Подходит для небольших виджетов и больших приложений, поддерживает расширения и TypeScript, а ядро весит около 2 KB gzipped.
https://github.com/reatom/reatom
🔥5👍2❤1
Wakaru: разбор минифицированных JavaScript бандлов на модули
Wakaru помогает восстановить структуру production-кода: распаковывает бандлы, возвращает имена и импорты с поддержкой source map, а также пытается восстановить транспиляцию/минфикацию.
https://github.com/pionxzh/wakaru
Wakaru помогает восстановить структуру production-кода: распаковывает бандлы, возвращает имена и импорты с поддержкой source map, а также пытается восстановить транспиляцию/минфикацию.
https://github.com/pionxzh/wakaru
🔥4👍3❤1
Релиз pnpm 11.1: подписи audit, gh-префикс и новые флаги для CI
Добавлены audit signatures для проверки ECDSA-подписей registry, а также поддержка установки пакетов из GitHub Packages через встроенный
https://github.com/pnpm/pnpm/releases/tag/v11.1.0
Добавлены audit signatures для проверки ECDSA-подписей registry, а также поддержка установки пакетов из GitHub Packages через встроенный
gh: префикс и алиасы named registries в pnpm-workspace.yaml.https://github.com/pnpm/pnpm/releases/tag/v11.1.0
1❤5🔥1
Blue: компиляция JavaScript в нативные бинарники
Blue компилирует ваш JS в C++ и собирает самостоятельный нативный исполняемый файл: нативные окна, файловая система и HTTP-серверы без Electron и без Node.js во время выполнения.
https://bluejs.dev/
Blue компилирует ваш JS в C++ и собирает самостоятельный нативный исполняемый файл: нативные окна, файловая система и HTTP-серверы без Electron и без Node.js во время выполнения.
https://bluejs.dev/
👍3😁3🤯3❤1
Почему состояние ломает архитектуру приложений
Состояние в приложении это данные, которые влияют на его поведение: авторизация пользователя, текст в редакторе, выполненные задачи воркера, записи в базе. Сложность не в том, что состояние нужно хранить, а в том, что его трудно держать корректным, когда запросы идут параллельно, серверов становится больше, часть машин падает, а код постоянно меняется. Совет делать приложение stateless обычно означает не отказ от состояния, а вынос важного состояния туда, где его проще сохранять и восстанавливать. Для веб-разработчика это напоминание, что нужно заранее понимать, где живут данные, кто ими владеет и что произойдет, если они станут недоступны.
https://blog.bytebytego.com/p/why-state-is-the-hardest-thing-in
Состояние в приложении это данные, которые влияют на его поведение: авторизация пользователя, текст в редакторе, выполненные задачи воркера, записи в базе. Сложность не в том, что состояние нужно хранить, а в том, что его трудно держать корректным, когда запросы идут параллельно, серверов становится больше, часть машин падает, а код постоянно меняется. Совет делать приложение stateless обычно означает не отказ от состояния, а вынос важного состояния туда, где его проще сохранять и восстанавливать. Для веб-разработчика это напоминание, что нужно заранее понимать, где живут данные, кто ими владеет и что произойдет, если они станут недоступны.
https://blog.bytebytego.com/p/why-state-is-the-hardest-thing-in
👍3🤔2
Как собрать AI-конструктор приложений на Next.js
Разбирается архитектура AI app builder’а, который по текстовому описанию собирает приложение в изолированном sandbox, показывает live preview, ведёт версии через Git и публикует результат без запуска агента на основном сервере.
https://www.freecodecamp.org/news/build-your-own-ai-app-builder-with-next-js-aws-and-sandboxes/
Разбирается архитектура AI app builder’а, который по текстовому описанию собирает приложение в изолированном sandbox, показывает live preview, ведёт версии через Git и публикует результат без запуска агента на основном сервере.
https://www.freecodecamp.org/news/build-your-own-ai-app-builder-with-next-js-aws-and-sandboxes/
❤4
Генератор shadcn-графиков для Next.js
Инструмент позволяет быстро собрать график для Next.js и shadcn/ui без ручной возни с Recharts. Он генерирует готовый TSX-компонент с темой, tooltip, legend и адаптацией под светлую и тёмную тему, а данные можно либо зашить в компонент, либо передавать с сервера как prop.
https://www.freecodecamp.org/news/how-to-add-shadcn-ui-charts-to-nextjs/
Инструмент позволяет быстро собрать график для Next.js и shadcn/ui без ручной возни с Recharts. Он генерирует готовый TSX-компонент с темой, tooltip, legend и адаптацией под светлую и тёмную тему, а данные можно либо зашить в компонент, либо передавать с сервера как prop.
https://www.freecodecamp.org/news/how-to-add-shadcn-ui-charts-to-nextjs/
👍2🔥2🎉2
Перестраиваем e-commerce на Next.js и Symfony
Разбор того, как живую e-commerce-платформу перенесли с legacy-архитектуры на связку Next.js и Symfony без остановки бизнеса. Переход понадобился из-за роста каталога, интеграций, требований к SEO и производительности, а также из-за того, что старое приложение стало слишком тесно связывать все процессы в одном месте.
https://habr.com/ru/articles/1089854/
Разбор того, как живую e-commerce-платформу перенесли с legacy-архитектуры на связку Next.js и Symfony без остановки бизнеса. Переход понадобился из-за роста каталога, интеграций, требований к SEO и производительности, а также из-за того, что старое приложение стало слишком тесно связывать все процессы в одном месте.
https://habr.com/ru/articles/1089854/
🤯4👍2
Как Express проводит запрос через middleware
Express пропускает запросы через цепочку middleware, и это помогает выносить общие вещи вроде логина, парсинга JSON и проверки прав из роутов в отдельные функции. Если middleware не вызывает next(), запрос останавливается на нём; если вызывает, Express идёт дальше по цепочке.
https://dev.to/aryangupta9680/how-express-middleware-works-g1l
Express пропускает запросы через цепочку middleware, и это помогает выносить общие вещи вроде логина, парсинга JSON и проверки прав из роутов в отдельные функции. Если middleware не вызывает next(), запрос останавливается на нём; если вызывает, Express идёт дальше по цепочке.
https://dev.to/aryangupta9680/how-express-middleware-works-g1l
👍4❤3🔥1
TanStack Charts: типизированная библиотека для графиков на SVG и Canvas
TanStack Charts — это типизированная библиотека для построения графиков на SVG и Canvas, которая помогает собирать диаграммы из mark, scales, transforms и interactions без лишнего веса в бандле.
В React-версии базовый line chart занимает 32,1 kB gzip, а Canvas можно подключать точечно для тяжёлых сцен, сохраняя оси, tooltip, фокус и responsive-логику на одной схеме данных.
https://tanstack.com/charts/latest
TanStack Charts — это типизированная библиотека для построения графиков на SVG и Canvas, которая помогает собирать диаграммы из mark, scales, transforms и interactions без лишнего веса в бандле.
В React-версии базовый line chart занимает 32,1 kB gzip, а Canvas можно подключать точечно для тяжёлых сцен, сохраняя оси, tooltip, фокус и responsive-логику на одной схеме данных.
https://tanstack.com/charts/latest
👍3❤2
Почему LLM хуже замечают информацию в середине промпта
LLM могут иметь слепую зону для информации, которая находится в середине длинного промпта, даже если она явно есть во входных данных. На практике это значит, что при длинных документах, истории чата или результатах из tool calls модель чаще цепляется за начало и конец, а важная деталь в середине может быть проигнорирована.
https://blog.bytebytego.com/p/the-llm-blindspot-why-models-forget
LLM могут иметь слепую зону для информации, которая находится в середине длинного промпта, даже если она явно есть во входных данных. На практике это значит, что при длинных документах, истории чата или результатах из tool calls модель чаще цепляется за начало и конец, а важная деталь в середине может быть проигнорирована.
https://blog.bytebytego.com/p/the-llm-blindspot-why-models-forget
👍4🤔2
REST API для задач на Node.js и Express
Разбор того, как собрать backend для менеджера задач на Node.js и Express: регистрация и логин, JWT-авторизация, CRUD для задач, валидация входных данных и проверка эндпоинтов через Postman или Thunder Client.
https://dev.to/saiprasanna/building-a-task-management-rest-api-with-nodejs-and-expressjs-61a
Разбор того, как собрать backend для менеджера задач на Node.js и Express: регистрация и логин, JWT-авторизация, CRUD для задач, валидация входных данных и проверка эндпоинтов через Postman или Thunder Client.
https://dev.to/saiprasanna/building-a-task-management-rest-api-with-nodejs-and-expressjs-61a
❤2👍2
Границы в софте: навык, который сильнее влияет на архитектуру, чем кажется
Граница в системе отделяет внутреннюю логику приложения от всего внешнего и удерживает вместе правила, ответственность и детали их применения. Через неё части системы общаются только по понятному пути, поэтому именно выбор границ определяет, что должно жить вместе, а что лучше разнести.
Это напрямую влияет на поддержку кода: удачные границы упрощают изменения, уменьшают связанность и делают зависимости предсказуемыми. Практический навык здесь — замечать, какие обязанности стоит группировать, и не пускать лишние зависимости внутрь ядра системы.
https://blog.bytebytego.com/p/how-software-boundaries-are-the-most
Граница в системе отделяет внутреннюю логику приложения от всего внешнего и удерживает вместе правила, ответственность и детали их применения. Через неё части системы общаются только по понятному пути, поэтому именно выбор границ определяет, что должно жить вместе, а что лучше разнести.
Это напрямую влияет на поддержку кода: удачные границы упрощают изменения, уменьшают связанность и делают зависимости предсказуемыми. Практический навык здесь — замечать, какие обязанности стоит группировать, и не пускать лишние зависимости внутрь ядра системы.
https://blog.bytebytego.com/p/how-software-boundaries-are-the-most
❤3👍2