<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Анастасия Котова — статьи</title><description>Статьи про Node.js, V8, браузеры и фронтенд.</description><link>https://startpointdev.com/</link><language>ru</language><item><title>Кэширование промптов: почему порядок в контексте решает</title><link>https://startpointdev.com/blog/llm-prompt-caching/</link><guid isPermaLink="true">https://startpointdev.com/blog/llm-prompt-caching/</guid><description>Почему запрос переиспользуется только с начала, как кэш устроен в памяти и с помощью чего мы можем на это влиять (если вообще можем).</description><pubDate>Mon, 19 Oct 2026 00:00:00 GMT</pubDate></item><item><title>using, await using и DisposableStack: освобождение ресурсов в JavaScript</title><link>https://startpointdev.com/blog/js-using-disposable/</link><guid isPermaLink="true">https://startpointdev.com/blog/js-using-disposable/</guid><description>Как привязать освобождение ресурса к границам блока, во что разворачивается этот синтаксис и что делать, когда ресурсов заранее неизвестное количество.</description><pubDate>Mon, 05 Oct 2026 00:00:00 GMT</pubDate></item><item><title>Работа с сырыми данными в JavaScript</title><link>https://startpointdev.com/blog/js-raw-binary-data/</link><guid isPermaLink="true">https://startpointdev.com/blog/js-raw-binary-data/</guid><description>Микроконспект про ArrayBuffer, Buffer, SharedArrayBuffer, Blob и TextEncoder: как они устроены и что происходит у них под капотом.</description><pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Next.js изнутри. Часть 9. Способы оптимизации.</title><link>https://startpointdev.com/blog/nextjs-inside-part-9/</link><guid isPermaLink="true">https://startpointdev.com/blog/nextjs-inside-part-9/</guid><description>Оптимизация в Next.js — это следствие решений, которые мы разбирали во всех предыдущих частях.</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Next.js изнутри. Часть 8. Dev-mode.</title><link>https://startpointdev.com/blog/nextjs-inside-part-8/</link><guid isPermaLink="true">https://startpointdev.com/blog/nextjs-inside-part-8/</guid><description>В седьмой части мы разобрали, как next build превращает исходники в артефакты, а в пятой и шестой — как серверный слой эти артефакты обслуживает.</description><pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Next.js изнутри. Часть 7. Сборка.</title><link>https://startpointdev.com/blog/nextjs-inside-part-7/</link><guid isPermaLink="true">https://startpointdev.com/blog/nextjs-inside-part-7/</guid><description>В предыдущих частях мы уже смотрели, что может появиться в директории .next/ после выполнения команды next build.</description><pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Next.js изнутри. Часть 6. Кастомный сервер.</title><link>https://startpointdev.com/blog/nextjs-inside-part-6/</link><guid isPermaLink="true">https://startpointdev.com/blog/nextjs-inside-part-6/</guid><description>В прошлой части мы разобрали серверный слой Next.js и познакомились с router-server, который занимается маршрутизацией, и render-server, который отвечает за рендеринг.</description><pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Next.js изнутри. Часть 5. Серверный слой.</title><link>https://startpointdev.com/blog/nextjs-inside-part-5/</link><guid isPermaLink="true">https://startpointdev.com/blog/nextjs-inside-part-5/</guid><description>В прошлых частях мы разобрали Pages и App Router, но весь этот разговор начинался уже внутри рендеринга.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Next.js изнутри. Часть 4. App Router: навигация, кеш и мутации.</title><link>https://startpointdev.com/blog/nextjs-inside-part-4/</link><guid isPermaLink="true">https://startpointdev.com/blog/nextjs-inside-part-4/</guid><description>В предыдущей части мы проследили, как страница App Router рождается на сервере и доезжает до браузера. В этой части рассмотрим жизнь страницы после загрузки.</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Next.js изнутри. Часть 3. App Router: от запроса до гидратации.</title><link>https://startpointdev.com/blog/nextjs-inside-part-3/</link><guid isPermaLink="true">https://startpointdev.com/blog/nextjs-inside-part-3/</guid><description>В этой части мы посмотрим на App Router, который появился в Next.js начиная с 13 версии и построен на React Server Components.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Next.js изнутри. Часть 2. Как работает Pages Router.</title><link>https://startpointdev.com/blog/nextjs-inside-part-2/</link><guid isPermaLink="true">https://startpointdev.com/blog/nextjs-inside-part-2/</guid><description>В первой части мы посмотрели на архитектуру Next.js с высоты — из каких слоёв он состоит и как они связаны.</description><pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Next.js изнутри. Часть 1. Архитектура Next.js.</title><link>https://startpointdev.com/blog/nextjs-inside-part-1/</link><guid isPermaLink="true">https://startpointdev.com/blog/nextjs-inside-part-1/</guid><description>Next.js — один из самых популярных фреймворков в экосистеме React, которому в этом году исполняется 10 лет.</description><pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Кэш в браузере: bfcache и stale-while-revalidate</title><link>https://startpointdev.com/blog/browser-cache-bfcache-swr/</link><guid isPermaLink="true">https://startpointdev.com/blog/browser-cache-bfcache-swr/</guid><description>Как браузер мгновенно возвращает страницу по кнопке «назад», что мешает ему это делать и как stale-while-revalidate отдаёт устаревший ресурс без ожидания.</description><pubDate>Mon, 11 May 2026 00:00:00 GMT</pubDate></item><item><title>Горячий код в V8: что это значит?</title><link>https://startpointdev.com/blog/v8-hot-code/</link><guid isPermaLink="true">https://startpointdev.com/blog/v8-hot-code/</guid><description>Мы часто слышим такие термины как «горячий код», особенно когда говорим про JIT-компиляцию. Но что стоит за этой концепцией с точки зрения устройства компиляторов, в частности, внутри V8?</description><pubDate>Mon, 20 Apr 2026 00:00:00 GMT</pubDate></item><item><title>От кода до пикселей: как работает рендеринг. Часть 6. Альтернативные пути рендеринга.</title><link>https://startpointdev.com/blog/rendering-part-6/</link><guid isPermaLink="true">https://startpointdev.com/blog/rendering-part-6/</guid><description>На протяжении всего цикла мы говорили об одном сценарии рендеринга — браузер получает HTML/CSS/JS и строит DOM. Однако появление пикселей на экране не ограничивается только этим.</description><pubDate>Mon, 02 Mar 2026 00:00:00 GMT</pubDate></item><item><title>От кода до пикселей: как работает рендеринг. Часть 5. Рендеринг в React.</title><link>https://startpointdev.com/blog/rendering-part-5/</link><guid isPermaLink="true">https://startpointdev.com/blog/rendering-part-5/</guid><description>В прошлых частях мы рассмотрели, как работает рендеринг в браузере на примере Chromium.</description><pubDate>Mon, 23 Feb 2026 00:00:00 GMT</pubDate></item><item><title>От кода до пикселей: как работает рендеринг. Часть 4. Стадии композитного потока и работа с GPU.</title><link>https://startpointdev.com/blog/rendering-part-4/</link><guid isPermaLink="true">https://startpointdev.com/blog/rendering-part-4/</guid><description>В предыдущей части мы посмотрели на конвейер рендеринга в Chromium и разобрали первые восемь фаз, которые преимущественно выполняются в основном потоке.</description><pubDate>Mon, 09 Feb 2026 00:00:00 GMT</pubDate></item><item><title>От кода до пикселей: как работает рендеринг. Часть 3. Стадии основного потока.</title><link>https://startpointdev.com/blog/rendering-part-3/</link><guid isPermaLink="true">https://startpointdev.com/blog/rendering-part-3/</guid><description>В предыдущей части мы взглянули на конвейер рендеринга в Chromium целиком.</description><pubDate>Mon, 02 Feb 2026 00:00:00 GMT</pubDate></item><item><title>От кода до пикселей: как работает рендеринг. Часть 2. Конвейер рендеринга.</title><link>https://startpointdev.com/blog/rendering-part-2/</link><guid isPermaLink="true">https://startpointdev.com/blog/rendering-part-2/</guid><description>В первой части мы разобрали, как работает браузер Chromium на уровне процессов и потоков. Теперь пришло время проследить полный путь от HTML, CSS и JavaScript до конкретных пикселей на экране.</description><pubDate>Mon, 26 Jan 2026 00:00:00 GMT</pubDate></item><item><title>От кода до пикселей: как работает рендеринг. Часть 1. Браузерные движки.</title><link>https://startpointdev.com/blog/rendering-part-1/</link><guid isPermaLink="true">https://startpointdev.com/blog/rendering-part-1/</guid><description>Фронтенд — это не только логика на JavaScript. В конечном итоге всё сводится к тому, что именно и как пользователь видит на экране.</description><pubDate>Mon, 19 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Как работают сборщики: Vite</title><link>https://startpointdev.com/blog/bundlers-part-2/</link><guid isPermaLink="true">https://startpointdev.com/blog/bundlers-part-2/</guid><description>Про Vite в первую очередь говорят: «он очень быстрый в dev-режиме». Однако хочется понять, почему локальная разработка с ним стала настолько комфортной, особенно если сравнивать с Webpack.</description><pubDate>Mon, 08 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Как работают сборщики: Webpack</title><link>https://startpointdev.com/blog/bundlers-part-1/</link><guid isPermaLink="true">https://startpointdev.com/blog/bundlers-part-1/</guid><description>Мы уже говорили о движке V8 и о запуске JavaScript на сервере и в браузере.</description><pubDate>Mon, 24 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Память в Node.js: устройство, сборка мусора и профилирование</title><link>https://startpointdev.com/blog/nodejs-memory/</link><guid isPermaLink="true">https://startpointdev.com/blog/nodejs-memory/</guid><description>Из каких разделов состоит память процесса Node.js, как устроена сборка мусора в V8 и какими способами можно профилировать память.</description><pubDate>Mon, 10 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Ещё немного про нативные модули в Node.js</title><link>https://startpointdev.com/blog/node-gyp-native-modules/</link><guid isPermaLink="true">https://startpointdev.com/blog/node-gyp-native-modules/</guid><description>На прошлой неделе я выступала с докладом о нативных модулях Node.js — как они устроены, зачем нужны и в каких случаях стоит использовать C++ рядом с JavaScript, а в каких нет.</description><pubDate>Mon, 27 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в v8. Часть 6. От среды к среде.</title><link>https://startpointdev.com/blog/v8-part-6/</link><guid isPermaLink="true">https://startpointdev.com/blog/v8-part-6/</guid><description>В предыдущих частях мы детально разобрали внутреннее устройство V8: от истории его создания и архитектуры компиляторов до механизмов управления памятью и скрытых оптимизаций.</description><pubDate>Mon, 13 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в v8. Часть 5. Скрытые оптимизации.</title><link>https://startpointdev.com/blog/v8-part-5/</link><guid isPermaLink="true">https://startpointdev.com/blog/v8-part-5/</guid><description>После парсинга и генерации байткода V8 начинает исполнять JavaScript и «учиться» на нём. Всё, что мы пишем в коде, проходит через сложный цикл интерпретации, оптимизации и возможной деоптимизации.</description><pubDate>Mon, 06 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в v8. Часть 4. Управление памятью и сборка мусора.</title><link>https://startpointdev.com/blog/v8-part-4/</link><guid isPermaLink="true">https://startpointdev.com/blog/v8-part-4/</guid><description>В своём телеграм-канале я уже делала краткий обзор механизма сборки мусора на примере Node.js. Однако это является одним из важных элементов в V8, поэтому сегодня мы рассмотрим его более подробно.</description><pubDate>Mon, 29 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в v8. Часть 3. Парсинг, AST и анализ кода.</title><link>https://startpointdev.com/blog/v8-part-3/</link><guid isPermaLink="true">https://startpointdev.com/blog/v8-part-3/</guid><description>В предыдущих частях мы рассмотрели историю V8 и архитектуру его интерпретатора Ignition и компиляторов Sparkplug, Maglev и TurboFan.</description><pubDate>Mon, 22 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в V8. Часть 2. Из чего состоит движок.</title><link>https://startpointdev.com/blog/v8-part-2/</link><guid isPermaLink="true">https://startpointdev.com/blog/v8-part-2/</guid><description>В первой части мы рассмотрели историю создания и развития движка V8, а также его отличия от других JavaScript-движков.</description><pubDate>Mon, 15 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в V8. Часть 1. История.</title><link>https://startpointdev.com/blog/v8-part-1/</link><guid isPermaLink="true">https://startpointdev.com/blog/v8-part-1/</guid><description>В предыдущих статьях мы много говорили о Node.js: как устроен его Event Loop и какую роль в этом играет библиотека libuv.</description><pubDate>Mon, 08 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в libuv. Часть 4. Другие функции.</title><link>https://startpointdev.com/blog/libuv-part-4/</link><guid isPermaLink="true">https://startpointdev.com/blog/libuv-part-4/</guid><description>Помимо работы с Event Loop, которая, безусловно, является центральной частью libuv, библиотека предоставляет множество других полезных функций. О них мы и поговорим в этой статье, завершая цикл о libuv.</description><pubDate>Mon, 21 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в libuv. Часть 3. Опять Event Loop.</title><link>https://startpointdev.com/blog/libuv-part-3/</link><guid isPermaLink="true">https://startpointdev.com/blog/libuv-part-3/</guid><description>Мы уже говорили про Event Loop в Node.js в отдельном цикле статей. Там мы рассмотрели, какие фазы цикла существуют. В этой статье мы сосредоточимся на реализации Event Loop в библиотеке libuv.</description><pubDate>Mon, 14 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в libuv. Часть 2. Неблокирующий ввод-вывод.</title><link>https://startpointdev.com/blog/libuv-part-2/</link><guid isPermaLink="true">https://startpointdev.com/blog/libuv-part-2/</guid><description>Как бы нам ни хотелось пройти по лёгкому пути, чтобы разобраться, как работает Event Loop в libuv и на чём вообще держится Node.js, — придётся чуть-чуть углубиться в устройство операционных систем.</description><pubDate>Mon, 30 Jun 2025 00:00:00 GMT</pubDate></item><item><title>Погружение в libuv. Часть 1. Зачем он нужен?</title><link>https://startpointdev.com/blog/libuv-part-1/</link><guid isPermaLink="true">https://startpointdev.com/blog/libuv-part-1/</guid><description>Как мы знаем, Node.js состоит не только из JavaScript-модулей, написанных специально для серверной разработки.</description><pubDate>Mon, 23 Jun 2025 00:00:00 GMT</pubDate></item><item><title>Event Loop крутится, Node.js мутится. Часть 6. Профилировать и замерять.</title><link>https://startpointdev.com/blog/event-loop-nodejs-part-6/</link><guid isPermaLink="true">https://startpointdev.com/blog/event-loop-nodejs-part-6/</guid><description>Мы уже разобрались, как устроен Event Loop в Node.js, чем он отличается от браузерного, почему Node.js нельзя считать строго однопоточной средой и как всё-таки добиться параллельности при выполнении кода.</description><pubDate>Mon, 05 May 2025 00:00:00 GMT</pubDate></item><item><title>Event Loop крутится, Node.js мутится. Часть 5. Настоящая многопоточность.</title><link>https://startpointdev.com/blog/event-loop-nodejs-part-5/</link><guid isPermaLink="true">https://startpointdev.com/blog/event-loop-nodejs-part-5/</guid><description>Во всех предыдущих частях мы уже говорили о том, что Event Loop в Node.js работает в единственном основном потоке.</description><pubDate>Mon, 28 Apr 2025 00:00:00 GMT</pubDate></item><item><title>Event Loop крутится, Node.js мутится. Часть 4. HTTP-сервер.</title><link>https://startpointdev.com/blog/event-loop-nodejs-part-4/</link><guid isPermaLink="true">https://startpointdev.com/blog/event-loop-nodejs-part-4/</guid><description>Мы уже говорили про Event Loop и thread pool в Node.js. Но как это всё работает в реальном приложении, например в HTTP-сервере?</description><pubDate>Mon, 21 Apr 2025 00:00:00 GMT</pubDate></item><item><title>Event Loop крутится, Node.js мутится. Часть 3. За пределами Event Loop.</title><link>https://startpointdev.com/blog/event-loop-nodejs-part-3/</link><guid isPermaLink="true">https://startpointdev.com/blog/event-loop-nodejs-part-3/</guid><description>В предыдущих частях мы разобрали, как работает Event Loop в Node.js, его отличия от браузерного, а также специфические нюансы. Пришло время поговорить о том, есть ли что-то за пределами Event Loop в Node.js.</description><pubDate>Mon, 31 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Event Loop крутится, Node.js мутится. Часть 2. Нюансы работы Event Loop.</title><link>https://startpointdev.com/blog/event-loop-nodejs-part-2/</link><guid isPermaLink="true">https://startpointdev.com/blog/event-loop-nodejs-part-2/</guid><description>В предыдущей статье мы разобрали, как базово работает Event Loop в Node.js и какие его основные отличия от браузерного. Теперь погрузимся в нюансы его работы.</description><pubDate>Mon, 24 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Event Loop крутится, Node.js мутится. Часть 1. Браузер VS сервер.</title><link>https://startpointdev.com/blog/event-loop-nodejs-part-1/</link><guid isPermaLink="true">https://startpointdev.com/blog/event-loop-nodejs-part-1/</guid><description>Наверняка, вы не раз слышали один из любимых вопросов интервьюеров: «Расскажите про Event Loop в JavaScript». Как правило, речь идёт про браузерную версию JavaScript.</description><pubDate>Mon, 10 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Pnpm: особенности peer dependencies при работе над проектом</title><link>https://startpointdev.com/blog/pnpm-part-2/</link><guid isPermaLink="true">https://startpointdev.com/blog/pnpm-part-2/</guid><description>В первой части мы разобрали, чем pnpm так хорош. А сейчас хочется в двух словах поговорить и про peer deps, которые остались без внимания.</description><pubDate>Mon, 27 Jan 2025 00:00:00 GMT</pubDate></item><item><title>Pnpm: чем он так хорош?</title><link>https://startpointdev.com/blog/pnpm-part-1/</link><guid isPermaLink="true">https://startpointdev.com/blog/pnpm-part-1/</guid><description>Pnpm (&quot;Performance npm&quot;) — это современная альтернатива пакетному менеджеру npm. Основная цель pnpm - улучшение производительности и оптимизация использования дискового пространства при работе с проектами.</description><pubDate>Mon, 23 Dec 2024 00:00:00 GMT</pubDate></item><item><title>Инструменты отладки: точки останова и дебаг в DevTools</title><link>https://startpointdev.com/blog/devtools-debugging/</link><guid isPermaLink="true">https://startpointdev.com/blog/devtools-debugging/</guid><description>Точка останова (breakpoint) — это маркер в вашем коде, который останавливает выполнение программы в определенной строке.</description><pubDate>Fri, 15 Nov 2024 00:00:00 GMT</pubDate></item><item><title>Что такое useLayoutEffect?</title><link>https://startpointdev.com/blog/use-layout-effect/</link><guid isPermaLink="true">https://startpointdev.com/blog/use-layout-effect/</guid><description>В React есть интересный хук - useLayoutEffect. С первого взгляда, его можно спутать с useEffect, однако между ними есть одно существенное различие.</description><pubDate>Mon, 14 Oct 2024 00:00:00 GMT</pubDate></item><item><title>Webpack, Babel, Vite и другие инструменты: что, зачем и в чем отличия</title><link>https://startpointdev.com/blog/frontend-build-tools/</link><guid isPermaLink="true">https://startpointdev.com/blog/frontend-build-tools/</guid><description>В современном фронтенде существуют различные инструменты, которые помогают оптимизировать и автоматизировать процесс разработки и сборки приложений.</description><pubDate>Mon, 30 Sep 2024 00:00:00 GMT</pubDate></item><item><title>JWT - что это такое и с чем его едят</title><link>https://startpointdev.com/blog/jwt/</link><guid isPermaLink="true">https://startpointdev.com/blog/jwt/</guid><description>JSON Web Token (JWT) — это открытый стандарт для создания токенов доступа, которые позволяют передавать информацию в самих токенах в закодированном виде.</description><pubDate>Mon, 02 Sep 2024 00:00:00 GMT</pubDate></item><item><title>Как настроить Prettier, ESLint, Stylelint и Husky в проекте с нуля</title><link>https://startpointdev.com/blog/prettier-eslint-stylelint-husky/</link><guid isPermaLink="true">https://startpointdev.com/blog/prettier-eslint-stylelint-husky/</guid><description>В одном из прошлых постов мы говорили о таких инструментах, как Prettier, ESLint и Stylelint, и чем они отличаются.</description><pubDate>Mon, 12 Aug 2024 00:00:00 GMT</pubDate></item></channel></rss>