[{"b":"Факт-чекинг: право ответить «не могу проверить» Режим facts упоминался в этом треке трижды: в главе «Два класса программ» — как причина, по которой язык вообще поделён надвое; в главе «Инструмент» — как одна из шести ком…","c":"post","d":"flang","g":["flang","факт-чекинг","тотальность","проверяемость","агенты"],"h":"Задача · Три входа · Ответ · Три исхода, а не два · Грамматика утверждений и почему она такая узкая · Что делать, когда утверждение не выраж","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Единственная прикладная поверхность языка, разобранная целиком: три входа режима, узкая грамматика утверждений и почему …","t":"Факт-чекинг: право ответить «не могу проверить»","u":"/post/flang/13-factcheck/","w":"2026-08-04"},{"b":"Как читать репозиторий и как участвовать Язык суточной давности — плохой выбор для продакшена и хороший для чтения. Всё помещается в один каталог, слои не переплетены, и почти каждое решение объяснено в комментарии рядом…","c":"post","d":"flang","g":["flang","open source","чтение кода","тестирование"],"h":"Что где лежит · Маршрут чтения · Запуск · Тесты · Обратный случай: тесты, которых не было видно · Что говорят AGENTS.md и CONTRIBUTING.md · ","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Маршрут чтения по каталогу flang, запуск тестов без сборки, что говорят AGENTS.md и CONTRIBUTING.md — и чего они не гово…","t":"Как читать репозиторий и как участвовать","u":"/post/flang/12-contributing/","w":"2026-08-04"},{"b":"Чего в языке пока нет: проверенный список В репозитории есть редкая вещь: язык ведёт список собственных недостач. Файл flang/examples/leetcode/index.json содержит раздел «чего не хватает языку» — шестнадцать пунктов с об…","c":"post","d":"flang","g":["flang","ограничения","инструменты","оценка технологий"],"h":"Что уже починили · Связывание модулей — работает · Структурное сравнение в примерах — работает · Встроенная форма «символ» — работает · Вари","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Репозиторий ведёт собственный список недостающего, но часть пунктов уже устарела. Перепроверяем каждый запуском: что дей…","t":"Чего в языке пока нет: проверенный список","u":"/post/flang/11-limits/","w":"2026-08-03"},{"b":"Лицензии, происхождение и приёмка чужого Всё предыдущее было про то, как сделать ассет и убедиться, что он не сломан. Осталась проверка, которую не выполняет ни один скрипт: имеете ли вы право положить это в продукт. Воп…","c":"post","d":"3d-pipeline","g":["3d","blender","лицензии","право","приёмка","пайплайн","геймдев"],"h":"Три источника чужого · Что проверять у каждого источника · Манифест происхождения · Что уходит наружу · Приёмка чужого ассета · Свод трека ·","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Три источника чужого в вашем ассете и что проверять у каждого, почему встроенная в GLB текстура — это распространение, м…","t":"Лицензии, происхождение и приёмка чужого","u":"/post/3d-pipeline/13-licensing-and-provenance/","w":"2026-08-03"},{"b":"Ядро FTS на flang — и компилятор, который взялся за себя В этой главе два сюжета, и они соотносятся как проверка замысла и его применение. Первый — ядро FTS, переписанное на flang: сделано, работает, сверено побайтово. В…","c":"post","d":"flang","g":["flang","самоприменение","самохостинг","компиляторы","дифференциальное тестирование"],"h":"Часть первая: ядро FTS · Почему это стало возможно только сейчас · Что написано · Слои и границы · Критерий готовности · Почему здесь не нап","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Две переписки на самом языке: ядро FTS — целиком тотальное, побайтово сверенное с эталоном; и компилятор самого flang, у…","t":"Ядро FTS на flang — и компилятор, который взялся за себя","u":"/post/flang/10-selfhosting/","w":"2026-08-03"},{"b":"Кодогенерация: печать в восемь языков Бэкендов у flang восемь, и их список проверяется у самого инструмента: $ node flang/bin/flang.mjs emit проба.flang --target zzz {\"error\":\"неизвестная цель «zzz»; доступны: c, csharp,…","c":"post","d":"flang","g":["flang","кодогенерация","компиляторы","c","go","javascript","rust","python","java","csharp","elixir"],"h":"Общее требование: совпадение с интерпретатором · Требование окупилось на наших глазах · Второй случай: дефект нашёлся сразу во всех пяти — и","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Восемь бэкендов — C, Go, Rust, Python, Java, C#, Elixir, JavaScript, — общее требование совпадения с интерпретатором и п…","t":"Кодогенерация: печать в восемь языков","u":"/post/flang/09-codegen/","w":"2026-08-03"},{"b":"Ассет как код: воспроизводимая сборка и проверки в конвейере Генератор из предыдущей главы существует ровно до тех пор, пока лежит у кого-то на диске. Чтобы он стал частью проекта, надо ответить на три вопроса: что класт…","c":"post","d":"3d-pipeline","g":["3d","blender","ci","воспроизводимость","автоматизация","пайплайн"],"h":"Что здесь исходник · Сборка · Побайтовая воспроизводимость недостижима — и не нужна · Что проверять · Сборка ассетов на CI · И главное: код ","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Что считать исходником, а что артефактом, почему побайтовая воспроизводимость экспорта недостижима и чем её заменить, ка…","t":"Ассет как код: воспроизводимая сборка и проверки в конвейере","u":"/post/3d-pipeline/12-asset-as-code/","w":"2026-08-03"},{"b":"Интерпретатор: явный стек, лимиты, хвостовые вызовы flang/src/interpret.mjs — 827 строк, вычисление AST. Файл интересен одним решением, которое в учебных интерпретаторах обычно принимают наоборот. Почему не рекурсия по с…","c":"post","d":"flang","g":["flang","интерпретаторы","вычислительные модели","хвостовая рекурсия"],"h":"Почему не рекурсия по стеку JS · Лимиты · «На глубине вызовов 1» · Представление значений · Семантика, которая обязана совпадать · Отказы бе","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Почему вычислитель flang устроен как цикл над явным стеком кадров, а не как рекурсия по стеку JS, как это даёт предсказу…","t":"Интерпретатор: явный стек, лимиты, хвостовые вызовы","u":"/post/flang/08-interpreter/","w":"2026-08-03"},{"b":"Стандартная библиотека и связывание модулей Каталог flang/stdlib/ — пять файлов, около 1160 строк на самом flang. Читать их полезно не столько ради функций, сколько ради комментариев: каждый модуль открывается объяснение…","c":"post","d":"flang","g":["flang","стандартная библиотека","модули","проектирование библиотек"],"h":"Три границы, видные в комментариях · Суммы типов вместо исключений · Связывание модулей · Импорт — это слияние, а не пространство имён · Выб","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Пять модулей stdlib, что в них есть и почему они устроены именно так; импорт как слияние объявлений, а не пространство и…","t":"Стандартная библиотека и связывание модулей","u":"/post/flang/07-stdlib/","w":"2026-08-03"},{"b":"Массовые вариации: генератор вместо ста просьб Во вводной главе трека массовые вариации — «сто ящиков с разными пропорциями и потёртостями» — записаны в то, что у агента получается хорошо. Показать это мы до сих пор не п…","c":"post","d":"3d-pipeline","g":["3d","blender","python","процедурное моделирование","воспроизводимость","агенты"],"h":"Наивный способ и его цена · Параметризация: что варьировать · Детерминизм: зерно и ловушка с hash() · Манифест: чем ассет объясняется · Кто ","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Сто ящиков — это не сто задач агенту, а одна: написать генератор. Разбираем параметризацию, детерминированное зерно случ…","t":"Массовые вариации: генератор вместо ста просьб","u":"/post/3d-pipeline/11-variations/","w":"2026-08-03"},{"b":"Тотальность: как доказывается завершение Пометка тотальная ничего не значила бы, если бы её не проверяли. Проверяет flang/src/totality.mjs — 418 строк, из которых первые шестьдесят представляют собой развёрнутое объяснен…","c":"post","d":"flang","g":["flang","тотальность","завершаемость","статический анализ"],"h":"Идея · Происхождение значений · Единая позиция в цикле · Что анализ отвергает · Как с этим живут · Свёртка по заранее известному списку · Ст","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Разбор анализа структурного убывания: происхождение значений, единая убывающая позиция в цикле вызовов, контрпример, объ…","t":"Тотальность: как доказывается завершение","u":"/post/flang/06-totality/","w":"2026-08-03"},{"b":"Система типов и то, чего в ней нет Проверка типов живёт в flang/src/types.mjs — 1115 строк. Вход — AST из раздела 5 спецификации, выход — диагностики в формате ядра FTS и таблица сигнатур. Читать этот файл приятно: почти…","c":"post","d":"flang","g":["flang","система типов","вывод типов","дизайн языков"],"h":"Почему здесь нет Хиндли — Милнера · Какие типы есть · Исчерпывающность разбора · Главное решение: функции не значения · Чего в системе типов","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Двунаправленная проверка вместо Хиндли — Милнера, исчерпывающность разбора, и главное решение: функции не являются значе…","t":"Система типов и то, чего в ней нет","u":"/post/flang/05-types/","w":"2026-08-03"},{"b":"Арматура, скиннинг и анимация: как ассет начинает двигаться Разбор файла из главы «Экспорт в GLB» печатал две строки, на которые мы тогда не смотрели: клипы: [] кости: 0 Пока модель стоит на полке, это нормально. Как тол…","c":"post","d":"3d-pipeline","g":["3d","blender","анимация","риггинг","gltf","геймдев"],"h":"Три способа заставить объект двигаться · Арматура кодом · Скиннинг: почему автоматика здесь хуже правила · Клипы · Ограничители не экспортир","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Кости и веса кодом, жёсткий скиннинг по геометрическому правилу вместо автоматических весов, клипы как контракт с рантай…","t":"Арматура, скиннинг и анимация: как ассет начинает двигаться","u":"/post/3d-pipeline/10-rig-and-animation/","w":"2026-08-03"},{"b":"Обучение на практике: отрицательные результаты одного проекта Модель, которая ни разу не видела вопроса без ответа, не умеет молчать. Это свойство данных, а не интеллекта. Сцена: хеш от названия алгоритма Пользователь пи…","c":"post","d":"ai-engineering","g":["ии-инженерия","дообучение","оценка качества","галлюцинации","данные"],"h":"Сцена: хеш от названия алгоритма · Правило 1. Отказу учат отдельным классом данных · Правило 2. Данные важнее базовой модели · Правило 3. Ру","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Разбор одного реального проекта: почему отказу приходится учить отдельным классом данных, почему датасет оказался важнее…","t":"Обучение на практике: отрицательные результаты одного проекта","u":"/post/ai-engineering/16-training-in-practice/","w":"2026-08-03"},{"b":"Синтаксис по факту: модули, функции, выражения, образцы Правило этой статьи: показывается только то, что либо взято дословно из файла репозитория, либо написано нами и проверено запуском. Там, где мы пробовали угадать фо…","c":"post","d":"flang","g":["flang","синтаксис","сопоставление с образцом","языки программирования","теория категорий"],"h":"Файл целиком · Заголовок модуля · Объявление типов · Функции · Типы в сигнатурах · Выражения · Связывание · Ветвление","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Разбор конструкций языка по файлам репозитория и по программам, которые мы прогнали через check и test — включая свежую …","t":"Синтаксис по факту: модули, функции, выражения, образцы","u":"/post/flang/04-syntax/","w":"2026-08-03"},{"b":"Инструмент: команды flang и контракт вывода Прежде чем разбирать синтаксис, полезно получить инструмент, который скажет, правы вы или нет. У flang это один файл — flang/bin/flang.mjs, 538 строк, запускается напрямую из и…","c":"post","d":"flang","g":["flang","cli","инструменты","json"],"h":"Установка: два разных пути, и Node нужен только одному · Пакет: собран, выпущен, лежит в реестре · Шесть команд · check · test · run · facts","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Шесть команд CLI, JSON-контракт вывода, что запускается без сборки, а что требует собранного ядра FTS — и почему обещанн…","t":"Инструмент: команды flang и контракт вывода","u":"/post/flang/03-cli/","w":"2026-08-03"},{"b":"UV-развёртка и текстуры: плотность, атлас, запекание Материал из главы «Материалы, свет и рендер» — это четыре числа: цвет, шероховатость, металличность, прозрачность. Такой материал одинаков во всех точках поверхности. …","c":"post","d":"3d-pipeline","g":["3d","blender","uv","текстуры","запекание","оптимизация"],"h":"Сначала — вопрос, нужны ли они вообще · Развёртка кодом · Швы задаются правилом, а не вкусом · Плотность текселя — число, а не ощущение · Де","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Развёртка кодом и её ловушка с контекстом оператора, плотность текселя как проверяемое число, дешёвая проверка на перекр…","t":"UV-развёртка и текстуры: плотность, атлас, запекание","u":"/post/3d-pipeline/09-uv-and-textures/","w":"2026-08-03"},{"b":"Два класса программ: тотальная и обычная Есть старая развилка. Язык, на котором можно выразить любое вычисление, не позволяет доказать про произвольную программу, что она остановится — это проблема остановки, и обойти её…","c":"post","d":"flang","g":["flang","тотальность","теория вычислимости","дизайн языков"],"h":"Как это выглядит в коде · Зачем это нужно · Факт-чекинг · Примеры-тесты · Печать в целевые языки · Цена решения · Кому тотальность обязатель","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Главное архитектурное решение flang: вместо выбора между полнотой по Тьюрингу и гарантией завершения язык делит программ…","t":"Два класса программ: тотальная и обычная","u":"/post/flang/02-two-classes/","w":"2026-08-03"},{"b":"flang и FTS: что унаследовано, что своё Первое, что стоит уяснить перед чтением репозитория digitable-lol/flang: он назван по языку, но бо́льшая часть его содержимого — это FTS. Сам flang живёт в подкаталоге flang/; в ко…","c":"post","d":"flang","g":["flang","fts","совместимость","языки программирования"],"h":"Что чему принадлежит · Что flang взял у FTS · Что flang добавил · Обещание совместимости · Что из этого следует для практики","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Репозиторий называется flang, но внутри лежит FTS, а сам язык — в подкаталоге. Разбираем, где проходит граница, что озна…","t":"flang и FTS: что унаследовано, что своё","u":"/post/flang/01-fts-relation/","w":"2026-08-03"},{"b":"flang: язык, которому сутки Этот трек описывает язык, который на момент первого написания существовал примерно сутки. Репозиторий digitable-lol/flang создан 3 августа 2026 года в 21:07 UTC; статьи сверены по состоянию на…","c":"post","d":"flang","g":["flang","fts","языки программирования","тотальность","кодогенерация"],"h":"Что это за язык · Два класса программ · Откуда он взялся · Маршрут трека · Кому это может пригодиться · Как читать этот трек","n":"flang — полный язык поверх FTS","p":"Языки и парадигмы","q":"03","r":"Разбор языка суточной давности по исходникам: два класса программ, анализ тотальности, система типов, интерпретатор, печать в C/Go/JS и честный список того, чего пока нет.","s":"Вводная статья трека: что такое flang, откуда он вырос из FTS, зачем языку два класса программ — и почему всё написанное…","t":"flang: язык, которому сутки","u":"/post/flang/00-overview/","w":"2026-08-03"},{"b":"Полигональный бюджет: как сокращать и чем за это платят Глава «Экспорт в GLB» закончилась измерением и обещанием: у безобидной кружки 407 884 треугольника и 9,4 МБ, сокращать есть чем, начинать надо с замера. Замер сдела…","c":"post","d":"3d-pipeline","g":["3d","blender","оптимизация","топология","lod","геймдев"],"h":"Откуда берётся 407 тысяч · Замер до экспорта · Лестница: что даёт каждый рычаг · Чем платит каждый рычаг · Рычаг, которого нет у скана · Где","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Кружка из главы про экспорт весила 407 884 треугольника. Откуда они берутся, какие рычаги сокращают вес, чем расплачивае…","t":"Полигональный бюджет: как сокращать и чем за это платят","u":"/post/3d-pipeline/08-polycount/","w":"2026-08-03"},{"b":"Живой кейс: ассеты для Corners Arena и что не сработало Всё предыдущее — на кружке. Здесь — настоящий проект: Corners Arena, игра в уголки на трёхмерной доске. Нужны были робот-фигура, арена и окружение. Исходная позиция…","c":"post","d":"3d-pipeline","g":["3d","blender","геймдев","ассеты","пайплайн","кейс","lod"],"h":"Исходная позиция: игра уже работала · Что не сработало · Сборка из примитивов «на глаз» · Image-to-3D (Hyper3D Rodin) · Бриф вместо «сделай ","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Как этот пайплайн применялся на настоящей игре: бриф вместо «сделай красиво», два отвергнутых подхода, один меш на обе к…","t":"Живой кейс: ассеты для Corners Arena и что не сработало","u":"/post/3d-pipeline/07-game-assets/","w":"2026-08-03"},{"b":"Экспорт в GLB: оси, ориджины и честная проверка файла Модель готова и хорошо выглядит в рендере. Это ещё ничего не значит: движок получит не вашу сцену, а файл. Всё, чего в файле не окажется, для игры не существует. Форм…","c":"post","d":"3d-pipeline","g":["3d","blender","gltf","glb","экспорт","оптимизация","геймдев"],"h":"Формат · Оси: Z-up против Y-up · Ориджин — решение, а не умолчание · Проверка файла, а не намерений · Что показала кружка · Почему меш зовёт","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Как модель становится файлом для движка: применение модификаторов, Z-up против Y-up, осмысленный ориджин — и разбор GLB …","t":"Экспорт в GLB: оси, ориджины и честная проверка файла","u":"/post/3d-pipeline/06-export/","w":"2026-08-03"},{"b":"Материалы, свет и рендер: где интуиция подводит Модель из https://courses.digitable.life/post/3d-pipeline/03-first-model/ — серый мешок. Чтобы понять, вышла форма или нет, нужны материал и свет: без них не читается ни си…","c":"post","d":"3d-pipeline","g":["3d","blender","материалы","рендеринг","cycles","eevee","производительность"],"h":"Материал · Ловушка первая: цвет линейный, а не sRGB · Ловушка вторая: имена сокетов меняются · Слоты под перекраску в рантайме · Свет · Ренд","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Principled BSDF из кода, линейный цвет вместо sRGB, световая схема для оценки формы — и измерение, из которого следует, …","t":"Материалы, свет и рендер: где интуиция подводит","u":"/post/3d-pipeline/05-materials/","w":"2026-08-03"},{"b":"Как агент смотрит на свою работу — и как слепнет незаметно Цикл работы агента в 3D простой: сделал — посмотрел — поправил. Второй шаг — get_viewport_screenshot. Без него агент пишет код вслепую и не имеет способа узнать,…","c":"post","d":"3d-pipeline","g":["3d","blender","агенты","отладка","верификация","opengl"],"h":"Симптом · Причина · Починка · Как отличить одно от другого · Вывод, который шире 3D","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Разбор отказа, который опаснее падения: функция скриншота возвращала корректный PNG, полностью чёрный, со статусом succe…","t":"Как агент смотрит на свою работу — и как слепнет незаметно","u":"/post/3d-pipeline/04-seeing/","w":"2026-08-03"},{"b":"Первая модель: модификаторы вместо ручных вершин Канонический первый объект — кружка. Она удачна тем, что содержит все базовые приёмы: тело вращения, полость, изогнутая деталь, фаски, сглаживание. Весь код ниже уезжает в…","c":"post","d":"3d-pipeline","g":["3d","blender","python","bmesh","модификаторы","процедурное моделирование"],"h":"Чистим сцену — но осторожно · Тело: примитив плюс модификаторы · Вскрываем верх через bmesh · Стенки, фаски, сглаживание · Ручка: кривая вме","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Собираем керамическую кружку кодом: примитив, вскрытие верхней грани через bmesh, стенки Solidify, ручка из кривой Безье…","t":"Первая модель: модификаторы вместо ручных вершин","u":"/post/3d-pipeline/03-first-model/","w":"2026-08-03"},{"b":"Программа на восемь недель: от приёмов к навыку Между «прочитал про метод локи» и «пользуюсь методом локи» лежит примерно час практики. Между «пользуюсь» и «применяю не задумываясь» — примерно двадцать часов, разложенных…","c":"post","d":"mnemonics","g":["мнемотехника","практика","тренировка","план","упражнения"],"h":"Как устроена программа · Расписание · Тренажёры · Буквенно-цифровой код · Числовые опоры · Ежедневный минимум · Замеры прогресса · Чек-лист:","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Расписание практики по неделям: что тренировать, сколько времени и как измерять результат; тренажёры для таблицы буквенн…","t":"Программа на восемь недель: от приёмов к навыку","u":"/post/mnemonics/15-practice-plan/","w":"2026-08-03"},{"b":"Границы и цена: где приём мешает Курс тринадцать глав объяснял, как запоминать. Эта глава — про то, когда не надо. Это не ритуальная оговорка в конце. Мнемотехника — инструмент с узкой специализацией, и применённая не ту…","c":"post","d":"mnemonics","g":["мнемотехника","границы","понимание","внешняя память","критика"],"h":"Граница первая: понимание · Граница вторая: цена построения · Граница третья: приём не даёт применения · Граница четвёртая: интерференция · ","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Четыре области, где мнемотехника работает против вас: подмена понимания формулировкой, издержки построения образов на бо…","t":"Границы и цена: где приём мешает","u":"/post/mnemonics/14-limits-and-costs/","w":"2026-08-03"},{"b":"Эйдетика и другие обещания: что проверено, а что продаётся Двенадцать глав курса учили приёмам. Эта глава — про то, что продают вместе с ними. Разбор идёт по трём категориям, объявленным в начале курса: работает и провер…","c":"post","d":"mnemonics","g":["мнемотехника","эйдетика","критика","скорочтение","доказательность"],"h":"Эйдетические образы: что это в психологии · Фотографическая память: единственный случай · Человек с безграничной памятью и цена этого · Трен","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Разбор заявлений школ памяти по трём категориям: что такое эйдетические образы в психологии и почему это не то, что прод…","t":"Эйдетика и другие обещания: что проверено, а что продаётся","u":"/post/mnemonics/13-eidetics-claims/","w":"2026-08-03"},{"b":"Интервальные повторения: почему без них всё осыпается Проверьте себя прямо сейчас, не подглядывая: назовите десять предметов, которые вы раскладывали по дворцу памяти в главе 05. Если между чтением той главы и этой прошл…","c":"post","d":"mnemonics","g":["мнемотехника","повторения","карточки","забывание","упражнения"],"h":"Два эффекта, на которых всё держится · Каким должен быть интервал · Расписание для мнемотехники · Карточки · Правила хорошей карточки · Карт","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Мнемотехника отвечает за вход материала, а за удержание — повторения: эффект распределения и данные о том, каким должен …","t":"Интервальные повторения: почему без них всё осыпается","u":"/post/mnemonics/12-spaced-repetition/","w":"2026-08-03"},{"b":"Установка: запуск, регистрация MCP и граница доверия Порядок такой: Blender → запускалка → регистрация у агента → проверка. Каждый шаг проверяется артефактом, а не ощущением. 1. Blender Нужна обычная сборка с интерфейсом…","c":"post","d":"3d-pipeline","g":["3d","blender","mcp","установка","телеметрия","безопасность"],"h":"1. Blender · 2. Запускалка · 3. Регистрация у агента · 4. Телеметрия · 5. Граница доверия · 6. Проверка","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Ставим Blender и запускалку, регистрируем MCP-сервер у агента, выключаем телеметрию, которая включена по умолчанию с обе…","t":"Установка: запуск, регистрация MCP и граница доверия","u":"/post/3d-pipeline/02-setup/","w":"2026-08-03"},{"b":"Школьные предметы: даты, карты, формулы и таблицы Все приёмы курса разобраны. Эта глава — про то, как они ложатся на реальные предметы, где материал перемешан: в одном параграфе и определения, и даты, и классификация, и …","c":"post","d":"mnemonics","g":["мнемотехника","школа","история","химия","биология","упражнения"],"h":"История · География · Биология · Химия · Физика и математика · Литература и русский язык · Как собрать подготовку к предмету · Упражнение: р","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Разбор по предметам: какие приёмы работают на истории, географии, биологии, химии, физике, литературе и русском языке; г…","t":"Школьные предметы: даты, карты, формулы и таблицы","u":"/post/mnemonics/11-school-subjects/","w":"2026-08-03"},{"b":"Тексты и определения: сжатие в опоры вместо заучивания Определение из учебника: «Экосистема — это единый природный комплекс, образованный живыми организмами и средой их обитания, в котором живые и неживые компоненты связ…","c":"post","d":"mnemonics","g":["мнемотехника","тексты","определения","конспект","mind-map","упражнения"],"h":"Правило: сначала понять, потом сворачивать · Шаг 1. Фильтр: что вообще нужно запоминать · Шаг 2. Свёртка определения в опоры · Опорные сигна","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Почему определение нельзя учить дословно и что делать вместо: разбор текста через фильтр, опорные сигналы Шаталова, чест…","t":"Тексты и определения: сжатие в опоры вместо заучивания","u":"/post/mnemonics/10-texts-and-definitions/","w":"2026-08-03"},{"b":"Имена и лица: почему они забываются и что делать Вас знакомят: «Это Андрей». Вы жмёте руку, говорите «очень приятно», обмениваетесь парой фраз. Через десять минут к вам подходит коллега и спрашивает: «Как зовут того парн…","c":"post","d":"mnemonics","g":["мнемотехника","имена","лица","общение","упражнения"],"h":"Парадокс булочника · Но сначала — настоящая причина провала · Приём: пять шагов · Русские имена: чем удобнее и чем сложнее · Ограничения и ч","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Парадокс «булочника и Бейкера»: почему одно и то же слово как профессия запоминается, а как фамилия — нет; настоящая при…","t":"Имена и лица: почему они забываются и что делать","u":"/post/mnemonics/09-names-and-faces/","w":"2026-08-03"},{"b":"Иностранные слова: фонетические ассоциации и метод ключевого слова Английское puddle — «лужа». Связи между звучанием и значением нет никакой, и именно поэтому слово вываливается из головы через час. Теперь так: в слове с…","c":"post","d":"mnemonics","g":["мнемотехника","иностранные языки","лексика","метод ключевого слова","упражнения"],"h":"Как строится мост · Примеры на разных языках · Что показали эксперименты · Где приём проседает · Как пользоваться правильно · Два риска, о к","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Метод ключевого слова Аткинсона: как созвучие из родного языка становится мостом к чужому слову; эксперименты с русской …","t":"Иностранные слова: фонетические ассоциации и метод ключевого слова","u":"/post/mnemonics/08-foreign-words/","w":"2026-08-03"},{"b":"Буквенно-цифровой код: превращаем числа в слова Число 812 не запоминается. Слово «вред» запоминается мгновенно. Между ними — одна таблица соответствий, и после того, как вы её выучите, они станут одним и тем же. 812 — эт…","c":"post","d":"mnemonics","g":["мнемотехника","числа","даты","ЦБК","упражнения"],"h":"Почему это работает · Рабочая таблица для русского · Историческая таблица Челпанова · Кодирование: как получить слово · Разбор примеров · Ра","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Как устроен приём, превращающий любое число в слово и картинку: рабочая таблица согласных для русского языка, правила ко…","t":"Буквенно-цифровой код: превращаем числа в слова","u":"/post/mnemonics/07-major-system/","w":"2026-08-03"},{"b":"Как устроена связка агент — MCP — Blender Прежде чем ставить, полезно понять, из чего состоит конструкция. Здесь три процесса и два протокола, и почти все проблемы новичка живут на стыках. Агент ──stdio/MCP──▶ blender-mc…","c":"post","d":"3d-pipeline","g":["3d","blender","mcp","архитектура","headless","xvfb"],"h":"Почему нельзя просто blender -b · Виртуальный дисплей · Изоляция запуска · Проверка себя","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Что происходит между «сделай кружку» и геометрией в сцене: слои связки, почему аддон отказывается работать в фоновом реж…","t":"Как устроена связка агент — MCP — Blender","u":"/post/3d-pipeline/01-how-it-works/","w":"2026-08-03"},{"b":"Числовые опоры: как ответить «что было шестым» У цепочки и дворца разные слабости, но одна общая черта: чтобы ими пользоваться, нужна подготовка под конкретный случай. Цепочку вы строите заново каждый раз. Дворец требует…","c":"post","d":"mnemonics","g":["мнемотехника","числа","система вешалок","упражнения","списки"],"h":"Как это работает · Два способа построить опоры · По форме цифры · По рифме · Правила навешивания · Что известно про приём · Ограничения · Ра","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Система вешалок: постоянные образы для чисел от одного до двадцати, два способа их построить — по форме цифры и по рифме…","t":"Числовые опоры: как ответить «что было шестым»","u":"/post/mnemonics/06-pegs-and-numbers/","w":"2026-08-03"},{"b":"Метод локи: дворец памяти, который у вас уже есть Закройте глаза и мысленно войдите в свою квартиру. Прихожая, дверь, вешалка, зеркало, коридор, кухня. Вы прошли этот маршрут тысячи раз и знаете его без всякого усилия — …","c":"post","d":"mnemonics","g":["мнемотехника","метод локи","дворец памяти","упражнения","выступления"],"h":"Почему он лучше цепочки · Шаг 1. Выбрать маршрут · Шаг 2. Разместить образы · Шаг 3. Снять материал · Что известно про метод · Ограничения и","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Пошаговое построение первого дворца памяти из собственной квартиры: выбор маршрута и точек, размещение образов, съём в п…","t":"Метод локи: дворец памяти, который у вас уже есть","u":"/post/mnemonics/05-loci-memory-palace/","w":"2026-08-03"},{"b":"Ассоциации и цепочки: первый рабочий приём Помните десять слов из начала курса? Чайник, парус, зонт, крокодил, лампа, гвоздь, апельсин, лестница, шарф, барабан. Тогда у вас получилось пять-шесть. Сейчас будет десять из д…","c":"post","d":"mnemonics","g":["мнемотехника","ассоциации","цепочки","списки","упражнения"],"h":"Как это делается: пошагово · Насколько это сильнее обычного заучивания · Две формы приёма · Приёмы усиления из практики школ памяти · Почему","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Связывание образов в пары и цепочки: пошаговое построение на списке из десяти слов, эксперимент Бауэра и Кларка с семикр…","t":"Ассоциации и цепочки: первый рабочий приём","u":"/post/mnemonics/04-associations-and-chains/","w":"2026-08-03"},{"b":"Челпанов и история мнемоники: что уже было сказано в 1900 году В 1900 году в Киеве профессор Георгий Иванович Челпанов читал публичные лекции по психологии. Через три года из них и более ранних журнальных статей выросла …","c":"post","d":"mnemonics","g":["мнемотехника","Челпанов","история","метод локи","критика"],"h":"Симонид и провалившийся потолок · Что именно продавали в 1900 году · Что Челпанов признавал работающим · Главный удар: развить память вообще","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Легенда о Симониде и римская традиция искусства памяти; как устроены системы, которые продавали публике сто лет назад; р…","t":"Челпанов и история мнемоники: что уже было сказано в 1900 году","u":"/post/mnemonics/03-chelpanov-and-history/","w":"2026-08-03"},{"b":"Почему образ сильнее слова: двойное кодирование и конкретность Два слова: крокодил и справедливость. Оба вы знаете с детства, оба одинаково понятны, у обоих сопоставимая длина. Но если через сутки вас спросят, какое из н…","c":"post","d":"mnemonics","g":["мнемотехника","образы","двойное кодирование","Пайвио","воображение"],"h":"Насколько сильнее: цифры, в которые трудно поверить · Двойное кодирование · Главный эксперимент: взаимодействие, а не странность · Ещё три э","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Эффект превосходства картинки и опыты с десятью тысячами изображений; теория двойного кодирования Пайвио; почему конкрет…","t":"Почему образ сильнее слова: двойное кодирование и конкретность","u":"/post/mnemonics/02-why-images-work/","w":"2026-08-03"},{"b":"Как работает память: три стадии и кривая забывания Вы встаёте с дивана, идёте на кухню и в дверях понимаете, что забыли, зачем шли. Через полчаса вспоминаете — понадобился стакан воды. Вы встречаете человека, лицо знаком…","c":"post","d":"mnemonics","g":["мнемотехника","память","рабочая память","забывание","Эббингауз"],"h":"Три операции, а не одна · Рабочая память: почему список из десяти рассыпается · Долговременная память: три разных хранилища · Кривая забыван","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Кодирование, хранение и извлечение как три разные операции с разными поломками; почему в рабочую память помещается четыр…","t":"Как работает память: три стадии и кривая забывания","u":"/post/mnemonics/01-how-memory-works/","w":"2026-08-03"},{"b":"3D-ассеты через агента: что это и когда работает Есть задача: игре нужны модели. Робот, арена, декорации. Художника в команде нет, а научиться моделировать за выходные не выйдет — это отдельная профессия. Соблазнительный…","c":"post","d":"3d-pipeline","g":["3d","blender","mcp","агенты","геймдев","пайплайн"],"h":"Почему это вообще жизнеспособно · Что в этом треке · Границы: где это работает, а где нет · Главная мысль трека","n":"3D-ассеты через агента","p":"Инфраструктура, инструменты и качество","q":"06","r":"Blender под управлением ИИ-агента через MCP: запуск без монитора и GPU, процедурное моделирование кодом, материалы и рендер, экспорт в GLB и приёмка игровых ассетов.","s":"Вводная статья трека: как подключить Blender к ИИ-агенту через MCP, что таким способом реально получается, а что — нет, …","t":"3D-ассеты через агента: что это и когда работает","u":"/post/3d-pipeline/00-overview/","w":"2026-08-03"},{"b":"Мнемотехника: карта курса и договор о честности Попробуйте прямо сейчас. Вот десять слов, прочитайте их один раз, спокойно, не возвращаясь: чайник, парус, зонт, крокодил, лампа, гвоздь, апельсин, лестница, шарф, барабан.…","c":"post","d":"mnemonics","g":["мнемотехника","память","обучение","Челпанов","эйдетика"],"h":"Что такое мнемотехника · Чем мнемотехника не является · Что здесь считается доказательством · Откуда взят материал · Челпанов, 1900 · Школы ","n":"Мнемотехника: память на образах","p":"Первые шаги","q":"01","r":"Приёмы запоминания списков, чисел, дат, слов, имён и определений — с честным разбором того, что из обещаний школ памяти подтверждено, а что нет.","s":"Обзорная глава: что такое мнемотехника и чем она не является, почему приёмы работают, но не «развивают память», что из о…","t":"Мнемотехника: карта курса и договор о честности","u":"/post/mnemonics/00-overview/","w":"2026-08-03"},{"b":"Требования, которые проверяются до реализации: корпус спек, конституция и ftspec Новое требование сегодня проверяют памятью. Кто-то в команде помнит, что предел скидки ограничили тридцатью процентами на совете директоров…","c":"post","d":"fts","g":["fts","ftspec","требования","spec-driven","digit","ci"],"h":"Минимальный пример · Что делает компилятор · Раскладка корпуса · Что проверяется машиной · Конфликт правил разрешим интервальной арифметикой","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Как проверить новое бизнес-требование на непротиворечивость с уже принятыми до написания кода: интервальная арифметика н…","t":"Требования, которые проверяются до реализации: корпус спек, конституция и ftspec","u":"/post/fts/22-spec-driven/","w":"2026-08-03"},{"b":"Вам не нужен lodash — но не там, где вы думаете «Портируем lodash на FTS» — предложение, которое приходит регулярно и которое нельзя принять. В FTS нет коллекций: у объекта пять встроенных типов полей — строка, число, да…","c":"post","d":"fts","g":["fts","lodash","рефакторинг","бизнес-правила","округление","коллекции"],"h":"Минимальный пример · Что делает компилятор · Что уезжает в модель, а что остаётся в JavaScript · get(order, 'customer.tier', 'basic') — не у","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Половина вызовов lodash в проекте — это бизнес-правила без модели, вторая половина давно есть в стандартном JavaScript. …","t":"Вам не нужен lodash — но не там, где вы думаете","u":"/post/fts/21-lodash/","w":"2026-08-03"},{"b":"FTS pipeline и визуализация: один прогон и диаграмма модели Курс уже показал fts check, fts prove, fts certify и fts visualize как отдельные команды — у каждой свой JSON, свой exit code, своя причина упасть. В CI и в диа…","c":"post","d":"fts","g":["fts","pipeline","визуализация","mermaid","ci"],"h":"Минимальный пример · Что делает компилятор · Один прогон вместо четырёх команд · Диаграмма категории · Диаграмма морфизмов и доказательства ","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Как заменить check, prove, certify и visualize одним вызовом pipeline и что именно показывает mermaid-диаграмма категори…","t":"FTS pipeline и визуализация: один прогон и диаграмма модели","u":"/post/fts/20-pipeline-and-visualize/","w":"2026-08-03"},{"b":"Воспроизводимый эксперимент: seed, 30 прогонов и непараметрический критерий Все предыдущие статьи трека рассказывали, чем искать. Эта — про то, как отличить «мы улучшили алгоритм» от «нам повезло с запуском». Без неё тре…","c":"post","d":"sbse","g":["sbse","воспроизводимость","статистика","эксперимент","методология"],"h":"Почему результаты не воспроизводятся · Seed недостаточно: именованные подпотоки · Почему не меньше 30 прогонов · Что мерить · «Среднее стало","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Почему результаты в SBSE не повторяются, чем именованные подпотоки лучше одного seed, откуда берётся правило «не меньше …","t":"Воспроизводимый эксперимент: seed, 30 прогонов и непараметрический критерий","u":"/post/sbse/15-reproducible-experiment/","w":"2026-08-03"},{"b":"Миграция в FTS: от вложенных if к исполняемой спецификации Предыдущие главы показывали FTS на чистом листе. В реальной работе чистого листа нет: есть функция на семьдесят строк, которая считает скидку, ходит за профилем …","c":"post","d":"fts","g":["fts","миграция","рефакторинг","легаси","тесты"],"h":"Что мы переносим · Минимальный пример · Шаг за шагом · Тест эквивалентности · Что осталось в приложении · Чего не переносить · Сколько это с","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Пошаговый перенос живого бизнес-правила из вложенных if в модель FTS с доказательством эквивалентности до выключения ста…","t":"Миграция в FTS: от вложенных if к исполняемой спецификации","u":"/post/fts/19-migration/","w":"2026-08-03"},{"b":"Антипаттерны FTS: что не стоит выражать в спецификации Язык, который умеет меньше, ошибается реже. Но экономия работает только тогда, когда граница известна заранее: иначе первые две недели уходят на попытки записать то,…","c":"post","d":"fts","g":["fts","антипаттерны","границы","код-ревью","проектирование"],"h":"Как читать этот каталог · Эффекты в спецификации · 1. Действие в правиле утилиты · 2. Действие, спрятанное в имя морфизма · 3. Ретраи, тайма","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Каталог из четырнадцати попыток протащить в FTS эффект, время, случайность и порядок исполнения — с реальными сообщениям…","t":"Антипаттерны FTS: что не стоит выражать в спецификации","u":"/post/fts/18-antipatterns/","w":"2026-08-03"},{"b":"FTS и время: версии правил, снапшоты и аудит задним числом Правило живёт во времени, а спецификация — нет. «Скидка действует с 1 марта», «тариф пересмотрели в июле», «клиент спорит о начислении за апрель» — это три формы…","c":"post","d":"fts","g":["fts","версионирование","аудит","снапшот","совместимость"],"h":"Минимальный пример · Почему в модели нет «сегодня» · Версия как файл · Кто выбирает версию · Shadow-прогон перед переключением · Снапшот, ре","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Почему в спецификации нет «сегодня», как хранить редакции правила рядом и чем доказывать клиенту начисление за апрель по…","t":"FTS и время: версии правил, снапшоты и аудит задним числом","u":"/post/fts/17-versioning/","w":"2026-08-03"},{"b":"FTS: читаем ошибки компилятора Сообщение компилятора FTS — не препятствие, а результат проверки, которую вы сами заказали. Компилятор не угадывает намерение: он называет код, формулирует расхождение и, если может, указыв…","c":"post","d":"fts","g":["fts","диагностика","ошибки","отладка","compiler"],"h":"Как устроена диагностика · Ошибки разбора · Ошибки модели · Ошибки выполнения утилиты · Ошибки примеров · Ошибки доказательства · Практика в","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Справочник по диагностикам FTS: код, точное сообщение, минимальный воспроизводимый пример и починка — отдельно для разбо…","t":"FTS: читаем ошибки компилятора","u":"/post/fts/16-diagnostics/","w":"2026-08-03"},{"b":"Capstone FTS: исполнение заказа от модели до React и Node.js Капстоун соединяет всё, что было в курсе, в одном сквозном проекте: предметный объект, утилиту с правилом и свойством, морфизм, теорему допуска команды, HTTP-с…","c":"post","d":"fts","g":["fts","capstone","order","react","nodejs","ddd"],"h":"1. Модель · 2. Архитектура · 3. Шаг за шагом · 3.1 Проверка модели · 3.2 Допуск отгрузки: теорема и доказательство · 3.3 HTTP-сервис · 3.4 Ф","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сквозная архитектура: FTS-модель заказа, примеры, command guard, React-форма, Node.js boundary, агент и CI.…","t":"Capstone FTS: исполнение заказа от модели до React и Node.js","u":"/post/fts/15-capstone-order/","w":"2026-08-03"},{"b":"Производительность FTS: воспроизводимый замер До этой ревизии курс приводил цифры с чужой машины (Apple M1 Max, Node 24.6), которые читатель не мог проверить. Число без метода воспроизведения — не факт, а утверждение на …","c":"post","d":"fts","g":["fts","benchmark","performance","compilation","ci"],"h":"Минимальный пример · Что делает компилятор · Методика замера · Ваши цифры за одну команду · Сравнение с baseline · Что эти цифры не означают","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Харнесс, которым вы снимаете свои цифры compile/validate/execute/generate и сравниваете их с baseline, вместо того чтобы…","t":"Производительность FTS: воспроизводимый замер","u":"/post/fts/14-performance/","w":"2026-08-03"},{"b":"FTS generation и CI: TypeScript без drift Глава показывает, что именно генерирует fts generate, почему режим --check ловит правку правила мимо модели и как выстроить порядок шагов в CI так, чтобы дешёвая проверка падала …","c":"post","d":"fts","g":["fts","code generation","ci","typescript","github actions"],"h":"Минимальный пример · Что делает компилятор · Режим --check и как ловится drift · Порядок шагов в CI и что падает первым · Работа агента · Пр","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Как генерировать TypeScript и node:test, проверять модели в pull request и не редактировать артефакты вручную.…","t":"FTS generation и CI: TypeScript без drift","u":"/post/fts/13-generation-and-ci/","w":"2026-08-03"},{"b":"FTS из Python, Go и shell: работающие клиенты, а не декларации FTS не привязан к Node.js. Компилятор написан на TypeScript, но граница между ним и остальным кодом — не библиотека, а процесс и JSON: любой язык, который ум…","c":"post","d":"fts","g":["fts","python","go","shell","interop","json"],"h":"Минимальный пример · Что делает компилятор · Граница через JSON · Клиент на Python · Клиент на Go · Клиент на shell · Через HTTP вместо CLI ","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Настоящий Python-, Go- и shell-клиент к FTS через CLI и канонический JSON: что компилятор реально печатает, как читать д…","t":"FTS из Python, Go и shell: работающие клиенты, а не декларации","u":"/post/fts/12-cross-language/","w":"2026-08-03"},{"b":"Доказательства FTS: теоремы, сертификаты и научные границы Это самый тонкий модуль курса. Слово «доказательство» здесь означает не то, что обычно слышит бизнес-заказчик: FTS не устанавливает истинность бизнес-закона, а п…","c":"post","d":"fts","g":["fts","proof","certificate","research","patent"],"h":"Минимальный пример (теорема) · Что делает компилятор · Пропозиция, witness и тип · Морфизмы и композиция · Symbolic derivation · Verified ce","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Что именно доказывает FTS, чем symbolic derivation отличается от verified certificate и чего недостаточно для публикации…","t":"Доказательства FTS: теоремы, сертификаты и научные границы","u":"/post/fts/11-proofs-and-certificates/","w":"2026-08-03"},{"b":"FTS для AI-агентов и MCP: допуск выдаёт движок, а не текст модели Языковая модель хорошо переводит обсуждение в черновик спецификации и хорошо объясняет результат словами. Она плохо подходит на роль последнего арбитра: о…","c":"post","d":"fts","g":["fts","ai agents","mcp","digit","verification"],"h":"Минимальный пример · Что делает компилятор · Контур: предложение → проверка → допуск → эффект · MCP-инструменты · Агент строит документ, а н","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Как встроить FTS в агентный контур: read-only MCP-инструменты, программная сборка документа, guard на реальных данных и …","t":"FTS для AI-агентов и MCP: допуск выдаёт движок, а не текст модели","u":"/post/fts/10-ai-agents/","w":"2026-08-03"},{"b":"Каскад GA0 → GA1 → GA2: разделение уровней поиска В главе про настройку поиска мета-уровень появился как инструмент: настроить параметры гонками, поменять оператор бандитом. Здесь тот же мета-уровень рассматривается как …","c":"post","d":"sbse","g":["sbse","генетические алгоритмы","оптимизация","гиперэвристики","настройка параметров","планирование"],"h":"Проблема: три функции в одном цикле · Что делает каждый уровень · Бюджет как явная величина · Готовность — не то же самое, что качество · Св","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Почему смешение поиска решения, настройки параметров и управления бюджетом в одном цикле ломает интерпретируемость, как …","t":"Каскад GA0 → GA1 → GA2: разделение уровней поиска","u":"/post/sbse/14-cascade-ga/","w":"2026-08-03"},{"b":"FTS и DDD: bounded context, ubiquitous language и command guard Глава разбирает, где категория FTS совпадает с bounded context из DDD, а где заканчивается: FTS хорошо описывает факты и переходы состояния, но не заменяет …","c":"post","d":"fts","g":["fts","ddd","bounded context","command guard","domain model"],"h":"Минимальный пример · Что делает компилятор · Категория как bounded context · Морфизм как разрешённый переход состояния · Command guard: поче","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Как встроить FTS в доменный слой, не превратить спецификацию в god-object и защитить команду проверяемым допуском.…","t":"FTS и DDD: bounded context, ubiquitous language и command guard","u":"/post/fts/09-ddd/","w":"2026-08-03"},{"b":"FTS в React: форма и таблица из одной модели Форма не должна второй раз объявлять, какие поля есть у покупки и какие из них обязательны — это уже сказано в объекте модели, которую проверяет сервер из прошлой главы. В это…","c":"post","d":"fts","g":["fts","react","forms","frontend","components"],"h":"Минимальный пример · Что делает компилятор · ftsFormSchema: схема формы из объекта · иногда является → необязательное поле · Разбор Discount","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Схема формы из объекта FTS, контролы по типам полей и предпросчёт в браузере, который сервер всё равно проверяет заново.…","t":"FTS в React: форма и таблица из одной модели","u":"/post/fts/08-react/","w":"2026-08-03"},{"b":"FTS в Node.js: CLI-утилита и HTTP boundary Модель .fts считает правило. Всё остальное — сокет, маршруты, коды ответа, лимит тела запроса — обычный код Node.js. В этой главе граница проходит по реальному файлу курса: exam…","c":"post","d":"fts","g":["fts","nodejs","http","backend","typescript"],"h":"Минимальный пример · Что делает компилятор на старте сервиса · HTTP-обработчик и контракт · Почему ошибка входа — это 400, а не 500 · Сгенер","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Как один раз загрузить FTS-модель, исполнить утилиту в Node.js и не смешать вычисление с HTTP, кодами ответа и телом зап…","t":"FTS в Node.js: CLI-утилита и HTTP boundary","u":"/post/fts/07-nodejs/","w":"2026-08-03"},{"b":"FTS examples: новый вид предметных unit-тестов Пример в FTS — не текст в документации и не отдельный тестовый файл на другом языке. Это часть модели, которая выполняется тем же движком, что и правило, рядом с которым она…","c":"post","d":"fts","g":["fts","unit testing","examples","node:test","qa"],"h":"Минимальный пример · Что делает компилятор · Чем это отличается от unit-теста · Стартовая проверка вместо позднего провала · Покрытие правил","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Чем исполняемый пример FTS отличается от обычного unit-теста и как использовать его вместе с node:test и стартом сервиса…","t":"FTS examples: новый вид предметных unit-тестов","u":"/post/fts/06-examples-as-tests/","w":"2026-08-03"},{"b":"Исполняемые утилиты FTS: правила, порядок и свойства Утилита — чистое детерминированное вычисление над одним объектом: тариф, скидка, классификатор, лимит. Она не ходит в сеть и не пишет в базу. В этой главе — как записа…","c":"post","d":"fts","g":["fts","утилиты","бизнес-правила","свойства","детерминизм"],"h":"Минимальный пример · Что делает компилятор · Правила — это не if/else · Сравнения и проценты · Свойство — постусловие, а не автокоррекция · ","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Как FTS вычисляет результат, применяет несколько правил и проверяет постусловия без скрытых эффектов.…","t":"Исполняемые утилиты FTS: правила, порядок и свойства","u":"/post/fts/05-utilities-rules-properties/","w":"2026-08-03"},{"b":"Структуры и типы FTS: форма предметных данных Эта глава — про то, из чего складывается вход утилиты и свидетельство морфизма: пять встроенных типов, необязательность, именованные состояния и вложенность, а также честная …","c":"post","d":"fts","g":["fts","типы","структуры","формы","таблицы"],"h":"Минимальный пример · Что делает компилятор · Встроенные типы · Состояние не является вложенной структурой · Во что превращается структура · ","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Встроенные типы, необязательные поля, состояния, вложенные объекты и генерация формы или таблицы из канонической модели.…","t":"Структуры и типы FTS: форма предметных данных","u":"/post/fts/04-structures-and-types/","w":"2026-08-03"},{"b":"FTS на русском и английском: синтаксис без скобок Эта глава закрывает вопрос, который обычно возникает первым: если модель пишут и русскоязычный аналитик, и разработчик, читающий английские тексты привычнее, значит ли эт…","c":"post","d":"fts","g":["fts","русский язык","english","синтаксис","unicode"],"h":"Минимальный пример · Что делает компилятор · English surface · Структура равноправна объекту · Имена и кавычки · Значения · Практика в песоч","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Две равноправные отступные поверхности FTS, кавычки, ёлочки, имена с пробелами и единая семантика.…","t":"FTS на русском и английском: синтаксис без скобок","u":"/post/fts/03-russian-and-english/","w":"2026-08-03"},{"b":"FTS toolchain: CLI, библиотека, MCP и канонический JSON Эта глава — про инструменты вокруг языка, а не про синтаксис: как установить FTS, какими командами проверять модель и что именно летит между процессами, если считае…","c":"post","d":"fts","g":["fts","cli","json","mcp","nodejs"],"h":"Минимальный пример · Что делает компилятор · Установка · Шестая команда в том же пакете: flang · Один конвейер, три поверхности · Каноническ","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Как установить FTS, проверить модель, получить JSON и выбрать между library API, CLI и MCP.…","t":"FTS toolchain: CLI, библиотека, MCP и канонический JSON","u":"/post/fts/02-toolchain-and-json/","w":"2026-08-03"},{"b":"Ментальная модель FTS: данные, правила, вывод и эффект Эта глава задаёт словарь на весь курс: как читать .fts-файл, не путая четыре разных вещи, которые в обычном коде обычно свалены в один метод. Если это разделение усв…","c":"post","d":"fts","g":["fts","модель","детерминизм","архитектура"],"h":"Минимальный пример · Что делает компилятор · Четыре слоя · Морфизм и утилита — два разных вида правил · Три уровня уверенности · Практика в ","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Четыре слоя FTS и честное различие между вычислением, доказательством и внешним действием приложения.…","t":"Ментальная модель FTS: данные, правила, вывод и эффект","u":"/post/fts/01-mental-model/","w":"2026-08-03"},{"b":"FTS: зачем разработчику исполняемая спецификация FTS — не замена TypeScript, React, Node.js или базе данных. Это маленький язык для той части системы, которую команда обычно пишет трижды: человеческое бизнес-правило в за…","c":"post","d":"fts","g":["fts","исполняемые спецификации","ddd","typescript","ai agents"],"h":"Где появляется ценность · Где FTS не нужен · А что по ту сторону границы: FTS вырос в язык · Всё можно выполнить, не устанавливая ничего · М","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Практическая ценность FTS, границы применимости и маршрут курса от первого правила до Node.js, React, DDD, AI и CI.…","t":"FTS: зачем разработчику исполняемая спецификация","u":"/post/fts/00-overview/","w":"2026-08-03"},{"b":"Каталог логических ошибок: 67 приёмов с примерами и ответами Предыдущие главы разбирали ошибки по одной, с историей и теорией: софизмы Аристотеля, формальные ошибки, релевантность, презумпция, причинность, когнитивные ис…","c":"post","d":"logic","g":["логика","логические ошибки","справочник","критическое мышление","аргументация"],"h":"Как этим пользоваться · Что название ошибки доказывает, а что нет · Шесть семей одним взглядом · Атака на человека · Увод в сторону · Схема ","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Полный справочник курса: шесть семей, шестьдесят семь ошибок, у каждой — механика подмены, бытовой пример, инженерный сл…","t":"Каталог логических ошибок: 67 приёмов с примерами и ответами","u":"/post/logic/13-fallacy-catalog/","w":"2026-07-29"},{"b":"Практикум по логике: разбор аргумента от тезиса до исправления Цель анализа — не назвать ошибку быстрее собеседника, а сделать следующий вывод точнее и следующее решение лучше. Карточка на пять вопросов Для обычного разб…","c":"post","d":"logic","g":["логика","практикум","логические ошибки","критическое мышление","тренажёр"],"h":"Карточка на пять вопросов · Разбор вместе · Кейсы для самостоятельного разбора · Покупка · Новости · Разговор · Работа · Исследование","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Единая карточка анализа, дерево диагностики, инженерные и бытовые кейсы, задания с решениями и формат, на котором будет …","t":"Практикум по логике: разбор аргумента от тезиса до исправления","u":"/post/logic/12-practice-cases-and-checklists/","w":"2026-07-28"},{"b":"Научная и инженерная аргументация: от гипотезы к решению Доказательство отвечает «что следует из модели». Эксперимент — «как модель соотносится с миром». Решение — «что делать при оставшейся неопределённости». Сцена: рас…","c":"post","d":"logic","g":["логика","научный метод","инженерное мышление","SDD","гипотеза"],"h":"Сцена: растение вянет · Три вида вывода · Хорошая гипотеза рискует ошибиться · Методы Милля на бытовом примере · От исследования к решению ·","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Дедукция, индукция и абдукция, гипотетико-дедуктивный цикл, методы Милля, причинные проверки, качество свидетельств, SDD…","t":"Научная и инженерная аргументация: от гипотезы к решению","u":"/post/logic/11-scientific-and-engineering-reasoning/","w":"2026-07-28"},{"b":"Когнитивные искажения и информационная среда: почему знать список недостаточно Логическая ошибка — свойство рассуждения. Когнитивное искажение — систематическая тенденция процесса, который это рассуждение породил. Сцена:…","c":"post","d":"logic","g":["логика","когнитивные искажения","принятие решений","информационная среда","дебайасинг"],"h":"Сцена: покупка уже кажется удачной · То, что легко вспомнить, кажется частым · Первая цифра тянет оценку · Невозвратные затраты · После собы","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Чем bias отличается от fallacy, как работают подтверждение, доступность, якорение, framing, sunk cost, hindsight, groupt…","t":"Когнитивные искажения и информационная среда: почему знать список недостаточно","u":"/post/logic/10-cognitive-biases-and-information-environment/","w":"2026-07-28"},{"b":"Причинные, вероятностные и статистические ошибки Данные не «говорят сами». Они отвечают на вопрос, заданный моделью, измерением и процедурой отбора. Сцена: счастливый браслет Человек надел новый браслет, успешно прошёл с…","c":"post","d":"logic","g":["логика","причинность","вероятность","статистика","критическое мышление"],"h":"Сцена: счастливый браслет · Совпадение изменений · Проценты без основания · Базовая частота · Кто попал в выборку · Среднее может спрятать у","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Корреляция и причинность, смешивающие факторы, base rate, ошибка обвинителя, выжившие, регрессия к среднему, малые выбор…","t":"Причинные, вероятностные и статистические ошибки","u":"/post/logic/09-causal-probabilistic-statistical-fallacies/","w":"2026-07-28"},{"b":"Ошибки презумпции и неоднозначности: что аргумент незаметно принимает заранее Самая удобная посылка — та, которую никто не заметил и поэтому не попросил обосновать. Сцена: вопрос с готовым обвинением Почему вы снова прои…","c":"post","d":"logic","g":["логика","ошибки презумпции","неоднозначность","бремя доказательства","slippery slope"],"h":"Сцена: вопрос с готовым обвинением · Круг вместо основания · Ложный выбор · Скользкий склон · Слова, меняющие значение · Второй пример: част","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Круг, сложный вопрос, бремя доказательства, ложная дилемма, special pleading, moving goalposts, slippery slope, equivoca…","t":"Ошибки презумпции и неоднозначности: что аргумент незаметно принимает заранее","u":"/post/logic/08-presumption-and-ambiguity-fallacies/","w":"2026-07-28"},{"b":"Ошибки релевантности: атака человека, подмена позиции и уход от вопроса Реплика может быть истинной, остроумной и важной — и всё равно не отвечать на поставленный вопрос. Сцена: кто сказал вместо что сказано — В смете дв…","c":"post","d":"logic","g":["логика","ошибки релевантности","ad hominem","straw man","аргументация"],"h":"Сцена: кто сказал вместо что сказано · Подмена позиции · Смена темы · Авторитет, популярность и эмоция · Второй пример · Карта честного отве","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Ad hominem, straw man, red herring, whataboutism, ложный авторитет, популярность, традиция, эмоции и последствия: когда …","t":"Ошибки релевантности: атака человека, подмена позиции и уход от вопроса","u":"/post/logic/07-relevance-and-position-fallacies/","w":"2026-07-28"},{"b":"Формальные ошибки современной логики: импликации, кванторы и модальность Формальная ошибка сохраняется после замены всех содержательных слов переменными. Если сбой исчез, проблема была не только в форме. Сцена: мокрый ас…","c":"post","d":"logic","g":["логика","формальные ошибки","импликация","кванторы","контрпример"],"h":"Сцена: мокрый асфальт снова · «Если» не означает «только если» · «Или» бывает включающим · «Каждому» не означает «один для всех» · Возможнос","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Невалидные схемы, которые обнаруживаются независимо от темы: утверждение следствия, отрицание основания, неверная дизъюн…","t":"Формальные ошибки современной логики: импликации, кванторы и модальность","u":"/post/logic/06-modern-formal-fallacies/","w":"2026-07-28"},{"b":"Тринадцать софизмов Аристотеля: первый систематический каталог ошибок Ошибка обманчива не потому, что у неё латинское имя, а потому, что плохой переход похож на хороший при беглом взгляде. Сцена: ответ не тому тезису — Я…","c":"post","d":"logic","g":["логика","логические ошибки","софизмы","Аристотель","аргументация"],"h":"Сцена: ответ не тому тезису · Две семьи ошибок · Язык создаёт двойное чтение · Содержание разговора создаёт ложный мост · Второй пример: сло","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Шесть языковых и семь внеязыковых источников мнимого опровержения в «О софистических опровержениях»: от омонимии и амфиб…","t":"Тринадцать софизмов Аристотеля: первый систематический каталог ошибок","u":"/post/logic/05-aristotle-sophistical-refutations/","w":"2026-07-28"},{"b":"Энтимема и риторическое доказательство: как восстанавливать скрытые посылки В хорошей энтимеме слушатель достраивает знакомый мост. В плохой — именно в пропущенном мосте спрятана недоказанная посылка. Сцена: «Бери эту ку…","c":"post","d":"logic","g":["логика","энтимема","риторика","аргументация","Аристотель"],"h":"Сцена: «Бери эту куртку — она дорогая» · Как восстановить пропуск честно · Не приписывайте слабейшую версию · Логос, этос и пафос · Второй п","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Почему реальные аргументы сокращены, как Аристотель и Челпанов понимали энтимему, как достраивать скрытые посылки, работ…","t":"Энтимема и риторическое доказательство: как восстанавливать скрытые посылки","u":"/post/logic/04-enthymeme-and-rhetorical-proof/","w":"2026-07-28"},{"b":"Категорические силлогизмы: фигуры, модусы и проверка вывода Силлогизм ценен не древними названиями, а обещанием: если форма валидна и посылки истинны, ложное заключение невозможно. Сцена: чай, кофе и поспешный мост Все с…","c":"post","d":"logic","g":["логика","силлогизмы","Аристотель","дедукция","формальные ошибки"],"h":"Сцена: чай, кофе и поспешный мост · Надёжный мост · Проверка без латинских названий · Второй пример · Почему древние модусы всё ещё полезны ","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Как устроена аристотелевская силлогистика: большой, меньший и средний термины, четыре фигуры, валидные модусы, распредел…","t":"Категорические силлогизмы: фигуры, модусы и проверка вывода","u":"/post/logic/03-categorical-syllogisms/","w":"2026-07-28"},{"b":"Суждения, отрицание и квадрат оппозиции Слово само по себе не истинно и не ложно. Истинность появляется, когда мы что-то утверждаем или отрицаем о чём-то. Сцена: «все опоздали» После встречи кто-то говорит: «Все опоздали…","c":"post","d":"logic","g":["логика","суждения","квадрат оппозиции","кванторы","Челпанов"],"h":"Сцена: «все опоздали» · Четыре полезные формы · Второй пример · Квадрат оппозиции без зубрёжки · Область отрицания · Короткая практика · Ака","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Как из понятий строятся утверждения: A/E/I/O, качество и количество, распределённость, квадрат оппозиции, преобразования…","t":"Суждения, отрицание и квадрат оппозиции","u":"/post/logic/02-propositions-and-opposition/","w":"2026-07-28"},{"b":"Понятия, определения и классификации: где ошибка возникает ещё до вывода «Определение есть объяснение содержания понятия». Георгий Челпанов, «Учебник логики», в современной орфографии Сцена: «нормальная квартира» Два чел…","c":"post","d":"logic","g":["логика","понятия","определения","классификация","Челпанов"],"h":"Сцена: «нормальная квартира» · Содержание и объём · Второй пример · Как строить определение · Типичные поломки · Слишком широко · Слишком уз","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Термин и понятие, содержание и объём, род и вид, правила определения и деления; круг, подмена основания, слишком широкая…","t":"Понятия, определения и классификации: где ошибка возникает ещё до вывода","u":"/post/logic/01-concepts-definitions-classification/","w":"2026-07-28"},{"b":"Как человечество научилось рассуждать: от Аристотеля до программ и категорий Силлогизм — это рассуждение, в котором из принятых посылок с необходимостью следует нечто отличное от них. Аристотель, «Первая аналитика», в со…","c":"post","d":"logic","g":["логика","история логики","булева алгебра","формальные системы","вычислимость","ооп","функциональное программирование","архитектура"],"h":"1. Сначала люди учились не доказывать, а убеждать · 2. Аристотель отделяет форму от содержания · 3. Стоики переходят от вещей к условиям · 4","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Две полноценные редакции одной истории: человеческий путь от убеждения к доказательству и инженерный путь от требования …","t":"Как человечество научилось рассуждать: от Аристотеля до программ и категорий","u":"/post/logic/14-history-and-levels-of-abstraction/","w":"2026-07-28"},{"b":"Логика и ошибки мышления: карта курса от Аристотеля до инженерных решений «Логика есть наука о законах правильного мышления». Георгий Челпанов, «Учебник логики» Логика начинается не с латинских названий и не с формул. Он…","c":"post","d":"logic","g":["логика","критическое мышление","аргументация","логические ошибки","фундамент"],"h":"Сцена: мокрый асфальт · Три поломки, которые часто путают · Вывод не следует · Основание слабое · Ответ бьёт мимо вопроса · Что логика делае","n":"Логика и ошибки мышления","p":"Фундамент","q":"02","r":"От живой истории рассуждения, понятий и силлогизмов до софизмов, статистических ловушек и инженерной аргументации.","s":"Как устроено хорошее рассуждение, почему каталог названий не заменяет анализа и по какому маршруту пройти от понятий и с…","t":"Логика и ошибки мышления: карта курса от Аристотеля до инженерных решений","u":"/post/logic/00-overview/","w":"2026-07-28"},{"b":".NET в SDLC и лучшие ресурсы Заключительная статья связывает всё воедино. Язык и фреймворк — лишь инструменты; ценность возникает, когда они встроены в здоровый жизненный цикл разработки ПО (SDLC): от идеи до работающего…","c":"post","d":"csharp","g":["csharp","sdlc","ci/cd","безопасность","зависимости","ресурсы"],"h":"SDLC глазами .NET-инженера · Code review: на что смотреть · Пример CI/CD пайплайна · Релизные стратегии · Безопасность цепочки зависимостей ","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Как C#/.NET живёт в жизненном цикле разработки — от требований до эксплуатации: пример CI/CD, релизные стратегии, безопа…","t":".NET в SDLC: CI/CD, релизы, безопасность зависимостей и лучшие ресурсы","u":"/post/csharp/08-sdlc-and-best-blogs/","w":"2026-07-16"},{"b":"A/B-тесты: подглядывание, множественные сравнения, мощность A/B-тест — единственный инструмент в арсенале аналитика, который даёт право произнести слово «потому что». Всё остальное — корреляции, воронки, когорты, дашборд…","c":"post","d":"data-analytics","g":["аналитика данных","ab-тесты","статистика","эксперименты","sql"],"h":"Что покупает рандомизация — и что не покупает · Дизайн, который пишется до старта · Мощность: единственное, что нельзя докупить потом · Что ","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Как устроен онлайн-эксперимент от рандомизации до решения: расчёт мощности и длительности, почему нельзя смотреть на рез…","t":"A/B-тесты: подглядывание, множественные сравнения, мощность","u":"/post/data-analytics/09-ab-testing/","w":"2026-07-16"},{"b":"ADR: запись архитектурного решения, которая переживёт автора Инженер открывает payments/outbox.go и видит странное: события пишутся в таблицу Postgres, а отдельный воркер вычитывает её и публикует в Kafka; прямая публика…","c":"post","d":"technical-writing","g":["техническое письмо","документация","adr","архитектура","инженерная культура"],"h":"Что такое ADR и с чем его путают · Читатель ADR — археолог, а не участник · Почему запись о прошлом не устаревает · Анатомия: какое поле как","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"ADR пишется для инженера, который через два года решит, можно ли снять то, что вы поставили: устройство полей, почему за…","t":"ADR: запись архитектурного решения, которая переживёт автора","u":"/post/technical-writing/04-adr/","w":"2026-07-16"},{"b":"Agile и Scrum: ценности, роли, церемонии, честная критика Про Agile написано столько, что смысл почти утонул в шуме. Одни говорят «мы работаем по Agile» и имеют в виду «у нас нет документации». Другие продают двухдневный…","c":"post","d":"project-management","g":["управление проектами","agile","scrum","процессы разработки"],"h":"1. Зачем вообще итерации: проблема, а не мода · Стоимость информации · Инверсия «железного треугольника» · 2. Краткая, но честная история · ","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Откуда взялся Agile, как на самом деле устроен Scrum по Scrum Guide 2020, что означают роли и события, как считать veloc…","t":"Agile и Scrum: ценности, роли, церемонии, честная критика","u":"/post/project-management/01-agile-and-scrum/","w":"2026-07-16"},{"b":"Agile-манифест: ценности и принципы, а не набор ритуалов Есть простая диагностическая процедура. Придите в команду, которая «работает по Agile», и спросите: «Что вы сделаете, если через две недели после старта спринта ст…","c":"post","d":"scrum-master","g":["scrum","agile","scrum-мастер","psm"],"h":"Откуда манифест взялся: предыстория, которую обычно пропускают · Четыре ценности: не «вместо», а «важнее» · 1. Люди и взаимодействие важнее ","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Разбираем четыре ценности и двенадцать принципов Agile-манифеста по первоисточнику: какую боль каждая строчка решала, чт…","t":"Agile-манифест: ценности и принципы, а не набор ритуалов","u":"/post/scrum-master/01-agile-values/","w":"2026-07-16"},{"b":"Ansible, Puppet, Chef и управление конфигурацией В предыдущей статье — https://courses.digitable.life/post/devops/09-terraform-and-iac/ — мы научились создавать инфраструктуру: Terraform поднял виртуальные машины, сети, …","c":"post","d":"devops","g":["devops","ansible","puppet","chef","инфраструктура как код"],"h":"Проблема: состояние машины — это накопленная история · Идемпотентность и сходимость: два понятия, на которых всё держится · Императивно прот","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как устроены системы управления конфигурацией, чем push отличается от pull, что такое идемпотентность и сходимость — с р…","t":"Ansible, Puppet, Chef и управление конфигурацией","u":"/post/devops/10-configuration-management/","w":"2026-07-16"},{"b":"ARIA: роли, свойства, состояния и правило «лучше без ARIA» ARIA (Accessible Rich Internet Applications) — набор HTML-атрибутов, которыми вы объясняете вспомогательным технологиям, чем элемент на экране является и в каком…","c":"post","d":"accessibility","g":["доступность","aria","html","скринридеры","wcag"],"h":"Что ARIA делает и чего не делает · Дерево доступности: где на самом деле живёт ARIA · Откуда взялась ARIA и где искать нормы · Пять правил и","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Как ARIA описывает интерфейс скринридеру, из чего состоят роли, свойства и состояния, почему нативный HTML почти всегда …","t":"ARIA: роли, свойства, состояния и правило «лучше без ARIA»","u":"/post/accessibility/03-aria/","w":"2026-07-16"},{"b":"ASP.NET Core изнутри: путь запроса В статье про архитектуру мы выбирали между Minimal API и контроллерами, но обошли главное: что вообще происходит с запросом между моментом, когда байты пришли в сокет, и моментом, когда…","c":"post","d":"csharp","g":["csharp","asp.net core","веб","middleware","аутентификация"],"h":"Общая картина · Middleware: конвейер, а не набор · Канонический порядок · Ошибки на границе HTTP · Маршрутизация · Модельное связывание и ва","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Что происходит с HTTP-запросом между сокетом и вашим кодом: Kestrel, конвейер middleware, endpoint routing, модельное св…","t":"ASP.NET Core изнутри: конвейер middleware, маршрутизация, связывание и доступ","u":"/post/csharp/11-aspnetcore-pipeline/","w":"2026-07-16"},{"b":"AWS: базовые сервисы, модель ответственности, сеть, стоимость, типичные ошибки В предыдущей статье — https://courses.digitable.life/post/devops/10-configuration-management/ — мы разбирали, как приводить машины в нужное с…","c":"post","d":"devops","g":["devops","aws","облака","инфраструктура","стоимость"],"h":"Каркас: аккаунт, регион, зона доступности · Модель разделяемой ответственности: где заканчивается AWS · IAM: единственная вещь, которую надо","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как устроен AWS изнутри: аккаунты и регионы, логика IAM, VPC и её скрытая стоимость, выбор между EC2, Fargate и Lambda, …","t":"AWS: базовые сервисы, модель ответственности, сеть, стоимость, типичные ошибки","u":"/post/devops/11-aws/","w":"2026-07-16"},{"b":"B2B и enterprise: покупатель — не пользователь В потребительском продукте один человек обнаруживает проблему, пробует решение, платит за него и пользуется им. Вся машинерия предыдущих статей трека — метрики активации, эк…","c":"post","d":"product-management","g":["продукт","b2b","enterprise","продажи","внедрение"],"h":"1. Четыре роли вместо одной · 1.1. Разделение, которое ломает привычные модели · 1.2. Как выглядит путь сделки · 1.3. Чемпион — это ваш прод","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Что меняется в продуктовой работе, когда платит один, решает второй, пользуется третий, а блокирует четвёртый: комитет п…","t":"B2B и enterprise: покупатель — не пользователь","u":"/post/product-management/11-b2b-and-enterprise/","w":"2026-07-16"},{"b":"C для встраиваемых систем: память, указатели, volatile, без динамики Почему C и почему это не тот C, который вы знаете Программист «больших» машин приходит сюда с готовым мнением: C — старый язык без безопасности, зачем …","c":"post","d":"embedded","g":["встраиваемые системы","c","память","микроконтроллеры","отладка"],"h":"Почему C и почему это не тот C, который вы знаете · Где живут переменные · Типы: int — это не 32 бита · Указатель — это физический адрес · v","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Как меняется C, когда под ним нет операционной системы: статическое распределение памяти, указатель как физический адрес…","t":"C для встраиваемых систем: память, указатели, volatile, без динамики","u":"/post/embedded/02-c-for-embedded/","w":"2026-07-16"},{"b":"C и системное программирование: карта трека и зачем это сегодня Есть момент, знакомый каждому, кто долго писал на языке со сборщиком мусора: программа тормозит, и профилировщик показывает не ваш код. Или падает контейнер…","c":"post","d":"systems-programming","g":["системное программирование","c","неопределённое поведение","безопасность памяти","компиляторы"],"h":"Что такое системное программирование · Почему C, спустя полвека · Что скрывает высокоуровневый язык · Граница, за которую вы не можете перес","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Что такое системное программирование, почему C остаётся его языком спустя полвека, как устроен слой «под» высокоуровневы…","t":"C и системное программирование: карта трека и зачем это сегодня","u":"/post/systems-programming/00-overview/","w":"2026-07-16"},{"b":"C# и .NET: обзор, философия и как учиться C# — это статически типизированный, объектно-ориентированный язык с сильным уклоном в функциональные возможности, работающий на среде исполнения .NET (CLR — Common Language Runti…","c":"post","d":"csharp","g":["csharp","обзор","дорожная карта","экосистема","языки программирования"],"h":"Коротко об истории и «том самом» .NET · Как устроен путь от исходника до исполнения · Первая программа · Философия языка · Где C# силён (ниш","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Что такое современный C# и .NET, где он силён, как устроена экосистема и как проходить этот курс, чтобы уметь применять …","t":"C# и .NET: обзор языка, философия и дорожная карта курса","u":"/post/csharp/00-overview/","w":"2026-07-16"},{"b":"C++ после C: RAII, классы, шаблоны, умные указатели — что меняется Вы прошли одиннадцать статей о C: адреса и указатели, раскладка структур, ручное управление кучей, компоновка, отладка, системные вызовы, потоки, ассембл…","c":"post","d":"systems-programming","g":["системное программирование","c","c++","raii","память"],"h":"Карта: что меняется, а что остаётся · C++ — не надмножество C · Граница: extern “C” и манглинг имён · RAII: главное, ради чего это всё · Обё","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Переход с C на C++ глазами системщика: почему C++ не надмножество C, как RAII убирает goto cleanup, что компилятор генер…","t":"C++ после C: RAII, классы, шаблоны, умные указатели — что меняется","u":"/post/systems-programming/12-cpp-intro/","w":"2026-07-16"},{"b":"CAP и PACELC: что теорема на самом деле говорит и чего не говорит CAP — самая цитируемая и самая неправильно цитируемая теорема в нашей профессии. Её пересказывают как «выбери два из трёх», рисуют треугольник, наклеивают…","c":"post","d":"distributed-systems","g":["распределённые системы","cap","pacelc","согласованность","отказоустойчивость"],"h":"1. Три буквы и их точные определения · 2. Доказательство на салфетке · 3. Чего теорема не говорит: шесть заблуждений · 3.1. «Выбери любые дв","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Точная формулировка CAP и её доказательство, шесть массовых заблуждений вокруг «выбери два из трёх», PACELC как недостаю…","t":"CAP и PACELC: что теорема на самом деле говорит и чего не говорит","u":"/post/distributed-systems/03-cap-and-pacelc/","w":"2026-07-16"},{"b":"Cassandra, ScyllaDB и wide-column: модель запросов и компромиссы Есть класс задач, где реляционная база проигрывает не из-за плохой оптимизации, а структурно. Вам нужно принимать миллион записей в секунду, круглосуточно,…","c":"post","d":"databases","g":["базы данных","cassandra","scylladb","nosql","распределённые системы","lsm"],"h":"Родословная: Dynamo снизу, Bigtable сверху · Модель данных: партиция, кластеризация и то, что этим определяется · Query-first: схема как мат","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Wide-column изнутри: почему схема проектируется от запросов, а не от сущностей, как устроены токен-кольцо, кворумы и LSM…","t":"Cassandra, ScyllaDB и wide-column: модель запросов и компромиссы","u":"/post/databases/12-cassandra-and-wide-column/","w":"2026-07-16"},{"b":"CDN и edge: как работает раздача, инвалидация, географическая маршрутизация Возьмите линейку и посчитайте. Свет в одномодовом волокне идёт со скоростью примерно 200 000 км/с — на треть медленнее, чем в вакууме, из-за коэ…","c":"post","d":"networking","g":["сети","cdn","кэширование","http","производительность","диагностика"],"h":"Что CDN на самом деле продаёт · Как индустрия сюда пришла · Анатомия: путь запроса сверху вниз · Что происходит на промахе: схлопывание запр","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Почему скорость света делает CDN обязательной, как устроен многоуровневый кэш от edge PoP до origin shield, из чего соби…","t":"CDN и edge: как работает раздача, инвалидация, географическая маршрутизация","u":"/post/networking/11-cdn-and-edge/","w":"2026-07-16"},{"b":"CI/CD: непрерывная интеграция и непрерывная поставка Задача, которую решает CI: интеграционный ад До того как непрерывная интеграция стала нормой, типичный проект выглядел так. Восемь разработчиков две-три недели работаю…","c":"post","d":"development","g":["development","ci/cd","автоматизация","поставка","devops"],"h":"Задача, которую решает CI: интеграционный ад · Три термина, которые постоянно путают · Как CI меняет работу разработчика · Незавершённая раб","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Что такое CI, continuous delivery и continuous deployment по существу, как устроен конвейер от коммита до прода и почему…","t":"CI/CD: непрерывная интеграция и непрерывная поставка","u":"/post/development/10-ci-cd/","w":"2026-07-16"},{"b":"CLI-приложения на Go Посмотрите на инструменты, которыми вы пользуетесь каждый день: docker, kubectl, terraform, helm, gh, hugo, k9s, lazygit, golangci-lint. Все написаны на Go. Это не совпадение и не мода — в обзоре кон…","c":"post","d":"golang","g":["go","cli","инструменты","ux","дистрибуция"],"h":"Почему Go выиграл эту нишу · Контракт CLI: то, что отличает инструмент от скрипта · Потоки: stdout — данные, stderr — всё остальное · Коды в","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Почему Go занял нишу консольных инструментов, контракт stdout/stderr и кодов выхода, flag против cobra, UX и TUI, отмена…","t":"CLI-приложения на Go: flag и cobra, контракт терминала, конфигурация и дистрибуция","u":"/post/golang/13-cli-applications/","w":"2026-07-16"},{"b":"ClickHouse и колоночные аналитические БД: движки, партиционирование, MergeTree Есть один разговор, который повторяется в каждой компании примерно на третий год жизни продукта. Аналитик приходит с запросом: «покажи распре…","c":"post","d":"databases","g":["базы данных","clickhouse","olap","колоночные бд","аналитика"],"h":"Первые принципы: почему поворот раскладки меняет всё · Ландшафт: кто есть кто в колоночном OLAP · MergeTree: сердце ClickHouse · Как физичес","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Как устроены колоночные OLAP-хранилища изнутри: разреженный индекс и гранулы MergeTree, партиционирование и фоновые слия…","t":"ClickHouse и колоночные аналитические БД: движки, партиционирование, MergeTree","u":"/post/databases/13-clickhouse-and-olap/","w":"2026-07-16"},{"b":"Compiler API, ts-morph и кодмоды: автоматизация над кодовой базой Рано или поздно наступает задача, которую нельзя решить ни типом, ни ревью: «переименовать поле во всех 3 000 файлов», «запретить process.env вне config.t…","c":"post","d":"typescript","g":["typescript","инструменты","ast","кодогенерация","качество кода"],"h":"Как устроен компилятор · Собственный анализатор на Compiler API · Кодмоды на ts-morph · Раскатка кодмода без боли · Правила ESLint с доступо","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Как устроен компилятор изнутри, как написать свой анализатор на Compiler API, кодмод на ts-morph и правило ESLint с дост…","t":"Compiler API, ts-morph и кодмоды: автоматизация над кодовой базой","u":"/post/typescript/13-compiler-api-and-codemods/","w":"2026-07-16"},{"b":"Computer Science: карта курса и зачем нужна большая картина Можно годами писать работающий код и ни разу не задуматься, что происходит между нажатием клавиши и появлением буквы на экране. Абстракции для того и придуманы,…","c":"post","d":"computer-science","g":["computer science","абстракция","большая картина","основы"],"h":"Что такое computer science, если говорить строго · Главная идея всей дисциплины — абстракция · Башня абстракций: от транзистора до приложени","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Обзорная статья трека: что такое computer science как наука о вычислении и информации, из каких слоёв абстракции собран …","t":"Computer Science: карта курса и зачем нужна большая картина","u":"/post/computer-science/00-overview/","w":"2026-07-16"},{"b":"Continuous Delivery и стратегии релизов: blue-green, canary, feature flags, откаты Непрерывная интеграция (https://courses.digitable.life/post/devops/01-ci-fundamentals/) заканчивается там, где появляется зелёная сборка …","c":"post","d":"devops","g":["devops","ci/cd","continuous delivery","kubernetes","релизы"],"h":"Delivery, Deployment и Release — три разных слова · Метрики, по которым проверяют себя · Deployment pipeline: что происходит после CI · Карт","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как довести артефакт из CI до продакшна безопасно: deployment pipeline, blue-green, канареечные релизы с автоанализом ме…","t":"Continuous Delivery и стратегии релизов: blue-green, canary, feature flags, откаты","u":"/post/devops/04-cd-and-release-strategies/","w":"2026-07-16"},{"b":"CQRS и Event Sourcing Есть пара паттернов, которые в разговорах почти всегда произносят одним словом — «сикьюэрэс-и-ивентсорсинг», будто это единая технология с одним переключателем. Из-за этого возникают две симметричны…","c":"post","d":"architecture-patterns","g":["архитектура","cqrs","event sourcing","проекции","консистентность"],"h":"1. Откуда вообще берётся идея разделять чтение и запись · 1.1. Лестница CQRS: четыре ступени, а не переключатель · 1.2. Как выглядит ступень","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Два независимых паттерна, которые постоянно путают: разделение моделей чтения и записи и хранение состояния как журнала …","t":"CQRS и Event Sourcing","u":"/post/architecture-patterns/05-cqrs-and-event-sourcing/","w":"2026-07-16"},{"b":"CSS с нуля: каскад, специфичность, наследование, единицы измерения Типичная траектория знакомства с CSS: «тут же всего три свойства» → «почему оно не применяется?!» → !important → «почему теперь вообще ничего не применяе…","c":"post","d":"frontend","g":["frontend","css","вёрстка","производительность"],"h":"1. CSS — декларативный решатель ограничений · 2. Конвейер значения: шесть стадий одного числа · 3. Каскад: кто побеждает и в каком порядке ·","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Как объявление в таблице стилей становится пикселем на экране: стадии значения, каскад и слои, специфичность, наследован…","t":"CSS с нуля: каскад, специфичность, наследование, единицы измерения","u":"/post/frontend/03-css-fundamentals/","w":"2026-07-16"},{"b":"Data Engineering: карта трека, роли и архитектура данных Эта статья — вход в трек. Она не пересказывает остальные восемь материалов, а даёт то, без чего они рассыпаются в список технологий: систему координат. После неё в…","c":"post","d":"data-engineering","g":["данные","data engineering","архитектура данных","etl","хранилище данных"],"h":"1. Зачем вообще нужен отдельный слой инженерии данных · 2. Карта трека · 3. Слои платформы: почему их именно столько · 4. Референсная архите","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Зачем нужен слой инженерии данных, из каких слоёв состоит платформа, кто за что отвечает, какие сквозные понятия повторя…","t":"Data Engineering: карта трека, роли и архитектура данных","u":"/post/data-engineering/00-overview/","w":"2026-07-16"},{"b":"DDD в legacy: как внедрить модель в живую систему Все предыдущие статьи трека описывали, как должно быть. Реальность почти всегда другая: есть система, ей семь лет, в ней 600 тысяч строк, три поколения разработчиков, баз…","c":"post","d":"ddd","g":["ddd","архитектура","рефакторинг","legacy","миграция"],"h":"1. Почему «перепишем заново» не работает · 2. Диагностика: где вообще болит · 3. Швы: где физически можно резать · Характеризационные тесты:","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Практический план внедрения DDD в систему, которую нельзя остановить: поиск швов через историю git, характеризационные т…","t":"DDD в legacy: как внедрить модель в живую систему","u":"/post/ddd/13-ddd-in-legacy/","w":"2026-07-16"},{"b":"DDD в коде: полный пример от домена до API Шесть предыдущих статей трека были про то, как думать: где границы (контексты), из чего собирать модель (тактические блоки), как её доставать из головы экспертов (Event Storming…","c":"post","d":"ddd","g":["ddd","архитектура","чистая архитектура","тестирование","python"],"h":"1. Постановка: единый язык до единой строки кода · Структура проекта · 2. Объекты-значения: фундамент, который нельзя пропустить · 3. Агрега","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Один ограниченный контекст целиком: агрегат с инвариантами, порты, сценарий, репозиторий с оптимистичной блокировкой, ou…","t":"DDD в коде: полный пример от домена до API","u":"/post/ddd/07-ddd-in-code/","w":"2026-07-16"},{"b":"DDD: зачем нужен, когда не нужен и карта трека Domain-Driven Design — не фреймворк, не набор папок Domain/Application/Infrastructure и не обязанность называть классы «агрегатами». Это дисциплина, которая отвечает на один…","c":"post","d":"ddd","g":["ddd","архитектура","моделирование","единый язык"],"h":"1. Проблема: знание о домене испаряется · Оценка «сложности» по-инженерному · 2. Что такое DDD строго: три уровня · 3. Единый язык — не «гло","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Что такое Domain-Driven Design по существу, какую боль он лечит, где превращается в оверинжиниринг и как устроен весь тр…","t":"DDD: зачем нужен, когда не нужен и карта трека","u":"/post/ddd/00-overview/","w":"2026-07-16"},{"b":"DeFi-примитивы: AMM, кредитование, стейблкоины, ликвидации, композиция Предыдущие статьи трека собирали машину: состояние и газ, контракты и их уязвимости, токены, приложение вокруг цепи. Осталась неудобная дыра: почти в…","c":"post","d":"web3","g":["web3","defi","смарт-контракты","ethereum","безопасность"],"h":"1. Пять примитивов, из которых собрано всё остальное · 2. Почему в цепи не работает книга заявок · 3. AMM с постоянным произведением · 3.1. ","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Инженерный разбор финансовых примитивов на цепи: почему обмен считает кривая, а не книга заявок, откуда берутся проскаль…","t":"DeFi-примитивы: AMM, кредитование, стейблкоины, ликвидации, композиция","u":"/post/web3/12-defi-primitives/","w":"2026-07-16"},{"b":"DevOps и доставка ПО: карта трека, культура и метрики Это вход в трек по эксплуатации. Дальше будет много конкретики — Jenkinsfile, манифесты Kubernetes, HCL, конфиги раннеров и счета за облако. Но если начать сразу с ин…","c":"post","d":"devops","g":["devops","ci/cd","инфраструктура","метрики","надёжность"],"h":"1. Что такое DevOps, если убрать маркетинг · 2. Карта трека · 3. Поток создания ценности: от идеи до работающего кода · 4. Четыре метрики, к","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Что такое DevOps с точки зрения теории потока, как измерять доставку четырьмя метриками DORA, из чего состоит путь от ко…","t":"DevOps и доставка ПО: карта трека, культура и метрики","u":"/post/devops/00-overview/","w":"2026-07-16"},{"b":"Discovery: интервью, JTBD, проверка проблемы Discovery — это не «сходить поговорить с парой клиентов перед началом разработки». Это дисциплина принятия решений в условиях, где вы почти наверняка ошибаетесь, и задача — уз…","c":"post","d":"product-management","g":["продукт","discovery","исследования","jtbd","интервью"],"h":"1. Зачем: цена решения, принятого не в тот момент · 1.1. Стоимость информации падает во времени, стоимость ошибки растёт · 1.2. Четыре риска","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Как узнать, что проблема реальна, до того как команда потратит квартал: правила проблемного интервью, JTBD и четыре силы…","t":"Discovery: интервью, JTBD, проверка проблемы","u":"/post/product-management/01-discovery-and-research/","w":"2026-07-16"},{"b":"DNS: иерархия, типы записей, резолвинг, кэширование, DoH/DoT Каждая статья этого трека до сих пор начиналась с готового IP-адреса. Канальный уровень доставлял кадр до соседа, IP — пакет до сети, TCP и QUIC строили поверх…","c":"post","d":"networking","g":["сети","dns","кэширование","безопасность","диагностика"],"h":"Зачем понадобился DNS · Пространство имён: дерево, зоны, делегирование · Типы записей: что реально бывает в зоне · Как выглядит резолв: от g","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Распределённая база, на которой держится интернет: дерево зон и делегирование, все типы записей от A до HTTPS/SVCB, полн…","t":"DNS: иерархия, типы записей, резолвинг, кэширование, DoH/DoT","u":"/post/networking/05-dns/","w":"2026-07-16"},{"b":"DOM и события: работа с деревом, делегирование, всплытие, наблюдатели Есть распространённая иллюзия: «DOM — это HTML, который я написал». Нет. HTML — текст, который парсер прочитал один раз при загрузке. DOM — это живой …","c":"post","d":"frontend","g":["frontend","dom","события","производительность","devtools"],"h":"Что такое DOM на самом деле · Живые и статические коллекции · Мутации: как менять дерево дёшево · innerHTML и XSS · \u003ctemplate\u003e — инертная ра","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"DOM как API, а не как разметка: живые и статические коллекции, батчинг мутаций, layout thrashing, три фазы события, деле…","t":"DOM и события: работа с деревом, делегирование, всплытие, наблюдатели","u":"/post/frontend/06-dom-and-events/","w":"2026-07-16"},{"b":"DORA и метрики инженерной эффективности Любой руководитель рано или поздно задаёт вопрос: «Мы работаем хорошо или плохо?» Ответ «команда старается» его не устраивает, и тогда рождаются строки кода в неделю, closed story …","c":"post","d":"project-management","g":["управление проектами","devops","метрики","непрерывная поставка"],"h":"Часть 1. Интуиция: почему именно эти четыре числа · Что мы вообще хотим знать · Ключевая находка: скорость и стабильность не конфликтуют · Ч","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Четыре ключевые метрики DORA: строгие определения, честный расчёт из событий CI/CD, статистические ловушки MTTR, SPACE и…","t":"DORA и метрики инженерной эффективности","u":"/post/project-management/07-dora-and-engineering-metrics/","w":"2026-07-16"},{"b":"DRY, KISS, YAGNI и цена преждевременной абстракции Эти три аббревиатуры знает каждый, кто хоть раз проходил собеседование. И почти каждый понимает их неправильно — потому что выучил лозунг, а не аргумент. DRY превращаетс…","c":"post","d":"principles","g":["принципы","рефакторинг","абстракция","проектирование"],"h":"Общая интуиция: все три принципа — про стоимость изменения · DRY: принцип про знание, а не про текст · Что считается нарушением DRY на самом","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Три самых цитируемых и самых неправильно понятых принципа разработки: что они говорят на самом деле, как посчитать цену …","t":"DRY, KISS, YAGNI и цена преждевременной абстракции","u":"/post/principles/02-dry-kiss-yagni/","w":"2026-07-16"},{"b":"E2E и UI-тесты: Playwright, Selenium, борьба с хрупкостью E2E-тесты — единственный уровень, который проверяет то, за что платит пользователь: что система целиком, со всеми сервисами, базой, очередями и фронтендом, выполн…","c":"post","d":"testing","g":["тестирование","e2e","playwright","selenium","автоматизация"],"h":"Что такое E2E и чем он отличается от UI-теста · Как решать, что покрывать E2E · Как устроены инструменты: Selenium против Playwright · Сравн","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Как устроены сквозные и интерфейсные тесты, чем Playwright отличается от Selenium, что стоит покрывать E2E, а что нет, и…","t":"E2E и UI-тесты: Playwright, Selenium, борьба с хрупкостью","u":"/post/testing/07-e2e-and-ui/","w":"2026-07-16"},{"b":"Eclipse, NetBeans и наследие: где они остались и почему Это не некролог. Про Eclipse и NetBeans принято писать в прошедшем времени, и статистика вроде бы даёт на это право: в Stack Overflow Developer Survey 2025 VS Code …","c":"post","d":"editors","g":["редакторы","eclipse","netbeans","java","инструменты разработчика"],"h":"Как мы сюда пришли · Eclipse — это не IDE, это контейнер приложений, который притворяется IDE · OSGi: динамические модули за пятнадцать лет ","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Eclipse и NetBeans глазами инженера 2026 года: OSGi и extension points, компилятор ECJ, который сегодня работает внутри …","t":"Eclipse, NetBeans и наследие: где они остались и почему","u":"/post/editors/07-eclipse-netbeans-and-legacy/","w":"2026-07-16"},{"b":"Elixir в SDLC и куда расти дальше Завершаем курс взглядом сверху: как Elixir встраивается в полный жизненный цикл разработки ПО (SDLC) — от требований до эксплуатации — и куда идти после этого курса. Здесь же — полный пр…","c":"post","d":"elixir","g":["elixir","sdlc","ci/cd","безопасность","зависимости","ресурсы"],"h":"Elixir на каждом этапе жизненного цикла · Требования и проектирование · Разработка · Code review · Тестирование, релиз, эксплуатация · Полны","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Как Elixir живёт в жизненном цикле разработки: от требований до эксплуатации, полный пример CI/CD, релизные стратегии, б…","t":"Elixir в SDLC: CI/CD, релизная стратегия, безопасность зависимостей и лучшие ресурсы","u":"/post/elixir/08-sdlc-and-best-blogs/","w":"2026-07-16"},{"b":"Elixir с нуля до продакшена: обзор Elixir — это функциональный язык, который компилируется в байт-код виртуальной машины BEAM (той самой, на которой работает Erlang). Если убрать маркетинг, суть одной фразой: Elixir — эт…","c":"post","d":"elixir","g":["elixir","обзор","дорожная карта","экосистема","отказоустойчивость"],"h":"С первых принципов: какую проблему решает BEAM · Философия: «Let it crash» и супервизия · Три кита практического Elixir · Где Elixir блистае","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Что такое Elixir и BEAM, зачем они нужны, где применяются и как устроен этот курс — дорожная карта и метод обучения.…","t":"Elixir с нуля до продакшена: обзор курса и философия языка","u":"/post/elixir/00-overview/","w":"2026-07-16"},{"b":"Emacs: философия, org-mode, elisp и почему он всё ещё жив Есть программа, которой в 2026 году исполняется пятьдесят лет, и она по-прежнему получает мажорные релизы, по-прежнему собирает несколько процентов профессиональн…","c":"post","d":"editors","g":["редакторы","emacs","org-mode","lisp","инструменты разработчика"],"h":"Откуда всё взялось · Архитектура: 5% на C, всё остальное на Lisp · Всё есть буфер · Командный цикл: что происходит при нажатии клавиши · Ema","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Emacs как живая Lisp-машина, а не редактор: командный цикл и буферы, реальные init.el и early-init.el, org-mode с agenda…","t":"Emacs: философия, org-mode, elisp и почему он всё ещё жив","u":"/post/editors/04-emacs/","w":"2026-07-16"},{"b":"Erlang-интероп и бинарные данные Elixir не работает «поверх» Erlang — он компилируется в тот же байт-код BEAM. Модуль Elixir и модуль Erlang неразличимы для виртуальной машины, вызов между ними стоит ровно столько же, ск…","c":"post","d":"elixir","g":["elixir","erlang","бинарные данные","интеграция","нативный код"],"h":"Вызов Erlang: правила перевода · Записи Erlang · Erlang-зависимости в mix.exs · Битовый синтаксис: убийственная фича BEAM · Разбор реального","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Как Elixir работает с наследием Erlang и с внешним миром: вызов OTP-модулей, записи, бинарный паттерн-матчинг для разбор…","t":"Erlang-интероп и бинарные данные: битовый синтаксис, iodata, порты, NIF и Rustler","u":"/post/elixir/12-erlang-interop-binaries/","w":"2026-07-16"},{"b":"Ethereum и EVM: аккаунты, транзакции, газ, состояние В прошлой статье мы разобрали, как сеть договаривается о порядке блоков. Но консенсус отвечает только на вопрос «какая цепочка правильная» — он ничего не говорит о том…","c":"post","d":"web3","g":["web3","ethereum","evm","блокчейн","газ"],"h":"Ethereum как реплицированная машина состояний · Два типа аккаунтов · Состояние: почему дерево, а не хеш-таблица · Транзакция изнутри · Подпи","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Как Ethereum устроен инженерно: модель аккаунтов и глобального состояния, формат и подпись транзакций, стековая машина E…","t":"Ethereum и EVM: аккаунты, транзакции, газ, состояние","u":"/post/web3/04-ethereum-and-evm/","w":"2026-07-16"},{"b":"ETL и ELT: этапы, различия и практика Почти всякая аналитика начинается с неприятного факта: данные лежат не там, где их считают. Заказы живут в PostgreSQL продакшн-сервиса, платежи — в API эквайринга, клики — в логах, с…","c":"post","d":"data-engineering","g":["данные","etl","elt","пайплайны","хранилища данных"],"h":"Интуиция: ресторанная кухня · Три этапа по отдельности · Extract — извлечение · Transform — трансформация · Load — загрузка · ETL: как это д","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как устроены извлечение, трансформация и загрузка данных, чем ELT отличается от ETL, и как построить инкрементальный иде…","t":"ETL и ELT: этапы, различия и практика","u":"/post/data-engineering/01-etl-vs-elt/","w":"2026-07-16"},{"b":"Event Storming и практики моделирования домена Предыдущие статьи трека дали словарь: поддомены, контексты, агрегаты, доменные события. Остался неудобный вопрос, который обычно замалчивают: откуда вы вообще взяли, что это…","c":"post","d":"ddd","g":["ddd","моделирование","event storming","воркшопы","единый язык"],"h":"1. Проблема: знание распределено, а времени нет · 2. Грамматика стены: словарь и предложение · 3. Три уровня воркшопа · 3.1. Big Picture: ха","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Как за несколько часов на стене из стикеров вытащить из голов бизнеса рабочую модель домена, найти границы контекстов и …","t":"Event Storming и практики моделирования домена","u":"/post/ddd/06-event-storming/","w":"2026-07-16"},{"b":"Frontend: карта трека и как устроена современная веб-разработка Что такое фронтенд на самом деле Определение «фронтенд — это то, что видит пользователь» описывает результат, а не работу. Точнее так: фронтенд — это инжене…","c":"post","d":"frontend","g":["frontend","браузер","react","производительность","рендеринг"],"h":"Что такое фронтенд на самом деле · Слои платформы: где живёт ваш код · Путь от URL до пикселя · Стратегии рендеринга и гидратация · Что тако","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Что такое фронтенд как инженерная дисциплина: слои платформы, путь от URL до пикселя, стратегии рендеринга и гидратация,…","t":"Frontend: карта трека и как устроена современная веб-разработка","u":"/post/frontend/00-overview/","w":"2026-07-16"},{"b":"Git: карта трека и модель данных вместо заучивания команд Есть два способа работать с Git. Первый: держать в закладках шпаргалку из двадцати команд, применять их по образцу и звать коллегу, когда терминал печатает что-то…","c":"post","d":"git","g":["git","версионирование","инструменты","командная работа"],"h":"1. Почему Git кажется сложным, хотя он простой · 2. Git — это key-value хранилище, адресуемое содержимым · 3. Четыре типа объектов — и больш","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Почему Git кажется сложным, как устроена его модель данных — объекты, DAG и ссылки, — как из неё выводятся все команды, …","t":"Git: карта трека и модель данных вместо заучивания команд","u":"/post/git/00-overview/","w":"2026-07-16"},{"b":"GitHub Actions, GitLab CI, Drone и другие: сравнение современных платформ CI В предыдущей статье трека — Jenkins — мы разобрали классическую модель: отдельный сервер, который сам себе и планировщик, и веб-интерфейс, и ск…","c":"post","d":"devops","g":["devops","ci-cd","github actions","gitlab ci","инфраструктура"],"h":"Откуда взялась нынешняя архитектура · Общая модель: события, задания, DAG · GitHub Actions · GitLab CI/CD · Drone и Woodpecker: минимализм ·","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Разбираем устройство современных CI-платформ, пишем рабочие конфиги для GitHub Actions, GitLab CI и Woodpecker/Drone и ч…","t":"GitHub Actions, GitLab CI, Drone и другие: сравнение современных платформ CI","u":"/post/devops/03-modern-ci-platforms/","w":"2026-07-16"},{"b":"Go в жизненном цикле разработки (SDLC) Мы прошли путь от Hello, world до наблюдаемого сервиса в контейнере. В финальной главе соберём всё в единый жизненный цикл — от требований до эксплуатации — и посмотрим, какие практ…","c":"post","d":"golang","g":["go","sdlc","ci/cd","безопасность","зависимости","ресурсы"],"h":"Go на каждом этапе SDLC · Пример пайплайна CI/CD · Стратегия релизов и версионирование · Безопасность цепочки поставок зависимостей · Наблюд","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Как Go живёт в жизненном цикле разработки: пайплайн CI/CD, стратегия релизов, безопасность цепочки поставок и курированн…","t":"Go в SDLC: CI/CD, релизы, безопасность зависимостей и лучшие ресурсы","u":"/post/golang/08-sdlc-and-best-blogs/","w":"2026-07-16"},{"b":"Go-to-market и запуск: от позиционирования до раскатки Есть распространённое заблуждение, что запуск — это день, когда код оказался в проде и вышел пост в блоге. На практике день релиза почти ничего не решает: продукты у…","c":"post","d":"product-management","g":["продукт","go-to-market","запуск","каналы","рост"],"h":"1. GTM и запуск: две разные вещи · 1.1. Что входит в GTM · 1.2. Релиз, запуск и раскатка — три разных события · 2. Уровни запуска: не всё за","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Чем запуск отличается от релиза: уровни запуска, сообщение и PR/FAQ, экономика каналов и распределение бюджета при убыва…","t":"Go-to-market и запуск: от позиционирования до раскатки","u":"/post/product-management/10-go-to-market-and-launch/","w":"2026-07-16"},{"b":"Go: язык для больших систем и маленьких бинарников Go (часто пишут «Golang», потому что домен golang.org, но правильное имя — просто Go) — это компилируемый язык со сборкой мусора, статической типизацией и встроенной мод…","c":"post","d":"golang","g":["go","обзор","дорожная карта","экосистема","языки программирования"],"h":"Аналогия: Go как хороший заводской конвейер · Что «маленький язык» значит на практике · Что Go делает хорошо (и где он король) · Go на фоне ","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Философия Go, ниши применения, зачем он нужен и как устроен этот курс от нуля до продакшена.…","t":"Go: обзор языка и дорожная карта курса","u":"/post/golang/00-overview/","w":"2026-07-16"},{"b":"Google Cloud, Yandex Cloud и другие облака: чем отличаются и когда их берут В https://courses.digitable.life/post/devops/11-aws/ мы разобрали AWS как эталон — не потому что он лучший, а потому что он задал словарь, котор…","c":"post","d":"devops","g":["devops","gcp","yandex cloud","облака","инфраструктура","стоимость"],"h":"Google Cloud: другая модель тех же вещей · Иерархия ресурсов: проект вместо аккаунта · Сеть: VPC глобальна — и это меняет архитектуру · Вычи","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Модель ресурсов и сети GCP, экономика Cloud Run и BigQuery, устройство Yandex Cloud и юрисдикционные ограничения, Oracle…","t":"Google Cloud, Yandex Cloud и другие облака: чем отличаются и когда их берут","u":"/post/devops/13-gcp-and-others/","w":"2026-07-16"},{"b":"GTD Дэвида Аллена целиком: пять шагов, контексты, честный разбор GTD — самая известная персональная система организации работы и одновременно самая неправильно понятая. Половина людей считает, что это «список дел с тегам…","c":"post","d":"time-management","g":["тайм-менеджмент","gtd","продуктивность","планирование","рабочие процессы"],"h":"Откуда взялся метод · Модель внутри: «разум как вода» · Что говорит наука · Пять шагов · 1. Зафиксировать · 2. Прояснить · Правило двух мину","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Полный разбор Getting Things Done: откуда метод взялся, как устроены пять шагов и семь списков, как адаптировать контекс…","t":"GTD Дэвида Аллена целиком: пять шагов, контексты, честный разбор","u":"/post/time-management/03-gtd/","w":"2026-07-16"},{"b":"Helm, Kustomize и GitOps: ArgoCD и Flux В https://courses.digitable.life/post/devops/06-kubernetes/ мы разобрали объекты Kubernetes, а в https://courses.digitable.life/post/devops/07-k3s-and-lightweight/ — где взять клас…","c":"post","d":"devops","g":["devops","kubernetes","gitops","helm","ci/cd"],"h":"Три способа получить YAML для конкретной среды · Helm: пакетный менеджер, который ещё и хранит состояние · Структура чарта · Шаблон, который","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как перестать выкатывать в Kubernetes командой kubectl apply из CI: шаблонизация против наложения патчей, четыре принцип…","t":"Helm, Kustomize и GitOps: ArgoCD и Flux","u":"/post/devops/08-helm-and-gitops/","w":"2026-07-16"},{"b":"HTTP: методы, коды, заголовки, кэширование, эволюция 1.1 → 2 → 3 HTTP — самый успешный протокол в истории и одновременно самый недопонятый. Его учат по шпаргалке «GET читает, POST пишет, 404 не найдено» и на этом останав…","c":"post","d":"networking","g":["сети","http","кэширование","производительность","диагностика"],"h":"Анатомия сообщения · Методы: три свойства, из которых следует всё · Коды состояния: как выбрать правильный · Заголовки, которые действительн","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Полный разбор HTTP как инженерного инструмента: анатомия сообщения до байта, семантика методов и кодов, заголовки, котор…","t":"HTTP: методы, коды, заголовки, кэширование, эволюция 1.1 → 2 → 3","u":"/post/networking/06-http/","w":"2026-07-16"},{"b":"IaaS, PaaS, SaaS, FaaS: где кончается ваша ответственность Вторник, 11:40. Миграция выкатилась не на тот стенд и снесла таблицу payments в проде. Инженер пишет в чат: «Не паникуем, у нас managed-Postgres, бэкапы делает п…","c":"post","d":"software-distribution","g":["поставка софта","облако","iaas","paas","saas","serverless"],"h":"Уровень — это не технология, а линия в стеке · Уровень потребления и модель поставки — разные оси · Один и тот же сервис на четырёх уровнях ","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Уровень облака — это не мода и не технология, а линия в стеке: кто платит за слой, кого будят в три ночи и кто отвечает …","t":"IaaS, PaaS, SaaS, FaaS: где кончается ваша ответственность","u":"/post/software-distribution/02-cloud-layers/","w":"2026-07-16"},{"b":"IoT-связь: Wi-Fi, BLE, LoRa, MQTT, безопасность устройств Главный сдвиг: связь — это расход энергии, а не вызов функции На сервере отправка запроса — это write() в сокет: микросекунды процессорного времени, канал всегда …","c":"post","d":"embedded","g":["встраиваемые системы","iot","mqtt","ble","безопасность"],"h":"Главный сдвиг: связь — это расход энергии, а не вызов функции · Ось выбора: дальность, скорость, энергия — выбирайте два · Радиолиния до вся","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Как выбирать радио под задачу, во что обходится каждый байт в эфире, как устроены BLE и LoRaWAN изнутри, почему MQTT ста…","t":"IoT-связь: Wi-Fi, BLE, LoRa, MQTT, безопасность устройств","u":"/post/embedded/08-iot-connectivity/","w":"2026-07-16"},{"b":"IP и маршрутизация: адресация, подсети, IPv6, таблицы маршрутов, BGP На канальном уровне мы научились доставлять кадр соседу по проводу: MAC-адрес, ARP, коммутатор, широковещательный домен. Дальше начинается проблема, ко…","c":"post","d":"networking","g":["сети","ip","маршрутизация","bgp","ipv6"],"h":"Задача, которую решает IP · Дейтаграмма изнутри · Адрес — это 32 бита, а не четыре числа · Специальные диапазоны · От классов к CIDR: истори","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Как 32 бита превращаются в решение «куда отправить пакет»: разбор заголовка, битовая арифметика подсетей, таблицы маршру…","t":"IP и маршрутизация: адресация, подсети, IPv6, таблицы маршрутов, BGP","u":"/post/networking/02-ip-and-routing/","w":"2026-07-16"},{"b":"Java в SDLC: CI/CD, зависимости, безопасность и лучшие ресурсы Четырнадцать статей назад мы начинали с public static void main. К этому моменту вы умеете писать код, который компилируется, тестируется, работает под нагру…","c":"post","d":"java","g":["java","sdlc","ci/cd","безопасность","зависимости"],"h":"Ритм платформы: почему обновление JDK — это процесс, а не задача · Карта: где в жизненном цикле стоят ворота · Сборка в CI: воспроизводимост","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как Java-проект живёт в жизненном цикле разработки: воспроизводимая сборка в CI, управление глубоким деревом зависимосте…","t":"Java в SDLC: CI/CD, зависимости, безопасность и лучшие ресурсы","u":"/post/java/15-sdlc-and-resources/","w":"2026-07-16"},{"b":"Java: обзор языка, платформы JVM и дорожная карта курса Java — редкий случай, когда язык проще всего объяснить через задачу, которую он решал. В начале 1990-х Sun пыталась писать софт для бытовой электроники: приставки, …","c":"post","d":"java","g":["java","jvm","backend","gc","roadmap"],"h":"Три разные вещи, которые называют словом «Java» · Путь от исходника до машинного кода · Первая программа: сколько её осталось от учебника 20","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Что такое современная Java 21/25, как устроена JVM от байткода до сборщика мусора, где язык честно выигрывает и где прои…","t":"Java: обзор языка, платформы JVM и дорожная карта курса","u":"/post/java/00-overview/","w":"2026-07-16"},{"b":"Jenkins: архитектура, Jenkinsfile, агенты, плагины и когда он всё ещё уместен Про Jenkins принято говорить в прошедшем времени. При этом он продолжает крутить сборки в банках, телекоме, автопроме и у половины энтерпрайза…","c":"post","d":"devops","g":["devops","ci-cd","jenkins","автоматизация сборки","kubernetes"],"h":"Откуда он взялся и почему это важно для понимания архитектуры · Архитектура: контроллер, агенты, executors · Как агент подключается — и поче","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Разбираем Jenkins изнутри: контроллер и агенты, Declarative Pipeline, эфемерные агенты в Kubernetes, Configuration as Co…","t":"Jenkins: архитектура, Jenkinsfile, агенты, плагины и когда он всё ещё уместен","u":"/post/devops/02-jenkins/","w":"2026-07-16"},{"b":"JetBrains IDE: индексация, рефакторинги, инспекции, когда они окупаются Спор «IDE против редактора» почти всегда ведут не о том. Обсуждают потребление памяти, скорость запуска и цену лицензии — то есть издержки. А продук…","c":"post","d":"editors","g":["редакторы","ide","jetbrains","рефакторинг","статический анализ"],"h":"1. Что вообще строит IntelliJ Platform · 2. Жизненный цикл индексации и dumb mode · Как измерить и ускорить индексацию у себя · 3. Рефактори","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Как устроена модель кода в IntelliJ Platform, почему рефакторинги там надёжнее текстовых, что реально стоит индексация, …","t":"JetBrains IDE: индексация, рефакторинги, инспекции, когда они окупаются","u":"/post/editors/06-jetbrains/","w":"2026-07-16"},{"b":"JIT-компиляция: профилирование, горячие пути, деоптимизация В прошлой статье мы построили виртуальную машину: байткод, диспетчер, стек кадров. Она работает, она портируема, она отлаживается — и она в десятки раз медленне…","c":"post","d":"compilers","g":["компиляторы","jit","виртуальные машины","оптимизация","рантайм"],"h":"Сколько на самом деле стоит интерпретация · Экономика: когда компиляция окупается · Профилирование: как найти горячее · Baseline JIT: убирае","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Почему компилятор, работающий во время исполнения, может обогнать статический: счётчики и горячие пути, обратная связь п…","t":"JIT-компиляция: профилирование, горячие пути, деоптимизация","u":"/post/compilers/11-jit/","w":"2026-07-16"},{"b":"JVM изнутри: байткод, области памяти, сборщики мусора, JIT Есть простая проверка, отличающая Java-разработчика от человека, который «пишет на Java». Спросите, почему сервис с флагом -Xmx1g был убит в контейнере с лимитом…","c":"post","d":"java","g":["java","jvm","gc","производительность","память"],"h":"Задача, которую решает JVM · Часть 1. Байткод: что на самом деле исполняется · Анатомия .class-файла · Стековая машина в действии · Пять инс","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как устроена виртуальная машина, на которой работает ваш код: от структуры .class-файла и стековых инструкций до TLAB, п…","t":"JVM изнутри: байткод, области памяти, сборщики мусора, JIT","u":"/post/java/08-jvm-and-memory/","w":"2026-07-16"},{"b":"JWT и токены: устройство, подпись, срок жизни, отзыв и когда JWT не нужен Токен — это предъявляемое доказательство того, что кто-то уже прошёл проверку. Пользователь ввёл пароль и второй фактор один раз (как это делается…","c":"post","d":"security","g":["безопасность","jwt","токены","аутентификация","api"],"h":"Токен как понятие: два принципиально разных предмета · Семейство JOSE: кто за что отвечает · Устройство: три части, две из которых подписаны","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как устроен JWT изнутри, какие проверки обязательны при верификации, почему stateless-токен плохо отзывается, как делать…","t":"JWT и токены: устройство, подпись, срок жизни, отзыв и когда JWT не нужен","u":"/post/security/07-jwt-and-tokens/","w":"2026-07-16"},{"b":"k ближайших соседей и наивный байесовский классификатор Эти два алгоритма ставят рядом не случайно. Они — противоположные полюса того, как вообще можно строить классификатор, и понимание этой оппозиции даёт каркас для вс…","c":"post","d":"machine-learning","g":["машинное обучение","классификация","knn","наивный байес","метрики расстояния"],"h":"Часть I. Метод k ближайших соседей · Интуиция: «скажи мне, кто твой сосед» · Формально · Выбор k: bias-variance в чистом виде · Метрика — эт","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Два простейших и при этом до сих пор рабочих алгоритма: ленивый непараметрический kNN и генеративный наивный Байес — от …","t":"k ближайших соседей и наивный байесовский классификатор","u":"/post/machine-learning/04-knn-and-naive-bayes/","w":"2026-07-16"},{"b":"k3s, k0s, MicroK8s и лёгкие дистрибутивы Kubernetes: где они выигрывают В предыдущей статье — https://courses.digitable.life/post/devops/06-kubernetes/ — мы разобрали Kubernetes целиком: apiserver, etcd, контроллеры, сет…","c":"post","d":"devops","g":["devops","kubernetes","k3s","инфраструктура","edge"],"h":"Из чего складывается «вес» ванильного Kubernetes · Что именно делает k3s: четыре решения · Решение 1: всё в одном процессе · Решение 2: kine","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Что именно вырезают лёгкие дистрибутивы Kubernetes, чем за это платят, и как выбрать между k3s, k0s, MicroK8s, RKE2, Tal…","t":"k3s, k0s, MicroK8s и лёгкие дистрибутивы Kubernetes: где они выигрывают","u":"/post/devops/07-k3s-and-lightweight/","w":"2026-07-16"},{"b":"Kanban и управление потоком: WIP, cycle time, диаграммы Большинство команд, которые «перешли на Kanban», просто повесили доску «To Do → In Progress → Done» и перестали делать спринты. Через полгода задачи всё так же тяну…","c":"post","d":"project-management","g":["управление проектами","kanban","метрики потока","lean"],"h":"Часть 1. Интуиция: почему поток важнее загрузки · Часть 2. Шесть практик и доска как модель процесса · Часть 3. WIP-лимиты: главный рычаг · ","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Как работает поточное управление: WIP-лимиты, закон Литтла, cycle time и его процентили, CFD и scatterplot, вероятностны…","t":"Kanban и управление потоком: WIP, cycle time, диаграммы","u":"/post/project-management/02-kanban-and-flow/","w":"2026-07-16"},{"b":"Kubernetes: архитектура, объекты, сеть, хранилища, автоскейлинг и эксплуатация В предыдущей статье — https://courses.digitable.life/post/devops/05-containers-and-registries/ — мы собрали образ, уменьшили его, подписали и…","c":"post","d":"devops","g":["devops","kubernetes","контейнеры","оркестрация","инфраструктура"],"h":"Главная идея: цикл согласования, а не «система команд» · Архитектура: что из чего состоит · Что происходит после kubectl apply · Объекты: ка","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как Kubernetes устроен изнутри — от цикла согласования и etcd до CNI, CSI и HPA — с рабочими манифестами, командами отла…","t":"Kubernetes: архитектура, объекты, сеть, хранилища, автоскейлинг и эксплуатация","u":"/post/devops/06-kubernetes/","w":"2026-07-16"},{"b":"Lean и бережливое производство в разработке: поток, потери, вытягивание Про Lean в IT обычно рассказывают в двух режимах. Первый: «японцы придумали убирать лишнее, давайте тоже уберём лишнее» — после чего сокращают тести…","c":"post","d":"project-management","g":["управление проектами","lean","метрики потока","kanban"],"h":"Часть 1. Родословная: что именно изобрели в Toyota · Часть 2. Два столпа: точно вовремя и дзидока · Часть 3. Пять принципов Lean Thinking — ","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Откуда взялся Lean, как устроены его два столпа, что такое потери и почему их семь, как рисовать карту потока создания ц…","t":"Lean и бережливое производство в разработке: поток, потери, вытягивание","u":"/post/project-management/09-lean/","w":"2026-07-16"},{"b":"Linux для программиста: базовый курс всего необходимого Есть два способа знать Linux. Первый — знать команды: выучить сотню утилит и гуглить остальное. Второй — знать модель: понимать, из каких сущностей состоит система …","c":"post","d":"operating-systems","g":["операционные системы","linux","процессы","файловые дескрипторы","systemd"],"h":"Карта: что вообще нужно знать · Всё есть файл, но интересное — дескриптор · Буферизация stdio: главный «мистический» баг · Процесс: рождение","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Минимальная, но честная модель Linux для прикладного разработчика: дескрипторы и наследование, права и владельцы, процес…","t":"Linux для программиста: базовый курс всего необходимого","u":"/post/operating-systems/12-linux-for-developers/","w":"2026-07-16"},{"b":"Merge и rebase: как работают на самом деле и что выбрать команде Есть два способа объяснить разницу между merge и rebase. Первый — картинками с цветными кружочками и словами «merge сохраняет историю, rebase делает её лин…","c":"post","d":"git","g":["git","merge","rebase","конфликты","процессы"],"h":"Задача, которую решают обе команды · Трёхпутевое слияние: почему нужна база · Алгоритм построчного слияния · Fast-forward: слияния не было ·","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Merge создаёт один коммит с двумя родителями и не трогает ничего существующего; rebase создаёт новые коммиты с новыми ид…","t":"Merge и rebase: как работают на самом деле и что выбрать команде","u":"/post/git/04-merge-and-rebase/","w":"2026-07-16"},{"b":"Microsoft Azure: сервисы, интеграция с .NET-миром, AKS, сравнение с AWS В https://courses.digitable.life/post/devops/11-aws/ мы разобрали AWS как модель: аккаунт — граница взрыва, регион — независимая плоскость управлени…","c":"post","d":"devops","g":["devops","azure","облака","kubernetes","стоимость"],"h":"Каркас: тенант, management group, подписка, resource group · Entra ID, RBAC и managed identity: где ломаются мозги после AWS · AKS с рабочей","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как устроен Azure: иерархия подписок, Entra ID и managed identity, сеть и её счёт, AKS вглубь, passwordless-интеграция с…","t":"Microsoft Azure: сервисы, интеграция с .NET-миром, AKS, сравнение с AWS","u":"/post/devops/12-azure/","w":"2026-07-16"},{"b":"Microsoft SQL Server и Oracle: корпоративный мир, лицензии, особенности Если предыдущие статьи трека были про движки, которые вы просто скачиваете и запускаете, то здесь всё иначе. Oracle Database и Microsoft SQL Server …","c":"post","d":"databases","g":["базы данных","oracle","sql server","лицензии","производительность"],"h":"Зачем вообще существует «корпоративная СУБД» · Два мира на одной карте · Oracle Database: как он устроен · Instance и database — разные вещи","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Архитектура Oracle Database и Microsoft SQL Server, их отличия от открытых СУБД, честный разбор лицензий и стоимости вла…","t":"Microsoft SQL Server и Oracle: корпоративный мир, лицензии, особенности","u":"/post/databases/04-ms-sql-and-oracle/","w":"2026-07-16"},{"b":"MLOps: от эксперимента до продакшена Четырнадцать статей трека были про то, как получить хорошую модель. Эта — про то, почему хорошая модель сама по себе почти ничего не стоит. Классическая иллюстрация из статьи Google «…","c":"post","d":"machine-learning","g":["машинное обучение","mlops","продакшен","мониторинг","инфраструктура"],"h":"Чем ML-система отличается от обычного сервиса · Уровни зрелости: куда вы двигаетесь · Часть 1. Воспроизводимость · Что именно нужно зафиксир","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Как ноутбук с 0.91 AUC превращается в систему, которая держит нагрузку, переобучается сама и не разваливается через меся…","t":"MLOps: от эксперимента до продакшена","u":"/post/machine-learning/15-mlops/","w":"2026-07-16"},{"b":"Model Context Protocol: зачем нужен, архитектура, серверы, инструменты и ресурсы В статье про агентов и ReAct мы дошли до момента, где агент умеет вызывать инструменты. Дальше начинается скучная инженерия: инструментов н…","c":"post","d":"ai-engineering","g":["ии-инженерия","mcp","агенты","инструменты","интеграции"],"h":"1. Проблема: M × N против M + N · 2. Архитектура: хост, клиент, сервер · 3. Жизненный цикл соединения · 4. Транспорты: stdio против Streamab","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Разбор MCP от первых принципов: почему M×N интеграций не масштабируются, как устроен JSON-RPC-протокол, чем ресурсы отли…","t":"Model Context Protocol: зачем нужен, архитектура, серверы, инструменты и ресурсы","u":"/post/ai-engineering/09-mcp/","w":"2026-07-16"},{"b":"MongoDB и документные БД: модель, агрегации, транзакции, подводные камни MongoDB — самая неправильно понятая база данных индустрии. Её продавали как «БД без схемы, которая масштабируется», покупали как «Postgres, но не н…","c":"post","d":"databases","g":["базы данных","mongodb","nosql","документные бд","шардирование"],"h":"Документ как единица агрегации · BSON, а не JSON · Схема есть всегда. Вопрос — где она записана · Главное решение проекта: embed или referen","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Документная модель от первых принципов: BSON и WiredTiger, проектирование схемы через embed/reference, индексы и explain…","t":"MongoDB и документные БД: модель, агрегации, транзакции, подводные камни","u":"/post/databases/10-mongodb/","w":"2026-07-16"},{"b":"MVP, гипотезы и A/B-эксперименты Есть ровно два способа узнать, работает ли продуктовая идея: построить её целиком и посмотреть — или построить минимальный кусок, который даёт тот же ответ, и посмотреть раньше. Вся эта с…","c":"post","d":"product-management","g":["продукт","эксперименты","a/b-тесты","mvp","статистика"],"h":"1. Зачем: цена непроверенного решения · 1.1. Базовый факт индустрии · 1.2. Формула, из которой всё выводится · 1.3. Контур Build–Measure–Lea","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Как проверять продуктовые идеи дёшево и честно: MVP как инструмент обучения, фальсифицируемые гипотезы, статистика A/B-т…","t":"MVP, гипотезы и A/B-эксперименты","u":"/post/product-management/05-mvp-and-experiments/","w":"2026-07-16"},{"b":"MySQL и MariaDB: InnoDB, репликация, различия форков MySQL победила не техническим превосходством, а доступностью: в 2000-х это была единственная СУБД, которую можно поставить на дешёвый хостинг за пять минут. Вокруг неё…","c":"post","d":"databases","g":["базы данных","mysql","mariadb","innodb","репликация"],"h":"Развилка: откуда взялись форки · Архитектура: сервер отдельно, хранилище отдельно · InnoDB изнутри · Кластерный индекс: таблица и есть индек","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Как устроен InnoDB изнутри, чем MVCC в MySQL отличается от PostgreSQL, как работает репликация и GTID, и в чём реальная …","t":"MySQL и MariaDB: InnoDB, репликация, различия форков","u":"/post/databases/03-mysql-and-mariadb/","w":"2026-07-16"},{"b":"NAT, фаерволы и VPN: почему «у меня работает, а у клиента нет» Есть фраза, после которой инженер теряет полдня: «у меня всё открывается». Сервис поднят, тесты зелёные, curl с ноутбука отвечает 200. А у клиента — вечная к…","c":"post","d":"networking","g":["сети","nat","фаервол","vpn","диагностика"],"h":"Симптом — это не диагноз · NAT: один адрес, таблица в памяти и потерянная адресуемость · Жизненный цикл записи и «молчаливая смерть» соедине","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Три механизма, которые превращают рабочий сервис в «у меня всё открывается»: трансляция адресов с её таблицей состояний,…","t":"NAT, фаерволы и VPN: почему «у меня работает, а у клиента нет»","u":"/post/networking/12-nat-firewalls-vpn/","w":"2026-07-16"},{"b":"Neovim и конфигурация: Lua, LSP, Treesitter, плагины, разбор реальных dotfiles В прошлой статье мы разобрали Vim как язык редактирования: регистры, макросы, текстовые объекты, quickfix. Всё это работает в Neovim без един…","c":"post","d":"editors","g":["редакторы","neovim","vim","lua","lsp","dotfiles"],"h":"Что произошло в 2014 году · Архитектура: ядро, RPC, клиенты · Почему Lua · Скелет конфигурации · Менеджеры плагинов и ленивая загрузка · LSP","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Почему Neovim отделился от Vim, как устроены Lua-конфиг, встроенный LSP-клиент и Treesitter, как собрать init.lua с лени…","t":"Neovim и конфигурация: Lua, LSP, Treesitter, плагины, разбор реальных dotfiles","u":"/post/editors/03-neovim-and-config/","w":"2026-07-16"},{"b":"NewSQL и распределённые БД: CockroachDB, YugabyteDB, TiDB, Spanner К 2010 году индустрия пришла к неприятной развилке. Данных стало больше, чем помещается в один сервер, и выбор был из двух вариантов, оба плохие. Вариант…","c":"post","d":"databases","g":["базы данных","newsql","распределённые системы","cockroachdb","tidb","транзакции"],"h":"Родословная: откуда что взялось · Общая анатомия: три слоя, которые есть у всех · Как устроен диапазон · Время: почему это вообще сложная за","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Как устроены распределённые SQL-базы изнутри: кодирование таблиц в упорядоченное KV, Raft-группы на диапазон, гибридные …","t":"NewSQL и распределённые БД: CockroachDB, YugabyteDB, TiDB, Spanner","u":"/post/databases/18-newsql-and-distributed/","w":"2026-07-16"},{"b":"NoSQL: таксономия, CAP, BASE и когда реляционка не подходит Восемь предыдущих статей трека были про один класс систем. Реляционная модель, SQL, PostgreSQL, MySQL, коммерческие гиганты, встраиваемые движки, индексы, транз…","c":"post","d":"databases","g":["базы данных","nosql","cap","распределённые системы","консистентность"],"h":"Откуда это взялось: короткая честная история · Чем NoSQL на самом деле отличается — и чем нет · Ключевая идея: агрегат · Таксономия: восемь ","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Честная карта NoSQL-мира: агрегатная модель данных, строгая формулировка CAP и PACELC, спектр консистентности, кворумы и…","t":"NoSQL: таксономия, CAP, BASE и когда реляционка не подходит","u":"/post/databases/09-nosql-landscape/","w":"2026-07-16"},{"b":"NP-полнота, приближённые и эвристические алгоритмы Есть особый момент в жизни инженера: задача сформулирована, вход маленький, а решения нет. Вы пробуете жадность — она ломается на контрпримере. Пробуете динамику — состо…","c":"post","d":"algorithms","g":["алгоритмы","np-полнота","приближённые алгоритмы","оптимизация","эвристики"],"h":"Часть I. Что значит «задача трудна» · Задачи разрешения, а не оптимизации · P, NP и верификаторы · Сведение: главный инструмент · Теорема Ку","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Что значит «задача трудна», как это доказать сведением, и что делать дальше: точные методы, приближения с гарантией, FPT…","t":"NP-полнота, приближённые и эвристические алгоритмы","u":"/post/algorithms/15-np-and-approximation/","w":"2026-07-16"},{"b":"OAuth 2.0 и OpenID Connect: потоки, PKCE, типичные ошибки внедрения В середине 2000-х, чтобы сервис печати фотографий забрал ваши снимки с фотохостинга, вы вводили в его форму логин и пароль от фотохостинга. Это работало…","c":"post","d":"security","g":["безопасность","oauth","oidc","аутентификация","токены"],"h":"Правила игры · Роли, токены и главный водораздел · Карта спецификаций: как стандарт учился на ошибках · Authorization code + PKCE: единствен","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как устроено делегирование доступа и вход через провайдера: роли и токены, authorization code с PKCE, почему остальные п…","t":"OAuth 2.0 и OpenID Connect: потоки, PKCE, типичные ошибки внедрения","u":"/post/security/06-oauth-and-oidc/","w":"2026-07-16"},{"b":"OWASP Top 10: что это, как читать и что делать с каждым пунктом Почти в каждом требовании к безопасности продукта есть строчка «соответствие OWASP Top 10», и почти всегда она означает разное для того, кто её написал, и д…","c":"post","d":"security","g":["безопасность","owasp","уязвимости","appsec"],"h":"Что такое OWASP и что такое Top 10 · Как собирают список: данные, CWE и два «народных» пункта · Немного истории: что менялось от 2003 к 2025","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как собирается и как читается список OWASP Top 10, почему он не чеклист и не стандарт, и что конкретно делать по каждой …","t":"OWASP Top 10: что это, как читать и что делать с каждым пунктом","u":"/post/security/02-owasp-top-10/","w":"2026-07-16"},{"b":"Phoenix LiveView: UI, живущий в процессе Обычный веб-фреймворк рендерит HTML и забывает о клиенте. SPA переносит состояние в браузер и платит за это дублированием логики, отдельным API и целым фронтенд-стеком. LiveView п…","c":"post","d":"elixir","g":["elixir","phoenix","liveview","реалтайм","веб"],"h":"Как это работает: два рендера и один процесс · assigns и отслеживание изменений · События: handle_event, handle_info, handle_params · Долгие","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Как устроен LiveView: двойной mount, assigns и отслеживание изменений, диффы вместо HTML, streams для больших коллекций,…","t":"Phoenix LiveView: интерактивный UI с состоянием на сервере","u":"/post/elixir/10-liveview-realtime/","w":"2026-07-16"},{"b":"Phoenix изнутри: веб-слой Elixir В главе Архитектура и продакшн Phoenix упоминался одним абзацем: «основной веб-фреймворк, навязывающий здоровые границы». Этого мало. Phoenix — то, ради чего большинство людей приходит в …","c":"post","d":"elixir","g":["elixir","phoenix","веб","http","websocket"],"h":"Plug: свёртка над соединением · Анатомия %Plug.Conn{} · Endpoint: вершина цепочки · Роутер: pipelines и scopes · Контроллеры и action_fallba","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Веб-слой Elixir с первых принципов: conn как неизменяемая структура, композиция Plug, устройство Endpoint и роутера, кон…","t":"Phoenix изнутри: Plug, Endpoint, роутер, контроллеры, HEEx и каналы","u":"/post/elixir/09-phoenix-web/","w":"2026-07-16"},{"b":"PMBOK: от 49 процессов и 10 областей знаний к 12 принципам и 8 доменам PMBOK (Project Management Body of Knowledge) — попытка собрать и описать все известные человечеству знания в области управления проектами. У этого за…","c":"post","d":"management","g":["менеджмент","управление проектами","стандарты","процессы","риски"],"h":"1. Кто издаёт и как он менялся · 2. Основная концепция: матрица процессов · 3. ITTO: входы, инструменты и методы, выходы · Разбор одного про","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Свод знаний PMI целиком: почему это энциклопедия, а не методология, как устроена матрица из пяти групп процессов и десят…","t":"PMBOK: от 49 процессов и 10 областей знаний к 12 принципам и 8 доменам","u":"/post/management/04-pmbok/","w":"2026-07-16"},{"b":"PostgreSQL: возможности, индексы, MVCC, расширения, эксплуатация PostgreSQL — это то, что вы берёте по умолчанию, если не доказали обратное. Формулировка звучит как реклама, но за ней стоит инженерная логика: PostgreSQL …","c":"post","d":"databases","g":["базы данных","postgresql","sql","индексы","mvcc"],"h":"Откуда он взялся и почему это важно · Архитектура: процессы, а не потоки · Как физически лежат данные · MVCC: главный компромисс PostgreSQL ","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Как устроен PostgreSQL изнутри — хранение, MVCC и VACUUM, WAL, планировщик и шесть типов индексов — и что из этого следу…","t":"PostgreSQL: возможности, индексы, MVCC, расширения, эксплуатация","u":"/post/databases/02-postgresql/","w":"2026-07-16"},{"b":"PRINCE2: семь принципов, семь тем, семь процессов и управление по отклонениям PMBOK отвечает на вопрос «что вообще бывает в управлении проектами»: это свод знаний, энциклопедия практик, из которой организация собирает св…","c":"post","d":"management","g":["менеджмент","управление проектами","стандарты","методологии","процессы"],"h":"1. Откуда он взялся · 2. Три интереса: почему проектом не может управлять один человек · 3. Шесть аспектов исполнения · 4. Семь принципов · ","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Британский стандарт управления проектами целиком: от PROMPT до PRINCE2 7, семь принципов, семь тем и семь процессов, Pro…","t":"PRINCE2: семь принципов, семь тем, семь процессов и управление по отклонениям","u":"/post/management/05-prince2/","w":"2026-07-16"},{"b":"Product management: чем занимается продакт и карта трека Продуктовый менеджер — не «главный по задачам в Jira», не «менеджер, который носит требования от бизнеса к разработке» и не «мини-CEO». Роль существует ради одного…","c":"post","d":"product-management","g":["продукт","продуктовый менеджмент","discovery","метрики","приоритизация"],"h":"1. Проблема: почему без продакта не работает · 1.1. Базовый факт индустрии · 1.2. Что бывает без этой функции: фабрика фич · 1.3. Экономика ","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Что такое продуктовый менеджмент по существу: какую проблему решает роль, чем продакт отличается от проджекта и владельц…","t":"Product management: чем занимается продакт и карта трека","u":"/post/product-management/00-overview/","w":"2026-07-16"},{"b":"Python: обзор языка, экосистема и дорожная карта курса Этот трек — не про то, «как написать первый цикл». Основы программирования на Python уже разобраны в курсе «Программирование с нуля», и если вы ещё не различаете спи…","c":"post","d":"python","g":["python","cpython","экосистема","модель данных","дорожная карта"],"h":"Язык, реализация и почему их важно различать · Модель исполнения: что происходит между файлом и результатом · Главная идея языка: всё есть о","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как устроен Python как язык и как рантайм: модель исполнения, «всё есть объект», протоколы, философия, честные границы п…","t":"Python: обзор языка, экосистема и дорожная карта курса","u":"/post/python/00-overview/","w":"2026-07-16"},{"b":"RAD, спиральная модель, RUP и итеративные подходы: наследие и что осталось Существует удобная легенда: до 2001 года индустрия страдала под гнётом водопада, потом собрались семнадцать человек в Сноуберде, написали манифес…","c":"post","d":"project-management","g":["управление проектами","методологии","итеративная разработка","rup","управление рисками"],"h":"Часть 1. Миф о водопаде · 1.1. Что на самом деле написал Ройс · 1.2. Почему водопад всё-таки победил — на бумаге · 1.3. Итеративность была в","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Честная археология доагильных итеративных процессов: что на самом деле написал Ройс, как работает спираль Боэма, почему …","t":"RAD, спиральная модель, RUP и итеративные подходы: наследие и что осталось","u":"/post/project-management/11-rad-and-iterative/","w":"2026-07-16"},{"b":"RAG, MCP и агенты Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 01:14:51 — отсюда взято содержание этой главы. До этого момента трек описывал модель как замкнутую систему: на входе текст, внутри веса, на выход…","c":"post","d":"ai-basics","g":["основы ии","rag","mcp","агенты","инструменты"],"h":"Три способа выйти за пределы весов · Почему нельзя просто дообучить модель · RAG: не «флешка», а поиск под конкретный вопрос · Конвейер по ш","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Три способа вывести модель за пределы её весов: поиск по вашим документам и подстановка найденного в промпт, единый прот…","t":"RAG, MCP и агенты","u":"/post/ai-basics/13-rag-mcp-agents/","w":"2026-07-16"},{"b":"RAG: чанкинг, эмбеддинги, гибридный поиск, реранжирование, оценка качества Модель знает всё, что было в обучающих данных, и ничего — про ваш вчерашний инцидент, внутренний регламент отпусков и таблицу тарифов, которую по…","c":"post","d":"ai-engineering","g":["ии-инженерия","rag","поиск","эмбеддинги","llm"],"h":"1. Когда RAG нужен, а когда — нет · 2. Архитектура: два пайплайна, а не один · 3. Парсинг: этап, который все недооценивают · 4. Чанкинг · 4.","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Полный разбор классического RAG-пайплайна: как резать документы, как выбирать эмбеддинги и индекс, зачем нужен BM25 рядо…","t":"RAG: чанкинг, эмбеддинги, гибридный поиск, реранжирование, оценка качества","u":"/post/ai-engineering/05-rag/","w":"2026-07-16"},{"b":"React: компоненты, JSX, состояние, жизненный цикл, реконсиляция В предыдущей статье мы собрали проект: Vite, модули, code splitting. Теперь — что именно мы собираем. React занимает в вакансиях и репозиториях место, несор…","c":"post","d":"frontend","g":["frontend","react","javascript","производительность","компоненты"],"h":"Задача: императивный DOM не масштабируется · JSX: не HTML, не шаблон, а вызовы функций · Компонент: функция из props в элементы · Композиция","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Как React превращает JSX в DOM: элементы против компонентов, состояние как снимок, реконсиляция по key, дерево Fiber, фа…","t":"React: компоненты, JSX, состояние, жизненный цикл, реконсиляция","u":"/post/frontend/08-react-fundamentals/","w":"2026-07-16"},{"b":"README: первое, что видит новый человек Инженер выходит в новую команду. Ему выдают доступы и ссылку на репозиторий orders. Он клонирует его, открывает README.md и видит четыреста строк: логотип, восемь бейджей, раздел «…","c":"post","d":"technical-writing","g":["техническое письмо","документация","readme","onboarding","инженерная культура"],"h":"Три решения, ради которых открывают README · README — не документация, а диспетчер · Разные репозитории — разные README · Анатомия: порядок ","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"README отвечает на три вопроса за шестьдесят секунд — что это, как это запустить и к кому идти дальше; разбираем анатоми…","t":"README: первое, что видит новый человек","u":"/post/technical-writing/07-readme/","w":"2026-07-16"},{"b":"Redis: структуры данных, персистентность, кластер, паттерны кэширования Про Redis обычно говорят «это кэш». Это верно примерно так же, как «Python — это скриптовый язык для склейки»: формально не ложь, но описывает лишь …","c":"post","d":"databases","g":["базы данных","redis","кэширование","key-value","in-memory"],"h":"Однопоточная модель: источник и скорости, и всех проблем · Структуры данных: чем Redis отличается от Memcached · Внутренние кодировки: где ж","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Redis изнутри: однопоточный цикл событий, внутренние кодировки структур, честная цена RDB и AOF, репликация и Cluster с …","t":"Redis: структуры данных, персистентность, кластер, паттерны кэширования","u":"/post/databases/11-redis/","w":"2026-07-16"},{"b":"RFC и проектные документы: как выносить решение на обсуждение Инженер пишет двенадцать страниц про переход платёжного сервиса на очередь. Диаграммы, бенчмарки, сравнение четырёх брокеров. Документ уходит в общий канал в …","c":"post","d":"technical-writing","g":["техническое письмо","документация","коммуникация","инженерная культура","процессы"],"h":"Чем RFC отличается от соседних жанров · Откуда взялся жанр · Когда открыто окно: раньше нельзя, позже бесполезно · Нужен ли документ вообще ","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"RFC — не описание системы, а запрос на возражения до того, как они станут дорогими: когда открыто окно для такого докуме…","t":"RFC и проектные документы: как выносить решение на обсуждение","u":"/post/technical-writing/05-rfc/","w":"2026-07-16"},{"b":"RISC и CISC: спор, который закончился не победой, а смешением В предыдущей главе трека мы разобрали систему команд как контракт: набор регистров, форматы операций, режимы адресации, модель памяти и исключений — всё, на ч…","c":"post","d":"hardware","g":["железо","процессор","архитектура компьютера","x86","arm"],"h":"Откуда взялся спор: дорогая память и слабые компиляторы · VAX-11 как вершина этой логики · Что именно измерили в конце 1970-х · Канон RISC: ","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Откуда взялось противопоставление RISC и CISC, что реально измерили в конце 1970-х, почему x86 внутри перестал быть CISC…","t":"RISC и CISC: спор, который закончился не победой, а смешением","u":"/post/hardware/04-risc-vs-cisc/","w":"2026-07-16"},{"b":"RISC-V: открытая система команд и почему это важно В предыдущих главах трека мы установили две вещи. Первая: система команд — это контракт между железом и программой, а не описание внутренностей процессора (Система коман…","c":"post","d":"hardware","g":["железо","risc-v","система команд","архитектура процессора","открытые стандарты"],"h":"Что технически означает «открытая система команд» · Три разные модели владения · Чего открытость не даёт · Тогда почему это вообще важно · О","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Разбор RISC-V как инженерного объекта: базовый набор и расширения, форматы команд и почему биты лежат именно так, компро…","t":"RISC-V: открытая система команд и почему это важно","u":"/post/hardware/05-risc-v/","w":"2026-07-16"},{"b":"RPC и gRPC: протобуф, стриминг, сравнение с REST Идея RPC соблазнительно проста: пусть вызов чужой функции на другой машине выглядит как вызов своей. user := client.GetUser(ctx, id) — и всё, никаких сокетов, сериализации…","c":"post","d":"networking","g":["сети","grpc","rpc","protobuf","http2","api"],"h":"Сорок лет попыток · Protocol Buffers: схема, из которой растёт всё остальное · Байты на проводе · Эволюция схемы: что можно, чего нельзя · g","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Почему вызов по сети никогда не станет локальным вызовом, как устроен protobuf побайтово, как gRPC ложится на HTTP/2 с т…","t":"RPC и gRPC: протобуф, стриминг, сравнение с REST","u":"/post/networking/09-rpc-and-grpc/","w":"2026-07-16"},{"b":"RTOS: задачи, планировщик, синхронизация, FreeRTOS на практике Программисту «больших» машин слово «операционная система» обещает многое: изоляцию процессов, виртуальную память, файлы, драйверы, планировщик, который сам р…","c":"post","d":"embedded","g":["встраиваемые системы","rtos","freertos","многозадачность","реальное время"],"h":"Откуда берётся потребность: жизнь и смерть суперцикла · Что означает «реального времени» и чего RTOS не делает · Задача: стек плюс структура","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Зачем прошивке ядро реального времени, как устроен вытесняющий планировщик с фиксированными приоритетами, чем очередь лу…","t":"RTOS: задачи, планировщик, синхронизация, FreeRTOS на практике","u":"/post/embedded/06-rtos/","w":"2026-07-16"},{"b":"Rust: обзор языка, философия безопасности и дорожная карта курса Почти каждый язык программирования выбирает две вещи из трёх: контроль над памятью, безопасность и отсутствие тяжёлого рантайма. C и C++ берут контроль и о…","c":"post","d":"rust","g":["rust","системное программирование","безопасность памяти","владение","обзор"],"h":"Зачем это вообще понадобилось · Модель исполнения: где живут данные и кто их освобождает · Владение — это модель, а не список запретов · Оши","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Какую задачу решает Rust, почему владение и заимствование — это модель памяти, а не набор придирок компилятора, что язык…","t":"Rust: обзор языка, философия безопасности и дорожная карта курса","u":"/post/rust/00-overview/","w":"2026-07-16"},{"b":"Saga, распределённые транзакции, outbox и идемпотентность В монолите с одной базой оформление заказа выглядит так: открыли транзакцию, записали заказ, уменьшили остаток на складе, списали деньги с внутреннего баланса, за…","c":"post","d":"architecture-patterns","g":["архитектура","микросервисы","распределённые транзакции","надёжность","идемпотентность"],"h":"1. Что именно мы потеряли · 1.1. Как работает 2PC и где он ломается · 2. Сага: обмен отката на компенсацию · 2.1. Компенсация — не откат · 2","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Почему двухфазный коммит не спасает распределённую систему, как сага заменяет откат компенсацией, как transactional outb…","t":"Saga, распределённые транзакции, outbox и идемпотентность","u":"/post/architecture-patterns/06-saga-and-distributed-transactions/","w":"2026-07-16"},{"b":"SBSE на практике и связь с современными ИИ-подходами Восемь предыдущих статей трека были про механику: как закодировать решение, как посчитать фитнес, как устроены отжиг, генетические алгоритмы, NSGA-II, муравьи, EvoSuit…","c":"post","d":"sbse","g":["sbse","оптимизация","метаэвристики","llm","автоматизация тестирования"],"h":"Часть 1. Что реально работает в продакшене · Промышленный ландшафт: карта внедрений · Sapienz: канонический пример, разобранный по косточкам","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как поисковые методы реально живут в продакшене крупных компаний, как встроить SBSE в собственный процесс и почему LLM н…","t":"SBSE на практике и связь с современными ИИ-подходами","u":"/post/sbse/09-sbse-in-practice/","w":"2026-07-16"},{"b":"SBSE: поисковая инженерия ПО — что это и зачем Почти всё, чем занимается инженер-программист, — это выбор из огромного числа вариантов. Какие 40 тестов из 12 000 прогнать в pre-merge? Какие фичи взять в релиз при бюджете…","c":"post","d":"sbse","g":["sbse","оптимизация","метаэвристики","автоматизация тестирования","поиск"],"h":"Определение и происхождение термина · Три ингредиента — весь рецепт · Почему поиск, а не точный алгоритм · Ландшафт фитнеса: главная интуици","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Вводная статья трека: как переформулировать инженерные задачи разработки ПО в задачи оптимизации и решать их поисковыми …","t":"SBSE: поисковая инженерия ПО — что это и зачем","u":"/post/sbse/00-overview/","w":"2026-07-16"},{"b":"Scrum Guide построчно: что там написано на самом деле Есть один документ, который решает почти все споры о Scrum. Он занимает 13 страниц, читается за сорок минут и бесплатно лежит на scrumguides.org. И при этом подавляющ…","c":"post","d":"scrum-master","g":["scrum","psm-i","scrum guide","эмпиризм","agile"],"h":"Что это вообще за документ · Карта документа · Определение: разбор первых абзацев · Теория: эмпиризм и бережливое мышление · Ценности: разде","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Разбор Scrum Guide 2020 как первоисточника: структура документа, точные формулировки, что в нём есть, чего в нём нет и к…","t":"Scrum Guide построчно: что там написано на самом деле","u":"/post/scrum-master/02-scrum-guide/","w":"2026-07-16"},{"b":"Scrum-мастер: карта курса, профессия и путь к сертификации PSM I Есть два способа изучать Scrum. Первый: выучить, что событий пять, ответственностей три, артефактов тоже три, сдать экзамен и через месяц обнаружить, что к…","c":"post","d":"scrum-master","g":["scrum","agile","psm","управление командой","сертификация"],"h":"Проблема, ради которой всё это придумали · Scrum за один экран · Кто такой Scrum-мастер на самом деле · Что написано в Guide, что делают на ","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Что за профессия Scrum-мастер, зачем команде отдельная роль, как устроен Scrum Guide, чем экзамен PSM I отличается от ре…","t":"Scrum-мастер: карта курса, профессия и путь к сертификации PSM I","u":"/post/scrum-master/00-overview/","w":"2026-07-16"},{"b":"Scrumban и гибридные процессы: как совмещают Scrum и Kanban Почти в каждой второй компании на вопрос «какой у вас процесс» отвечают: «ну, у нас Scrumban». Если копнуть, за этим словом почти всегда стоит одно из двух. Либ…","c":"post","d":"project-management","g":["управление проектами","scrumban","kanban","scrum","процессы разработки"],"h":"Часть 1. Откуда на самом деле взялся Scrumban · Часть 2. Процесс — это набор ручек, а не бренд · Часть 3. Ядро Scrumban: пополнение по требо","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Откуда взялся Scrumban, как разложить процесс на независимые ручки, как работает пополнение по точке заказа, сколько сто…","t":"Scrumban и гибридные процессы: как совмещают Scrum и Kanban","u":"/post/project-management/10-scrumban-and-hybrids/","w":"2026-07-16"},{"b":"SDD, оркестрация и разговоры о замене специалистов Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 01:35:30 — отсюда взято содержание этой главы. Последняя глава трека — про то, что происходит, когда агент из пр…","c":"post","d":"ai-basics","g":["основы ии","sdd","оркестрация","спецификации","агенты"],"h":"Почему разговор с агентом не превращается в проект · Spec-Driven Development: цикл, в котором между этапами стоит человек · Что на самом дел","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Разработка через спецификации как способ сделать работу с агентом воспроизводимой: цикл с контрольными точками, версиони…","t":"SDD, оркестрация и разговоры о замене специалистов","u":"/post/ai-basics/15-sdd-and-orchestration/","w":"2026-07-16"},{"b":"Serverless и edge-архитектуры Слово «serverless» — худшее название в истории индустрии. Серверы есть, их просто не видно; вы по-прежнему думаете про память, таймауты, конкурентность и сетевые границы, только теперь через…","c":"post","d":"architecture-patterns","g":["архитектура","serverless","edge","faas","облако"],"h":"1. Что такое serverless на самом деле · Спектр, а не переключатель · 2. Жизненный цикл инстанса: заморозка, которая ломает интуицию · Что мо","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Как устроены FaaS и edge-вычисления изнутри: жизненный цикл инстанса и заморозка, анатомия холодного старта, закон Литтл…","t":"Serverless и edge-архитектуры","u":"/post/architecture-patterns/10-serverless-and-edge/","w":"2026-07-16"},{"b":"SIMD и векторные расширения: параллелизм внутри ядра Возьмите цикл, который складывает два массива по миллиону чисел одинарной точности. Работы в нём — миллион сложений. Но процессор, исполняя наивную скалярную версию, в…","c":"post","d":"hardware","g":["железо","simd","векторизация","микроархитектура","производительность"],"h":"Три вида параллелизма, которые нельзя путать · Почему вектор дешевле по энергии, а не только по времени · Устройство векторного блока · Две ","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Как одна команда над вектором амортизирует стоимость фронтенда, чем модель переменной длины отличается от фиксированной …","t":"SIMD и векторные расширения: параллелизм внутри ядра","u":"/post/hardware/10-simd-and-vectors/","w":"2026-07-16"},{"b":"SLI и SLO: как выбрать показатель, который что-то значит В четверг вечером поддержка получила сорок обращений «не могу оплатить». Дежурный открыл дашборд: все панели зелёные. Аптайм 100 %, CPU в норме, память в норме, /h…","c":"post","d":"sre","g":["надёжность","sre","slo","мониторинг","метрики"],"h":"Три буквы, которые постоянно путают · SLI — это доля, а не среднее · Откуда берётся показатель: критические пользовательские пути · Где мери","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Как из размытого «сервис работает» получить число: выбор показателя по пользовательскому пути, точка измерения, арифмети…","t":"SLI и SLO: как выбрать показатель, который что-то значит","u":"/post/sre/02-sli-slo/","w":"2026-07-16"},{"b":"SOLID: пять принципов с честным разбором и критикой SOLID — самый цитируемый и самый неправильно понятый набор правил в объектно-ориентированном проектировании. Его пересказывают на собеседованиях одной строчкой на принц…","c":"post","d":"principles","g":["принципы","solid","ооп","проектирование","рефакторинг"],"h":"Откуда взялся акроним · SRP — Single Responsibility Principle · Интуиция · Классический пример нарушения · Честная критика · OCP — Open/Clos","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Что на самом деле означают SRP, OCP, LSP, ISP и DIP, откуда они взялись, как выглядят в рабочем коде — и где эти принцип…","t":"SOLID: пять принципов с честным разбором и критикой","u":"/post/principles/01-solid/","w":"2026-07-16"},{"b":"Spring и Spring Boot: DI, конфигурация, web-слой, что происходит под капотом Программа на Java из предыдущих статей трека — это граф объектов, который кто-то должен собрать. Пока объектов пять, сборка умещается в main: с…","c":"post","d":"java","g":["java","spring","spring boot","фреймворки","di"],"h":"Карта территории: что вообще называют «Spring» · Контейнер: BeanDefinition как единица работы · Внедрение зависимостей: только конструктор ·","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как ApplicationContext собирает граф объектов, откуда берутся прокси и почему из-за них молчит @Transactional, что именн…","t":"Spring и Spring Boot: DI, конфигурация, web-слой, что происходит под капотом","u":"/post/java/10-spring/","w":"2026-07-16"},{"b":"SQL для анализа: агрегаты, окна, воронки Первые главы трека были о том, откуда берутся данные и почему им нельзя верить наивно: какое решение изменится от ответа, как устроен сбор, что с данными не так к моменту, когда в…","c":"post","d":"data-analytics","g":["аналитика данных","sql","оконные функции","воронки","когорты"],"h":"Аналитический SQL — это другой SQL · Данные, на которых будем работать · Гранулярность: первый вопрос к любому запросу · Как СУБД на самом д","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Аналитический SQL — это не «достать данные», а зафиксировать в коде, что считается одним наблюдением: гранулярность, агр…","t":"SQL для анализа: агрегаты, окна, воронки","u":"/post/data-analytics/04-sql-for-analysis/","w":"2026-07-16"},{"b":"SQLite и встраиваемые БД: где они сильнее «взрослых» серверов Почти вся индустрия рефлекторно начинает проект с «поднимем Postgres». Это разумный дефолт — мы разбирали его в статье про PostgreSQL. Но у этого дефолта есть…","c":"post","d":"databases","g":["базы данных","sqlite","duckdb","встраиваемые бд","wal"],"h":"Что вообще значит «встраиваемая» · Почему именно SQLite заслуживает отдельного разговора · Как устроен файл: страницы, B-tree, overflow · Сл","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Архитектура SQLite от файла страниц до WAL и планировщика, продакшн-настройки, честное сравнение с PostgreSQL, DuckDB, R…","t":"SQLite и встраиваемые БД: где они сильнее «взрослых» серверов","u":"/post/databases/05-sqlite-and-embedded/","w":"2026-07-16"},{"b":"SRE в небольшой команде: что переносится, а что нет В январе техдиректор компании из двадцати человек прочитал книгу Google про SRE и объявил внедрение. К апрелю у команды было сорок два дашборда, двести семнадцать прави…","c":"post","d":"sre","g":["надёжность","sre","slo","дежурство","практика"],"h":"Кто здесь «небольшая команда» · Потолок сверху: доступность, за которую вы не отвечаете · Потолок снизу: скорость человека · Пять девяток: с","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Как собрать работающую практику надёжности при шести инженерах: потолок, заданный поставщиками и скоростью человека, чес…","t":"SRE в небольшой команде: что переносится, а что нет","u":"/post/sre/15-practice-and-resources/","w":"2026-07-16"},{"b":"SRE: карта трека и чем надёжность отличается от «чтобы не падало» В понедельник продакт приносит скриншот из чата поддержки: «со вторника не проходят платежи картами одного банка, клиенты жалуются пятый день». Дежурный о…","c":"post","d":"sre","g":["надёжность","sre","slo","инциденты","мониторинг"],"h":"Пять отличий надёжности от «чтобы не падало» · Арифметика девяток: сколько это в минутах · Почему 100 % — неправильная цель, и это считается","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Надёжность как измеримая инженерная величина: арифметика девяток и бюджета ошибок, почему пять девяток почти никому не н…","t":"SRE: карта трека и чем надёжность отличается от «чтобы не падало»","u":"/post/sre/00-overview/","w":"2026-07-16"},{"b":"Stream API и функциональный стиль: лямбды, коллекторы, ленивость Java 8 принесла лямбды и Stream API, и с тех пор в командах сложилось два лагеря. Один пишет через стримы всё, включая трёхэлементные списки и мутацию внеш…","c":"post","d":"java","g":["java","stream api","функциональное программирование","лямбды","производительность"],"h":"Часть 1. Лямбда — это не анонимный класс · Задача, которую решали · Что генерирует компилятор · Захват и effectively final · Функциональные ","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Во что компилируется лямбда, почему стрим — это описание конвейера, а не коллекция, как устроены коллекторы и Spliterato…","t":"Stream API и функциональный стиль: лямбды, коллекторы, ленивость","u":"/post/java/06-streams-and-functional/","w":"2026-07-16"},{"b":"System design: как проектировать систему под нагрузку от и до Весь трек до этого момента был про словарь: слои и порты, монолит и сервисы, события, CQRS, саги, стили API, кэш, устойчивость, serverless, ADR. Словарь — нео…","c":"post","d":"architecture-patterns","g":["архитектура","system design","масштабирование","производительность","надёжность"],"h":"1. Что такое system design и чем он не является · 2. Каркас процесса: семь шагов и обратные связи · 3. Шаг 1. Требования: функциональные, не","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Полный маршрут проектирования нагруженной системы: от уточнения требований и оценок на салфетке до модели данных, схемы …","t":"System design: как проектировать систему под нагрузку от и до","u":"/post/architecture-patterns/12-system-design/","w":"2026-07-16"},{"b":"System F: полиморфизм, дженерики и теоремы задаром В https://courses.digitable.life/post/lambda-calculus/09-typed-lambda/ мы построили просто типизированное лямбда-исчисление λ→ и получили за это две теоремы и одну непри…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","типы","полиморфизм","теория типов"],"h":"Две новые конструкции · Два новых правила типизации · Тайпчекер System F на Python · Числа Чёрча наконец получают честный тип · Что мы приоб","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Что происходит, когда типам разрешают говорить «для любого»: большая лямбда Λ, честный тип чисел Чёрча, неразрешимость в…","t":"System F: полиморфизм, дженерики и теоремы задаром","u":"/post/lambda-calculus/13-system-f-and-parametricity/","w":"2026-07-16"},{"b":"TCP: установка соединения, надёжность, окна, управление перегрузкой IP не обещает ничего. Пакет может пропасть, продублироваться, прийти вторым из трёх или превратиться в мусор — и это не поломка, а спецификация: маршрут…","c":"post","d":"networking","g":["сети","tcp","транспорт","производительность","диагностика"],"h":"Что TCP даёт и чем вы за это платите · Заголовок: где что лежит · Установка соединения · Как это выглядит в tcpdump · Две очереди, которые в","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Как из ненадёжных датаграмм получается надёжный поток байтов: рукопожатие и очереди accept, конечный автомат соединения …","t":"TCP: установка соединения, надёжность, окна, управление перегрузкой","u":"/post/networking/03-tcp/","w":"2026-07-16"},{"b":"TDD и BDD на практике: как это выглядит в реальной работе Про TDD и BDD написано больше, чем про любую другую практику тестирования, и почти всё написанное бесполезно по одной причине: обсуждают ритуал, а не механизм. «С…","c":"post","d":"testing","g":["тестирование","tdd","bdd","автоматизация","рефакторинг"],"h":"1. Механика цикла: что именно происходит в red-green-refactor · Живой пример: считаем возврат средств · 2. Что говорит эмпирика: цифры вмест","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Что на самом деле даёт цикл red-green-refactor и что показали эмпирические исследования, чем лондонская школа отличается…","t":"TDD и BDD на практике: как это выглядит в реальной работе","u":"/post/testing/14-tdd-and-bdd/","w":"2026-07-16"},{"b":"Terraform и инфраструктура как код: HCL, state, модули, drift, альтернативы В предыдущей статье — https://courses.digitable.life/post/devops/08-helm-and-gitops/ — мы довели до автоматизма то, что живёт внутри кластера: м…","c":"post","d":"devops","g":["devops","terraform","iac","облака","автоматизация"],"h":"Зачем нужна инфраструктура как код · Императивно, декларативно и почему это разные миры · Модель Terraform: провайдеры, граф и цикл plan/app","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как устроен Terraform изнутри — граф ресурсов, state, блокировки, модули и дрейф — и как это довести до продакшена: рабо…","t":"Terraform и инфраструктура как код: HCL, state, модули, drift, альтернативы","u":"/post/devops/09-terraform-and-iac/","w":"2026-07-16"},{"b":"TLS и HTTPS: рукопожатие, сертификаты, цепочки доверия, отладка TCP даёт надёжный поток байтов и ровно ноль защиты. Любой, кто стоит на пути — Wi-Fi точка в кафе, провайдер, скомпрометированный маршрутизатор, DPI на гран…","c":"post","d":"networking","g":["сети","tls","https","криптография","сертификаты","диагностика"],"h":"Что TLS даёт и чем вы за это платите · Как мы сюда пришли · Запись, рукопожатие и что видно на проводе · Рукопожатие TLS 1.3 за один RTT · К","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Как из открытого TCP-потока получается канал с конфиденциальностью, целостностью и аутентификацией: рукопожатие TLS 1.3 …","t":"TLS и HTTPS: рукопожатие, сертификаты, цепочки доверия, отладка","u":"/post/networking/07-tls/","w":"2026-07-16"},{"b":"Twelve-Factor App и cloud-native принципы Все предыдущие статьи трека говорили про внутреннее устройство кода: имена, функции, связанность, тесты. Twelve-Factor — про другое. Это принципы границы между приложением и сред…","c":"post","d":"principles","g":["принципы","cloud-native","twelve-factor","devops","kubernetes","конфигурация"],"h":"1. Откуда это взялось и какую боль лечит · Карта факторов · 2. Группа «что деплоим»: кодовая база, зависимости, стадии · I. Кодовая база (Co","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Двенадцать факторов Heroku как контракт между приложением и платформой: разбор каждого фактора с кодом, критика устаревш…","t":"Twelve-Factor App и cloud-native принципы","u":"/post/principles/07-twelve-factor/","w":"2026-07-16"},{"b":"TypeScript в SDLC: CI/CD, релизы, безопасность и лучшие источники Мы прошли путь от синтаксиса до наблюдаемости. Финальный файл связывает всё воедино: как TypeScript-проект живёт в полном жизненном цикле разработки ПО (S…","c":"post","d":"typescript","g":["typescript","sdlc","ci/cd","безопасность","зависимости","ресурсы"],"h":"TypeScript на каждой стадии SDLC · Полный CI/CD-пайплайн · Релизная стратегия и версионирование · Безопасность зависимостей · Code review в ","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Как TypeScript живёт в жизненном цикле разработки, полный CI/CD-пайплайн, релизная стратегия, безопасность зависимостей …","t":"TypeScript в SDLC: CI/CD, релизы, безопасность и лучшие источники","u":"/post/typescript/08-sdlc-and-best-blogs/","w":"2026-07-16"},{"b":"TypeScript: обзор языка и дорожная карта курса Что это за язык и какую проблему он решает JavaScript был спроектирован за десять дней в 1995 году как язык для оживления веб-страниц. Он динамический: тип значения известен…","c":"post","d":"typescript","g":["typescript","обзор","дорожная карта","javascript","типизация"],"h":"Что это за язык и какую проблему он решает · Ниши применения · Как устроена экосистема · Дорожная карта курса · Как учиться по этому курсу ·","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Что такое TypeScript, зачем нужна статическая типизация поверх JavaScript, ниши применения и как устроен этот курс.…","t":"TypeScript: обзор языка и дорожная карта курса","u":"/post/typescript/00-overview/","w":"2026-07-16"},{"b":"UDP и QUIC: когда без TCP лучше и что изменил QUIC В предыдущей статье TCP выглядел готовым ответом: надёжность, порядок, управление потоком и перегрузкой приложены к сокету бесплатно. Проблема в том, что «бесплатно» зде…","c":"post","d":"networking","g":["сети","udp","quic","http3","транспорт","диагностика"],"h":"Часть I. UDP: транспорт, который почти ничего не делает · Восемь байт и полторы гарантии · Демультиплексирование и connect() на UDP-сокете ·","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Транспорт без гарантий: восемь байт заголовка UDP, потери в буфере сокета, размер датаграммы и усиление трафика — а зате…","t":"UDP и QUIC: когда без TCP лучше и что изменил QUIC","u":"/post/networking/04-udp-and-quic/","w":"2026-07-16"},{"b":"UML для аналитика: какие диаграммы полезны и как их читают разработчики Аналитик рисует схему не потому, что «так положено по регламенту», и не потому, что документ без картинки выглядит бедно. Схема — это инструмент сжа…","c":"post","d":"systems-analysis","g":["аналитика","требования","uml","моделирование","диаграммы"],"h":"1. Первый принцип: зачем вообще картинка · 1.1. Естественный язык — плохой контейнер для требований · 1.2. Диаграмма — это язык с типами · 1","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Пять диаграмм UML, которые реально работают в анализе требований: границы системы, sequence, состояния, потоки и концепт…","t":"UML для аналитика: какие диаграммы полезны и как их читают разработчики","u":"/post/systems-analysis/04-uml/","w":"2026-07-16"},{"b":"unsafe и FFI: когда необходимо, как ограничить, связь с C В предыдущей статье мы разбирали асинхронный рантайм — и несколько раз натыкались на то, что Waker, Pin и самоссылающиеся генераторы внутри устроены на сырых указ…","c":"post","d":"rust","g":["rust","unsafe","ffi","низкоуровневое-программирование","безопасность"],"h":"Задача: где кончается доказательство · Что unsafe не делает · Пять сверхспособностей · Неопределённое поведение: главное недопонимание · Два","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Что на самом деле означает unsafe — не отключение проверок, а перенос бремени доказательства, как построить safe-оболочк…","t":"unsafe и FFI: когда необходимо, как ограничить, связь с C","u":"/post/rust/10-unsafe-and-ffi/","w":"2026-07-16"},{"b":"UX, CJM, требования и user stories Между «мы поняли проблему пользователя» и «команда выкатила фичу, которая эту проблему решает» лежит участок, где теряется больше всего ценности. Discovery дал знание. Приоритизация выб…","c":"post","d":"product-management","g":["продукт","ux","требования","user stories","cjm"],"h":"1. Задача с первых принципов · 1.1. Передача намерения по шумному каналу · 1.2. Цена поздней ошибки в требованиях · 1.3. Что такое UX и чем ","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Как знание о пользователе превращается в работающий продукт: модель Нормана и эвристики Нильсена, карта пути клиента и s…","t":"UX, CJM, требования и user stories","u":"/post/product-management/06-ux-and-requirements/","w":"2026-07-16"},{"b":"UX: карта трека и чем проектирование отличается от рисования красивого Есть два способа отвечать на вопрос «почему кнопка здесь». Первый: «так композиционно уравновешеннее», «сейчас так делают», «мне так нравится». Второ…","c":"post","d":"ux-design","g":["дизайн","ux","проектирование интерфейсов","юзабилити","handoff"],"h":"1. Что такое интерфейс и что в нём вообще проектируют · Красиво — это не цель, но и не помеха · 2. Слои решений: что вообще решается в одном","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Что такое проектирование интерфейсов как инженерная работа: слои решений в одном экране, разборы неудобной формы и ненай…","t":"UX: карта трека и чем проектирование отличается от рисования красивого","u":"/post/ux-design/00-overview/","w":"2026-07-16"},{"b":"vi и Vim: модальность, основы, движения и первые 20 команд Vim — единственный массовый редактор, у которого есть грамматика. Не набор горячих клавиш, которые надо зазубрить, а маленький язык: глаголы, дополнения, числите…","c":"post","d":"editors","g":["редакторы","vim","терминал","dotfiles"],"h":"1. Откуда взялась модальность: 300 бод и телетайп · 2. Пять режимов и как между ними не заблудиться · 3. Грамматика: учить надо не команды, ","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Почему модальное редактирование — это язык, а не набор горячих клавиш: режимы, грамматика «оператор + движение», первые …","t":"vi и Vim: модальность, основы, движения и первые 20 команд","u":"/post/editors/01-vi-and-vim-basics/","w":"2026-07-16"},{"b":"VPS, VDS, выделенные серверы и DigitalOcean/Hetzner: когда простое дешевле облака Три предыдущие статьи — про https://courses.digitable.life/post/devops/11-aws/, https://courses.digitable.life/post/devops/12-azure/ и htt…","c":"post","d":"devops","g":["devops","инфраструктура","облака","хостинг","стоимость"],"h":"Терминология: что вам на самом деле продают · Спектр управляемости: за что вы платите разницу · Почему разница в цене такая огромная · Share","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Чем VPS отличается от VDS и bare metal, почему Hetzner дешевле AWS в пять раз, что вы теряете вместе с managed-сервисами…","t":"VPS, VDS, выделенные серверы и DigitalOcean/Hetzner: когда простое дешевле облака","u":"/post/devops/14-vps-vds-and-bare-metal/","w":"2026-07-16"},{"b":"VS Code: архитектура, расширения, отладка, remote и devcontainers VS Code — редактор, который выиграл рынок. По ежегодным опросам Stack Overflow им пользуется порядка 70–75 % профессиональных разработчиков — доля, которо…","c":"post","d":"editors","g":["редакторы","vscode","отладка","контейнеры","инструменты разработчика"],"h":"Часть 1. Архитектура · Откуда взялась многопроцессность · Monaco и модель текста · Ленивая активация: главный механизм производительности · ","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Как VS Code устроен внутри — процессы, extension host, ленивая активация; как отбирать расширения, настраивать settings.…","t":"VS Code: архитектура, расширения, отладка, remote и devcontainers","u":"/post/editors/05-vscode/","w":"2026-07-16"},{"b":"Web3: карта трека, что это технически и где реально применимо Это вход в трек из двенадцати статей. Блокчейн здесь — не идеология и не финансовый инструмент, а распределённая система с конкретными свойствами и очень конк…","c":"post","d":"web3","g":["web3","блокчейн","ethereum","смарт-контракты","децентрализованные хранилища"],"h":"1. Что такое Web3, если убрать маркетинг · 2. Что блокчейн действительно даёт · 3. Стек целиком · 4. Нужен ли вам блокчейн: честное дерево р","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Инженерный вход в блокчейн: реплицированная машина состояний с открытым доступом на запись, чем она платит за верифициру…","t":"Web3: карта трека, что это технически и где реально применимо","u":"/post/web3/00-overview/","w":"2026-07-16"},{"b":"XSS, CSRF и клиентские атаки: типы, CSP, SameSite, защита Серверная уязвимость — это когда злоумышленник заставляет ваш код сделать не то. Клиентская — когда он заставляет сделать не то браузер вашего пользователя, причё…","c":"post","d":"security","g":["безопасность","xss","csrf","csp","web"],"h":"Рамка: мы защищаем · Две опоры клиентской безопасности · Same-Origin Policy: что она изолирует и чего нет · Origin, site и область куки — тр","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Почему браузер исполняет чужой код и отправляет ваши куки кому попало: механика XSS и CSRF, пять контекстов экранировани…","t":"XSS, CSRF и клиентские атаки: типы, CSP, SameSite, защита","u":"/post/security/04-xss-and-csrf/","w":"2026-07-16"},{"b":"Zed, Sublime Text, Atom-подобные и новая волна редакторов В предыдущей статье мы разобрали редактор, который забрал себе рынок. Логичный вопрос: если VS Code настолько хорош, зачем в 2026 году вообще существуют другие ре…","c":"post","d":"editors","g":["редакторы","zed","sublime text","инструменты разработчика","производительность"],"h":"Часть 1. Четыре поколения и что двигало каждым · Часть 2. Про задержку — без религии · Как замерить самому, а не верить блогам · Где скорост","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Что появилось после VS Code и зачем: устройство Zed на Rust и GPUI, философия и Python-API Sublime Text, урок Atom и его…","t":"Zed, Sublime Text, Atom-подобные и новая волна редакторов","u":"/post/editors/08-modern-editors/","w":"2026-07-16"},{"b":"Ёмкость и нагрузка: планирование, тесты, запас Восемь предыдущих глав были про то, что делать, когда уже сломалось. Эта — про решение, которое принимается за недели и месяцы до инцидента и определяет, случится он вообще.…","c":"post","d":"sre","g":["надёжность","sre","ёмкость","нагрузочное тестирование","масштабирование"],"h":"Ёмкость — это число, а не ощущение · Почему кривая загибается: арифметика очереди · Закон Литтла · Множитель ожидания · Больше узлов при той","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Ёмкость как число, а не ощущение: арифметика очереди, расчёт запаса от пика до отказа зоны, честные нагрузочные тесты, п…","t":"Ёмкость и нагрузка: планирование, тесты, запас","u":"/post/sre/09-capacity/","w":"2026-07-16"},{"b":"Абстрактная алгебра: группы, кольца, поля и моноиды в коде Абстрактная алгебра — единственный раздел математики, который программист использует каждый день, даже не зная его названия. Когда вы пишете reduce, вы пользуете…","c":"post","d":"mathematics","g":["математика","абстрактная алгебра","группы","конечные поля","моноиды"],"h":"Зачем это программисту: четыре сцены · Лестница структур: одно множество, одна операция · Моноид: самая полезная структура для инженера · Ас","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Магмы, полугруппы, моноиды, группы, кольца, поля и полукольца — со строгими аксиомами, ручными разборами и рабочим кодом…","t":"Абстрактная алгебра: группы, кольца, поля и моноиды в коде","u":"/post/mathematics/08-abstract-algebra/","w":"2026-07-16"},{"b":"Абстрактное синтаксическое дерево: представление, обход, паттерн Visitor Парсер из прошлой статьи вернул дерево, и с этого момента текст программы больше никому не нужен: разрешение имён, проверка типов, свёртка констант…","c":"post","d":"compilers","g":["компиляторы","ast","деревья","паттерны проектирования"],"h":"Что AST теряет намеренно · Дизайн узлов: AST — это алгебраический тип данных · Узлы Mini на Python · Обход: три порядка · Паттерн Visitor · ","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Как спроектировать узлы AST, обходить дерево в трёх порядках и не уронить стек, зачем нужен Visitor и почему в языках с …","t":"Абстрактное синтаксическое дерево: представление, обход, паттерн Visitor","u":"/post/compilers/03-ast/","w":"2026-07-16"},{"b":"Абстракции: где скрывать сложность, а где вредно Платформенная команда полгода делала контракт сервиса: YAML на двенадцать полей, из которого рождается всё — деплой, ингресс, автоскейлер, дашборд, алерты, бюджет. Тридцат…","c":"post","d":"platform-engineering","g":["платформа","абстракции","developer experience","архитектура","инженерная культура"],"h":"Что такое абстракция и чем она не является · Абстракция, шаблон и политика — три разные вещи · Закон протекания и обязанности абстракции · Г","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Как решать, что платформа прячет от продуктовых команд, а что обязана показывать: критерии, люки без выхода из платформы…","t":"Абстракции: где скрывать сложность, а где вредно","u":"/post/platform-engineering/05-abstractions/","w":"2026-07-16"},{"b":"Автоматизация редактора: сниппеты, задачи, свои команды и плагины В предыдущей статье мы научились быстро находить нужное место в коде. Теперь про обратную половину рабочего цикла: перестать руками делать то, что вы дела…","c":"post","d":"editors","g":["редакторы","автоматизация","плагины","vscode","инструменты разработчика"],"h":"Лестница автоматизации · Сначала посчитайте · Ступень 2: сниппеты · Ступень 3: внешние фильтры — самая недооценённая · Ступень 4: задачи и с","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Лестница автоматизации от макроса до собственного расширения: как считать окупаемость, где проходит граница между сниппе…","t":"Автоматизация редактора: сниппеты, задачи, свои команды и плагины","u":"/post/editors/12-editor-automation/","w":"2026-07-16"},{"b":"Автоматическая генерация тестов: EvoSuite, фаззинг, мутационное тестирование Генерация тестов — самая успешная область применения SBSE. Не потому, что она самая интересная теоретически, а потому, что здесь совпали три ус…","c":"post","d":"sbse","g":["sbse","тестирование","фаззинг","мутационное тестирование","оптимизация"],"h":"Почему это задача поиска · Что мы ищем: представление тестового случая · Фитнес: approach level + branch distance · Рабочий пример: мини-ген","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как поисковые алгоритмы сами пишут тесты: branch distance и approach level, whole test suite generation в EvoSuite, cove…","t":"Автоматическая генерация тестов: EvoSuite, фаззинг, мутационное тестирование","u":"/post/sbse/07-test-generation/","w":"2026-07-16"},{"b":"Автоматическое исправление программ Представьте ночной прогон CI. Один тест из двенадцати тысяч стал красным. Утром дежурный инженер откроет логи, полчаса будет искать, где именно ломается, ещё двадцать минут — писать од…","c":"post","d":"sbse","g":["sbse","автоматическое исправление программ","тестирование","генетические алгоритмы","метаэвристики"],"h":"Постановка задачи · Канонический пайплайн · Шаг 1: локализация дефекта · Шаг 2: пространство патчей и операторы правки · Гипотеза избыточнос","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как поиск чинит баги за человека: локализация дефекта, операторы правки, генетический поиск патча, проблема переобучения…","t":"Автоматическое исправление программ","u":"/post/sbse/08-automated-program-repair/","w":"2026-07-16"},{"b":"Автоматное программирование: состояние как явная величина Откройте любой сервис, который прожил три года, и найдите там сущность «Заказ». С высокой вероятностью в ней будет что-то подобное: class Order: is_submitted: boo…","c":"post","d":"paradigms","g":["парадигмы","конечные автоматы","состояние","надёжность","моделирование"],"h":"Что именно отнимает и что даёт автоматная парадигма · Немного истории: почему это старше и живее, чем кажется · Модель: тотальная функция пе","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Парадигма, в которой состояние перестаёт быть россыпью булевых флагов и становится перечислимым множеством: таблица пере…","t":"Автоматное программирование: состояние как явная величина","u":"/post/paradigms/10-state-machines/","w":"2026-07-16"},{"b":"Автоматы, формальные языки и грамматики Есть задача, которую вы решаете почти каждый рабочий день, даже если никогда не называли её так: проверить, принадлежит ли строка некоторому множеству допустимых строк, и заодно по…","c":"post","d":"mathematics","g":["математика","формальные языки","автоматы","парсинг","регулярные выражения","python"],"h":"Алфавит, слово, язык: базовые определения · Σ* — это свободный моноид · Операции над языками · Детерминированный конечный автомат (DFA) · Пр","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"От алфавита и слова до иерархии Хомского: DFA и NFA, теорема Клини, детерминизация и минимизация, лемма о накачке, конте…","t":"Автоматы, формальные языки и грамматики","u":"/post/mathematics/13-automata-and-languages/","w":"2026-07-16"},{"b":"Авторизация: RBAC, ABAC, ACL, multi-tenancy и проверка прав в коде Аутентификация отвечает на вопрос «кто передо мной» — этому посвящена предыдущая статья. Авторизация отвечает на другой вопрос: «что именно этому субъект…","c":"post","d":"security","g":["безопасность","авторизация","rbac","multi-tenancy","owasp"],"h":"Матрица доступа: базовая абстракция · Таксономия моделей · RBAC: ролевая модель без иллюзий · ABAC: когда ролей не хватает · ReBAC и подход ","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Почему сломанный контроль доступа — уязвимость №1 в OWASP Top 10, чем RBAC отличается от ABAC и ReBAC, где в коде обязан…","t":"Авторизация: RBAC, ABAC, ACL, multi-tenancy и проверка прав в коде","u":"/post/security/08-authorization/","w":"2026-07-16"},{"b":"Агент и чат: чем отличается и почему это меняет работу Разговор про инструменты вроде Claude Code, Cursor или Codex почти всегда начинается не с того конца — со списка возможностей. «Он читает репозиторий, запускает тест…","c":"post","d":"ai-agents","g":["ai-агенты","агенты","инструменты","проверяемость","стоимость"],"h":"Одна модель, два контура · Чат: человек как провод · Агент: петлю замыкает обвязка · Что чем является: короткая таблица · Не бинарность, а л","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Агент — это не более умная модель, а та же модель, помещённая в замкнутый цикл с правом запускать инструменты. Разбираем…","t":"Агент и чат: чем отличается и почему это меняет работу","u":"/post/ai-agents/01-agent-vs-chat/","w":"2026-07-16"},{"b":"Агенты в командной работе: ревью, договорённости, ответственность В одиночку работа с агентом самокорректируется. Вы сгенерировали диф на восемьсот строк — вы же его и читаете. Боль от плохого промпта возвращается к вам …","c":"post","d":"ai-agents","g":["ai-агенты","код-ревью","командная работа","процессы","ответственность"],"h":"Что именно ломается при переходе от одного к команде · Узкое место переезжает в чужой календарь · Честная оговорка: рост генерации — это гип","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Почему в команде экономия одного инженера превращается в расход другого, какие пять договорённостей нужно записать до то…","t":"Агенты в командной работе: ревью, договорённости, ответственность","u":"/post/ai-agents/14-team-workflow/","w":"2026-07-16"},{"b":"Агенты и ReAct: цикл рассуждение-действие, инструменты, планирование, память В продвинутых техниках промптинга модель думала внутри своей головы: цепочка мыслей, голосование, дерево. Всё это работает с одним фиксированны…","c":"post","d":"ai-engineering","g":["ии-инженерия","агенты","react","tool use","llm"],"h":"Когда агент нужен, а когда это дорогой способ выстрелить себе в ногу · ReAct: почему рассуждать и действовать надо вместе · Кто с кем разгов","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Как из одного вызова модели получается агент: цикл ReAct, проектирование инструментов, стратегии планирования, четыре ур…","t":"Агенты и ReAct: цикл рассуждение-действие, инструменты, планирование, память","u":"/post/ai-engineering/07-agents-and-react/","w":"2026-07-16"},{"b":"Адаптация новичка: первые недели глазами руководителя Типичный первый день выглядит так. Человек приходит, ему заводят почту, часть доступов обещают «к концу недели», знакомят с командой в общем чате, дают ссылку на репо…","c":"post","d":"engineering-leadership","g":["лидерство","онбординг","команда","найм","адаптация"],"h":"Что вы покупаете этими неделями · Честно про доказательную базу · Что готовится до выхода · Первый день · Первая задача · Кто с ним работает","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Что руководитель обязан подготовить до первого рабочего дня новичка, как выбрать первую задачу, кто с ним работает кроме…","t":"Адаптация новичка: первые недели глазами руководителя","u":"/post/engineering-leadership/05-onboarding/","w":"2026-07-16"},{"b":"Академический слой: arXiv, Scholar, препринты Инженеру научная статья нужна редко, но в трёх ситуациях у неё нет замены. Первая: область слишком новая, и книг ещё нет. Между появлением идеи и появлением учебника проходят…","c":"post","d":"research-skills","g":["поиск информации","источники","доказательность","исследования"],"h":"Как устроен корпус · Где искать · Поиск по цитатам: главный приём · Стоит ли читать эту работу · Что инженеру брать из статьи · Препринт, ре","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Когда инженеру нужна научная статья и как её найти: устройство корпуса публикаций, поиск по цитатам вперёд и назад, DBLP…","t":"Академический слой: arXiv, Scholar, препринты","u":"/post/research-skills/09-academic-layer/","w":"2026-07-16"},{"b":"Активация данных: reverse ETL, сервинг и data-продукты Есть неприятный вопрос, который стоит задавать каждой витрине: какое решение принимается на её основании и кто его принимает? Если честный ответ — «никакое, но раз в…","c":"post","d":"data-engineering","g":["данные","reverse etl","сервинг","data продукты","интеграции"],"h":"1. Три пути наружу · 2. Reverse ETL: синхронизация состояния, а не отправка сообщений · 3. Петля: как метрика начинает измерять саму себя · ","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как данные возвращаются из хранилища в операционные системы и продукт: механика reverse ETL и синхронизации состояния, п…","t":"Активация данных: reverse ETL, сервинг и data-продукты","u":"/post/data-engineering/12-data-activation-and-serving/","w":"2026-07-16"},{"b":"Алгебраические типы данных и сопоставление с образцом Тип, который врёт Начнём не с определения, а с кода, который вы точно писали. Загрузка данных на экране: interface RequestState { loading: boolean; error: string | nu…","c":"post","d":"functional-programming","g":["функциональное программирование","типы","сопоставление с образцом","моделирование данных"],"h":"Тип, который врёт · Произведение: «и» · Сумма: «или» · Почему они «алгебраические» · Сопоставление с образцом: разбор, а не проверка · Прове","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Как суммы и произведения типов убирают невозможные состояния из программы, зачем нужна проверка исчерпывающности и во чт…","t":"Алгебраические типы данных и сопоставление с образцом","u":"/post/functional-programming/06-adt-and-pattern-matching/","w":"2026-07-16"},{"b":"Алгоритмы: карта трека и как учиться решать задачи Есть два способа читать книгу по алгоритмам. Первый — выучить, что сортировка слиянием работает за O(n log n), а Дейкстра — за O(m log n), и на этом успокоиться. Второй …","c":"post","d":"algorithms","g":["алгоритмы","асимптотика","сложность","обучение"],"h":"Что такое алгоритм, если говорить строго · Карта трека · Почему асимптотика — это не педантизм · Метод: как условие превращается в решение ·","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Что такое алгоритм строго, как устроен трек из 19 статей и какой рабочий метод превращает условие задачи в корректное ре…","t":"Алгоритмы: карта трека и как учиться решать задачи","u":"/post/algorithms/00-overview/","w":"2026-07-16"},{"b":"Алерты: как не утопить дежурного в шуме 02:14. Телефон звонит. HighCPUUsage on node-17: 84 % CPU на одной ноде из сорока, пользователи ничего не заметили, через восемь минут само сойдёт. Дежурный нажимает «принял» и ложи…","c":"post","d":"sre","g":["надёжность","sre","мониторинг","алерты","дежурство"],"h":"Определение, из которого всё следует · Арифметика шума: почему дежурный перестаёт читать · Симптом, а не причина · Сколько минут даёт каждая","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Почему алерт — это не «уведомление о метрике», а обязательство разбудить человека: арифметика шума, оповещение по скорос…","t":"Алерты: как не утопить дежурного в шуме","u":"/post/sre/05-alerting/","w":"2026-07-16"},{"b":"Альфа, бета и эта: три преобразования, из которых всё состоит Зачем вообще какие-то «преобразования» Пока что лямбда-выражение — это просто текст. λx. x — набор символов. Чтобы из текста получилось вычисление, нужны прав…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","редукция","функциональное программирование","теория вычислений"],"h":"Зачем вообще какие-то «преобразования» · Быстрый словарь: редекс, нормальная форма, шаг · Альфа-преобразование: имя параметра ничего не знач","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Разбираем три правила переписывания лямбда-исчисления — переименование, вызов и упрощение — с полной пошаговой раскрутко…","t":"Альфа, бета и эта: три преобразования, из которых всё состоит","u":"/post/lambda-calculus/03-reductions/","w":"2026-07-16"},{"b":"Анализ алгоритмов: асимптотика, инварианты и доказательство корректности Есть два вопроса, которые нужно задать любому куску кода, прежде чем выпускать его в прод: он вообще правильный? и что с ним будет, когда данных ст…","c":"post","d":"algorithms","g":["алгоритмы","асимптотика","сложность","доказательство корректности"],"h":"1. Зачем нужна абстракция: почему нельзя просто замерить время · Модель вычислений: RAM · 2. Асимптотические обозначения строго · Что чаще в","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Как измерять алгоритмы независимо от железа, считать рекуррентности и амортизацию, доказывать корректность через инвариа…","t":"Анализ алгоритмов: асимптотика, инварианты и доказательство корректности","u":"/post/algorithms/01-analysis-and-proofs/","w":"2026-07-16"},{"b":"Анализ интеграций и API: контракты, форматы, сценарии обмена, ошибки Требования почти никогда не теряются внутри системы. Их теряют на границе — там, где наш сервис зовёт чужой, где приходит файл от склада, где партнёр п…","c":"post","d":"systems-analysis","g":["аналитика","api","интеграции","контракты","требования"],"h":"1. Почему интеграции — работа аналитика · 2. Карта интеграций: с чего начинается анализ · 2.1. Паспорт интеграции · 2.2. Правило одного влад","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как аналитик работает на границе систем: карта интеграций, восемь слоёв контракта, ловушки форматов, обязательные сценар…","t":"Анализ интеграций и API: контракты, форматы, сценарии обмена, ошибки","u":"/post/systems-analysis/07-api-analysis/","w":"2026-07-16"},{"b":"Аналитик в Agile: груминг, декомпозиция, работа с командой и с неопределённостью В водопадной картине мира работа аналитика имеет конец: требования собраны, согласованы, подписаны, переданы. В Agile этого конца нет. Треб…","c":"post","d":"systems-analysis","g":["аналитика","agile","требования","декомпозиция","бэклог"],"h":"1. Что меняется, когда требования нельзя закончить · 1.1. Главная ошибка: тот же документ, только в Jira · 1.2. Единица работы — не документ","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как работает аналитик, когда требования нельзя закончить: горизонт проработки вместо полного ТЗ, груминг, после которого…","t":"Аналитик в Agile: груминг, декомпозиция, работа с командой и с неопределённостью","u":"/post/systems-analysis/11-analysis-in-agile/","w":"2026-07-16"},{"b":"Аналитика данных: карта трека и какой вопрос она решает Есть профессиональная ошибка, которая дороже всех остальных вместе взятых. Она выглядит так: аналитик приносит цифру, цифра выглядит убедительно, компания на неё оп…","c":"post","d":"data-analytics","g":["аналитика данных","статистика","ab-тесты","sql","визуализация данных"],"h":"1. Пример, к которому мы будем возвращаться · 2. Что такое прикладная аналитика и чем она не является · 3. Карта трека · 4. Сквозная тема: ч","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Вход в трек прикладной аналитики: почему главная опасность — уверенный вывод из данных, которые его не выдерживают, како…","t":"Аналитика данных: карта трека и какой вопрос она решает","u":"/post/data-analytics/00-overview/","w":"2026-07-16"},{"b":"Аналитика, метрики и стык с машинным обучением Мы прошли весь путь: извлекли и загрузили данные, спроектировали модель, посчитали её батчем и потоком, оркестрировали, положили в нужный формат и обвесили проверками качест…","c":"post","d":"data-engineering","g":["данные","аналитика","метрики","machine learning","feature store"],"h":"Последняя миля: почему витрина — это ещё не продукт · Анатомия метрики · Аддитивность: три класса мер · Семантический слой: метрика как код ","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как превратить витрины в метрики, которым доверяют: семантический слой, аддитивность, когорты — и как отдать те же данны…","t":"Аналитика, метрики и стык с машинным обучением","u":"/post/data-engineering/08-analytics-and-ml-handoff/","w":"2026-07-16"},{"b":"Аннотации типов: mypy, Protocol, generics, строгость в реальном проекте В динамическом языке ошибка типа обнаруживается в тот момент, когда интерпретатор доходит до соответствующей строки. На ста строках это не проблема.…","c":"post","d":"python","g":["python","типизация","mypy","protocol","статический анализ"],"h":"Аннотация — это данные, а не проверка · Когда аннотация всё-таки выполняется · Постепенная типизация: Any — не вершина, а выключатель · Слов","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как устроена постепенная типизация Python: почему аннотации ничего не проверяют в рантайме, чем Any отличается от object…","t":"Аннотации типов: mypy, Protocol, generics, строгость в реальном проекте","u":"/post/python/07-typing/","w":"2026-07-16"},{"b":"Ансамбли: бэггинг, случайный лес, градиентный бустинг Одиночное решающее дерево — модель с прекрасной интерпретируемостью и отвратительной устойчивостью: сдвиньте один объект в обучающей выборке, и структура дерева может…","c":"post","d":"machine-learning","g":["машинное обучение","ансамбли","градиентный бустинг","случайный лес","решающие деревья"],"h":"1. Почему усреднение вообще работает · Интуиция: мудрость толпы и теорема Кондорсе · Строгая версия: дисперсия среднего коррелированных оцен","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Почему сумма слабых моделей сильнее одной хорошей: декорреляция ошибок и бэггинг, устройство случайного леса, градиентны…","t":"Ансамбли: бэггинг, случайный лес, градиентный бустинг","u":"/post/machine-learning/07-ensembles-and-boosting/","w":"2026-07-16"},{"b":"Антагонистический режим: два подагента и явное управление областью поиска Компромисс между исследованием и использованием проходит через весь трек, и почти везде он управляется косвенно. Вероятность мутации, размер турни…","c":"post","d":"sbse","g":["sbse","генетические алгоритмы","исследование и использование","пространство поиска","мета-оптимизация"],"h":"Постановка: область, два агента и арбитр · Чем это отличается от адаптивного выбора операторов · Чего в постановке нет · Что взято за област","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Компромисс «исследование против использования» как решение явного арбитра, а не побочный эффект операторов: постановка р…","t":"Антагонистический режим: два подагента и явное управление областью поиска","u":"/post/sbse/18-antagonistic-search-control/","w":"2026-07-16"},{"b":"Антипаттерны Scrum: карго-культ, зомби-скрам, мини-водопад Есть болезненный факт, о котором редко говорят на тренингах: Scrum сам по себе не делает команду лучше. Он делает проблемы видимыми. Двухнедельный таймбокс не да…","c":"post","d":"scrum-master","g":["scrum","scrum-мастер","psm","антипаттерны","agile"],"h":"Что такое антипаттерн и чем он опасен · Диагностическая рамка: три вопроса эмпиризма · Карго-культ Scrum: форма без функции · Откуда термин ","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Три главные патологии Scrum и десятки частных антипаттернов: как отличить форму без функции от работающего процесса, поч…","t":"Антипаттерны Scrum: карго-культ, зомби-скрам, мини-водопад","u":"/post/scrum-master/10-antipatterns/","w":"2026-07-16"},{"b":"Антипаттерны: God Object, Big Ball of Mud, Golden Hammer и другие Весь трек до этого места был про решения, которые работают. Порождающие, структурные, поведенческие, конкурентные и функциональные паттерны — это выкриста…","c":"post","d":"design-patterns","g":["паттерны проектирования","антипаттерны","рефакторинг","технический долг","архитектура"],"h":"Что такое антипаттерн (и чем он не является) · Силы, которые порождают антипаттерны · Карта каталога · God Object (он же Blob, он же класс-б","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Каталог решений, которые выглядят разумно в момент принятия и разрушают систему через год: God Object, Big Ball of Mud, …","t":"Антипаттерны: God Object, Big Ball of Mud, Golden Hammer и другие","u":"/post/design-patterns/06-antipatterns/","w":"2026-07-16"},{"b":"Артефакты и обязательства: цель продукта, цель спринта, Definition of Done Спросите у команды, которая полгода «делает Scrum»: «Какая у вас цель этого спринта?» В половине случаев вы услышите пересказ доски: «Ну, мы дела…","c":"post","d":"scrum-master","g":["scrum","scrum-мастер","psm","agile"],"h":"Зачем вообще нужны артефакты: прозрачность как предусловие · Product Backlog и Product Goal · Что говорит Scrum Guide · Какую задачу решает ","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Три артефакта Scrum и три обязательства из Scrum Guide 2020: зачем нужен Product Goal, почему Sprint Goal важнее списка …","t":"Артефакты и обязательства: цель продукта, цель спринта, Definition of Done","u":"/post/scrum-master/05-artifacts/","w":"2026-07-16"},{"b":"Архитектура dApp: фронтенд, индексация, ноды, RPC, офчейн-компоненты Контракт задеплоен, тесты зелёные, адрес в блокчейн-эксплорере. Дальше выясняется неприятное: пользоваться этим невозможно. Список позиций не собираетс…","c":"post","d":"web3","g":["web3","dapp","архитектура","индексация","rpc"],"h":"Пять слоёв и одна граница доверия · Цепь как база данных: чего в ней нет · Слой RPC: то, через что вы вообще видите цепь · Минимальный набор","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Как из контракта получается работающее приложение: слой RPC и теги блока, свой узел против провайдера, индексация логов …","t":"Архитектура dApp: фронтенд, индексация, ноды, RPC, офчейн-компоненты","u":"/post/web3/11-dapp-architecture/","w":"2026-07-16"},{"b":"Архитектура Elixir-приложений Синтаксис и OTP вы знаете; теперь вопрос — как организовать это в поддерживаемую систему. Elixir поощряет функциональное ядро в устойчивой оболочке: чистая бизнес-логика, обёрнутая в тонкий …","c":"post","d":"elixir","g":["elixir","архитектура","базы данных","конфигурация","устойчивость"],"h":"Функциональное ядро, императивная оболочка · Контексты — модульные границы предметной области · Гексагональная архитектура и инверсия зависи","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Организация продакшн-кода на Elixir: контексты Phoenix, слоистая/гексагональная архитектура, инверсия зависимостей через…","t":"Архитектура Elixir-приложений: контексты, гексагональная архитектура, Ecto и устойчивость","u":"/post/elixir/06-architecture-production/","w":"2026-07-16"},{"b":"Архитектура и продакшн-код на Go Go подталкивает к простоте, и это распространяется на архитектуру. Здесь не любят тяжёлые фреймворки, магические аннотации и контейнеры зависимостей с рефлексией. Идиоматичная архитектура…","c":"post","d":"golang","g":["go","архитектура","di","конфигурация","базы данных"],"h":"Слои и гексагональная архитектура — по-гошному · Внедрение зависимостей без фреймворка · Конфигурация через окружение · HTTP: net/http и роу","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Гексагональная архитектура по-гошному, ручной DI, конфиг через env, net/http и роутеры, database/sql с pgx и sqlc, устой…","t":"Архитектура и прод-код на Go: слои, DI, конфигурация и БД","u":"/post/golang/06-architecture-production/","w":"2026-07-16"},{"b":"Архитектура и эволюция платформы данных: Lambda, Kappa, lakehouse, Data Mesh и миграции Вопрос «какой стек выбрать для данных» задают чаще всего и отвечают на него хуже всего — потому что он поставлен неправильно. Стек н…","c":"post","d":"data-engineering","g":["данные","архитектура данных","data mesh","миграции","платформа"],"h":"1. Три архитектурных семейства · 2. Что на самом деле определяет выбор · 3. Стадии зрелости · 4. Централизованная команда или Data Mesh · 5.","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как выбирается и как меняется архитектура платформы данных: три архитектурных семейства, факторы выбора, стадии зрелости…","t":"Архитектура и эволюция платформы данных: Lambda, Kappa, lakehouse, Data Mesh и миграции","u":"/post/data-engineering/13-platform-architecture-and-evolution/","w":"2026-07-16"},{"b":"Архитектура мобильного приложения: слои, состояние, MVVM/MVI, DI Что именно архитектура решает на мобильном Архитектура — это не диаграмма и не набор папок. Это множество решений, которые дорого менять позже, и на мобиль…","c":"post","d":"mobile","g":["мобильная разработка","архитектура","состояние","mvvm","di"],"h":"Что именно архитектура решает на мобильном · Слои и правило зависимостей · Однонаправленный поток данных · Состояние экрана как тип, а не ка","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Как устроено мобильное приложение внутри: слои и правило зависимостей, однонаправленный поток данных, MVVM против MVI, с…","t":"Архитектура мобильного приложения: слои, состояние, MVVM/MVI, DI","u":"/post/mobile/06-architecture/","w":"2026-07-16"},{"b":"Архитектура на ФП: функциональное ядро и императивная оболочка, ресурсы Пятнадцать статей мы разбирали инструменты по одному: чистые функции, неизменяемость, композиция, ADT, функторы, монады, эффекты, конкурентность. Ка…","c":"post","d":"functional-programming","g":["функциональное программирование","архитектура","тестирование","elixir","typescript"],"h":"Сначала боль: почему «просто пишите чистые функции» не работает · Инструмент: функциональное ядро, императивная оболочка · Переписываем прим","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Как собрать из чистых функций целое приложение: функциональное ядро и императивная оболочка, решения как данные, что дел…","t":"Архитектура на ФП: функциональное ядро и императивная оболочка, ресурсы","u":"/post/functional-programming/16-architecture-and-practice/","w":"2026-07-16"},{"b":"Архитектура прод-приложений на .NET Теперь соберём всё в поддерживаемую систему. Цель архитектуры — не красота ради красоты, а управление зависимостями так, чтобы бизнес-логику можно было менять и тестировать независимо …","c":"post","d":"csharp","g":["csharp","архитектура","di","конфигурация","базы данных"],"h":"Слои и правило зависимостей · Dependency Injection в .NET · Конфигурация и Options pattern · EF Core: работа с базой данных · Миграции · Тре","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Как строить поддерживаемые сервисы на .NET: слоистая и гексагональная архитектура, DI-контейнер, конфигурация и Options,…","t":"Архитектура прод-приложений на .NET: DI, слои, Options и EF Core","u":"/post/csharp/06-architecture-production/","w":"2026-07-16"},{"b":"Архитектура прод-приложений: слои, модули, конфигурация, устойчивость Мы умеем писать классы, коллекции, потоки, тесты, Spring-бины и запросы к базе. Этого достаточно, чтобы сервис заработал. Недостаточно — чтобы он прож…","c":"post","d":"java","g":["java","архитектура","конфигурация","устойчивость","spring"],"h":"Правило зависимостей: почему в Java его можно скомпилировать · Пакеты по фиче, а не по слою · package-private — недооценённый инструмент · Д","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как собрать Java-сервис, который переживёт три года изменений и чужой отказ: направление зависимостей, проверяемое компи…","t":"Архитектура прод-приложений: слои, модули, конфигурация, устойчивость","u":"/post/java/12-architecture-production/","w":"2026-07-16"},{"b":"Архитектура стилей: БЭМ, CSS-modules, CSS-in-JS, Tailwind, дизайн-системы В предыдущей статье мы разобрали раскладку. Но вёрстка одного экрана и вёрстка продукта на 400 экранов — разные инженерные задачи. Второе ломается…","c":"post","d":"frontend","g":["frontend","css","дизайн-система","tailwind","производительность"],"h":"Корень проблемы: CSS — одно глобальное пространство имён · Семь осей, по которым честно сравнивать подходы · БЭМ: дисциплина имён вместо инс","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Как перестать бояться собственных стилей: изоляция имён, каскадные слои, CSS Modules, zero-runtime CSS-in-JS, Tailwind, …","t":"Архитектура стилей: БЭМ, CSS-modules, CSS-in-JS, Tailwind, дизайн-системы","u":"/post/frontend/05-css-architecture/","w":"2026-07-16"},{"b":"Архитектура фронтенда: слои, монорепо, микрофронтенды, деплой и мониторинг В предыдущей статье мы выбирали фреймворк. Это решение кажется главным ровно до момента, когда проект переваливает за сотню файлов и трёх разрабо…","c":"post","d":"frontend","g":["frontend","архитектура","монорепо","деплой","мониторинг"],"h":"Три вопроса, на которые отвечает архитектура фронтенда · Слой первый: границы внутри одного приложения · Почему components/ hooks/ utils/ ра","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Как устроить фронтенд-проект так, чтобы он выдержал три года и десять человек: слои и правило зависимостей, изоляция API…","t":"Архитектура фронтенда: слои, монорепо, микрофронтенды, деплой и мониторинг","u":"/post/frontend/17-frontend-architecture/","w":"2026-07-16"},{"b":"Архитектурные паттерны: карта трека и как выбирать архитектуру Эта статья — вход в трек. Она не пересказывает остальные двенадцать материалов, а даёт то, без чего они превращаются в набор модных слов: систему координат. …","c":"post","d":"architecture-patterns","g":["архитектура","атрибуты качества","trade-offs","adr","проектирование систем"],"h":"1. Что такое архитектура и почему это не «схема с квадратиками» · 2. Карта трека · 3. Оси, а не список стилей · 4. Движущие силы: атрибуты к","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Что такое архитектура на самом деле, из каких осей состоит выбор стиля, как связать атрибуты качества с решениями и как …","t":"Архитектурные паттерны: карта трека и как выбирать архитектуру","u":"/post/architecture-patterns/00-overview/","w":"2026-07-16"},{"b":"Архитектурные решения: ADR, trade-offs, ATAM, эволюционная архитектура Предыдущие десять статей трека были про варианты: слои, монолит, микросервисы, события, CQRS, саги, API, кэш, устойчивость, serverless. Эта статья — …","c":"post","d":"architecture-patterns","g":["архитектура","adr","trade-offs","atam","эволюционная архитектура"],"h":"1. Что делает решение архитектурно значимым · 2. ADR: формат, который действительно работает · 2.1. Полный пример · 2.2. Y-statement: ADR в ","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Как отличить архитектурно значимое решение от обычного, записать его в ADR, честно сравнить альтернативы по атрибутам ка…","t":"Архитектурные решения: ADR, trade-offs, ATAM, эволюционная архитектура","u":"/post/architecture-patterns/11-architecture-decisions/","w":"2026-07-16"},{"b":"Архитектурные шаблоны на практике: как выбрать форму системы Предыдущие четыре главы разбирали систему по частям: клиент, сервер, данные, интеграция. Эта глава — про то, как эти части складываются в форму целого, и почем…","c":"post","d":"development","g":["development","архитектура","проектирование","микросервисы","trade-offs"],"h":"1. Архитектура — это множество решений, которые дорого менять · 2. Шаблон, стиль и паттерн проектирования: три разных слова · 3. Настоящий к","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Обзорная карта архитектурных шаблонов — от многоуровневой архитектуры до микросервисов — в едином формате «контекст / за…","t":"Архитектурные шаблоны на практике: как выбрать форму системы","u":"/post/development/05-architecture-in-practice/","w":"2026-07-16"},{"b":"Архитектуры ядер: монолитное, микроядро, гибридное, экзоядро, unikernel Спор об архитектуре ядра выглядит как схоластика — пока вы не начинаете отлаживать kernel panic из-за драйвера сетевой карты, не выясняете, почему в…","c":"post","d":"operating-systems","g":["операционные системы","ядро","микроядро","unikernel","изоляция"],"h":"Единственный вопрос, который решает архитектура ядра · Сколько стоит граница: измеряем · Монолитное ядро · Различия внутри лагеря монолитов ","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как устроены ядра изнутри — где проходят границы защиты, сколько они стоят, и почему Linux монолитный, seL4 микроядерный…","t":"Архитектуры ядер: монолитное, микроядро, гибридное, экзоядро, unikernel","u":"/post/operating-systems/02-kernel-architectures/","w":"2026-07-16"},{"b":"Асимптотика, амортизация и модель памяти: как на самом деле считать стоимость Почти любой справочник по структурам данных начинается с таблицы: «поиск — O(1), вставка — O(n)». Эта таблица полезна ровно до того момента, к…","c":"post","d":"data-structures","g":["структуры данных","асимптотика","амортизация","производительность","кэш"],"h":"1. Зачем вообще нужна асимптотика · 2. Модель вычислений: что мы вообще считаем · 3. Строгие определения: O, Θ, Ω и почему их путают · Класс","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Строгий разбор O-нотации, трёх методов амортизированного анализа и модели памяти — почему O(1) бывает в сто раз медленне…","t":"Асимптотика, амортизация и модель памяти: как на самом деле считать стоимость","u":"/post/data-structures/01-complexity-and-memory/","w":"2026-07-16"},{"b":"Асинхронная переписка: письма, чаты, статусы В распределённой команде вопрос стоит денег. Не метафорически: если вы в UTC+3, а человек, который знает ответ, в UTC-5, то каждый обмен репликами стоит примерно сутки. Задали…","c":"post","d":"engineering-english","g":["английский","коммуникация","удалённая работа","командная работа","документация"],"h":"Для кого эта глава · Карта жанров · Цена одного round-trip · Окно перекрытия: когда ваше сообщение прочитают · Куда писать: канал важнее фор","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Как писать письма, сообщения в чате и статусы на английском так, чтобы ответ пришёл с первого раза: разбор реальных форм…","t":"Асинхронная переписка: письма, чаты, статусы","u":"/post/engineering-english/07-async-communication/","w":"2026-07-16"},{"b":"Асинхронный Rust: future, tokio, async/await и его подводные камни В предыдущей статье мы разобрали конкурентность на потоках: std::thread::spawn, каналы, Arc\u003cMutex\u003cT\u003e\u003e, типажи Send и Sync. Этой модели хватает для огромн…","c":"post","d":"rust","g":["rust","асинхронность","конкурентность","производительность","tokio"],"h":"Future: трейт из трёх строк · async fn — это автомат состояний · Кто вызывает poll: исполнитель, реактор, Waker · Жизненный цикл задачи · to","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Future как инертный автомат состояний, а не как поток: кто вызывает poll, зачем нужны Waker и Pin, как устроен рантайм t…","t":"Асинхронный Rust: future, tokio, async/await и его подводные камни","u":"/post/rust/09-async/","w":"2026-07-16"},{"b":"Аспектно-ориентированное и событийно-ориентированное программирование Все парадигмы, разобранные до сих пор, сохраняли одно свойство: глядя на строчку кода, вы понимали, что произойдёт дальше. В императивной — следующий …","c":"post","d":"paradigms","g":["парадигмы","аспектно-ориентированное программирование","событийно-ориентированная архитектура","event sourcing","kafka"],"h":"Часть I. Аспектно-ориентированное программирование · Проблема: тирания доминирующей декомпозиции · Модель точек соединения — сердце парадигм","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Две парадигмы неявного вызова: аспекты вмешиваются в чужой поток управления по срезу точек соединения, события инвертиру…","t":"Аспектно-ориентированное и событийно-ориентированное программирование","u":"/post/paradigms/08-aspect-and-event-driven/","w":"2026-07-16"},{"b":"Ассемблер для программиста: регистры, стек, соглашения о вызовах Почти никому сегодня не нужно писать на ассемблере. Компилятор распределяет регистры лучше человека, знает задержки инструкций на трёх поколениях микроархи…","c":"post","d":"systems-programming","g":["системное программирование","c","ассемблер","x86-64","abi"],"h":"Когда программисту действительно нужен ассемблер · Модель машины: регистры, флаги, память · Карта инструкций: их не сотни, а десятки · Как п","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Как читать ассемблер x86-64 и AArch64, чтобы понимать собственный C-код: регистры и флаги, кадр стека, System V ABI, кон…","t":"Ассемблер для программиста: регистры, стек, соглашения о вызовах","u":"/post/systems-programming/10-assembly-basics/","w":"2026-07-16"},{"b":"Аутентификация: пароли, хеширование, сессии, MFA, восстановление доступа Аутентификация — ответ на вопрос «кто передо мной». Не «что ему можно» (это авторизация, см. Авторизация: RBAC, ABAC, ACL, multi-tenancy) и не «как…","c":"post","d":"security","g":["безопасность","аутентификация","пароли","сессии","mfa"],"h":"Три фактора и главный водораздел · Модель угроз формы входа · Пароли: почему старые политики вредны · Хеширование: уязвимый код · Хешировани","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как устроен вход в систему изнутри: почему пароли хешируют памятеёмкими функциями, как не сломать сессию, что реально да…","t":"Аутентификация: пароли, хеширование, сессии, MFA, восстановление доступа","u":"/post/security/05-authentication/","w":"2026-07-16"},{"b":"Базы данных: карта трека и как выбирать хранилище под задачу Это вход в трек из двадцати статей. Она не пересказывает остальные, а даёт то, без чего они превращаются в каталог брендов: систему координат. После неё вы смо…","c":"post","d":"databases","g":["базы данных","sql","nosql","архитектура данных","хранилища"],"h":"1. Цена ошибки, или почему это не «просто выберем позже» · 2. Пять осей, на которых живёт любое хранилище · 3. Физика под капотом: почему пр","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Система координат для выбора хранилища: паттерн доступа, модель данных, гарантии консистентности, стоимость эксплуатации…","t":"Базы данных: карта трека и как выбирать хранилище под задачу","u":"/post/databases/00-overview/","w":"2026-07-16"},{"b":"Безопасная разработка: практики, ревью, SAST/DAST, security-чемпионы Тринадцать предыдущих статей трека — от моделирования угроз до цепочки поставок — отвечали на вопрос «как устроена конкретная уязвимость и как её почин…","c":"post","d":"security","g":["безопасность","devsecops","sast","ревью кода","sdlc"],"h":"Три способа не иметь уязвимости · Экономика: почему важна не находка, а расстояние до неё · Что должно быть в коде: безопасность по построен","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как превратить разрозненные знания об уязвимостях в повседневный процесс: безопасные умолчания в коде, ревью с прицелом …","t":"Безопасная разработка: практики, ревью, SAST/DAST, security-чемпионы","u":"/post/security/14-secure-coding/","w":"2026-07-16"},{"b":"Безопасность API: rate limiting, IDOR, массовое присвоение, валидация У веб-страницы есть посредник — браузер, который что-то не покажет и куда-то не даст нажать. У API посредника нет: клиент API — программа, и она отпра…","c":"post","d":"security","g":["безопасность","api","rate limiting","авторизация","валидация"],"h":"Рамка: мы защищаем, а не атакуем · Слои: кто и что физически может проверить · API1: BOLA, он же IDOR · API3: массовое присвоение и утечка п","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Почему у API нет интерфейса, который что-то прячет: BOLA и IDOR, массовое присвоение и утечка полей, валидация как контр…","t":"Безопасность API: rate limiting, IDOR, массовое присвоение, валидация","u":"/post/security/11-api-security/","w":"2026-07-16"},{"b":"Безопасность и изоляция: права, capabilities, SELinux, namespaces, cgroups, jails Операционная система существует ради одной задачи, которая формулируется до неприличия просто: несколько взаимно недоверяющих программ раб…","c":"post","d":"operating-systems","g":["операционные системы","безопасность","linux","контейнеры","изоляция"],"h":"Модель угроз: от чего вообще защищаемся · Дискреционный доступ: uid, gid и двенадцать бит · Почему DAC-модели недостаточно · Capabilities: r","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как ядро решает, можно ли процессу сделать то, что он просит: биты прав и ACL, разбор root на 41 capability, мандатный д…","t":"Безопасность и изоляция: права, capabilities, SELinux, namespaces, cgroups, jails","u":"/post/operating-systems/09-security-and-isolation/","w":"2026-07-16"},{"b":"Безопасность конвейера: секреты, supply chain, SAST/DAST, подпись образов Мы прошли трек целиком: от https://courses.digitable.life/post/devops/01-ci-fundamentals/ до https://courses.digitable.life/post/devops/16-observa…","c":"post","d":"devops","g":["devops","безопасность","supply chain","секреты","контейнеры"],"h":"Модель угроз: против чего мы играем · Хронология: почему это перестало быть теорией · Секреты: почему переменная окружения — это не хранилищ","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как перестать быть слабым звеном: управление секретами через OIDC вместо ключей, защита от атак на цепочку поставок, SBO…","t":"Безопасность конвейера: секреты, supply chain, SAST/DAST, подпись образов","u":"/post/devops/17-security-in-pipeline/","w":"2026-07-16"},{"b":"Безопасность контрактов: reentrancy, переполнения, оракулы, аудит В обычном бэкенде безопасность — дисциплина снижения вероятности: нашли дыру, выкатили патч, заплатили репутацией. В смарт-контрактах вероятность равна ед…","c":"post","d":"web3","g":["web3","solidity","безопасность","смарт-контракты","аудит"],"h":"1. Модель угроз: что именно вы защищаете · 2. Reentrancy: механика повторного входа · 3. Арифметика: переполнение, обрезание, округление · 4","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Классы уязвимостей смарт-контрактов на уровне механики EVM: reentrancy включая read-only, арифметика и округление, контр…","t":"Безопасность контрактов: reentrancy, переполнения, оракулы, аудит","u":"/post/web3/06-contract-security/","w":"2026-07-16"},{"b":"Безопасность мобильного: хранение секретов, биометрия, пиннинг, реверс В вебе граница безопасности проходит по HTTP-запросу. Ваш код живёт на сервере, браузер получает разметку и скрипты, а всё важное — пароли, ключи, би…","c":"post","d":"mobile","g":["мобильная разработка","безопасность","криптография","аутентификация","keychain"],"h":"Модель угроз: против кого мы вообще защищаемся · Хранение секретов: где что лежит и кто это прочитает · iOS: Keychain и классы доступности ·","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Почему мобильное приложение — это код на устройстве противника: модель угроз, Keychain и Keystore по классам доступности…","t":"Безопасность мобильного: хранение секретов, биометрия, пиннинг, реверс","u":"/post/mobile/10-security/","w":"2026-07-16"},{"b":"Безопасность по умолчанию: секреты, доступы, соответствие требованиям Платформенная команда получила задачу от службы безопасности: «закрыть уязвимости в образах». Сделали быстро и правильно, как казалось: сканер в конве…","c":"post","d":"platform-engineering","g":["платформа","безопасность","секреты","соответствие требованиям","золотой путь"],"h":"Почему безопасность в платформе — про принятие, а не про полноту · Секреты: проблема не в шифровании, а в числе живых копий · Лестница зрело","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Как встроить безопасность в золотой путь так, чтобы её не обходили: короткоживущие доступы вместо ключей, точки контроля…","t":"Безопасность по умолчанию: секреты, доступы, соответствие требованиям","u":"/post/platform-engineering/10-security-and-compliance/","w":"2026-07-16"},{"b":"Безопасность приложений: карта трека и как думать об угрозах Этот трек — про защиту. Мы разбираем механику уязвимостей ровно настолько, насколько это нужно, чтобы находить их в своём коде, чинить и не допускать повторно.…","c":"post","d":"security","g":["безопасность","owasp","моделирование угроз","appsec","уязвимости"],"h":"1. Чем безопасность отличается от корректности · 2. Границы доверия и поверхность атаки · 3. Цикл мышления об угрозах · 4. Словарь: CWE, CVE","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Вход в трек прикладной безопасности: чем уязвимость отличается от бага, что такое границы доверия и поверхность атаки, к…","t":"Безопасность приложений: карта трека и как думать об угрозах","u":"/post/security/00-overview/","w":"2026-07-16"},{"b":"Безопасность цепочки поставок: зависимости, SBOM, подпись артефактов Соберите сегодня типовой веб-сервис — и в продакшн уедет несколько сотен тысяч строк кода, которые не писал никто из вашей команды. Часть этого кода вы…","c":"post","d":"security","g":["безопасность","цепочка поставок","sbom","зависимости","devsecops"],"h":"Почему это отдельный класс угроз · Модель угроз: где именно вставляется вредонос · Транзитивные зависимости: измеряем радиус доверия · Как ч","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как чужой код становится вашим кодом, где именно в конвейере его можно подменить, зачем нужны lock-файлы с хешами, SBOM …","t":"Безопасность цепочки поставок: зависимости, SBOM, подпись артефактов","u":"/post/security/13-supply-chain/","w":"2026-07-16"},{"b":"Безопасность: prompt injection, утечки данных, ограничение инструментов, red teaming К этому моменту трека у вас есть агент с инструментами, RAG поверх корпоративной базы и, возможно, MCP-серверы, подключённые к почте и …","c":"post","d":"ai-engineering","g":["ии-инженерия","безопасность","prompt injection","агенты","red teaming"],"h":"Главный тезис: границы между инструкцией и данными не существует · Injection ≠ jailbreak · Таксономия атак · Смертельная тройка · Как выгляд","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Почему prompt injection нельзя починить промптом, как строятся реальные утечки через агентов, какие архитектурные паттер…","t":"Безопасность: prompt injection, утечки данных, ограничение инструментов, red teaming","u":"/post/ai-engineering/14-safety-and-injection/","w":"2026-07-16"},{"b":"Безопасность: секреты, права, инъекции в промпт и цепочка поставки Есть один способ понять, что происходит с безопасностью, когда вы запускаете агента в рабочем каталоге. Посмотрите на процесс не как на «умного помощника…","c":"post","d":"ai-agents","g":["ai-агенты","безопасность","секреты","цепочка поставки","агенты"],"h":"Что здесь действительно новое, а что нет · Модель угроз на одну страницу · Инъекция в промпт: механизм · Почему инъекцию нельзя починить про","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Что меняется в модели угроз, когда в цикле появляется агент с вашими правами: где утекают секреты, почему allow-list на …","t":"Безопасность: секреты, права, инъекции в промпт и цепочка поставки","u":"/post/ai-agents/13-security/","w":"2026-07-16"},{"b":"Безопасные релизы: флаги, канареечные выкатки, откат Вторник, 14:10. Выкатывается версия с новым способом сериализации ответа корзины. Rolling update на сорок подов идёт двенадцать минут, к 14:22 везде новый код. В 14:31…","c":"post","d":"sre","g":["надёжность","sre","релизы","фича-флаги","деплой"],"h":"Изменение — главная причина отказов, и это хорошая новость · Три разных слова, которые все зовут «релизом» · Арифметика радиуса поражения · ","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Почему радиус поражения — это площадь, сколько трафика нужно канарейке для статистики, чем флаг отличается от выкатки и …","t":"Безопасные релизы: флаги, канареечные выкатки, откат","u":"/post/sre/13-release-safety/","w":"2026-07-16"},{"b":"Бенчмаркинг честно: разогрев, шум, статистика, типичные самообманы В предыдущей статье мы разбирали, что измерять: перцентили, latency против throughput, USE и RED. Теперь — как измерять так, чтобы результату можно было …","c":"post","d":"performance","g":["производительность","бенчмаркинг","измерения","статистика","нагрузочное тестирование"],"h":"Бенчмарк — это эксперимент, а не запуск программы · Три масштаба: что вы меряете и чего это стоит · Анатомия честного бенчмарка · Разогрев: ","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Как построить бенчмарк, которому можно верить: разогрев до стационарного режима, подавление шума, устойчивая статистика …","t":"Бенчмаркинг честно: разогрев, шум, статистика, типичные самообманы","u":"/post/performance/02-benchmarking/","w":"2026-07-16"},{"b":"Бесстрашная конкурентность: потоки, каналы, Send и Sync, разделяемое состояние «Fearless concurrency» — единственный маркетинговый слоган Rust, который является техническим утверждением с доказательством. Он не говорит «…","c":"post","d":"rust","g":["rust","конкурентность","потоки","синхронизация","производительность"],"h":"Задача: один счётчик и восемь потоков · Что «бесстрашная конкурентность» обещает и что не обещает · Поток как ресурс операционной системы · ","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Как Rust делает гонки данных невыразимыми: потоки и scoped threads, каналы как передача владения, Send и Sync как два пр…","t":"Бесстрашная конкурентность: потоки, каналы, Send и Sync, разделяемое состояние","u":"/post/rust/08-concurrency/","w":"2026-07-16"},{"b":"Бизнес для инженера: карта трека и трезвый взгляд на самостоятельность Есть распространённая мысль: «компания продаёт мой час втрое дороже, чем платит мне; уберу посредника — заберу разницу». Соблазнительно и почти всегд…","c":"post","d":"business","g":["бизнес","фриланс","деньги","риски","карьера"],"h":"1. Что именно вы забираете себе · 1.1. Наём — это контракт про риск, а не про деньги · 1.2. Функции, которые «внезапно ваши» · 2. Арифметика","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Что на самом деле меняется, когда инженер начинает продавать свою работу сам: какие функции компании придётся забрать се…","t":"Бизнес для инженера: карта трека и трезвый взгляд на самостоятельность","u":"/post/business/00-overview/","w":"2026-07-16"},{"b":"Биллинг: пробный период, апгрейды, возвраты, налоги и валюты Обещание «первые 14 дней бесплатно» помещается в одну строку лендинга. В системе оно разворачивается в отдельное состояние права, идемпотентную фоновую задачу …","c":"post","d":"software-distribution","g":["поставка софта","биллинг","монетизация","подписка","налоги"],"h":"Что такое биллинг и чем он не является · Модель данных: минимум, без которого не выжить · Два автомата: подписка и право · Пробный период: ч","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Биллинг — не «приём платежей», а учёт того, кому что положено и сколько это стоит: пробный период как четыре разные меха…","t":"Биллинг: пробный период, апгрейды, возвраты, налоги и валюты","u":"/post/software-distribution/07-billing/","w":"2026-07-16"},{"b":"Большие репозитории и монорепо: submodules, subtree, sparse-checkout, LFS Момент, когда репозиторий «стал большим», обычно замечают не по метрикам, а по раздражению: git status думает восемь секунд, клон на новой машине …","c":"post","d":"git","g":["git","монорепо","производительность","инструменты","процессы"],"h":"Три оси роста · Модель стоимости команд · Сначала измерить · Два способа склеить репозитории: submodule и subtree · Submodule: указатель в д","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Репозиторий растёт по трём независимым осям — глубина истории, ширина дерева, вес содержимого — и каждая ось лечится сво…","t":"Большие репозитории и монорепо: submodules, subtree, sparse-checkout, LFS","u":"/post/git/09-monorepo/","w":"2026-07-16"},{"b":"Большие языковые модели: от T9 до трансформера Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 30:13 — отсюда взято содержание этой главы. К этому месту трека собраны все детали. Глава «Цепи Маркова» дала идею п…","c":"post","d":"ai-basics","g":["основы ии","llm","трансформеры","внимание","инференс"],"h":"Определение, из которого следует всё остальное · Связь с цепями Маркова: что именно поменялось · Почему вероятности, а не правила · «T9 с на","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Языковая модель как распределение следующего токена при условии всего контекста: конвейер от текста до логитов, что на с…","t":"Большие языковые модели: от T9 до трансформера","u":"/post/ai-basics/06-llm/","w":"2026-07-16"},{"b":"Большие языковые модели: предобучение, дообучение, инференс В предыдущей статье мы разобрали механизм внимания и архитектуру трансформера. Трансформер — это кирпич. Эта статья про то, что произошло, когда из этого кирпич…","c":"post","d":"neural-networks","g":["нейросети","llm","трансформеры","дообучение","инференс"],"h":"1. Постановка задачи: языковое моделирование · 2. Токенизация: почему модель не видит буквы · 3. Архитектура современной LLM · 4. Предобучен","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Как из предсказания следующего токена вырастает LLM: токенизация, архитектура decoder-only, законы масштабирования, SFT …","t":"Большие языковые модели: предобучение, дообучение, инференс","u":"/post/neural-networks/06-llm/","w":"2026-07-16"},{"b":"Булева логика и логические вентили: из чего собран процессор К этому моменту трека всё уже стало числами: двоичная система показала, как любое число укладывается в биты, а представление данных — как в те же биты укладыва…","c":"post","d":"computer-science","g":["computer science","булева логика","логические вентили","цифровая логика","транзисторы"],"h":"Булева алгебра: вся математика на двух значениях · Вентиль: операция, отлитая в железо · Функциональная полнота: одного вентиля достаточно ·","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Как из двух значений — 0 и 1 — и трёх операций собираются вентили, сумматоры, память и, в конце концов, целый процессор.…","t":"Булева логика и логические вентили: из чего собран процессор","u":"/post/computer-science/04-boolean-logic-and-gates/","w":"2026-07-16"},{"b":"Бюджет ошибок: арифметика и что она меняет в решениях В прошлой главе мы выбирали показатель и назначали ему цель: «99,9% запросов к оформлению заказа завершаются успешно за 30 дней». Прочитаем ту же строчку задом наперё…","c":"post","d":"sre","g":["надёжность","sre","slo","бюджет ошибок","мониторинг"],"h":"Одна формула · Сколько это в минутах · Пять девяток: арифметика неприличия · Аргумент первый: человек не успевает · Аргумент второй: зависим","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Сколько минут в месяц даёт 99,9%, как считать скорость сжигания бюджета, почему пять девяток почти никому не нужны и что…","t":"Бюджет ошибок: арифметика и что она меняет в решениях","u":"/post/sre/03-error-budget/","w":"2026-07-16"},{"b":"Вайрфреймы и прототипы: быстрая проверка идей до кода К этому месту трека у вас есть знание о задаче: что людям нужно (исследования), для кого и зачем (персоны и JTBD), из чего состоит продукт (информационная архитектура…","c":"post","d":"ux-design","g":["дизайн","ux","прототипирование","вайрфреймы","handoff"],"h":"1. Экономика поздней ошибки · 2. Точность (fidelity) — четыре оси, а не одна шкала · 3. Цикл: вопрос → артефакт → проверка → решение · 4. Ва","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как за часы, а не за спринты, проверить идею интерфейса: оси точности прототипа, разборы неудобной формы и ненайденной к…","t":"Вайрфреймы и прототипы: быстрая проверка идей до кода","u":"/post/ux-design/05-wireframes-and-prototypes/","w":"2026-07-16"},{"b":"Вверх по цепочке: отчётность, ожидания руководства и защита команды Совещание, на котором вас спрашивают: «Почему интеграция не готова, вы же говорили — три недели?» Честный ответ у вас есть. За эти три недели было двена…","c":"post","d":"engineering-leadership","g":["лидерство","тимлид","менеджмент","коммуникация","управление командой"],"h":"Оговорка про доказательства · Что такое «управление вверх» и что им не является · Ваш руководитель — тоже система с ограничениями · Контракт","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Как устроен канал наверх: почему информация теряется на каждом уровне, как выглядит отчёт, который читают, когда эскалац…","t":"Вверх по цепочке: отчётность, ожидания руководства и защита команды","u":"/post/engineering-leadership/15-managing-up/","w":"2026-07-16"},{"b":"Ввод-вывод, JSON и HTTP: как .NET говорит с внешним миром Почти любой сервис — это труба: снаружи приходят байты, внутри они превращаются в объекты, над объектами выполняется логика, и наружу снова уезжают байты. Мы уже …","c":"post","d":"csharp","g":["csharp","json","http","сериализация","ввод-вывод"],"h":"Общая картина: путь байта · Stream: единая абстракция ввода-вывода · Файлы и пути кросс-платформенно · System.Text.Json: сериализация по умо","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Как .NET-приложение разговаривает с внешним миром: Stream и файлы, System.Text.Json с генераторами кода и кастомными кон…","t":"Ввод-вывод, JSON и HTTP в .NET: потоки, System.Text.Json и IHttpClientFactory","u":"/post/csharp/10-io-json-http/","w":"2026-07-16"},{"b":"Ввод-вывод, драйверы, прерывания и DMA Процессор умеет ровно две вещи: считать и ходить в память. Всё остальное — диск, сеть, клавиатура, GPU, датчик температуры — для него внешний мир, с которым надо как-то договаривать…","c":"post","d":"operating-systems","g":["операционные системы","ввод-вывод","драйверы","прерывания","dma","linux"],"h":"Три способа поговорить с устройством · Port I/O: исторический тупик, который до сих пор жив · MMIO: регистры устройства выглядят как память ","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как байт из вашего write() доходит до железа: MMIO и порты, прерывания от PIC до MSI-X, DMA и кольца дескрипторов, блочн…","t":"Ввод-вывод, драйверы, прерывания и DMA","u":"/post/operating-systems/06-io-and-drivers/","w":"2026-07-16"},{"b":"Ввод-вывод: блокирующий и асинхронный, syscalls, буферизация Есть характерный момент в жизни инженера производительности: CPU-профиль снят, он идеален — ровный, без единого жирного кадра, суммарное время в профиле 4 секу…","c":"post","d":"performance","g":["производительность","ввод-вывод","syscalls","linux","профилирование"],"h":"1. Анатомия одного read(): что происходит между вызовом и данными · 2. Сколько на самом деле стоит системный вызов · Косвенная цена: то, чег","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Что на самом деле стоит системный вызов, почему буферизация даёт больше, чем любая замена библиотеки, как устроены epoll…","t":"Ввод-вывод: блокирующий и асинхронный, syscalls, буферизация","u":"/post/performance/06-io-and-syscalls/","w":"2026-07-16"},{"b":"Веб и API: FastAPI, Django, валидация, асинхронные приложения Наш сквозной сервис — агрегатор событий — до сих пор жил как библиотека: функции, модели, хранилище. Пора выставить его наружу. Снаружи это выглядит так: клие…","c":"post","d":"python","g":["python","fastapi","django","asyncio","api"],"h":"Два контракта: WSGI и ASGI · Модель конкурентности: где на самом деле исполняется ваш код · Как выбрать инструмент · Скелет сервиса на FastA","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"WSGI против ASGI как две модели исполнения, FastAPI и Pydantic v2 как контракт данных, Django и его ORM, асинхронные обр…","t":"Веб и API: FastAPI, Django, валидация, асинхронные приложения","u":"/post/python/15-web-and-api/","w":"2026-07-16"},{"b":"Векторные базы: pgvector, Qdrant, Milvus, Weaviate, HNSW и метрики близости Все базы данных, о которых шла речь раньше в этом треке, отвечают на вопрос «дай мне записи, точно удовлетворяющие предикату». WHERE status = 'a…","c":"post","d":"databases","g":["базы данных","векторный поиск","hnsw","pgvector","эмбеддинги"],"h":"Эмбеддинги: откуда берутся векторы · Метрики близости: их три, а по сути одна · Проклятие размерности: почему всё сложно · Точный поиск: ког","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Приближённый поиск ближайших соседей от первых принципов: метрики близости и почему они эквивалентны, устройство HNSW и …","t":"Векторные базы: pgvector, Qdrant, Milvus, Weaviate, HNSW и метрики близости","u":"/post/databases/15-vector-databases/","w":"2026-07-16"},{"b":"Вероятностные структуры: Bloom filter, HyperLogLog, Count-Min Sketch Все структуры, которые мы разбирали до сих пор, объединяет одно свойство: они точны. Хеш-таблица либо содержит ключ, либо нет. Дерево отрезков возвраща…","c":"post","d":"data-structures","g":["структуры данных","вероятностные структуры","потоковая обработка","хеширование"],"h":"Зачем вообще жертвовать точностью · Bloom filter: «точно нет» или «возможно, да» · Интуиция · Псевдокод · Математика: сколько бит и сколько ","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Как обменять точность на память: устройство и математика фильтра Блума, HyperLogLog и Count-Min Sketch, их гарантии ошиб…","t":"Вероятностные структуры: Bloom filter, HyperLogLog, Count-Min Sketch","u":"/post/data-structures/13-probabilistic-structures/","w":"2026-07-16"},{"b":"Взаимодействие и состояния: обратная связь, загрузка, ошибки, пустые экраны В дизайн-системах мы собрали набор компонентов. Но компонент в библиотеке — это не то, что видит человек. Человек видит компонент в момент време…","c":"post","d":"ux-design","g":["дизайн","ux","интерфейсы","состояния","прототипирование"],"h":"1. Первый принцип: две пропасти Нормана · 2. Пять состояний экрана: UI Stack · 3. Матрица состояний компонента · 4. Время: почему 100 мс, 1 ","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Интерфейс — это машина состояний, а не картинка. Разбираем обратную связь, пороги времени отклика, загрузку, ошибки, пус…","t":"Взаимодействие и состояния: обратная связь, загрузка, ошибки, пустые экраны","u":"/post/ux-design/08-interaction/","w":"2026-07-16"},{"b":"Виды требований: бизнес, пользовательские, функциональные, нефункциональные Классификация требований выглядит как школьная тема: выучил четыре слова, расставил ярлыки, сдал экзамен. На практике всё наоборот. Ярлык сам по…","c":"post","d":"systems-analysis","g":["аналитика","требования","спецификация","нефункциональные требования"],"h":"Карта уровней · Бизнес-требования: единственный уровень, отвечающий на «зачем» · Антиметрика: страховка от «выполнили цель и сломали бизнес»","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как разложить услышанное на уровни требований, отличить цель от решения, превратить «удобно и быстро» в проверяемую форм…","t":"Виды требований: бизнес, пользовательские, функциональные, нефункциональные","u":"/post/systems-analysis/02-requirements-types/","w":"2026-07-16"},{"b":"Визуализация: как график врёт честными данными На встрече показывают слайд: столбики растут, стрелка вверх, подпись «конверсия уверенно растёт четвёртый квартал подряд». Никто не спорит — картинка убедительна. Через полг…","c":"post","d":"data-analytics","g":["аналитика данных","визуализация данных","метрики","sql","статистика"],"h":"1. График — это канал связи с известной пропускной способностью · Коэффициент лжи Тафти · 2. Сквозная тема: график рисует выборку, а читаетс","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Все числа настоящие, а вывод неверный: обрезанные оси, двойная ось Y, неверный тип графика, агрегация вместо распределен…","t":"Визуализация: как график врёт честными данными","u":"/post/data-analytics/12-visualization/","w":"2026-07-16"},{"b":"Визуальная доступность: контраст, размер, масштабирование, анимация Предыдущие статьи трека были про людей, которые получают интерфейс не глазами: через семантику и дерево доступности, через клавиатуру, через скринридер.…","c":"post","d":"accessibility","g":["доступность","a11y","wcag","css","дизайн"],"h":"1. Карта визуальных барьеров · 2. Контраст: откуда берутся 4,5:1 · Как считается коэффициент контрастности · Пороговые значения WCAG 2.2 · С","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Как считается контраст и почему серый текст — это баг, как пережить масштаб 400% и увеличенные интервалы, каким должен б…","t":"Визуальная доступность: контраст, размер, масштабирование, анимация","u":"/post/accessibility/06-visual/","w":"2026-07-16"},{"b":"Виртуализация и контейнеры: KVM, Xen, QEMU, jails, zones, OCI-рантаймы Есть один вопрос, который стоит задать себе прежде, чем разбираться в KVM, Docker или jails: что именно мы пытаемся размножить? Операционная система …","c":"post","d":"operating-systems","g":["операционные системы","виртуализация","контейнеры","linux","изоляция"],"h":"Спектр изоляции: единственная схема, которую надо запомнить · Теория: почему x86 нельзя было виртуализировать до 2005 года · VM exit: главны","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как одно железо превращается в много машин: теорема Попека и Голдберга, VT-x и VM exit, KVM через ioctl своими руками, v…","t":"Виртуализация и контейнеры: KVM, Xen, QEMU, jails, zones, OCI-рантаймы","u":"/post/operating-systems/18-virtualization-and-containers/","w":"2026-07-16"},{"b":"Виртуальные машины: стековые и регистровые, байткод, интерпретация В прошлой статье мы спустились до конца: выбрали инструкции реального процессора, распределили регистры, соблюли ABI. Это дорогой путь. Он требует знать …","c":"post","d":"compilers","g":["компиляторы","виртуальные машины","байткод","интерпретаторы","языки программирования"],"h":"Что такое виртуальная машина · Зачем спускаться в байткод, а не в машинный код · Байткод как формат · Стековая машина · Регистровая машина ·","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Второй бэкенд компилятора: как спроектировать набор инструкций, чем стековая машина отличается от регистровой, как устро…","t":"Виртуальные машины: стековые и регистровые, байткод, интерпретация","u":"/post/compilers/09-virtual-machines/","w":"2026-07-16"},{"b":"Владение и заимствование: модель памяти без сборщика мусора В предыдущей статье мы разобрали типы, выражения и функции — но обходили стороной вопрос, который в Rust определяет вообще всё: кто и когда освобождает память п…","c":"post","d":"rust","g":["rust","управление-памятью","владение","компилятор","безопасность"],"h":"Задача: три ответа индустрии на один вопрос · Модель: значение, владелец, область · Move, Copy и clone: что физически происходит с байтами ·","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Как Rust отвечает на вопрос «кто освободит эту память» без GC и без ручного free: владение, перемещение, заимствование, …","t":"Владение и заимствование: модель памяти без сборщика мусора","u":"/post/rust/03-ownership/","w":"2026-07-16"},{"b":"Внедрение зависимостей и composition root: как собирается граф объектов Весь трек до этой главы отвечал на вопрос «какую форму придать коду»: порождающие паттерны прятали создание объектов, структурные собирали из них ко…","c":"post","d":"design-patterns","g":["паттерны проектирования","ооп","архитектура","тестирование"],"h":"Три способа получить зависимость · Строго: DI, IoC, DIP — три разных слова · Формы инъекции и когда какая · Composition root: одно место, гд","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Кто и где связывает объекты друг с другом: формы инъекции, composition root, времена жизни и захваченная зависимость, Se…","t":"Внедрение зависимостей и composition root: как собирается граф объектов","u":"/post/design-patterns/08-dependency-injection/","w":"2026-07-16"},{"b":"Внимание и трансформеры Трансформер — самая влиятельная архитектура последнего десятилетия: на ней работают языковые модели, распознавание речи, генерация изображений, предсказание структуры белка. При этом её ядро — одн…","c":"post","d":"neural-networks","g":["нейросети","трансформеры","внимание","nlp","глубокое обучение"],"h":"1. Откуда взялось внимание · 2. Интуиция: мягкий поиск по словарю · 3. Scaled dot-product attention · 4. Многоголовое внимание · 5. Три режи","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Механизм внимания с первых принципов: от узкого места seq2seq до scaled dot-product, многоголовости, RoPE, полного блока…","t":"Внимание и трансформеры","u":"/post/neural-networks/05-attention-and-transformers/","w":"2026-07-16"},{"b":"Внимание и энергия: почему время — не главный ресурс разработчика Классический тайм-менеджмент вырос из мира, где производительность линейна по времени. Клерк, обрабатывающий заявки, за восемь часов сделает примерно вдво…","c":"post","d":"time-management","g":["тайм-менеджмент","внимание","фокус","выгорание","продуктивность"],"h":"Три бюджета вместо одного · Что происходит при переключении контекста · Attention residue · Сколько стоит возврат — цифры по программистам ·","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Разбираем, почему учёт часов не работает у инженеров: механика внимания, стоимость переключения контекста, что доказано …","t":"Внимание и энергия: почему время — не главный ресурс разработчика","u":"/post/time-management/01-attention-and-energy/","w":"2026-07-16"},{"b":"Внутренности BEAM Весь курс мы пользовались обещаниями BEAM: процессы дёшевы, один жадный процесс не заморозит остальные, сборка мусора не даёт глобальных пауз, падение изолировано. Пришло время открыть капот и посмотрет…","c":"post","d":"elixir","g":["elixir","beam","производительность","память","эксплуатация"],"h":"Планировщики: карта ноды · Редукции: как достигается справедливость · Память процесса и сборка мусора · Что живёт вне кучи процесса · Ручки ","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Как устроена виртуальная машина под вашим кодом: планировщики и очереди выполнения, редукции и вытеснение, dirty-планиро…","t":"Внутренности BEAM: планировщики, редукции, сборка мусора и настройка ноды","u":"/post/elixir/13-beam-internals/","w":"2026-07-16"},{"b":"Внутри Git: объекты, blob, tree, commit, ссылки и DAG истории Большинство людей учат Git как набор заклинаний: «чтобы отменить — вот это, чтобы влить — вот то». Это работает ровно до первой нештатной ситуации, после кото…","c":"post","d":"git","g":["git","внутреннее устройство","структуры данных","модель данных"],"h":"Одна идея, из которой следует всё остальное · Про SHA-1 и переход на SHA-256 · Четыре типа объектов · blob — содержимое файла и ничего больш","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Git — это не набор команд, а маленькая контентно-адресуемая база данных из четырёх типов объектов и направленный ациклич…","t":"Внутри Git: объекты, blob, tree, commit, ссылки и DAG истории","u":"/post/git/01-internals/","w":"2026-07-16"},{"b":"Восстановление: reflog, потерянные коммиты, испорченный репозиторий Есть жанр историй, которые рассказывают друг другу разработчики: «я сделал git reset --hard и потерял два дня работы». В подавляющем большинстве случаев…","c":"post","d":"git","g":["git","восстановление","внутреннее устройство","инструменты"],"h":"Достижимость: единственное понятие, которое нужно усвоить · reflog: журнал движения каждой ссылки · Синтаксис @{…} и чем HEAD@{2} отличается","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Почему в Git почти ничего нельзя потерять безвозвратно: достижимость объектов, reflog как журнал движения ссылок, git fs…","t":"Восстановление: reflog, потерянные коммиты, испорченный репозиторий","u":"/post/git/07-recovery/","w":"2026-07-16"},{"b":"Времена жизни: зачем нужны, как читать аннотации, типичные ошибки В предыдущей статье мы разобрали владение: у каждого значения ровно один владелец, и когда владелец умирает — память освобождается детерминированно, без с…","c":"post","d":"rust","g":["rust","владение","память","компилятор","типы"],"h":"Что такое время жизни на самом деле · Состояния значения глазами borrow checker · Как работает borrow checker · Первая настоящая ошибка: E01","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Времена жизни как модель регионов, а не как набор правил компилятора: зачем нужна аннотация 'a, как читать сигнатуры и с…","t":"Времена жизни: зачем нужны, как читать аннотации, типичные ошибки","u":"/post/rust/04-lifetimes/","w":"2026-07-16"},{"b":"Временные ряды и поиск: TimescaleDB, InfluxDB, Elasticsearch, OpenSearch Есть соблазн считать, что временные ряды и полнотекстовый поиск — две несвязанные темы, случайно оказавшиеся в одной статье. Это не так, и общее у …","c":"post","d":"databases","g":["базы данных","временные ряды","полнотекстовый поиск","elasticsearch","timescaledb","наблюдаемость"],"h":"Часть I. Временные ряды · Что делает временной ряд особенным · TimescaleDB: расширение PostgreSQL, а не отдельная БД · InfluxDB: специализир","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Два класса специализированных хранилищ, которые почти всегда живут рядом с основной БД: временные ряды и полнотекстовый …","t":"Временные ряды и поиск: TimescaleDB, InfluxDB, Elasticsearch, OpenSearch","u":"/post/databases/14-timeseries-and-search/","w":"2026-07-16"},{"b":"Временные ряды: от ARIMA до градиентного бустинга Почти всё, что мы строили в этом треке, опиралось на одно тихое допущение: наблюдения независимы и одинаково распределены (i.i.d.). Именно оно оправдывает случайное перем…","c":"post","d":"machine-learning","g":["машинное обучение","временные ряды","прогнозирование","arima","градиентный бустинг"],"h":"Постановка задачи · Эволюция подходов · Компоненты ряда и декомпозиция · Стационарность: почему без неё классика не работает · Как проверять","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Прогнозирование, где нарушено главное допущение ML — независимость наблюдений: стационарность и ACF, ARIMA и ETS, призна…","t":"Временные ряды: от ARIMA до градиентного бустинга","u":"/post/machine-learning/13-time-series/","w":"2026-07-16"},{"b":"Время в домене: процессы, версии правил и темпоральные данные Есть класс доменов, где аккуратная модель из тактических блоков и красивые типы всё равно рассыпаются, и всегда по одной причине. Страхование, биллинг, тарифы…","c":"post","d":"ddd","g":["ddd","моделирование","архитектура","время","базы данных"],"h":"1. Три времени, которые постоянно путают · 2. Эффективные даты: период как объект-значение · 3. Правило всегда параметризовано датой · 4. За","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Почему UPDATE уничтожает домен: три оси времени, эффективные даты, версионирование бизнес-правил, перерасчёты задним чис…","t":"Время в домене: процессы, версии правил и темпоральные данные","u":"/post/ddd/12-time-in-the-domain/","w":"2026-07-16"},{"b":"Время в распределённой системе: часы, логические часы, векторные часы В однопроцессной программе время — скучная сущность. Есть монотонно растущий счётчик, есть порядок инструкций, и если событие A произошло раньше B, то…","c":"post","d":"distributed-systems","g":["распределённые системы","время","логические часы","причинность","консистентность"],"h":"1. Что физически тикает внутри машины · 2. Как именно врут часы, и как это выглядит в логах · 3. Сценарии отказа, которые вызывает доверие к","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Почему физические часы врут и как это выглядит в логах, что такое отношение happens-before, чем логические часы Лампорта…","t":"Время в распределённой системе: часы, логические часы, векторные часы","u":"/post/distributed-systems/02-time-and-clocks/","w":"2026-07-16"},{"b":"Встраиваемые системы: карта трека и чем эта разработка отличается Что такое встраиваемая система Определение «программа для маленького компьютера» бесполезно — оно описывает габарит, а не работу. Рабочее определение звуч…","c":"post","d":"embedded","g":["встраиваемые системы","микроконтроллеры","робототехника","stm32","отладка"],"h":"Что такое встраиваемая система · Три сдвига, которые ломают серверные привычки · Сдвиг первый: память конечна, известна заранее и никем не з","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Почему встраиваемая разработка — отдельная инженерная дисциплина: конечная память, конечная энергия, время как часть кон…","t":"Встраиваемые системы: карта трека и чем эта разработка отличается","u":"/post/embedded/00-overview/","w":"2026-07-16"},{"b":"Встречи: как не утонуть, как отказываться и как работать асинхронно Почему это отдельная статья, а не абзац в главе про календарь Все предыдущие техники курса — сбор задач, приоритизация, блоки в календаре, ограничение W…","c":"post","d":"time-management","g":["тайм-менеджмент","встречи","асинхронность","распределённые команды","фокус"],"h":"Почему это отдельная статья, а не абзац в главе про календарь · Арифметика: сколько стоит встреча на самом деле · Короткая история проблемы ","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Полная себестоимость встречи, честный разбор исследований о митингах и асинхронности, критерии «нужна ли встреча», конкр…","t":"Встречи: как не утонуть, как отказываться и как работать асинхронно","u":"/post/time-management/11-meetings/","w":"2026-07-16"},{"b":"Выбор железа под задачу: как читать характеристики Четырнадцать предыдущих глав объясняли, как устроена машина. Эта — про обратную задачу: есть нагрузка, есть бюджет, есть список конфигураций, надо решить, что покупать и…","c":"post","d":"hardware","g":["железо","производительность","выбор технологий","бенчмарки","инфраструктура"],"h":"Шаг первый: характеризовать нагрузку, а не железо · Как определить свой класс измерением · Шаг второй: читаем спецификацию по строкам · Част","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Как классифицировать нагрузку по узкому месту, что означает и чего не означает каждая строка спецификации, почему чужие …","t":"Выбор железа под задачу: как читать характеристики","u":"/post/hardware/15-choosing-hardware/","w":"2026-07-16"},{"b":"Выгорание, отдых и устойчивый темп на дистанции в годы Все четырнадцать предыдущих глав были про то, как уместить работу в ограниченный ресурс. Эта — про сам ресурс: откуда он берётся, как расходуется быстрее, чем восста…","c":"post","d":"time-management","g":["тайм-менеджмент","выгорание","отдых","устойчивость","продуктивность"],"h":"Что такое выгорание и чем оно не является · История понятия и честные споры вокруг него · Две модели, которые стоит держать в голове · Job D","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Что такое выгорание по определению ВОЗ и моделям Маслач и JD-R, чем оно отличается от усталости и депрессии, почему у ин…","t":"Выгорание, отдых и устойчивый темп на дистанции в годы","u":"/post/time-management/15-burnout/","w":"2026-07-16"},{"b":"Выступления и демо: структура и произношение терминов Созвон — жанр реактивный: вы не знаете, что скажут через минуту, и половина усилий уходит на то, чтобы успевать — про это была глава про созвоны. Выступление — жанр п…","c":"post","d":"engineering-english","g":["английский","презентации","коммуникация","произношение"],"h":"Три разных жанра под одним словом · Почему структура важнее слов · Разбор реального демо · Каркас, который держит любое демо · Переходы: как","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Как собрать пятиминутное демо и двадцатиминутный доклад на неродном языке, что говорить, когда демо ломается вживую, как…","t":"Выступления и демо: структура и произношение терминов","u":"/post/engineering-english/09-presentations/","w":"2026-07-16"},{"b":"Вычислительная геометрия: примитивы, выпуклая оболочка, sweep line Вычислительная геометрия — это единственный раздел алгоритмов, где вы можете написать формально доказанный алгоритм, прогнать его на реальных данных и по…","c":"post","d":"algorithms","g":["алгоритмы","вычислительная геометрия","sweep line","выпуклая оболочка","пространственные индексы"],"h":"Зачем это нужно на практике · Всё держится на одном предикате · Площадь многоугольника: формула шнурования · Пересечение отрезков · Точка вн","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Как из одного предиката ориентации вырастают выпуклые оболочки, пересечения отрезков, ближайшая пара и триангуляция Дело…","t":"Вычислительная геометрия: примитивы, выпуклая оболочка, sweep line","u":"/post/algorithms/12-computational-geometry/","w":"2026-07-16"},{"b":"Выявление требований: интервью, наблюдение, воркшопы, работа с документами В BABOK этот раздел работы называется elicitation, а не collection. Разница не косметическая. «Сбор» предполагает, что требования уже существуют …","c":"post","d":"systems-analysis","g":["аналитика","требования","интервью","исследования","воркшоп"],"h":"Что именно мы ищем: четыре слоя знания · Выявление — это цикл, а не этап · Планирование: что выяснять сейчас, а что подождёт · У кого спраши","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как добыть требования из людей, документов и данных: подготовка и структура интервью, наблюдение за работой, воркшопы, п…","t":"Выявление требований: интервью, наблюдение, воркшопы, работа с документами","u":"/post/systems-analysis/01-elicitation/","w":"2026-07-16"},{"b":"Вёрстка: flexbox, grid, позиционирование, адаптивность и контейнерные запросы Вёрстка долго кажется набором заклинаний: «поставь display: flex, потом align-items: center, а если поехало — добавь min-width: 0». Это ощущен…","c":"post","d":"frontend","g":["frontend","css","вёрстка","адаптивность"],"h":"1. Два вопроса, из которых состоит любая раскладка · 2. Карта механизмов · 3. Поток, box model и контексты форматирования · 4. Flexbox: одна","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Раскладка как переговоры о размерах: intrinsic sizing, поток и BFC, алгоритмы flexbox и grid до последней детали, единая…","t":"Вёрстка: flexbox, grid, позиционирование, адаптивность и контейнерные запросы","u":"/post/frontend/04-css-layout/","w":"2026-07-16"},{"b":"Гарантии доставки и идемпотентность: at-least-once и миф exactly-once Есть два предложения, которые звучат почти одинаково, но описывают разные вселенные: «Сообщение будет доставлено ровно один раз». «Эффект сообщения бу…","c":"post","d":"distributed-systems","g":["распределённые системы","идемпотентность","kafka","доставка сообщений","надёжность"],"h":"Что вообще значит «доставлено» · Три гарантии — и почему их ровно три · Идемпотентность: определение точнее, чем «повтор безопасен» · HTTP: ","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Почему exactly-once как свойство канала невозможна, что на самом деле означают гарантии Kafka и Flink, как построить иде…","t":"Гарантии доставки и идемпотентность: at-least-once и миф exactly-once","u":"/post/distributed-systems/09-idempotency-and-delivery/","w":"2026-07-16"},{"b":"Где агенты врут: типология отказов и как их ловить Инженер, проработавший с агентом месяц, знает главное ощущение этой работы: девять утверждений из десяти верны, а десятое обрушивает полдня. Отличить десятое от девяти п…","c":"post","d":"ai-agents","g":["ai-агенты","агенты","надёжность","ревью","проверяемость"],"h":"Почему слово «врёт» уместно и в чём оно неточно · Три слоя, на которых рождается неправда · Карта отказов · Группа A. Ложь о внешнем мире · ","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Каталог способов, которыми агент выдаёт ложное утверждение за факт: откуда каждый берётся, как выглядит в отчёте, каким …","t":"Где агенты врут: типология отказов и как их ловить","u":"/post/ai-agents/09-failure-modes/","w":"2026-07-16"},{"b":"Где живут ответы: языки, корпуса, сообщества Два наблюдения, которые звучат банально и почти никогда не используются на практике. Первое: у ответа есть язык, и языки не являются переводами друг друга. Запрос на русском и…","c":"post","d":"research-skills","g":["поиск информации","сообщества","английский","коммуникация"],"h":"Корпуса не пересекаются так, как вы думаете · Как искать на языке, которого вы не знаете · Площадки локальных сообществ · Знание, которое не","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Почему англоязычный запрос возвращает другой корпус ответов, а не перевод того же самого; какие знания живут только в ки…","t":"Где живут ответы: языки, корпуса, сообщества","u":"/post/research-skills/10-where-answers-live/","w":"2026-07-16"},{"b":"Генеративные модели: VAE, GAN, диффузия Все архитектуры, разобранные до сих пор — MLP, свёрточные, рекуррентные, трансформеры — мы обучали отвечать на вопрос про объект: какой это класс, какое число, какой следующий токе…","c":"post","d":"neural-networks","g":["нейросети","глубокое обучение","генеративные модели","диффузия","gan"],"h":"1. Дискриминативное и генеративное: в чём реальная разница · Проклятие нормировочной константы · 2. Латентные переменные и вариационная нижн","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Как научить сеть порождать новые данные: вариационная нижняя граница и VAE, минимаксная игра GAN, диффузионные модели и …","t":"Генеративные модели: VAE, GAN, диффузия","u":"/post/neural-networks/07-generative-models/","w":"2026-07-16"},{"b":"Генерация кода: целевые архитектуры, распределение регистров, ABI К этому моменту трека у нас есть IR в SSA-форме, по которому прошлись оптимизации: константы свёрнуты, мёртвый код удалён, мелкие функции встроены. Програ…","c":"post","d":"compilers","g":["компиляторы","кодогенерация","ассемблер","abi","языки программирования"],"h":"Что именно делает бэкенд · Целевая архитектура: что бэкенд обязан о ней знать · Выбор инструкций: покрытие дерева плитками · Распределение р","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Как оптимизированное IR превращается в машинные инструкции: выбор инструкций и покрытие дерева плитками, анализ живости,…","t":"Генерация кода: целевые архитектуры, распределение регистров, ABI","u":"/post/compilers/08-code-generation/","w":"2026-07-16"},{"b":"Генетические алгоритмы: селекция, кроссовер, мутация В предыдущей статье — https://courses.digitable.life/post/sbse/02-local-search/ — мы разобрали методы, которые двигают одно решение по ландшафту приспособленности. У н…","c":"post","d":"sbse","g":["sbse","генетические алгоритмы","оптимизация","эволюционные вычисления"],"h":"Зачем нужна популяция: интуиция · Канонический цикл · Селекция: единственный источник давления отбора · Пропорциональная (рулеточная) селекц","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как устроен генетический алгоритм изнутри: давление отбора, рекомбинация, мутация, замещение поколений — с рабочим кодом…","t":"Генетические алгоритмы: селекция, кроссовер, мутация","u":"/post/sbse/03-genetic-algorithms/","w":"2026-07-16"},{"b":"Генетическое программирование В генетических алгоритмах особь — это вектор фиксированной длины: 30 бит, 12 вещественных чисел, перестановка из 50 городов. Мы заранее знаем форму ответа и ищем только его содержание. Генет…","c":"post","d":"sbse","g":["sbse","генетическое программирование","эволюционные алгоритмы","символьная регрессия","оптимизация"],"h":"Интуиция: почему деревья · Два множества, которые решают всё · Инициализация популяции · Операторы: subtree crossover и его родня · Полный ц","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как эволюционировать не числа, а сами программы: деревья выражений, subtree-кроссовер, борьба с раздуванием кода и путь …","t":"Генетическое программирование","u":"/post/sbse/04-genetic-programming/","w":"2026-07-16"},{"b":"Геораспределённая архитектура: регионы, ячейки, failover и аварийное восстановление Разговор про второй регион почти всегда начинается одинаково: кто-то на ретроспективе после инцидента говорит «нам нужен мультирегион», …","c":"post","d":"architecture-patterns","g":["архитектура","отказоустойчивость","мультирегион","аварийное восстановление","sre"],"h":"1. Три разные задачи под одним словом · 2. Словарь: зона, регион, ячейка, точка присутствия · 3. RTO и RPO: два числа, из которых растёт вся","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Что на самом деле означает «второй регион»: три разные задачи под одним словом, RTO и RPO как проектные входы, четыре то…","t":"Геораспределённая архитектура: регионы, ячейки, failover и аварийное восстановление","u":"/post/architecture-patterns/13-multi-region-and-disaster-recovery/","w":"2026-07-16"},{"b":"Гибкий дизайн: как модель становится глубокой Предыдущая статья трека — каталог ошибок — про то, как не сделать плохо. Но «не сделать плохо» и «сделать хорошо» — разные задачи. Существует третье состояние проекта, которо…","c":"post","d":"ddd","g":["ddd","моделирование","рефакторинг","архитектура","python"],"h":"1. Три уровня модели · 2. Почему модель застревает на «правильной» · 3. Вытащить неявное понятие наружу · 3.1. Было: ограничение спрятано в ","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Что отличает глубокую модель от формально правильной: как вытащить наружу неявные понятия домена и семь паттернов supple…","t":"Гибкий дизайн: как модель становится глубокой","u":"/post/ddd/09-supple-design/","w":"2026-07-16"},{"b":"Горизонты планирования: день, неделя, квартал, год и недельный обзор Проблема: один план на все случаи жизни Типичная личная система планирования у разработчика выглядит так: есть список задач и есть календарь. И то и др…","c":"post","d":"time-management","g":["тайм-менеджмент","планирование","недельный обзор","цели","распределённые команды"],"h":"Проблема: один план на все случаи жизни · Точность плана и горизонт: почему нельзя планировать год как неделю · Откуда взялись горизонты: ко","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Почему план на день, неделю, квартал и год — это четыре разных инструмента с разной точностью, как связать их между собо…","t":"Горизонты планирования: день, неделя, квартал, год и недельный обзор","u":"/post/time-management/08-planning-horizons/","w":"2026-07-16"},{"b":"Границы команд: зависимости, интерфейсы и когнитивная нагрузка Возьмите последнюю фичу, которая шла подозрительно долго, и восстановите её путь по часам. Не по спринтам — по часам: когда кто-то реально что-то делал, а ко…","c":"post","d":"engineering-leadership","g":["лидерство","команда","управление командой","архитектура","тимлид"],"h":"Что такое граница команды и почему их четыре · Закон Конвея: что действительно известно · Когнитивная нагрузка: чем она на самом деле измеря","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Почему изменение идёт три недели при одиннадцати часах работы: как устроены границы команд, что реально известно про зак…","t":"Границы команд: зависимости, интерфейсы и когнитивная нагрузка","u":"/post/engineering-leadership/13-team-topologies/","w":"2026-07-16"},{"b":"Границы системы: как выбор границы меняет вывод «Отдельных систем не существует. Мир — континуум. Где провести границу вокруг системы, зависит от цели разговора». — Донелла Медоуз, «Thinking in Systems» (2008) Фраза звуч…","c":"post","d":"systems-thinking","g":["системное мышление","границы системы","моделирование","инженерное мышление"],"h":"Сцена: два честных отчёта об одном инциденте · Что такое граница: не два круга, а три · Граница — это решение, и у него есть критерий · Шест","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Граница системы — не свойство мира, а решение аналитика: что считать внутренним, что внешним входом, а что вообще не рас…","t":"Границы системы: как выбор границы меняет вывод","u":"/post/systems-thinking/02-boundaries/","w":"2026-07-16"},{"b":"Графический стек: X11, Wayland, оконные менеджеры, композиторы и DE Экран один. Приложений — сорок. Клавиатура одна, а претендентов на её ввод — все окна сразу. Видеопамять общая, но браузер не должен читать пиксели ваше…","c":"post","d":"operating-systems","g":["операционные системы","linux","wayland","x11","графика"],"h":"Карта: из чего состоит графический стек · Ядро: DRM, KMS и dma-buf — общий фундамент · Объекты KMS · Как это устроено в других системах · X1","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как из одного фреймбуфера получается рабочий стол: DRM/KMS в ядре, протокол X11 и его расширения, объектная модель Wayla…","t":"Графический стек: X11, Wayland, оконные менеджеры, композиторы и DE","u":"/post/operating-systems/17-display-servers-and-wm/","w":"2026-07-16"},{"b":"Графовые и key-value БД: Неo4j, Dgraph, etcd, RocksDB, LMDB На первый взгляд соединять в одной статье графовые и key-value базы — насилие над классификацией. Одни хранят самую богатую модель данных из существующих, други…","c":"post","d":"databases","g":["базы данных","key-value","графы","neo4j","rocksdb","etcd"],"h":"Часть I. Key-value: движки, а не базы · Что такое key-value на самом деле · RocksDB: LSM-движок, который лежит под половиной индустрии · LMD","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Два семейства, стоящих на противоположных краях спектра абстракции: движки ключ-значение, из которых собраны почти все о…","t":"Графовые и key-value БД: Neo4j, Dgraph, etcd, RocksDB, LMDB","u":"/post/databases/17-graph-and-keyvalue/","w":"2026-07-16"},{"b":"Графовые нейронные сети Все архитектуры, разобранные до сих пор, опирались на жёсткую структуру данных. Свёрточные сети предполагают решётку: у пикселя есть сосед слева и сосед сверху, и это верно для всех пикселей. Реку…","c":"post","d":"neural-networks","g":["нейросети","глубокое обучение","графы","gnn","рекомендательные системы"],"h":"1. Граф как данные: почему нельзя просто взять MLP · 2. Три уровня задач и два режима обучения · 3. Симметрия, из которой всё следует · 4. З","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Как обучать нейросети на данных без сетки и без порядка: перестановочная симметрия, передача сообщений, GCN/GraphSAGE/GA…","t":"Графовые нейронные сети","u":"/post/neural-networks/08-graph-neural-networks/","w":"2026-07-16"},{"b":"Графы: представления, свойства и выбор структуры Почти все структуры, которые мы разбирали раньше, описывают данные одной формы: массив — это последовательность, дерево — иерархия, хеш-таблица — множество независимых клю…","c":"post","d":"data-structures","g":["структуры данных","графы","производительность","базы данных"],"h":"Словарь: минимум терминов, без которых дальше нельзя · Пять способов хранить граф · 1. Список рёбер (edge list) · 2. Матрица смежности · 3. ","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Как хранить граф в памяти: список рёбер, матрица и списки смежности, CSR; чем они различаются по времени, памяти и локал…","t":"Графы: представления, свойства и выбор структуры","u":"/post/data-structures/10-graphs-representation/","w":"2026-07-16"},{"b":"Грейды: что на самом деле отличает junior, middle, senior и lead Почти каждый, кто недавно начал писать код, рано или поздно задаёт один и тот же вопрос: «Сколько нужно лет / фреймворков / решённых задач на LeetCode, что…","c":"post","d":"sdlc-and-career","g":["карьера","грейды","рост","команда","найм"],"h":"Что такое грейд формально · Оси, по которым реально отличаются грейды · Автономия и масштаб: карта · Одна и та же задача на четырёх грейдах ","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Разбор того, чем реально отличаются грейды разработчика — не годами опыта и не количеством фреймворков, а масштабом реше…","t":"Грейды: что на самом деле отличает junior, middle, senior и lead","u":"/post/sdlc-and-career/12-grades/","w":"2026-07-16"},{"b":"Данные и оффлайн: локальные БД, синхронизация, разрешение конфликтов В вебе данные живут на сервере. Браузер — тонкая оболочка: он запрашивает, показывает, забывает. Если сети нет, страница просто не открылась, и это нор…","c":"post","d":"mobile","g":["мобильная разработка","оффлайн","базы данных","синхронизация","архитектура"],"h":"Чем мобильные данные отличаются от веб-данных · Сеть на телефоне — не выключатель, а серая зона · Три уровня зрелости работы с данными · Где","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Почему на мобильном источник истины лежит на диске, а не на сервере: выбор локального хранилища, схема с метаданными син…","t":"Данные и оффлайн: локальные БД, синхронизация, разрешение конфликтов","u":"/post/mobile/07-data-and-offline/","w":"2026-07-16"},{"b":"Данные и признаки: очистка, кодирование, масштабирование, утечки В карте трека мы условились, что почти любая задача обучения с учителем сводится к матрице признаков X размера n × d и вектору таргета y. Проблема в том, ч…","c":"post","d":"machine-learning","g":["машинное обучение","данные","признаки","feature engineering","утечки данных"],"h":"Почему признаки важнее алгоритма · Общая картина пайплайна · Таксономия признаков · Очистка: пропуски · Механизмы пропусков · Что делать на ","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Как превратить сырые таблицы в матрицу признаков: пропуски, выбросы, кодирование категорий, масштабирование, feature eng…","t":"Данные и признаки: очистка, кодирование, масштабирование, утечки","u":"/post/machine-learning/02-data-and-features/","w":"2026-07-16"},{"b":"Датчики и медиа: камера, геолокация, звук и разрешения на них Предыдущие статьи трека были про то, как устроено приложение внутри: слои, состояние, база на диске, окна фонового исполнения, бюджет кадра, ключи в защищённо…","c":"post","d":"mobile","g":["мобильная разработка","датчики","камера","геолокация","разрешения"],"h":"У любой возможности устройства три цены · Как закручивали доступ: краткая история · Разрешение — это состояние, а не булев флаг · Правило ну","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Как работать с физическим миром из приложения: разрешение как состояние, а не флаг, API нулевого разрешения вместо диало…","t":"Датчики и медиа: камера, геолокация, звук и разрешения на них","u":"/post/mobile/13-sensors-and-media/","w":"2026-07-16"},{"b":"Датчики и приводы: считывание, фильтрация, калибровка, моторы Программист «больших» машин привык, что чтение возвращает данные: read() из файла даёт ровно те байты, которые туда записали. Датчик работает не так. Он не во…","c":"post","d":"embedded","g":["встраиваемые системы","датчики","приводы","фильтрация","моторы"],"h":"Тракт измерения: где именно рождается ошибка · Что бывает на выходе датчика · Аналоговые датчики: отношение вместо напряжения · Цифровые дат","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Как из напряжения на ножке получается число в градусах: тракт измерения, метрология без иллюзий, калибровка, медиана, EM…","t":"Датчики и приводы: считывание, фильтрация, калибровка, моторы","u":"/post/embedded/09-sensors-and-actuators/","w":"2026-07-16"},{"b":"Дашборды: почему их не смотрят и как сделать иначе В любой компании старше трёх лет есть папка с дашбордами, которую никто не открывает. Их не удаляют — неловко: кто-то делал, кто-то заказывал, на каком-то из них написан…","c":"post","d":"data-analytics","g":["аналитика данных","дашборды","метрики","визуализация","sql"],"h":"Кладбище дашбордов: это измеряется · Три жанра, которые называют одним словом · Спецификация плитки: семь строк перед тем, как открыть конст","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Почему большинство дашбордов мертвы, как измерить это в цифрах, и как собрать панель, от которой меняется решение: специ…","t":"Дашборды: почему их не смотрят и как сделать иначе","u":"/post/data-analytics/13-dashboards/","w":"2026-07-16"},{"b":"Два указателя и скользящее окно Почти любая задача про массив или строку в первом приближении решается двойным циклом: перебрать все пары индексов или все подотрезки — и посмотреть, что получится. Это честно, это всегда …","c":"post","d":"algorithms","g":["алгоритмы","два указателя","скользящее окно","массивы","строки"],"h":"1. Карта приёма: что вообще называют «двумя указателями» · 2. Встречные указатели и почему это корректно · 2.1 Каноническая задача · 2.2 Док","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Как превратить квадратичный перебор пар и подотрезков в линейный проход: встречные указатели, монотонное окно, условие п…","t":"Два указателя и скользящее окно","u":"/post/algorithms/04-two-pointers-sliding-window/","w":"2026-07-16"},{"b":"Двоичная система, биты и байты: как всё становится числами Внутри любого компьютера — от микроконтроллера в чайнике до дата-центра — нет ни букв, ни картинок, ни звука, ни «файлов». Есть только миллиарды крошечных перекл…","c":"post","d":"computer-science","g":["computer science","двоичная система","биты","байты","системы счисления"],"h":"1. Почему именно два: за абстракцию отвечает физика · 2. Как вообще работают числа: позиционные системы · 3. Считаем на двух цифрах · 4. Бит","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Почему компьютер считает двумя цифрами, как из битов складываются байты, числа, буквы и цвета, как переводить между двои…","t":"Двоичная система, биты и байты: как всё становится числами","u":"/post/computer-science/02-binary-and-bits/","w":"2026-07-16"},{"b":"Деградация вместо отказа: таймауты, ретраи, размыкатели Товарная страница интернет-магазина собирает данные из шести источников: шлюз, каталог, цены, рекомендации, отзывы, персонализация. В 03:40 сервис рекомендаций уход…","c":"post","d":"sre","g":["надёжность","sre","устойчивость","таймауты","деградация"],"h":"Деградация — это заранее принятое решение о том, чем жертвовать · Арифметика: сколько минут покупает вынос звена из цепочки · Где здесь можн","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Как перестать умножать девятки в цепочке и начать вычитать звенья: арифметика таймаутов через закон Литтла, бюджет повто…","t":"Деградация вместо отказа: таймауты, ретраи, размыкатели","u":"/post/sre/10-degradation/","w":"2026-07-16"},{"b":"Дежурства и инциденты: нагрузка, которую легко не заметить Задайте команде один вопрос: сколько часов за прошлый квартал ушло на дежурства и разбор инцидентов? Вы получите три разных ответа, и все три будут заниженными. …","c":"post","d":"engineering-leadership","g":["лидерство","дежурства","инциденты","надёжность","нагрузка"],"h":"Дежурство как контракт, а не как график · Честно про доказательную базу · Почему нагрузку не видно · Арифметика, которую можно посчитать за ","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Почему операционная нагрузка не видна ни в плане, ни в оценке, и что с этим делает руководитель: контракт дежурства, мет…","t":"Дежурства и инциденты: нагрузка, которую легко не заметить","u":"/post/engineering-leadership/12-oncall-and-incidents/","w":"2026-07-16"},{"b":"Дежурство: расписание, эскалация и цена для людей 03:41, среда. Телефон вибрирует на тумбочке. CheckoutErrorRateHigh. Инженер садится на кровати, минуту ищет очки, ещё две — ноутбук, ещё три уходит на VPN, потому что ток…","c":"post","d":"sre","g":["надёжность","sre","дежурство","инциденты","процессы"],"h":"Дежурство — это контракт из трёх пунктов, а не «быть на связи» · Арифметика покрытия: сколько людей нужно на 168 часов · Ловушка secondary ·","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Дежурство как инженерный контракт: сколько людей нужно на 168 часов в неделю, почему таймаут эскалации — это статья расх…","t":"Дежурство: расписание, эскалация и цена для людей","u":"/post/sre/06-oncall/","w":"2026-07-16"},{"b":"Декларативное и логическое программирование В функциональном программировании мы убрали изменяемое состояние, но порядок вычислений всё ещё писали руками: map, потом filter, потом fold. В императивном мы писали и состоян…","c":"post","d":"paradigms","g":["парадигмы","логическое программирование","prolog","datalog","sql"],"h":"Что считать декларативным: рабочий критерий · Логическое программирование: вычисление как доказательство · Первая программа · Унификация: ме","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Что на самом деле означает «описывать что, а не как»: унификация и SLD-резолюция в Prolog, Datalog и его полиномиальные …","t":"Декларативное и логическое программирование","u":"/post/paradigms/04-declarative-and-logic/","w":"2026-07-16"},{"b":"Декомпозиция задач: вертикально или горизонтально, восемь приёмов и границы дробления Предыдущая глава закончилась регламентом: оценка одной фичи не должна превышать 8 часов, в крайнем случае 16, а разброс между оптимист…","c":"post","d":"management","g":["менеджмент","планирование","оценка","процессы"],"h":"1. Два дерева: WBS дробит результат, бэклог дробит ценность · 2. Горизонтально или вертикально · 3. Три правила, ограничивающие дробление · ","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Как разбивать работу: два дерева декомпозиции — WBS по результату и бэклог по ценности, — вертикальный срез против гориз…","t":"Декомпозиция задач: вертикально или горизонтально, восемь приёмов и границы дробления","u":"/post/management/09-decomposition/","w":"2026-07-16"},{"b":"Делегирование и распределение ответственности: уровни, RACI, контрольные точки Делегирование — одна из самых сложных вещей для всех, от руководителя до рядового специалиста, и первая трудность даже не в навыке, а в опред…","c":"post","d":"management","g":["менеджмент","управление проектами","команда","принятие решений","процессы"],"h":"1. Почему это трудно именно бывшему сильному инженеру · 2. Три разных объекта делегирования · 3. Что делегировать не стоит · 4. Дерево решен","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Делегирование как распределение ответственности в проекте: три разных объекта передачи, шкалы уровней и Delegation Poker…","t":"Делегирование и распределение ответственности: уровни, RACI, контрольные точки","u":"/post/management/10-delegation/","w":"2026-07-16"},{"b":"Делегирование: что отдавать и как не забрать обратно Проверьте себя одним вопросом: что случится с командой, если вы завтра сляжете с гриппом на две недели? Не «будет тяжело», а конкретно — какие решения остановятся, чьи…","c":"post","d":"engineering-leadership","g":["лидерство","делегирование","команда","управление командой","тимлид"],"h":"Что такое делегирование и чем оно не является · Три разные цели, которые постоянно путают · Честно про доказательную базу · Почему лид стано","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Почему делегирование — это передача решения, а не работы; чем разгрузка отличается от развития и почему их смешение прив…","t":"Делегирование: что отдавать и как не забрать обратно","u":"/post/engineering-leadership/08-delegation/","w":"2026-07-16"},{"b":"Деньги и риски: подушка, кассовые разрывы, диверсификация, налоги в общих чертах Инженеры хорошо понимают одну идею: система падает не там, где слабее логика, а там, где кончился ресурс — память, дескрипторы, соединения …","c":"post","d":"business","g":["бизнес","деньги","риски","финансы","налоги"],"h":"1. Три числа, которые все называют словом «заработал» · 2. Пять кошельков: разделение на входе, а не в конце месяца · 3. Ровная выплата себе","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Финансовое выживание самостоятельного инженера: разделение потока на входе, ровная выплата себе, расчёт подушки от своей…","t":"Деньги и риски: подушка, кассовые разрывы, диверсификация, налоги в общих чертах","u":"/post/business/09-money-and-risk/","w":"2026-07-16"},{"b":"Деплой и наблюдаемость .NET Код, прошедший тесты, ещё не приносит пользы — его нужно собрать в артефакт, доставить и наблюдать в проде. Эта статья про то, как превратить приложение в бинарник или контейнер и как понять, …","c":"post","d":"csharp","g":["csharp","деплой","docker","наблюдаемость","opentelemetry"],"h":"Публикация: варианты сборки артефакта · Native AOT (кратко) · Контейнеризация для ASP.NET Core · Health checks · Наблюдаемость: три столпа ·","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Публикация .NET-приложений (FDD, self-contained, AOT), контейнеризация для ASP.NET Core, health checks, структурные логи…","t":"Деплой и наблюдаемость .NET: publish, Docker, OpenTelemetry и перф","u":"/post/csharp/07-deploy-observability/","w":"2026-07-16"},{"b":"Деплой и наблюдаемость Elixir Написать код — половина дела; довести до прода и видеть, что там происходит — вторая. Elixir здесь силён: mix release собирает самодостаточный артефакт, :telemetry даёт стандартные события д…","c":"post","d":"elixir","g":["elixir","деплой","docker","наблюдаемость","opentelemetry"],"h":"mix release — самодостаточный артефакт · Миграции в релизе · Контейнеризация: multi-stage Docker · Kubernetes и кластеризация · Наблюдаемост","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Сборка самодостаточных релизов через mix release, контейнеризация multi-stage Docker, миграции при деплое, метрики через…","t":"Деплой и наблюдаемость Elixir: mix release, Docker, telemetry, OpenTelemetry, observer","u":"/post/elixir/07-deploy-observability/","w":"2026-07-16"},{"b":"Деплой и наблюдаемость Go-сервисов Здесь Go по-настоящему сияет. Результат сборки — один статический бинарник без внешних зависимостей и рантайма. Никакой JVM на сервере, никакого node_modules, никакого интерпретатора. С…","c":"post","d":"golang","g":["go","деплой","docker","наблюдаемость","профилирование"],"h":"Сборка статического бинарника · Вшивание версии в бинарник · Кросс-компиляция · Docker: минимальный образ · Три столпа наблюдаемости · Логи ","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Сборка статики, минимальный Docker (distroless/scratch), кросс-компиляция, логи/метрики/трейсинг через OpenTelemetry, pp…","t":"Деплой и наблюдаемость Go: статический бинарник, Docker, метрики и трейсинг","u":"/post/golang/07-deploy-observability/","w":"2026-07-16"},{"b":"Деплой и наблюдаемость TypeScript-сервиса Код написан и протестирован. Теперь его нужно превратить в артефакт, доставить в прод и сделать так, чтобы в проде было видно, что происходит. Наблюдаемость — не роскошь: без лог…","c":"post","d":"typescript","g":["typescript","деплой","docker","наблюдаемость","opentelemetry"],"h":"Сборка артефакта · Source maps и отладка · Контейнеризация: многоступенчатый Docker · Три столпа наблюдаемости · Логи: структурированные, че","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Сборка артефактов, многоступенчатый Docker, source maps для отладки, логи через pino, метрики и трейсинг через OpenTelem…","t":"Деплой и наблюдаемость TypeScript-сервиса","u":"/post/typescript/07-deploy-observability/","w":"2026-07-16"},{"b":"Деплой и наблюдаемость: сборка, контейнеры, метрики, трейсинг До этого момента мы разбирали программу как текст: типы, коллекции, потоки, транзакции. Теперь программа становится процессом на чужой машине, у которого есть…","c":"post","d":"java","g":["java","деплой","docker","наблюдаемость","opentelemetry"],"h":"Часть 1. Артефакт: что именно уезжает в прод · Jar — это zip с манифестом · Слоёный jar и извлечение · Дальше по шкале: jlink, CDS, AOT-кэш,","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как превратить Java-проект в артефакт, который быстро стартует и укладывается в лимит памяти, и как сделать работающий п…","t":"Деплой и наблюдаемость: сборка, контейнеры, метрики, трейсинг","u":"/post/java/14-deploy-observability/","w":"2026-07-16"},{"b":"Деплой, наблюдаемость, SDLC и лучшие ресурсы по Python Шестнадцать статей назад мы начали с байт-кода и модели данных. Сейчас у нас есть сервис: он разложен по слоям (https://courses.digitable.life/post/python/16-archite…","c":"post","d":"python","g":["python","деплой","наблюдаемость","devops","ресурсы"],"h":"Что мы, собственно, деплоим · Dockerfile, который не стыдно · Модель процессов в проде: сколько воркеров и почему · Graceful shutdown: что п","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как Python-код доезжает до прода и как понять, что с ним там происходит: артефакты и Docker-слои, модель воркеров и grac…","t":"Деплой, наблюдаемость, SDLC и лучшие ресурсы по Python","u":"/post/python/17-deploy-and-resources/","w":"2026-07-16"},{"b":"Дерево отрезков и дерево Фенвика Есть задача, которая выглядит настолько простой, что кажется, будто её решает for-цикл: «дан массив из миллиона чисел, скажи сумму на отрезке [l, r)». И for-цикл её действительно решает —…","c":"post","d":"data-structures","g":["структуры данных","деревья","массивы","алгоритмы","производительность"],"h":"Почему наивные решения не работают · Что вообще можно считать: моноид · Дерево Фенвика: иерархия, спрятанная в битах · Поиск по префиксу: би","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Как отвечать на запросы к произвольным отрезкам массива за O(log n), когда массив всё время меняется: биты дерева Фенвик…","t":"Дерево отрезков и дерево Фенвика","u":"/post/data-structures/12-segment-and-fenwick-trees/","w":"2026-07-16"},{"b":"Деревья и бинарные деревья поиска Зачем вообще дерево, если есть массив и хеш-таблица У нас уже есть две отличные структуры для хранения пар «ключ → значение». Отсортированный массив (https://courses.digitable.life/post/…","c":"post","d":"data-structures","g":["структуры данных","деревья","бинарные деревья поиска","обходы","рекурсия"],"h":"Зачем вообще дерево, если есть массив и хеш-таблица · Терминология и базовые свойства · Как дерево лежит в памяти · Обходы: четыре способа п","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"От определения дерева до продакшн-BST: обходы, инвариант порядка, поиск/вставка/удаление, порядковые запросы, вырождение…","t":"Деревья и бинарные деревья поиска","u":"/post/data-structures/06-trees-bst/","w":"2026-07-16"},{"b":"Децентрализованные хранилища: IPFS, Filecoin, Arweave, контентная адресация Есть тема, которую в Web3 недооценивают сильнее всего. Про консенсус написаны сотни статей, про смарт-контракты — тысячи, а стоит спросить «где …","c":"post","d":"web3","g":["web3","ipfs","хранилища","контентная адресация","распределённые системы"],"h":"Почему данные не кладут в блокчейн · Контентная адресация: имя, вычисляемое из содержимого · Анатомия CID · Первая ловушка: один файл, много","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Как работает контентная адресация и из чего собран CID, что IPFS на самом деле делает и чего не делает, как Filecoin док…","t":"Децентрализованные хранилища: IPFS, Filecoin, Arweave, контентная адресация","u":"/post/web3/09-decentralized-storage/","w":"2026-07-16"},{"b":"Дженерики и итераторы Go прожил без параметрического полиморфизма двенадцать лет. Дженерики появились в версии 1.18 (2022) — это самое крупное изменение языка за всю его историю и, пожалуй, самое спорное. Ещё через год с…","c":"post","d":"golang","g":["go","дженерики","итераторы","типы","стандартная библиотека"],"h":"Что делали до дженериков · Параметры типа: синтаксис · Ограничения — это множества типов · Во что это компилируется и сколько стоит · Когда ","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Параметры типа и ограничения, множества типов, как дженерики скомпилированы и чего это стоит, пакеты slices/maps/cmp и и…","t":"Дженерики и итераторы в Go: параметры типа, ограничения и range-over-func","u":"/post/golang/10-generics-and-iterators/","w":"2026-07-16"},{"b":"Диагностика сети: методика, инструменты, разбор реальных инцидентов «Сеть тормозит» — это не диагноз, а жалоба. Между жалобой и починкой лежит работа, которую большинство инженеров делает интуицией: перезапустить сервис,…","c":"post","d":"networking","g":["сети","диагностика","tcpdump","wireshark","sre"],"h":"Методика: делить пополам, а не гадать · Инструментарий: чем что меряют · Первый круг: пять команд за минуту · DNS: где ломается чаще, чем ка","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Методика деления пополам вместо гадания, боевой набор инструментов от dig и ss до tcpdump и eBPF, чтение вывода каждой к…","t":"Диагностика сети: методика, инструменты, разбор реальных инцидентов","u":"/post/networking/13-network-troubleshooting/","w":"2026-07-16"},{"b":"Диаграммы причинных связей: как строить и как проверять Одиннадцать предыдущих глав дали язык: границы, петли, запасы, задержки, пороги, архетипы, точки воздействия. Этой главой мы переходим к вопросу, который решает суд…","c":"post","d":"systems-thinking","g":["системное мышление","причинные диаграммы","системная динамика","моделирование","визуализация"],"h":"Что такое причинная диаграмма · Соседние нотации, которые постоянно путают · Минимальная нотация: шесть элементов · Правила именования перем","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Причинная диаграмма — не иллюстрация, а записанная гипотеза: как собирать её от наблюдаемого поведения, какой нотации де…","t":"Диаграммы причинных связей: как строить и как проверять","u":"/post/systems-thinking/12-causal-diagrams/","w":"2026-07-16"},{"b":"Дизайн-системы: компоненты, токены, документация, жизнь системы Типичная сцена. В продукте четыре команды. Биллинг рисует кнопку «Оплатить» с радиусом 8 и высотой 44. Онбординг — радиус 6, высота 40. Админка берёт кнопку…","c":"post","d":"ux-design","g":["дизайн","дизайн-системы","токены","компоненты","handoff"],"h":"Что такое дизайн-система и чем она не является · Зачем: экономика, а не насмотренность · Слои системы: где живёт решение · Токены: именованн","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Дизайн-система как инженерный механизм: уровни токенов, контракт компонента, документация, доступность на входе, честная…","t":"Дизайн-системы: компоненты, токены, документация, жизнь системы","u":"/post/ux-design/07-design-systems/","w":"2026-07-16"},{"b":"Динамическая память: malloc, free, утечки, фрагментация, свои аллокаторы В языках со сборщиком мусора вопрос «кто и когда освободит этот объект» не возникает — за вас его решает рантайм. В C он возникает в каждой строчке…","c":"post","d":"systems-programming","g":["системное программирование","c","память","аллокаторы","отладка"],"h":"Три места, где может жить объект · Контракт стандартной библиотеки · realloc и арифметика размеров · Что аллокатор делает у себя внутри · От","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Как на самом деле работает куча в C: контракт malloc/free, устройство чанков glibc, brk и mmap, утечки и use-after-free,…","t":"Динамическая память: malloc, free, утечки, фрагментация, свои аллокаторы","u":"/post/systems-programming/04-dynamic-memory/","w":"2026-07-16"},{"b":"Динамическое программирование: от мемоизации до оптимизаций Динамическое программирование (ДП) — тема, у которой худшая в алгоритмике репутация относительно её реальной сложности. Люди учат наизусть десяток «типовых зада…","c":"post","d":"algorithms","g":["алгоритмы","динамическое программирование","рекурсия","оптимизация","мемоизация"],"h":"1. Откуда берётся ДП: перекрывающиеся подзадачи · Два условия применимости · 2. Три формы одного и того же алгоритма · 2.1. Мемоизация — «св","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Как перебор с экспоненциальной сложностью превращается в полиномиальный алгоритм: перекрывающиеся подзадачи, дисциплина …","t":"Динамическое программирование: от мемоизации до оптимизаций","u":"/post/algorithms/07-dynamic-programming/","w":"2026-07-16"},{"b":"Дискретная математика и комбинаторика Программист живёт в дискретном мире: байты не бывают дробными, индексов конечное число, состояний у автомата ровно столько, сколько объявлено. Дискретная математика — язык описания т…","c":"post","d":"mathematics","g":["математика","комбинаторика","дискретная математика","производящие функции","асимптотика"],"h":"1. Карта территории · 2. Три идеи, из которых растёт всё остальное · 3. Четыре базовые схемы выборки · 4. Биномиальные коэффициенты · 5. Шар","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Как считать конечные объекты и почему это ежедневный инструмент программиста: правила суммы и произведения, биномиальные…","t":"Дискретная математика и комбинаторика","u":"/post/mathematics/03-discrete-math-and-combinatorics/","w":"2026-07-16"},{"b":"Дистилляция ядра и эволюция модели Прошлая статья была про то, как углублять модель. Эта — про то, где это делать и что происходит с моделью потом. Обе задачи звучат менее захватывающе, чем «спроектировать агрегат», и об…","c":"post","d":"ddd","g":["ddd","архитектура","моделирование","рефакторинг","стратегия"],"h":"1. Лестница дистилляции · 2. Highlighted Core: самый дешёвый приём, который почти никто не делает · 3. Cohesive Mechanism: вынести «как» из ","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Как отделить ядро домена от обвязки — от выделенного ядра до связных механизмов и абстрактного ядра — и что делать с мод…","t":"Дистилляция ядра и эволюция модели","u":"/post/ddd/10-distillation-and-model-evolution/","w":"2026-07-16"},{"b":"Дистрибуция игр: магазины, консоли, рейтинги, региональные цены Дата релиза объявлена за четыре месяца, ролик собрал просмотры, предзаказы открыты. За семь недель до даты приходят три письма подряд. Первое: сертификация …","c":"post","d":"software-distribution","g":["поставка софта","магазины приложений","игры","ценообразование","монетизация"],"h":"Что в играх становится жёстче: карта соответствий · Игра как единица поставки: не артефакт, а решётка прав · Магазин на ПК: одновременно кан","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Игры поставляются не по особым законам, а по общим — только все ограничения включаются одновременно и в один жёсткий ден…","t":"Дистрибуция игр: магазины, консоли, рейтинги, региональные цены","u":"/post/software-distribution/10-game-distribution/","w":"2026-07-16"},{"b":"Диффузионные модели: как генерируются изображения Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 01:00:30 — отсюда взято содержание этой главы. Вся предыдущая часть трека описывала одну схему порождения: модель…","c":"post","d":"ai-basics","g":["основы ии","диффузионные модели","генерация изображений","stable diffusion","шумоподавление"],"h":"Почему у картинки нет «следующего токена» · Прямой процесс: как из картинки делают шум · Обратный процесс: сеть учат вычитать шум · Две форм","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Картинка не рисуется слева направо, а проявляется из случайного шума: прямой и обратный процессы, латентное пространство…","t":"Диффузионные модели: как генерируются изображения","u":"/post/ai-basics/12-diffusion/","w":"2026-07-16"},{"b":"Договоры и формы работы: что обязательно проверить, кто владеет кодом Инженер, который три часа спорит о семантике HTTP-статуса и требует схему для каждого поля, подписывает договор на сотни тысяч по диагонали за четыре …","c":"post","d":"business","g":["бизнес","договоры","право","фриланс","риски"],"h":"1. Что договор делает на самом деле · 2. Четыре слоя сделки · 3. Формы деятельности: карта вопросов, а не готовый ответ · 4. Анатомия догово","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Как инженеру читать договор как спецификацию: четыре слоя сделки, формы деятельности и вопросы к бухгалтеру, анатомия ко…","t":"Договоры и формы работы: что обязательно проверить, кто владеет кодом","u":"/post/business/04-contracts/","w":"2026-07-16"},{"b":"Документация API: справочник, примеры, контракт Половина третьего ночи, интегратор подключает ваш платёжный сервис. Он отправляет POST /v1/payments, получает таймаут на тридцатой секунде и повторяет запрос — так делают в…","c":"post","d":"technical-writing","g":["техническое письмо","документация","api","openapi","инженерная культура"],"h":"Три документа под одним именем · Справочник: читатель уже внутри · Справочник обязан генерироваться · Примеры: единица доверия · Контракт: т","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Под словом «документация API» живут три документа с тремя читателями: справочник для того, кто уже пишет код, примеры дл…","t":"Документация API: справочник, примеры, контракт","u":"/post/technical-writing/08-api-docs/","w":"2026-07-16"},{"b":"Документация, которую вы видите впервые Ситуация: вам дали ссылку на документацию продукта, о котором вы знаете только название. Через час нужно сказать, подходит ли он, а через день — начать на нём писать. Эта глава — н…","c":"post","d":"research-skills","g":["поиск информации","документация","источники","инженерная практика"],"h":"Первое: у документации есть жанры, и они отвечают на разные вопросы · Протокол первых двадцати минут · Как искать внутри документации · Слов","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Протокол первых двадцати минут в незнакомой документации: как понять её устройство и версию, где физически лежат самые п…","t":"Документация, которую вы видите впервые","u":"/post/research-skills/05-reading-unfamiliar-docs/","w":"2026-07-16"},{"b":"Документирование: user story, use case, спецификация, критерии приёмки Требование существует в трёх состояниях: в чьей-то голове, в разговоре и в артефакте. Первое не переживает отпуск, второе — неделю, и только третье м…","c":"post","d":"systems-analysis","g":["аналитика","требования","документация","user story","критерии приёмки"],"h":"1. Три работы, которые выполняет артефакт · 2. Карта артефактов: чем что описывают · 3. User story: карточка, разговор, подтверждение · 3.1.","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как выбрать форму записи требования и довести её до состояния, в котором по ней можно писать код и тесты: анатомия user …","t":"Документирование: user story, use case, спецификация, критерии приёмки","u":"/post/systems-analysis/03-documentation/","w":"2026-07-16"},{"b":"Доменные события и интеграция контекстов В предыдущих статьях мы собирали модель внутри одной границы: выделили ограниченные контексты, построили агрегаты и спрятали хранение за репозиториями. Теперь — самое опасное мест…","c":"post","d":"ddd","g":["ddd","архитектура","события","интеграция","распределённые системы"],"h":"1. Интуиция: от вызова к факту · 2. Что такое доменное событие строго · Внутреннее событие ≠ интеграционное · 3. Где рождается событие: внут","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Как факты домена превращаются в события, как доставить их надёжно через outbox и inbox и как связать ограниченные контек…","t":"Доменные события и интеграция контекстов","u":"/post/ddd/05-domain-events-and-integration/","w":"2026-07-16"},{"b":"Дообучение: LoRA, QLoRA, инструкционный тюнинг и когда оно вообще нужно Все предыдущие статьи трека меняли вход модели: промпт, примеры, извлечённые документы, инструменты, цикл агента. Веса при этом оставались чужими и …","c":"post","d":"ai-engineering","g":["ии-инженерия","дообучение","lora","quantization","llm"],"h":"Что дообучение действительно меняет, а что нет · Арифметика памяти: почему полный файнтюн больно · LoRA: почему низкий ранг работает · QLoRA","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Как устроено дообучение LLM изнутри: арифметика памяти, низкоранговые адаптеры, 4-битная квантизация, сборка датасета, р…","t":"Дообучение: LoRA, QLoRA, инструкционный тюнинг и когда оно вообще нужно","u":"/post/ai-engineering/12-fine-tuning/","w":"2026-07-16"},{"b":"Дорогой фитнес: кэш, суррогатные модели и байесовская оптимизация Две предыдущие статьи закончились одинаково. Поиск последовательности рефакторингов упёрся в «одна оценка = сборка плюс тесты». Оптимизация конфигурации у…","c":"post","d":"sbse","g":["sbse","оптимизация","байесовская оптимизация","суррогатные модели","метаэвристики"],"h":"Арифметика бюджета · Уровень 0: не считать то, что уже посчитано · Кэш с канонизацией · Инкрементальный пересчёт · Ранний выход · Параллелиз","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Что делать, когда одна оценка кандидата стоит минуты: инкрементальный пересчёт и кэш, дешёвые приближения и successive h…","t":"Дорогой фитнес: кэш, суррогатные модели и байесовская оптимизация","u":"/post/sbse/12-expensive-fitness/","w":"2026-07-16"},{"b":"Доступность на этапе дизайна: контраст, размеры, состояния, порядок Типичная сцена. Команда решила «заняться доступностью». Разработчик проходится по компонентам, расставляет aria-label, чинит роли, добавляет role=\"dialo…","c":"post","d":"ux-design","g":["дизайн","доступность","ux","wcag"],"h":"Что решается в макете, а что в коде · Для кого мы это делаем · Контраст: считаем, а не подбираем на глаз · Как устроен коэффициент контрастн","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как заложить доступность в макет: считать контраст, а не подбирать на глаз; проектировать зоны нажатия; рисовать все сос…","t":"Доступность на этапе дизайна: контраст, размеры, состояния, порядок","u":"/post/ux-design/10-accessibility-in-design/","w":"2026-07-16"},{"b":"Доступность: карта трека, кто и как пользуется интерфейсами Что такое доступность на самом деле Слово «доступность» (accessibility, сокращённо a11y — одиннадцать букв между «a» и «y») в вебе означает вполне конкретную ве…","c":"post","d":"accessibility","g":["доступность","a11y","wcag","скринридер","инклюзивность"],"h":"Что такое доступность на самом деле · Кто и как пользуется интерфейсами · Как ассистивная технология видит вашу страницу · Пять минут с наст","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Что такое цифровая доступность как инженерная дисциплина: кто и какими способами пользуется интерфейсами, как ассистивны…","t":"Доступность: карта трека, кто и как пользуется интерфейсами","u":"/post/accessibility/00-overview/","w":"2026-07-16"},{"b":"Доступные компоненты: модалки, меню, табы, автодополнение Простую страницу сломать трудно: заголовки, абзацы, ссылки и поля формы работают сами — браузер выдаёт им роль, имя и клавиатуру, а вы сверху пишете стили. Пробле…","c":"post","d":"accessibility","g":["доступность","aria","компоненты","клавиатура","wcag"],"h":"Почему компоненты ломаются: три источника · Контракт доступного компонента: шесть слоёв · Решение номер ноль: писать, брать или не делать · ","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Как собрать модальный диалог, выпадающее меню, вкладки и автодополнение так, чтобы ими можно было пользоваться клавиатур…","t":"Доступные компоненты: модалки, меню, табы, автодополнение","u":"/post/accessibility/08-components/","w":"2026-07-16"},{"b":"Доступные формы: подписи, подсказки, ошибки, валидация Форма — это место, где интерфейс перестаёт быть текстом и становится сделкой. Здесь оформляют заказ, записываются к врачу, подают заявление, переводят деньги. Именно…","c":"post","d":"accessibility","g":["доступность","формы","wcag","aria","валидация"],"h":"Почему формы ломаются чаще всего · Анатомия доступного поля · Подписи · Три законных способа подписать поле · Плейсхолдер — не подпись · Пла","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Как устроено доступное поле ввода: подписи вместо плейсхолдеров, группировка, autocomplete, связанные подсказки, состоян…","t":"Доступные формы: подписи, подсказки, ошибки, валидация","u":"/post/accessibility/07-forms/","w":"2026-07-16"},{"b":"Другие ОС: macOS и XNU, Windows NT, Solaris/illumos, Plan 9, RTOS Если весь ваш опыт — Linux, то легко принять его решения за законы природы. fork(), /proc, epoll, «всё есть файл», «открытый файл можно удалить», «номера …","c":"post","d":"operating-systems","g":["операционные системы","macos","windows","solaris","plan 9","реальное время"],"h":"Карта: откуда что взялось · macOS и XNU: два ядра в одном · Откуда взялась эта странная конструкция · Двойная система вызовов · Порты Mach: ","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Мир не заканчивается на Linux: как устроены XNU, Windows NT, illumos, Plan 9 и системы реального времени, что из них пер…","t":"Другие ОС: macOS и XNU, Windows NT, Solaris/illumos, Plan 9, RTOS","u":"/post/operating-systems/16-other-operating-systems/","w":"2026-07-16"},{"b":"Ежедневная работа: staging, коммиты, diff, stash, отмена изменений В предыдущей статье мы разобрали объектную модель: blob, tree, commit, tag, ссылки и DAG истории. Это фундамент, но в него нельзя ткнуть пальцем — вы не …","c":"post","d":"git","g":["git","рабочий процесс","инструменты","командная работа"],"h":"Третье дерево: индекс · Что физически лежит в .git/index · Два флага, которыми злоупотребляют · Жизненный цикл файла · git status: научиться","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Модель трёх деревьев, устройство индекса, частичный staging через add -p, три вида diff, внутренности stash и полная кар…","t":"Ежедневная работа: staging, коммиты, diff, stash, отмена изменений","u":"/post/git/02-daily-workflow/","w":"2026-07-16"},{"b":"Жадные алгоритмы и когда они корректны Жадный алгоритм — это самый соблазнительный и самый опасный класс алгоритмов. Соблазнительный, потому что он пишется за пять минут, работает за O(n log n) и часто «выглядит правильн…","c":"post","d":"algorithms","g":["алгоритмы","жадные алгоритмы","оптимизация","доказательства","приближённые алгоритмы"],"h":"Что вообще такое жадный алгоритм · Два свойства, которые нужны · Три способа доказать корректность · 1. Аргумент обмена (exchange argument) ","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Как устроена жадность, почему она иногда даёт точный оптимум, а иногда катастрофу — аргумент обмена, greedy stays ahead,…","t":"Жадные алгоритмы и когда они корректны","u":"/post/algorithms/06-greedy/","w":"2026-07-16"},{"b":"Желательные трудности: почему лёгкое обучение хуже Два инженера разбираются с Kafka. Первый открывает документацию на втором мониторе, читает раздел про consumer groups, тут же копирует пример конфигурации в свой сервис,…","c":"post","d":"learning","g":["обучение","память","практика","метапознание"],"h":"Что именно утверждается — и чего не утверждается · Откуда взялось понятие и на чём оно держится · Каталог: какие именно трудности проверены ","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Разбор понятия desirable difficulties: какие затруднения в обучении проверены экспериментально, почему они снижают текущ…","t":"Желательные трудности: почему лёгкое обучение хуже","u":"/post/learning/06-desirable-difficulties/","w":"2026-07-16"},{"b":"Железо для программиста: микроконтроллеры, платы, схемы, питание Зачем программисту вообще лезть в электронику Когда вы пишете сервис, платформа — это абстракция с документированным API: ядро, драйверы и виртуальная памя…","c":"post","d":"embedded","g":["встраиваемые системы","микроконтроллеры","stm32","esp32","raspberry pi","схемотехника"],"h":"Зачем программисту вообще лезть в электронику · Пять величин, которых хватает на девяносто процентов задач · Цифровой сигнал — это напряжени","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Электрический минимум для разработчика: как устроен вывод микроконтроллера, чем платы отличаются друг от друга, как чита…","t":"Железо для программиста: микроконтроллеры, платы, схемы, питание","u":"/post/embedded/01-hardware-basics/","w":"2026-07-16"},{"b":"Железо и архитектуры: карта трека и где он начинается Где кончается вводный уровень и начинается этот трек Обзорное объяснение процессора обычно заканчивается схемой «выбрать инструкцию — декодировать — исполнить — запис…","c":"post","d":"hardware","g":["железо","архитектура процессора","risc-v","isa","микроархитектура"],"h":"Где кончается вводный уровень и начинается этот трек · Три разных компьютера в одном корпусе · Уравнение, вокруг которого крутится весь трек","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Карта трека про устройство вычислителя вглубь: три уровня — контракт ISA, микроархитектура и кристалл, — уравнение време…","t":"Железо и архитектуры: карта трека и где он начинается","u":"/post/hardware/00-overview/","w":"2026-07-16"},{"b":"Железо: почему для ИИ нужны видеокарты Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 36:39 — отсюда взято содержание этой главы. На вопрос «почему для ИИ нужны видеокарты» обычно отвечают «потому что они быстр…","c":"post","d":"ai-basics","g":["основы ии","gpu","инференс","видеопамять","производительность"],"h":"Что именно считается при генерации одного токена · Процессор и ускоритель: два разных компромисса · Главное узкое место — не арифметика, а п","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Инференс языковой модели — это умножение матриц, упирающееся не в арифметику, а в пропускную способность видеопамяти. Че…","t":"Железо: почему для ИИ нужны видеокарты","u":"/post/ai-basics/08-hardware/","w":"2026-07-16"},{"b":"Жизненный цикл продукта: зрелость, каннибализация, депрекация и закрытие Весь трек до этого момента говорил о движении вперёд: найти проблему, проверить, запустить, вырасти. Но у любого продукта есть вторая половина жизн…","c":"post","d":"product-management","g":["продукт","жизненный цикл","депрекация","техдолг","стратегия"],"h":"1. Жизненный цикл: не метафора, а измеримая форма · 1.1. Откуда берётся S-кривая · 1.2. Оценка потолка по своим данным · 1.3. Признаки зрело","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Что делать, когда рост замедлился и функций накопилось больше, чем нужно: логистическая модель насыщения и признаки зрел…","t":"Жизненный цикл продукта: зрелость, каннибализация, депрекация и закрытие","u":"/post/product-management/12-lifecycle-and-sunset/","w":"2026-07-16"},{"b":"Зависимости: компонентные принципы, циклы и цена чужого кода В статье про связанность и связность мы разбирали отношения между классами и функциями: кто про кого знает, насколько сильно и как это измерить. Эта статья — п…","c":"post","d":"principles","g":["принципы","зависимости","модульность","компоненты","качество кода"],"h":"1. Зависимость — это обещание, а не строка импорта · 2. Что считать компонентом · 3. Три принципа связности: что класть в один компонент · 4","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Как устроены зависимости между модулями и на что они реально влияют: шесть компонентных принципов Мартина, поиск и разры…","t":"Зависимости: компонентные принципы, циклы и цена чужого кода","u":"/post/principles/10-dependencies-and-components/","w":"2026-07-16"},{"b":"Загрузка системы: BIOS и UEFI, MBR/GPT, GRUB, systemd-boot, initramfs Есть момент, когда операционной системы ещё нет. Процессор включился, регистры в неопределённом состоянии, оперативная память — электрический шум, дис…","c":"post","d":"operating-systems","g":["операционные системы","загрузка","uefi","grub","initramfs","linux"],"h":"Зачем это прикладному программисту · Карта: две принципиально разные цепочки · Этап нулевой: до того, как вы что-либо контролируете · Legacy","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Полный путь от подачи питания до PID 1: reset vector, MBR и 512 байт кода, GPT и ESP, UEFI и NVRAM, Secure Boot и TPM, у…","t":"Загрузка системы: BIOS и UEFI, MBR/GPT, GRUB, systemd-boot, initramfs","u":"/post/operating-systems/10-boot-process/","w":"2026-07-16"},{"b":"Задачи и баг-репорты: как описать, чтобы поняли с первого раза Есть один измеримый критерий хорошего тикета, и он не про грамматику: исполнитель может начать работу, не задав ни одного вопроса. Всё остальное — стиль, арт…","c":"post","d":"engineering-english","g":["английский","коммуникация","баг-репорт","документирование","issue tracker"],"h":"Кто читает ваш тикет и в каком режиме · Сколько стоит один недостающий факт · Заголовок: одна строка, которую прочитают все · Глагол решает ","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Как писать issue и баг-репорты на английском так, чтобы исполнитель начал работу без единого уточняющего вопроса: анатом…","t":"Задачи и баг-репорты: как описать, чтобы поняли с первого раза","u":"/post/engineering-english/05-issues-and-bugs/","w":"2026-07-16"},{"b":"Задержки: главный источник неожиданного поведения Автоскейлер настроен разумно: держать среднюю длину очереди около двухсот сообщений. Нагрузка выросла на 40 % и осталась на новом уровне. Через полчаса в графиках — пила:…","c":"post","d":"systems-thinking","g":["системное мышление","обратная связь","динамика систем","надёжность","инциденты"],"h":"Что такое задержка в системном смысле · Механика: почему задержка превращает регулирование в колебания · Виды задержек: их надо различать, и","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Почему разумные решения дают дикие результаты, если между действием и его эффектом проходит время: механика колебаний, б…","t":"Задержки: главный источник неожиданного поведения","u":"/post/systems-thinking/05-delays/","w":"2026-07-16"},{"b":"Заметки и внешняя память: инструмент, а не ритуал Тема заметок в индустрии устроена хуже, чем любая другая в этом треке. Вокруг неё выросла целая экономика: инструменты, курсы, «второй мозг», графы связей, скриншоты крас…","c":"post","d":"learning","g":["обучение","заметки","память","когнитивная психология"],"h":"Часть 1. Две функции записи · Часть 2. Что известно про запись: доказательная база и её границы · Конспектирование лекций · Рука против клав","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Запись выполняет две разные функции — кодирование и хранение, — и их постоянно путают. Разбор того, что известно про кон…","t":"Заметки и внешняя память: инструмент, а не ритуал","u":"/post/learning/13-notes-and-external-memory/","w":"2026-07-16"},{"b":"Запасы и потоки: почему очередь растёт, а нагрузка та же Ночной инцидент выглядит так. Дежурному приходит алерт: глубина очереди 12 000 задач вместо обычных двухсот. Он открывает дашборд и видит, что RPS ровно такой же, …","c":"post","d":"systems-thinking","g":["системное мышление","системная динамика","очереди","моделирование","метрики"],"h":"Два вида величин, которые постоянно путают · Правило размерности — самый дешёвый тест · Что бывает запасом в инженерной системе · Главное ур","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Базовый язык системной динамики — запасы, потоки и накопление — на очередях, кэше, техдолге и найме, с честным разделени…","t":"Запасы и потоки: почему очередь растёт, а нагрузка та же","u":"/post/systems-thinking/04-stocks-and-flows/","w":"2026-07-16"},{"b":"Запахи кода и каталог рефакторингов Предыдущие статьи трека давали направления: уменьшай связанность, не дублируй знание, называй вещи своими именами. Все они отвечают на вопрос «каким должен быть код». Эта статья отвеча…","c":"post","d":"principles","g":["принципы","рефакторинг","чистый код","технический долг","качество кода"],"h":"1. Рефакторинг: строгое определение и почему оно важно · Экономика: технический долг · 2. Запах кода: что это и что это не · Таксономия · 3.","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Что такое запах кода, полный каталог основных запахов с примерами, механика безопасных рефакторингов маленькими шагами и…","t":"Запахи кода и каталог рефакторингов","u":"/post/principles/05-code-smells-and-refactoring/","w":"2026-07-16"},{"b":"Запуск и закрытие проекта: бизнес-кейс, устав, контроль изменений, остановка Двенадцать предыдущих статей трека были про середину проекта: как резать работу, ограничивать незавершёнку, прогнозировать сроки, встраивать ка…","c":"post","d":"project-management","g":["управление проектами","менеджмент","принятие решений","планирование","риски"],"h":"1. Асимметрия краёв · 2. Бизнес-кейс, который не врёт · 3. Устав: одна страница, которая экономит квартал · 4. Гейты и транши: покупать инфо","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Внешняя петля проекта: как посчитать бизнес-кейс, который не врёт, написать устав на одну страницу, договориться о крите…","t":"Запуск и закрытие проекта: бизнес-кейс, устав, контроль изменений, остановка","u":"/post/project-management/13-initiation-and-closure/","w":"2026-07-16"},{"b":"Зарплата и своя цена: как устроено вознаграждение и как исследовать рынок Первый разговор про деньги обычно проходит так. Рекрутер спрашивает: «На какую сумму вы рассчитываете?» Человек называет цифру, которую услышал от…","c":"post","d":"sdlc-and-career","g":["карьера","зарплата","грейды","рынок труда","опционы"],"h":"Почему «сколько я стою» — неправильный вопрос · Из чего состоит вознаграждение · Оклад (base salary) · Премии и бонусы · Доля в компании: ак","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Из чего складывается вознаграждение разработчика — оклад, бонусы, опционы, бенефиты, — как устроены грейды и вилки внутр…","t":"Зарплата и своя цена: как устроено вознаграждение и как исследовать рынок","u":"/post/sdlc-and-career/14-compensation/","w":"2026-07-16"},{"b":"Зачем учиться, когда есть ИИ: разбор без утешений Вопрос звучит примерно так: «Модель пишет код быстрее меня и знает больше меня. Зачем я потрачу двести часов на изучение того, что она выдаёт за секунды?» Это не риториче…","c":"post","d":"learning","g":["обучение","ии","продуктивность","когнитивная психология","доказательность"],"h":"Часть 1. Что известно измеримо · Эксперименты, показавшие ускорение · Эксперимент, показавший замедление · Наблюдательные данные · Что из эт","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Честный разбор вопроса, который сегодня стоит перед каждым инженером: что известно из измерений о влиянии ИИ-инструменто…","t":"Зачем учиться, когда есть ИИ: разбор без утешений","u":"/post/learning/01-why-learn-with-ai/","w":"2026-07-16"},{"b":"Зачем это нужно: люди, стандарты WCAG, требования и бизнес-аргументы Есть два способа испортить разговор о доступности. Первый — свести её к благотворительности: «давайте сделаем доброе дело для несчастных людей». Второй…","c":"post","d":"accessibility","g":["доступность","wcag","a11y","стандарты","скринридеры"],"h":"1. Люди: кто и как пользуется интерфейсами · Терминология, с которой стоит начать · Спектр, а не категория · Как это выглядит технически · К","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Кто и как на самом деле пользуется интерфейсами, что требуют WCAG 2.2 и законы вроде EAA и ADA, как за пять минут руками…","t":"Зачем это нужно: люди, стандарты WCAG, требования и бизнес-аргументы","u":"/post/accessibility/01-why-and-standards/","w":"2026-07-16"},{"b":"Золотой путь: помощь, которая не должна стать забором В понедельник команда «Платежи» создала новый сервис: одна команда в терминале, через двадцать минут в проде крутится заготовка с health-чеком, метриками, трейсингом,…","c":"post","d":"platform-engineering","g":["платформа","developer experience","золотой путь","шаблоны","adoption"],"h":"Что такое золотой путь и чем он не является · Из чего состоит путь: карта жизненного цикла · Отношения команды с путём: где именно ломается ","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Что такое золотой путь, из чего он состоит, чем измеряется его принятие, сколько он стоит и по каким механизмам превраща…","t":"Золотой путь: помощь, которая не должна стать забором","u":"/post/platform-engineering/02-golden-path/","w":"2026-07-16"},{"b":"ИИ в жизненном цикле разработки: кодинг-агенты, ревью, тесты, документация Эта статья — про то, ради чего большинство читателей вообще пришли: как применить всё предыдущее к собственной работе программиста. Промптинг, ст…","c":"post","d":"ai-engineering","g":["ии-инженерия","кодинг-агенты","code review","тестирование","devops"],"h":"Что на самом деле показывают измерения · Анатомия кодинг-агента · Контекст репозитория: файл инструкций · Агент в CI: изоляция и права · ИИ-","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Как встроить кодинг-агентов, ИИ-ревью, генерацию тестов и документации в реальный SDLC: рабочие конфиги и промпты, честн…","t":"ИИ в жизненном цикле разработки: кодинг-агенты, ревью, тесты, документация","u":"/post/ai-engineering/15-ai-in-sdlc/","w":"2026-07-16"},{"b":"ИИ в продакшене: латентность, кэширование, роутинг моделей, стоимость, наблюдаемость Прототип на LLM отличается от продакшена ровно тремя вещами: у продакшена есть SLO, есть счёт и есть дежурный, которого будят ночью. Вс…","c":"post","d":"ai-engineering","g":["ии-инженерия","продакшн","производительность","наблюдаемость","llm"],"h":"Из чего складывается латентность · Хвосты важнее среднего · Стоимость запроса: считаем честно · Считайте токены, а не символы · Правильная м","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Что меняется, когда LLM-прототип становится сервисом с SLO и счётом за инференс: из чего складывается латентность и как …","t":"ИИ в продакшене: латентность, кэширование, роутинг моделей, стоимость, наблюдаемость","u":"/post/ai-engineering/13-production-and-cost/","w":"2026-07-16"},{"b":"ИИ для инженера: карта трека и текстовая версия лекции Этот трек — текстовая версия лекции «Все что нужно знать про ИИ айтишнику: алгоритмы, промптинг и мышление». Полтора часа устного рассказа разобраны на 16 глав, кото…","c":"post","d":"ai-basics","g":["основы ии","llm","нейросети","промптинг","машинное обучение"],"h":"Зачем этот трек, если на портале уже четыре трека про ИИ · Карта трека · Сквозная мысль трека · Что этот трек не делает · Как читать · Что д","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Вводный трек по искусственному интеллекту: от предсказуемости и цепей Маркова до LLM, промптинга, диффузии, RAG, MCP и о…","t":"ИИ для инженера: карта трека и текстовая версия лекции","u":"/post/ai-basics/00-overview/","w":"2026-07-16"},{"b":"ИИ-инженерия: карта трека, что умеют модели и что от них ждать Есть два разных ремесла, которые в вакансиях называют одинаково. Первое — машинное обучение: вы собираете датасет, выбираете архитектуру, крутите градиенты, …","c":"post","d":"ai-engineering","g":["ии-инженерия","llm","промпт-инжиниринг","агенты","rag"],"h":"Карта трека · Что модели умеют на самом деле · Про бенчмарки: как их читать · Где модели ломаются · Анатомия ИИ-приложения · Лестница возмож","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Обзорная карта прикладного трека по LLM: чем ИИ-инженерия отличается от ML, что модели реально умеют и где ломаются, лес…","t":"ИИ-инженерия: карта трека, что умеют модели и что от них ждать","u":"/post/ai-engineering/00-overview/","w":"2026-07-16"},{"b":"Идиоматика C# и обработка ошибок Синтаксис вы уже знаете. Теперь научимся писать код, который «выглядит как C#» — идиоматично, понятно другим разработчикам и надёжно в проде. Главная тема статьи — как правильно моделиров…","c":"post","d":"csharp","g":["csharp","обработка ошибок","исключения","идиомы","антипаттерны"],"h":"Две модели ошибок: исключения и возвращаемые значения · Исключения (exceptions) — идиоматичный путь по умолчанию · Result-паттерн — для ожид","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Как писать идиоматичный C#: когда исключения, а когда Result-паттерн, детерминированное освобождение ресурсов, полезные …","t":"Идиоматика C# и обработка ошибок: исключения, Result, IDisposable, паттерны","u":"/post/csharp/03-idioms-and-errors/","w":"2026-07-16"},{"b":"Идиоматика Elixir и обработка ошибок Знать синтаксис недостаточно — важно писать по-эликсирски. В основе идиоматики лежат: маленькие чистые функции, паттерн-матчинг вместо ветвлений, явное различие «ожидаемой ошибки» и «…","c":"post","d":"elixir","g":["elixir","обработка ошибок","идиомы","антипаттерны","протоколы"],"h":"Две категории ошибок · Tagged tuples: {:ok, value} / {:error, reason} · with — элегантная цепочка операций, каждая из которых может сбоить ·","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Идиоматичный Elixir: tagged tuples, конструкция with, разница между ожидаемыми ошибками и падениями, поведения и протоко…","t":"Идиоматика Elixir и обработка ошибок: теги, with, поведения, протоколы, антипаттерны","u":"/post/elixir/03-idioms-and-errors/","w":"2026-07-16"},{"b":"Идиоматика и обработка ошибок: исключения, Optional, immutability Код, который работает на счастливом пути, пишут за час. Код, который предсказуемо ведёт себя при отклонениях, пишут всю карьеру. В Java эта тема особенно …","c":"post","d":"java","g":["java","исключения","optional","иммутабельность","идиомы"],"h":"Три вопроса, на которые отвечает обработка ошибок · Что такое исключение с точки зрения JVM · Две вещи, которые ломают диагностику в проде ·","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как устроены исключения внутри JVM, когда выбирать checked, а когда unchecked, зачем на самом деле нужен Optional и как …","t":"Идиоматика и обработка ошибок: исключения, Optional, immutability","u":"/post/java/05-idioms-and-errors/","w":"2026-07-16"},{"b":"Идиоматичный Go и работа с ошибками Синтаксис Go можно выучить за выходные, а вот писать идиоматично — по-гошному — учатся месяцами. Идиоматичность здесь не эстетство: код, написанный в общем стиле, читается всей командо…","c":"post","d":"golang","g":["go","обработка ошибок","идиомы","антипаттерны","качество кода"],"h":"Ошибки — это значения · Создание ошибок · Wrapping: главный навык работы с ошибками · errors.Is и errors.As — разбор цепочки · Когда оборачи","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Ошибки как значения, wrapping через %w, errors.Is/As, идиомы и антипаттерны, functional options и code style уровня прод…","t":"Идиоматичный Go: обработка ошибок, паттерны и стиль","u":"/post/golang/03-idioms-and-errors/","w":"2026-07-16"},{"b":"Идиоматичный Python: генераторы, итераторы, контекстные менеджеры, comprehensions «Идиоматичный» — слово опасное: его легко свести к списку косметических правил вроде «не пиши for i in range(len(xs))». Настоящая идиомати…","c":"post","d":"python","g":["python","генераторы","итераторы","идиомы","ленивые вычисления"],"h":"Карта протоколов · Протокол итерации: что на самом деле делает for · Iterable ≠ Iterator · Свой итератор классом — и почему так почти никогд","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Протокол итерации, генераторы как приостанавливаемые функции, ленивые пайплайны на itertools, contextlib и ExitStack — к…","t":"Идиоматичный Python: генераторы, итераторы, контекстные менеджеры, comprehensions","u":"/post/python/06-pythonic-idioms/","w":"2026-07-16"},{"b":"Иерархический каскад: три уровня поиска, делящих один бюджет Статья про настройку поиска заканчивается практичным советом: настраивайте, если есть репрезентативный набор задач, иначе берите дефолты. Совет этот опирается …","c":"post","d":"sbse","g":["sbse","генетические алгоритмы","настройка параметров","мета-оптимизация","бюджет вычислений"],"h":"Три уровня и одно разделение ролей · Что пришлось поменять при переносе · Валюта: чем именно меряется бюджет · Пять рук при одном бюджете · ","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Что происходит, когда над поиском надстраивают уровень настройки параметров, а над ним — уровень распределения времени: …","t":"Иерархический каскад: три уровня поиска, делящих один бюджет","u":"/post/sbse/17-hierarchical-ga-cascade/","w":"2026-07-16"},{"b":"Иерархия памяти: регистры, кэш, RAM, диск и почему это важно В предыдущей статье трека мы разобрали процессор как машину, которая в цикле достаёт команду по адресу из PC, декодирует её и исполняет (Как работает процессор…","c":"post","d":"computer-science","g":["computer science","память","кэш","производительность","архитектура компьютера"],"h":"Иллюзия плоской памяти и «стена памяти» · Почему нельзя сделать всю память быстрой · Пирамида: уровни иерархии · Задержки в человеческих мас","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Почему память компьютера — не плоское поле байтов, а пирамида из регистров, кэшей, ОЗУ и диска; как кэш и локальность пр…","t":"Иерархия памяти: регистры, кэш, RAM, диск и почему это важно","u":"/post/computer-science/06-memory-hierarchy/","w":"2026-07-16"},{"b":"Из инженера в лида: смена системы координат Первая неделя в роли выглядит обманчиво спокойно. Задачи те же, репозиторий тот же, люди те же; появились три встречи в календаре и доступ к HR-порталу. Кажется, что изменилась…","c":"post","d":"engineering-leadership","g":["лидерство","тимлид","переход в роль","управление командой","карьера"],"h":"Единица работы поменялась · Честно про доказательную базу · Восемь инженерных привычек, которые начинают вредить · «Быстрее сделать самому» ","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Что конкретно ломается в первый месяц после назначения: какие инженерные привычки начинают вредить, почему ваша реплика …","t":"Из инженера в лида: смена системы координат","u":"/post/engineering-leadership/01-from-engineer-to-lead/","w":"2026-07-16"},{"b":"Извлечение из памяти: главный рабочий приём В предыдущей главе мы разобрали, почему перечитывание, подсветка маркером и просмотр чужого решения дают ощущение знания, но не знание. Естественный следующий вопрос — что дела…","c":"post","d":"learning","g":["обучение","память","практика","когнитивная психология"],"h":"Что такое извлечение и чем оно не является · Базовый эксперимент, который стоит знать целиком · Второй эксперимент: что можно выбросить · Тр","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Разбор retrieval practice — приёма с самой сильной доказательной базой в психологии обучения: какие эксперименты его пок…","t":"Извлечение из памяти: главный рабочий приём","u":"/post/learning/04-retrieval/","w":"2026-07-16"},{"b":"Измерение: метрики, перцентили, latency vs throughput, USE и RED Почти каждая история про оптимизацию, которая закончилась плохо, начинается одинаково: кто-то посмотрел на код, сказал «вот тут явно узкое место» и потрати…","c":"post","d":"performance","g":["производительность","метрики","перцентили","наблюдаемость","slo"],"h":"Что вообще является величиной · Задержка и пропускная способность — не обратные величины · Среднее — самая вредная метрика в отрасли · Перце","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Как получить число, которому можно верить: чем задержка отличается от пропускной способности, почему среднее бесполезно,…","t":"Измерение: метрики, перцентили, latency vs throughput, USE и RED","u":"/post/performance/01-measuring/","w":"2026-07-16"},{"b":"Иллюзия понимания: почему перечитывание не работает Вы читаете статью про Raft. Первый проход — тяжело: термины, роли, таймауты. Второй проход — уже легче: знакомые слова, знакомая схема, всё логично. Третий — почти прия…","c":"post","d":"learning","g":["обучение","метапознание","память","когнитивные искажения"],"h":"Проблема не в памяти, а в приборе · Часть 1. Из чего собирается ложное чувство знания · Беглость обработки · Ответ на экране: foresight bias","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Чувство «я понял» — это измерительный прибор с систематическим смещением: он реагирует на лёгкость обработки материала, …","t":"Иллюзия понимания: почему перечитывание не работает","u":"/post/learning/03-illusion-of-competence/","w":"2026-07-16"},{"b":"Императивная и процедурная парадигмы Если вы когда-нибудь писали x = x + 1, вы писали императивный код. Это настолько привычно, что кажется не парадигмой, а «просто программированием». Именно поэтому её стоит разобрать п…","c":"post","d":"paradigms","g":["парадигмы","императивное программирование","процедурное программирование","структурное программирование","состояние"],"h":"Интуиция: рецепт против заказа в ресторане · Откуда это взялось: машина фон Неймана · Краткая история: как императивщина взрослела · 1. Стру","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Как устроено программирование «через изменение состояния»: от машины фон Неймана и структурного программирования до проц…","t":"Императивная и процедурная парадигмы","u":"/post/paradigms/01-imperative-procedural/","w":"2026-07-16"},{"b":"Индексы и планы выполнения: B-tree, hash, GIN, покрывающие индексы Индекс — это единственный инструмент в реляционной СУБД, который меняет асимптотику. Всё остальное — буферы, параллелизм, более быстрый диск, более мощны…","c":"post","d":"databases","g":["базы данных","индексы","sql","производительность","postgresql"],"h":"Физика: почему считаем страницы, а не строки · Рабочая схема для примеров · B-tree: почему он выиграл · Селективность: когда индекс вреден ·","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Как устроены индексы разных типов, как планировщик выбирает путь доступа и как читать EXPLAIN так, чтобы находить настоя…","t":"Индексы и планы выполнения: B-tree, hash, GIN, покрывающие индексы","u":"/post/databases/06-indexes-and-query-plans/","w":"2026-07-16"},{"b":"Инженерия с ИИ-агентами: карта трека и чего ждать от агента Этот трек — про то, как работать с ИИ-агентом в кодовой базе, которую вы не готовы сломать. Не про то, как «войти в новую эру», и не про то, какой инструмент лу…","c":"post","d":"ai-agents","g":["ai-агенты","агенты","ревью кода","тестирование","инструменты разработки"],"h":"Одно предложение, из которого следует весь трек · Зачем ещё один трек про ИИ · Рабочее определение агента · Что агент делает хорошо, а что н","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Вводная глава практического трека про работу с Claude Code, Cursor, Codex и подобными инструментами в реальной кодовой б…","t":"Инженерия с ИИ-агентами: карта трека и чего ждать от агента","u":"/post/ai-agents/00-overview/","w":"2026-07-16"},{"b":"Инженерная практика: анатомия системы и карта трека Есть два способа узнать, как устроена разработка. Первый — выучить по отдельности браузер, базу данных, Docker, Git и десяток фреймворков. Второй — понять, как из этого…","c":"post","d":"development","g":["development","инженерная практика","архитектура","проектирование"],"h":"1. Один клик: сквозной путь через всю систему · 2. Три контура обратной связи · 3. Анатомия: кто за что отвечает · 4. Где на портале лежит г","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Как из клиента, сервера, данных, сборки и конвейера складывается работающая система, кто за что отвечает и где на портал…","t":"Инженерная практика: анатомия системы и карта трека","u":"/post/development/00-overview/","w":"2026-07-16"},{"b":"Инженерный английский: карта трека и для кого он не подойдёт Разработчик открывает свой pull request и видит комментарий ревьюера: I wonder if we should be doing this in the request handler at all. Он читает это как разм…","c":"post","d":"engineering-english","g":["английский","коммуникация","документация","карьера","код-ревью"],"h":"Чего этого трека нет и не будет · Что тогда есть · Честно про уровень: кому этот трек не поможет · Где именно английский стоит дорого · Три ","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Зачем нужен отдельный трек про английский в рабочих ситуациях инженера, чем он принципиально отличается от курсов языка,…","t":"Инженерный английский: карта трека и для кого он не подойдёт","u":"/post/engineering-english/00-overview/","w":"2026-07-16"},{"b":"Инструменты и карьера аналитика: грейды, специализации, что учить дальше Двенадцать статей трека были про работу: как достать знание из людей, как отличить бизнес-требование от «хотелки», как описать поведение однозначно…","c":"post","d":"systems-analysis","g":["аналитика","карьера","инструменты","требования","грейды"],"h":"1. Инструмент — это место, где живёт решение · 1.1. Единственный работающий критерий · 1.2. Маршрут артефакта · 1.3. Пять слотов инструмента","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как выбирать инструменты по сроку жизни знания, а не по списку фич; какие навыки нужны на самом деле (SQL, API, схемы, ч…","t":"Инструменты и карьера аналитика: грейды, специализации, что учить дальше","u":"/post/systems-analysis/13-tools-and-career/","w":"2026-07-16"},{"b":"Инструменты и практика: что выбрать и как встроить в свой процесс Четырнадцать глав трека разбирали устройство агента, его отказы, цену и границы. Осталась практическая часть: какой инструмент взять и что с ним делать в …","c":"post","d":"ai-agents","g":["ai-агенты","инструменты","процесс","внедрение"],"h":"Почему сравнение по функциям бесполезно · Что не меняется при смене инструмента · Классы инструментов вместо брендов · Выбор класса под зада","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Как выбирать агентский инструмент по свойствам контура, а не по списку функций: классы инструментов, семь критериев срав…","t":"Инструменты и практика: что выбрать и как встроить в свой процесс","u":"/post/ai-agents/15-tooling-and-practice/","w":"2026-07-16"},{"b":"Инструменты и протоколы: вызов функций, MCP, свои интеграции В предыдущей главе мы разбирали окно контекста как ограниченный ресурс. Эта глава — про то, что этот ресурс тратит и что взамен даёт: инструменты. Начнём с утв…","c":"post","d":"ai-agents","g":["ai-агенты","инструменты","mcp","интеграции","проверяемость"],"h":"Из чего состоит инструмент · Цикл вызова: кто что делает · Встроенные инструменты кодового агента · Сколько стоят инструменты · Когда инстру","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Что такое инструмент с точки зрения модели, чем встроенные инструменты агента отличаются от MCP-сервера, сколько инструм…","t":"Инструменты и протоколы: вызов функций, MCP, свои интеграции","u":"/post/ai-agents/05-tools-and-mcp/","w":"2026-07-16"},{"b":"Инструменты языка: LSP, форматтеры, линтеры, отладчики Двенадцать статей подряд мы строили компилятор как функцию: на входе текст, на выходе машинный код или байткод. У этой функции есть свойства, которые казались само с…","c":"post","d":"compilers","g":["компиляторы","lsp","инструменты разработки","отладка","статический анализ"],"h":"Компилятор-функция против компилятора-сервиса · LSP: как один протокол убил задачу M×N · Кадрирование и цикл сообщений · Ядро сервера: диспе","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Почему компилятор-функция не годится для IDE и во что он превращается: протокол LSP до последнего байта заголовка, компи…","t":"Инструменты языка: LSP, форматтеры, линтеры, отладчики","u":"/post/compilers/13-language-tooling/","w":"2026-07-16"},{"b":"Инструменты: таск-трекеры, заметки, Zettelkasten, автоматизация рутины Это самая опасная статья трека. Не потому, что тема сложная — наоборот, она приятная. Выбирать инструменты весело: можно читать сравнения, смотреть ч…","c":"post","d":"time-management","g":["тайм-менеджмент","инструменты","заметки","автоматизация"],"h":"Часть 1. Четыре слоя и правило принадлежности · Часть 2. Критерии выбора, которые действительно предсказывают исход · Трение захвата · Довер","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Честный разбор классов инструментов личной продуктивности: где проходит граница между системой и приложением, как выбира…","t":"Инструменты: таск-трекеры, заметки, Zettelkasten, автоматизация рутины","u":"/post/time-management/13-tools/","w":"2026-07-16"},{"b":"Интеграционное тестирование, тестовые контейнеры и контрактные тесты Есть классическая картинка: два ящика с надписями «unit tests: 100% passing», между которыми летит мяч и не попадает ни в один. Это не шутка про качест…","c":"post","d":"testing","g":["тестирование","интеграционное тестирование","автоматизация тестирования","микросервисы"],"h":"Что вообще считать интеграционным тестом · Что именно ломается на стыках · Чем подменять зависимость: дерево решений · Testcontainers: реаль","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Что ломается на стыках модулей и сервисов, как поднимать реальные зависимости через Testcontainers, чем контрактные тест…","t":"Интеграционное тестирование, тестовые контейнеры и контрактные тесты","u":"/post/testing/06-integration-testing/","w":"2026-07-16"},{"b":"Интеграция: как части системы разговаривают друг с другом Три предыдущие главы разбирали части по отдельности: клиент, сервер, хранилище. Но система — не набор частей, а набор стыков между ними. И почти вся боль эксплуат…","c":"post","d":"development","g":["development","api","интеграция","rest","надёжность"],"h":"Интеграция — это про контракт, а не про технологию · Как менялись способы интеграции · Синхронно или асинхронно · Стили API: честное сравнен","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Контракт между двумя частями системы: эволюция способов интеграции, синхронное и асинхронное взаимодействие, проектирова…","t":"Интеграция: как части системы разговаривают друг с другом","u":"/post/development/04-integration/","w":"2026-07-16"},{"b":"Интервальное повторение: забывание как инструмент В предыдущей главе — Извлечение из памяти — разобран приём: доставать знание из головы, а не заливать его туда повторным чтением. Остался вопрос расписания. Достать один …","c":"post","d":"learning","g":["обучение","память","повторение","доказательность"],"h":"Часть 1. Что забывается и с какой скоростью · Кривая Эббингауза: что в ней правда · Забывание — не стирание · Часть 2. Эффект распределения:","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Что на самом деле показали исследования эффекта распределения, как устроены планировщики от Лейтнера до FSRS, сколько ст…","t":"Интервальное повторение: забывание как инструмент","u":"/post/learning/05-spaced-repetition/","w":"2026-07-16"},{"b":"Интерпретируемость, устойчивость и безопасность моделей Все предыдущие статьи трека отвечали на вопрос «как заставить сеть работать». Эта — на три вопроса, которые задают ровно в тот момент, когда сеть уже работает и её …","c":"post","d":"neural-networks","g":["нейросети","интерпретируемость","безопасность","надёжность","mlops"],"h":"1. Зачем это нужно: четыре разных заказчика · 2. Интерпретируемость: атрибуция · 2.1 Постановка · 2.2 Градиент как первое приближение · 2.3 ","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Почему модель приняла такое решение, что с ней будет при сдвиге данных и атаке, и как выстроить эшелонированную защиту в…","t":"Интерпретируемость, устойчивость и безопасность моделей","u":"/post/neural-networks/11-interpretability-and-safety/","w":"2026-07-16"},{"b":"Инференс и деплой: квантизация, дистилляция, сервинг Обучение модели — это исследовательский проект с понятным финалом: метрика на валидации перестала расти, чекпоинт сохранён. Инференс — это бесконечная эксплуатация. Об…","c":"post","d":"neural-networks","g":["нейросети","инференс","квантизация","mlops","оптимизация"],"h":"1. Инференс — это другая задача оптимизации · 1.1 Roofline: где на самом деле узкое место · 1.2 Карта методов · 2. Квантизация: главный рыча","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Как превратить обученную модель в дешёвый и предсказуемый сервис: roofline-анализ узких мест, квантизация от математики …","t":"Инференс и деплой: квантизация, дистилляция, сервинг","u":"/post/neural-networks/10-inference-and-deployment/","w":"2026-07-16"},{"b":"Информационная архитектура: структура, навигация, именование Вы уже знаете, кому и зачем нужен продукт: как это выясняют — в исследованиях пользователей, как фиксируют — в персонах и JTBD. Дальше идёт вопрос, который каж…","c":"post","d":"ux-design","g":["дизайн","ux","информационная архитектура","навигация","юзабилити"],"h":"1. Что такое информационная архитектура · 2. Как человек ищет: информационный запах · 3. Разбор: «пользователь не нашёл кнопку» · 4. Схемы о","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как построить структуру продукта, которую человек проходит с первого раза: информационный запах, схемы организации, глуб…","t":"Информационная архитектура: структура, навигация, именование","u":"/post/ux-design/03-information-architecture/","w":"2026-07-16"},{"b":"Инфраструктура как API: декларативность, каталог, шаблоны сервисов Платформенная команда сделала «инфраструктуру по кнопке»: CLI-команда infra create-service, за которой четырнадцать последовательных вызовов к API облака…","c":"post","d":"platform-engineering","g":["платформа","инфраструктура как код","api","каталог сервисов","developer experience"],"h":"Что значит «инфраструктура как API» и чем это не является · Декларативность: желаемое состояние и сходимость · Проектирование самого API: ре","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Как превратить выдачу инфраструктуры в контракт: декларативная модель ресурса и сходимость, версионирование API, каталог…","t":"Инфраструктура как API: декларативность, каталог, шаблоны сервисов","u":"/post/platform-engineering/09-infrastructure-api/","w":"2026-07-16"},{"b":"Инъекции: SQL, NoSQL, команды, шаблоны — механика и защита Первая публичная заметка о SQL-инъекции — статья Rain Forest Puppy в Phrack 54 (1998). С тех пор сменились языки, фреймворки, СУБД и целые парадигмы разработки, …","c":"post","d":"security","g":["безопасность","owasp","sql","валидация","secure coding"],"h":"Правила игры: где можно экспериментировать · Анатомия инъекции: source, sink и граница разбора · SQL-инъекция · Как выглядит уязвимый код · ","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Единая механика всех инъекций — смешение канала данных и канала управления — и инженерные способы её разорвать: параметр…","t":"Инъекции: SQL, NoSQL, команды, шаблоны — механика и защита","u":"/post/security/03-injection/","w":"2026-07-16"},{"b":"Исключения и обработка ошибок: иерархия, свои исключения, EAFP Обработка ошибок — это не «отлов падений». Это проектное решение о том, кто в системе знает, что делать, когда что-то пошло не так. Функция, которая читает к…","c":"post","d":"python","g":["python","исключения","обработка ошибок","отладка"],"h":"Что происходит при raise: модель исполнения · Иерархия исключений: почему except Exception, а не except: · Как выбрать правильный тип · try ","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как в Python устроен подъём исключения, зачем нужна иерархия BaseException, как проектировать свои классы ошибок и грани…","t":"Исключения и обработка ошибок: иерархия, свои исключения, EAFP","u":"/post/python/08-errors-and-exceptions/","w":"2026-07-16"},{"b":"Исполняемая спецификация как фитнес-функция: поиск, у которого судья — компилятор Аналитик приносит восемь строк. Сумма корзины — скидка: 5000 → 0, 8000 → 0, 12000 → 1200, 50000 → 5000. И ещё четыре с отметкой «постоянны…","c":"post","d":"sbse","g":["sbse","генетические алгоритмы","фитнес-функция","многокритериальная оптимизация","исполняемые спецификации","переобучение"],"h":"Почему фитнес — главная трудность, и почему здесь её нет · Что синтезируется: спецификация как дерево · Операторы · Семь величин, ни одна из","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Что происходит с генетическим алгоритмом, когда фитнес перестаёт быть экспертной оценкой и становится кодом возврата ком…","t":"Исполняемая спецификация как фитнес-функция: поиск, у которого судья — компилятор","u":"/post/sbse/16-executable-specification-as-fitness/","w":"2026-07-16"},{"b":"Исследования пользователей: интервью, наблюдение, анализ данных Форма выставления счёта. Шесть полей, ничего необычного. Аналитика показывает: до кнопки «Выставить счёт» доходит 46% тех, кто открыл экран. Команда собирае…","c":"post","d":"ux-design","g":["дизайн","ux","исследования","интервью","аналитика"],"h":"1. Зачем это инженеру, а не только «исследователю» · 2. Чего исследование не может · 3. Карта методов: две оси, четыре квадранта · 4. Исслед","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как задать исследовательский вопрос, провести интервью без наводящих вопросов, увидеть настоящую работу пользователя, вы…","t":"Исследования пользователей: интервью, наблюдение, анализ данных","u":"/post/ux-design/01-user-research/","w":"2026-07-16"},{"b":"История ОС: от Multics и Unix до BSD, Linux и наших дней История ОС — не музейная витрина. Это единственный способ объяснить, почему creat() пишется без «e», почему ps aux и ps -ef — это два разных синтаксиса одной коман…","c":"post","d":"operating-systems","g":["операционные системы","unix","linux","bsd","история"],"h":"Что было до Unix: пакетная обработка и дефицит машин · Multics: великолепный провал, из которого выросло всё · 1969: Unix на списанном PDP-7","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как из провала Multics вырос Unix, почему Berkeley и AT\u0026T разошлись, откуда взялись Linux, FreeBSD, macOS и Windows NT —…","t":"История ОС: от Multics и Unix до BSD, Linux и наших дней","u":"/post/operating-systems/01-history-and-unix-lineage/","w":"2026-07-16"},{"b":"Как всё складывается: слои абстракции от транзистора до приложения и куда двигаться Мы прошли всю башню. Начали с вопроса, что вообще значит «вычислить», спустились к битам и транзисторам, поднялись через процессор, памя…","c":"post","d":"computer-science","g":["computer science","абстракция","большая картина","основы"],"h":"Вся башня как набор контрактов · Один клик сквозь все слои · Швы: где слои сцепляются · Каждый слой протекает — и это нормально · Насколько ","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Финал трека: собираем башню обратно — проследим один клик сквозь все слои от кнопки до электронов, назовём контракт на к…","t":"Как всё складывается: слои абстракции от транзистора до приложения и куда двигаться","u":"/post/computer-science/17-how-it-fits-together/","w":"2026-07-16"},{"b":"Как выбирать и смешивать парадигмы в реальном проекте Девять статей трека мы разбирали парадигмы поодиночке: императивную, объектно-ориентированную, функциональную, декларативную и логическую, конкурентные, реактивную, о…","c":"post","d":"paradigms","g":["парадигмы","проектирование","архитектура","рефакторинг","принятие решений"],"h":"Часть 1. Что вы на самом деле выбираете · Парадигма — это не про код, а про то, что нельзя сломать · Три вопроса, которые нужно задать подси","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Финальная статья трека: метод выбора парадигмы под конкретную подсистему, оси изменчивости и expression problem, швы меж…","t":"Как выбирать и смешивать парадигмы в реальном проекте","u":"/post/paradigms/09-choosing-and-mixing/","w":"2026-07-16"},{"b":"Как выбрать БД и как мигрировать: сравнительная сводка по всем классам Восемнадцать статей трека разбирали хранилища поштучно: реляционные движки, документные, wide-column, колоночные, временные ряды, поиск, векторы, объ…","c":"post","d":"databases","g":["базы данных","архитектура данных","миграции","cdc","выбор технологий"],"h":"1. Одна система координат для всех классов · Сводная таблица: модель, паттерн, гарантии · Сводная таблица: масштаб, эксплуатация, стоимость,","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Итоговая сводка трека: сравнение всех классов хранилищ по одним осям, процедура выбора с письменным обоснованием, расчёт…","t":"Как выбрать БД и как мигрировать: сравнительная сводка по всем классам","u":"/post/databases/19-choosing-and-migrating/","w":"2026-07-16"},{"b":"Как данные переживают выключение: файлы, БД, транзакции — обзор Выдерните шнур питания из работающего компьютера. Всё, что программа держала «в уме» — открытые документы, счёт в игре, наполовину заполненная форма, — исче…","c":"post","d":"computer-science","g":["computer science","базы данных","персистентность","транзакции","acid"],"h":"Волатильное против долговечного: два мира данных · Самый простой долговечный носитель — файл · Что база данных даёт поверх файла · Реляционн","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"RAM забывает всё при выключении питания. Как тогда данные доживают до завтра? Путь снизу вверх: от байтов на диске к фай…","t":"Как данные переживают выключение: файлы, БД, транзакции — обзор","u":"/post/computer-science/13-databases-and-persistence/","w":"2026-07-16"},{"b":"Как компьютеры общаются: сети, модель OSI, стек TCP/IP До сих пор в этом треке мы разбирали одну машину: как из транзисторов собирается процессор (Как работает процессор), как он читает код и данные из памяти, как операц…","c":"post","d":"computer-science","g":["computer science","сети","tcp/ip","osi","протоколы"],"h":"Почему это трудно: первые принципы · Идея слоёв: стек протоколов · Уровни снизу вверх · Физический и канальный: биты и кадры среди соседей ·","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Сети снизу вверх: почему доставить биты между машинами трудно, как слои протоколов делят задачу, модель OSI и стек TCP/I…","t":"Как компьютеры общаются: сети, модель OSI, стек TCP/IP","u":"/post/computer-science/11-networking-basics/","w":"2026-07-16"},{"b":"Как ломаются распределённые системы: каскады и насыщение 02:47. Медленный запрос в основной базе — забыли индекс в миграции, выкатили вечером. К 02:49 задержка API уползла с 40 мс до двух секунд. В 02:54 дежурный откатил…","c":"post","d":"sre","g":["надёжность","sre","распределённые системы","отказоустойчивость","перегрузка"],"h":"Три вида отказа, которые нельзя путать · Насыщение: как отказ рождается из арифметики · Почему у порога всё взрывается нелинейно · Очередь б","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Каталог механик отказа, которые не выводятся из поломки отдельного компонента: насыщение пулов и очередей, усиление повт…","t":"Как ломаются распределённые системы: каскады и насыщение","u":"/post/sre/11-failure-modes/","w":"2026-07-16"},{"b":"Как на самом деле делают софт: карта курса для начинающего разработчика Вы научились писать код. Умеете сделать так, чтобы программа запускалась, решала задачу и не падала на очевидных входах. Это настоящий навык, и он н…","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","процессы разработки","собеседования","грейды"],"h":"Главное, чего не видно снаружи: код — меньшая часть работы · Почему вообще существуют процессы · Путь фичи: то, что происходит на самом деле","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Обзорная статья трека: из чего состоит настоящая работа разработчика помимо написания кода, как устроен путь от идеи до …","t":"Как на самом деле делают софт: карта курса для начинающего разработчика","u":"/post/sdlc-and-career/00-overview/","w":"2026-07-16"},{"b":"Как пишут свою ОС: от bootloader до планировщика и что читать дальше Восемнадцать статей трека мы разбирали ОС снаружи: читали /proc, трассировали системные вызовы, сравнивали планировщики, спорили о микроядрах. Это прав…","c":"post","d":"operating-systems","g":["операционные системы","ядро","низкоуровневое программирование","загрузка","планировщик"],"h":"Зачем это вообще делать · Развилка первая: какую машину вы моделируете · Инструментарий: freestanding-мир · Этап 1: как код вообще получает ","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Практический маршрут написания собственного ядра: загрузка, GDT и IDT, физическая и виртуальная память, переключение кон…","t":"Как пишут свою ОС: от bootloader до планировщика и что читать дальше","u":"/post/operating-systems/19-writing-your-own-os/","w":"2026-07-16"},{"b":"Как проводить собеседования: структура, оценка, предвзятость, обратная связь Через полгода-год после выхода на первую работу вас однажды позовут «посидеть на секции». Не потому что вы стали экспертом по найму, а потому ч…","c":"post","d":"sdlc-and-career","g":["карьера","найм","собеседования","команда","обратная связь"],"h":"Зачем вообще собеседование: чего вы пытаетесь добиться · Насколько интервью вообще работает · Две ошибки и их несимметричная цена · Процесс ","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Разбор второй стороны стола: как устроено структурированное интервью, как писать рубрику и ставить оценку, какие искажен…","t":"Как проводить собеседования: структура, оценка, предвзятость, обратная связь","u":"/post/sdlc-and-career/17-interview-interviewer/","w":"2026-07-16"},{"b":"Как проходить собеседования: этапы, подготовка, поведение, вопросы работодателю Собеседование ощущается как экзамен: кто-то знает правильные ответы, вас проверяют, вы либо сдали, либо нет. Это ощущение почти всегда мешае…","c":"post","d":"sdlc-and-career","g":["карьера","найм","собеседования","подготовка","переговоры"],"h":"Как процесс выглядит со стороны компании · Кто на самом деле принимает решение · Жизненный цикл вас в системе найма · Этапы: что реально оце","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Разбор процесса найма изнутри: как устроена воронка и кто принимает решение, что реально оценивают на каждом этапе, как …","t":"Как проходить собеседования: этапы, подготовка, поведение, вопросы работодателю","u":"/post/sdlc-and-career/16-interview-candidate/","w":"2026-07-16"},{"b":"Как работает браузер: парсинг, DOM, CSSOM, рендер, композитинг Фронтендер, который не знает, как браузер превращает текст в пиксели, обречён чинить производительность методом тыка: «добавил will-change, вроде полегчало»,…","c":"post","d":"frontend","g":["frontend","браузер","рендеринг","производительность","devtools"],"h":"Браузер — это не одна программа · Путь от URL до первого пикселя · Шаг 0. Навигация: пикселей ещё нет · Шаг 1. HTML → DOM · Почему \u003cscript\u003e ","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Полный путь от URL до пикселя: процессы браузера, парсинг HTML и CSS, style, layout, paint, композитинг, event loop и бю…","t":"Как работает браузер: парсинг, DOM, CSSOM, рендер, композитинг","u":"/post/frontend/01-how-browser-works/","w":"2026-07-16"},{"b":"Как работает веб: DNS, HTTP, браузер, клиент и сервер В предыдущей статье трека мы разобрали, как компьютеры вообще обмениваются данными: как байты нарезаются на пакеты, как IP доставляет их между машинами, а TCP собирае…","c":"post","d":"computer-science","g":["computer science","веб","http","dns","сети","браузер"],"h":"Клиент и сервер: базовая модель · URL: как адресуется ресурс · Шаг 1. DNS: превращаем имя в адрес · Шаг 2. Соединение: TCP и TLS · Шаг 3. HT","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Что на самом деле происходит между нажатием Enter в адресной строке и появлением страницы: разбор URL, поиск сервера чер…","t":"Как работает веб: DNS, HTTP, браузер, клиент и сервер","u":"/post/computer-science/12-how-the-web-works/","w":"2026-07-16"},{"b":"Как работает процессор: фон Нейман, регистры, ALU, fetch-decode-execute В предыдущей статье трека мы собрали из логических вентилей сумматор и триггер и увидели, что из AND, OR и NOT можно построить схему, которая склады…","c":"post","d":"computer-science","g":["computer science","процессор","архитектура компьютера","ассемблер","фон нейман"],"h":"Модель фон Неймана: одна память на всё · Регистры: рабочий стол процессора · АЛУ: где происходит арифметика · Как команда становится числами","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Процессор снизу вверх: архитектура фон Неймана, регистры и АЛУ, машинный код как числа, цикл выборка-декодирование-испол…","t":"Как работает процессор: фон Нейман, регистры, ALU, fetch-decode-execute","u":"/post/computer-science/05-how-cpu-works/","w":"2026-07-16"},{"b":"Как работают интернет и сайты: клиент, сервер, домены, HTTP Ты открываешь браузер, набираешь адрес, жмёшь Enter — и через полсекунды на экране страница. За эти полсекунды успевает произойти десяток вещей: твой компьютер …","c":"post","d":"intro","g":["с нуля","интернет","http","сети","веб"],"h":"Одна большая идея: интернет — это разговор двух программ · Что происходит, когда ты открываешь сайт · Шаг 1. Адрес: из чего состоит ссылка ·","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Что на самом деле происходит между нажатием Enter в браузере и появлением страницы: клиент и сервер, домены и DNS, IP-ад…","t":"Как работают интернет и сайты: клиент, сервер, домены, HTTP","u":"/post/intro/02-how-internet-works/","w":"2026-07-16"},{"b":"Как расти: план развития, обратная связь, performance review, менторство Самая распространённая модель роста в голове у начинающего разработчика примерно такая: работаешь хорошо → тебя замечают → повышают. Модель не то ч…","c":"post","d":"sdlc-and-career","g":["карьера","рост","обратная связь","менторство","performance review"],"h":"Три разных вещи, которые называют одним словом «рост» · Плато: почему пятый год иногда равен первому · Индивидуальный план развития, который","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Как устроен рост разработчика на практике: индивидуальный план развития, который работает, механика обратной связи, что …","t":"Как расти: план развития, обратная связь, performance review, менторство","u":"/post/sdlc-and-career/13-growth/","w":"2026-07-16"},{"b":"Как устроен блокчейн: блоки, хеш-цепочка, дерево Меркла, распределённый реестр Слово «блокчейн» обросло таким количеством маркетинга, что за ним почти не видно инженерии. А инженерия там простая и красивая: это реплициро…","c":"post","d":"web3","g":["web3","блокчейн","хеши","дерево меркла","распределённые системы"],"h":"Задача, которую решает блокчейн · Кирпич первый: криптографический хеш · Кирпич второй: блок · Кирпич третий: хеш-цепочка · Кирпич четвёртый","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Разбор блокчейна как структуры данных и как протокола: раскладка заголовка блока по байтам, хеш-цепочка, дерево Меркла и…","t":"Как устроен блокчейн: блоки, хеш-цепочка, дерево Меркла, распределённый реестр","u":"/post/web3/01-blockchain-basics/","w":"2026-07-16"},{"b":"Как устроен компьютер: биты, память, процессор и файлы простыми словами Сразу успокою: чтобы написать первую программу, знать устройство компьютера не обязательно. Многие начинают с кода и разбираются потом. Но есть моме…","c":"post","d":"intro","g":["с нуля","основы","компьютер","python"],"h":"Компьютер очень глупый, но чудовищно быстрый · Бит: самая маленькая единица информации · Как из двух цифр получаются любые числа · Байт: вос","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Разбираем на пальцах, из чего состоит компьютер и почему всё внутри — это числа: биты и байты, оперативная память и адре…","t":"Как устроен компьютер: биты, память, процессор и файлы простыми словами","u":"/post/intro/01-how-computers-work/","w":"2026-07-16"},{"b":"Как устроена IT-индустрия: роли, команды, как выглядит рабочий день В предыдущей статье — Первый проект — вы довели программу от идеи до работающего результата. Технически вы уже умеете достаточно, чтобы понимать, о чём …","c":"post","d":"intro","g":["с нуля","карьера","команда","процессы разработки"],"h":"Зачем вообще нужны все эти люди · Где работают программисты: типы компаний · Кто есть кто: роли по-человечески · Разработчик (developer, eng","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Разбираемся, кто работает в IT-командах и чем занимается, как задача проходит путь от идеи до пользователя, из чего скла…","t":"Как устроена IT-индустрия: роли, команды, как выглядит рабочий день","u":"/post/intro/14-it-industry/","w":"2026-07-16"},{"b":"Как устроена LLM с точки зрения инженера: токены, контекст, температура, стоимость Есть два способа понимать большие языковые модели. Первый — «как исследователь»: трансформер, механизм внимания, градиентный спуск, лосс.…","c":"post","d":"ai-engineering","g":["ии-инженерия","llm","токены","стоимость","латентность"],"h":"1. Токен — единица всего · Три следствия, которые бьют по проду · Как считать токены правильно · 2. Что происходит между запросом и ответом ","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Инженерная модель LLM: что такое токен и почему он ломает арифметику, как устроены prefill и decode, сколько стоит конте…","t":"Как устроена LLM с точки зрения инженера: токены, контекст, температура, стоимость","u":"/post/ai-engineering/01-llm-basics-for-engineers/","w":"2026-07-16"},{"b":"Как учиться: карта трека и почему это отдельный навык Инженер тратит на обучение больше времени, чем на любую другую деятельность, кроме собственно написания кода. Новый фреймворк, чужой сервис, незнакомая предметная обл…","c":"post","d":"learning","g":["обучение","самообразование","память","метапознание"],"h":"Почему это отдельный навык, а не следствие усердия · Довод первый: знание устаревает неравномерно, и это меняет стратегию · Довод второй: на","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Обзорная статья трека: почему умение учиться — отдельная инженерная компетенция, какие приёмы обучения имеют доказательн…","t":"Как учиться: карта трека и почему это отдельный навык","u":"/post/learning/00-overview/","w":"2026-07-16"},{"b":"Как хранят данные: обзор структур данных и зачем их так много В прошлых статьях трека мы прошли путь снизу: биты, вентили, процессор, память, ОС. К этому моменту у нас есть важный факт из статьи про иерархию памяти: памя…","c":"post","d":"computer-science","g":["computer science","структуры данных","big-o","память","абстракции"],"h":"Два физических примитива: подряд или по ссылкам · Карта структур данных · Динамический массив — рабочая лошадь · Стек и очередь — дисциплина","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Память — это плоский пронумерованный массив байтов; структуры данных — это способы разложить в нём данные так, чтобы нуж…","t":"Как хранят данные: обзор структур данных и зачем их так много","u":"/post/computer-science/09-data-structures-big-picture/","w":"2026-07-16"},{"b":"Какие бывают проекты: продукт, аутсорс, аутстафф, внутренняя разработка, госсектор В предыдущих статьях трека мы разобрали фазы разработки и роли в команде так, будто существует некая универсальная «команда разработки». …","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","типы компаний","аутсорс","продуктовая разработка"],"h":"Пять осей, которые объясняют почти все различия · Как течёт денежный контур · Продуктовая компания · Аутсорс: разработка на заказ · Три форм","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Одна и та же должность «разработчик» означает совершенно разную работу в зависимости от того, кто платит за код, кто им …","t":"Какие бывают проекты: продукт, аутсорс, аутстафф, внутренняя разработка, госсектор","u":"/post/sdlc-and-career/09-project-types/","w":"2026-07-16"},{"b":"Календарь как главный инструмент: time blocking, day theming, календарная гигиена Проблема: у списка задач нет размерности «время» Список задач отвечает на вопрос «что нужно сделать». Он не отвечает на вопрос «когда имен…","c":"post","d":"time-management","g":["тайм-менеджмент","планирование","календарь","фокус","распределённые команды"],"h":"Проблема: у списка задач нет размерности «время» · Откуда всё это взялось: короткая история · Что говорят исследования — и чего они не говор","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Почему список задач не работает без календаря, как устроен time blocking и day theming, что говорят исследования о плани…","t":"Календарь как главный инструмент: time blocking, day theming, календарная гигиена","u":"/post/time-management/05-calendars/","w":"2026-07-16"},{"b":"Каналы поставки: свой сайт, маркетплейсы облаков, партнёры Команда продавала систему мониторинга через свой сайт: карта, оферта, доступ через минуту после оплаты. Пришёл крупный клиент — и сделка встала. Не из-за цены и …","c":"post","d":"software-distribution","g":["поставка софта","каналы продаж","маркетплейсы","партнёры","биллинг"],"h":"Канал — это три потока, а не один · Общая рамка: чем канал платит и что берёт взамен · Свой сайт: весь контроль и весь труд · Маркетплейсы о","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Канал — это не «где кнопка купить», а чужая система, которая начинает управлять правами ваших пользователей и сроками по…","t":"Каналы поставки: свой сайт, маркетплейсы облаков, партнёры","u":"/post/software-distribution/08-channels/","w":"2026-07-16"},{"b":"Канальный уровень: Ethernet, MAC, ARP, коммутаторы, VLAN Почти всё, что инженер знает о сети, начинается на третьем уровне: «у пода такой-то IP», «маршрут ушёл не туда», «фаервол режет порт». Канальный уровень при этом в…","c":"post","d":"networking","g":["сети","ethernet","arp","vlan","коммутация"],"h":"Кадр Ethernet: что летит по проводу · Смотрим кадры своими глазами · MAC-адрес: 48 бит, в которых больше смысла, чем кажется · Как Ethernet ","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Как байты превращаются в кадр Ethernet, что означают 48 бит MAC-адреса, как коммутатор учит таблицу и почему флудит, зач…","t":"Канальный уровень: Ethernet, MAC, ARP, коммутаторы, VLAN","u":"/post/networking/01-link-layer/","w":"2026-07-16"},{"b":"Карта функторов: иерархия абстракций ФП от полугруппы до комонады К этому моменту трека вы уже умеете пользоваться функторами и аппликативами и монадами. Но между «умею применять map и flatMap» и «понимаю, как устроен ве…","c":"post","d":"functional-programming","g":["функциональное программирование","функторы","монады","теория категорий","typescript"],"h":"Что вообще такое «абстракция» в этом смысле · Уровень 0: типы, которые умеют склеиваться · Боль: агрегация повторяется в каждом проекте · Se","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Одна связная карта всех абстракций ФП: зачем нужна каждая ступень от Semigroup до Comonad, чем они отличаются по силе, к…","t":"Карта функторов: иерархия абстракций ФП от полугруппы до комонады","u":"/post/functional-programming/09-functor-map/","w":"2026-07-16"},{"b":"Карьерные треки: эксперт, менеджер, архитектор, фриланс, свой продукт Года через три-четыре после первой работы почти каждый упирается в один и тот же разговор. Задачи стали понятными, код пишется, ревью проходят, но нея…","c":"post","d":"sdlc-and-career","g":["карьера","рост","менеджмент","архитектура","фриланс"],"h":"Лестница — плохая метафора. Решётка — лучше · Три вопроса, которые определяют выбор лучше любых тестов · Типичные траектории во времени · Тр","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Честный разбор пяти направлений, куда уходит разработчик после сеньорства: что там на самом деле делают каждый день, как…","t":"Карьерные треки: эксперт, менеджер, архитектор, фриланс, свой продукт","u":"/post/sdlc-and-career/19-career-tracks/","w":"2026-07-16"},{"b":"Качество в потоке: линтеры, типы, тесты и ревью как автоматика Есть два способа думать о качестве. Первый — «качество проверяют в конце»: разработчики пишут, отдел тестирования проверяет, менеджер решает, выпускать или н…","c":"post","d":"development","g":["development","качество","ci","линтеры","тестирование"],"h":"Цена дефекта как функция момента обнаружения · Лестница ворот · 1. Редактор и LSP · 2. Pre-commit хук · 3–4. Локальные тесты и CI на pull re","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Качество — не этап в конце и не отдел, а лестница автоматических ворот на пути изменения от рабочей копии до продакшена:…","t":"Качество в потоке: линтеры, типы, тесты и ревью как автоматика","u":"/post/development/09-quality-gates/","w":"2026-07-16"},{"b":"Качество данных, контракты, линидж и governance Болезненно типичная история. Во вторник в 9:40 CEO открывает дашборд и видит, что выручка вчера упала на 40%. Пожар: созвон, продуктовая команда проверяет воронку, маркетин…","c":"post","d":"data-engineering","g":["данные","качество данных","governance","линидж","наблюдаемость"],"h":"1. Качество — это не свойство данных · Измерения качества · 2. Откуда берутся дефекты · 3. Write-Audit-Publish · Блокирующие или предупрежда","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как измерять качество данных, останавливать плохие загрузки до публикации, договариваться с поставщиками через контракты…","t":"Качество данных, контракты, линидж и governance","u":"/post/data-engineering/07-data-quality-and-governance/","w":"2026-07-16"},{"b":"Качество данных: пропуски, дубликаты, поздние события Понедельник, 9:00. Аналитик открывает недельный отчёт: воскресенье просело на 62 %. Через час продуктовая команда ищет сбой, дежурный инженер поднимает графики сервис…","c":"post","d":"data-analytics","g":["аналитика данных","качество данных","sql","смещение выборки","пропуски"],"h":"1. Дефект — это не про строки, а про смещение · 2. Профиль данных: пятнадцать минут против недели · 3. Пропуски: почему нельзя «просто выбро","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Три дефекта, которые чаще всего разрушают аналитический вывод — пропуски, дубликаты и поздние события: как найти их в SQ…","t":"Качество данных: пропуски, дубликаты, поздние события","u":"/post/data-analytics/03-data-quality/","w":"2026-07-16"},{"b":"Качество, Definition of Done и релизный менеджмент Есть два вопроса, на которые команда отвечает десятки раз в неделю, и от честности этих ответов зависит почти всё остальное в проекте: «Это готово?» «Это можно выкатыват…","c":"post","d":"project-management","g":["управление проектами","качество","ci/cd","релизы","definition of done"],"h":"Часть 1. Что такое качество и почему его нельзя «добавить в конце» · Два разных смысла слова «качество» · Внутреннее и внешнее качество · Эк","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Как встроить качество в процесс, а не добавлять его в конце: экономика дефектов, многоуровневый Definition of Done, qual…","t":"Качество, Definition of Done и релизный менеджмент","u":"/post/project-management/06-quality-and-delivery/","w":"2026-07-16"},{"b":"Клавиатура и руки: раскладка, keymap-дизайн, задержка ввода и эргономика Двенадцать статей трека мы обсуждали программы: редакторы, конфигурации, протоколы, расширения. Все они сменяемы. Vim можно бросить, VS Code переус…","c":"post","d":"editors","g":["редакторы","клавиатура","эргономика","продуктивность","инструменты разработчика"],"h":"Что происходит между пальцем и символом · Аккорды против модальности против слоёв · Настройки первого дня · Как проектировать keymap · Слои ","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Физический слой, который переживает любую смену редактора: что происходит между нажатием и символом, как проектировать k…","t":"Клавиатура и руки: раскладка, keymap-дизайн, задержка ввода и эргономика","u":"/post/editors/13-keyboard-and-ergonomics/","w":"2026-07-16"},{"b":"Клавиатура и фокус: порядок обхода, ловушки фокуса, skip-links Клавиатура — тот слой доступности, который либо есть, либо нет: промежуточных состояний почти не бывает. Если до кнопки нельзя добраться табом, её не существ…","c":"post","d":"accessibility","g":["доступность","a11y","клавиатура","фокус","wcag"],"h":"Кто ходит по интерфейсу клавиатурой · Модель фокуса: одна точка ввода на весь документ · Что фокусируется по умолчанию · tabindex: три значе","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Как устроен фокус в браузере, как не сломать порядок обхода, как сделать правильную ловушку фокуса в модалке и рабочие s…","t":"Клавиатура и фокус: порядок обхода, ловушки фокуса, skip-links","u":"/post/accessibility/04-keyboard-and-focus/","w":"2026-07-16"},{"b":"Классы, ООП и декораторы в TypeScript До сих пор мы моделировали данные типами и функциями — и это правильный дефолт. Но целые пласты экосистемы построены на классах: NestJS, TypeORM, Angular, MobX, доменный код в стиле …","c":"post","d":"typescript","g":["typescript","ооп","классы","декораторы","идиомы"],"h":"Когда класс уместен, а когда нет · Модификаторы доступа: два разных механизма · Параметр-свойства: краткая запись конструктора · Наследовани","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Модификаторы доступа и настоящий #private, abstract и миксины, типизация this, а также обе системы декораторов — legacy …","t":"Классы, ООП и декораторы в TypeScript","u":"/post/typescript/10-classes-and-decorators/","w":"2026-07-16"},{"b":"Кластеризация: k-means, DBSCAN, иерархическая, GMM Все алгоритмы, которые мы разбирали до сих пор — от линейной регрессии до градиентного бустинга — учились на парах (x, y). Был правильный ответ, была функция потерь, изм…","c":"post","d":"machine-learning","g":["машинное обучение","кластеризация","обучение без учителя","k-means","dbscan"],"h":"Формальная постановка и почему «лучшей» кластеризации не бывает · Расстояние — половина решения · Карта алгоритмов · k-means: минимизация вн","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Четыре разных ответа на вопрос «что такое кластер»: центроидный k-means, плотностной DBSCAN, иерархический agglomerative…","t":"Кластеризация: k-means, DBSCAN, иерархическая, GMM","u":"/post/machine-learning/08-clustering/","w":"2026-07-16"},{"b":"Клиентская сторона: что происходит на стороне пользователя Клиент — это единственная часть вашей системы, которая выполняется на технике, которой вы не владеете, в сети, которую вы не контролируете, у человека, чьи намер…","c":"post","d":"development","g":["development","frontend","клиент-сервер","архитектура","рендеринг"],"h":"Почему клиент — это отдельная инженерная задача · «Клиент» — это гораздо шире, чем браузер · Frontend, backend, fullstack: откуда взялось де","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Клиент как инженерная задача: недоверенная среда, маятник толстого и тонкого клиента, правило «клиент — это UX, сервер —…","t":"Клиентская сторона: что происходит на стороне пользователя","u":"/post/development/01-client-side/","w":"2026-07-16"},{"b":"Когда документации нет: исходники, история, трекер Три ситуации, в которых предыдущая глава не помогает: Внутренний сервис вашей компании. Есть README на четыре строки, написанный при создании репозитория, и человек, кот…","c":"post","d":"research-skills","g":["поиск информации","чтение кода","git","отладка"],"h":"Порядок раскопок · Тесты как справочник · Чтение реализации под вопрос · История как источник знания · Бинарный поиск по истории · От коммит","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Порядок раскопок в проекте без документации: тесты как справочник, история изменений как машина времени, обсуждения как …","t":"Когда документации нет: исходники, история, трекер","u":"/post/research-skills/06-source-and-history/","w":"2026-07-16"},{"b":"Когда паттерн растворяется в системе типов В первой главе трека прозвучала мысль, к которой мы обещали вернуться: Питер Норвиг в докладе «Design Patterns in Dynamic Languages» (1996) показал, что 16 из 23 паттернов GoF в…","c":"post","d":"design-patterns","g":["паттерны проектирования","типы","ооп","функциональное программирование"],"h":"Как языки поглощали паттерны · Карта растворения · Функции как значения: самое дешёвое растворение · Sealed-типы против Visitor: проблема ра","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Половина каталога GoF — обход отсутствующих языковых конструкций: функции как значения, sealed-типы с сопоставлением обр…","t":"Когда паттерн растворяется в системе типов","u":"/post/design-patterns/13-types-instead-of-patterns/","w":"2026-07-16"},{"b":"Когда перестать искать: цена поиска против цены проверки Самая дорогая ошибка во всём треке выглядит безобидно: человек добросовестно ищет ответ на вопрос, на который можно ответить экспериментом за пять минут. Он не лен…","c":"post","d":"research-skills","g":["поиск информации","принятие решений","эксперимент","инженерная практика"],"h":"Три стоимости · Восемь признаков, что пора остановиться · Таймбокс · Состояния сессии разведки · Как сделать проверку дешёвой · Проектирован","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Поиск ощущается как работа, поэтому его редко останавливают вовремя. Разбираем, как сравнивать ожидаемую стоимость разве…","t":"Когда перестать искать: цена поиска против цены проверки","u":"/post/research-skills/11-when-to-stop/","w":"2026-07-16"},{"b":"Когнитивная доступность: понятный язык, память, время и вход в систему Четыре принципа WCAG — Perceivable, Operable, Understandable, Robust — в реальных проектах закрываются крайне неравномерно. Восприятие мы разбирали д…","c":"post","d":"accessibility","g":["доступность","a11y","wcag","ux","аутентификация"],"h":"Почему сам стандарт здесь слабее · Карта критериев: принцип «Понятность» и соседи · Пять ресурсов, которые тратит ваш интерфейс · Понятный я","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Самый массовый и хуже всего стандартизованный пласт доступности: пять когнитивных ресурсов интерфейса, понятный язык и е…","t":"Когнитивная доступность: понятный язык, память, время и вход в систему","u":"/post/accessibility/12-cognitive/","w":"2026-07-16"},{"b":"Когорты и удержание: как читать кривые и не обмануться Метрика «активных пользователей за месяц» в растущем продукте всегда выглядит хорошо и почти ничего не сообщает. В ней смешаны люди, пришедшие вчера, и люди, живущие…","c":"post","d":"data-analytics","g":["аналитика данных","когорты","удержание","sql"],"h":"Что такое когорта и что ею не является · Три оси, которые невозможно разделить · Треугольник: правый край — это не будущее, это отсутствие д","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Когорта разделяет эффект возраста, эффект календаря и эффект набора — и ровно на этом разделении ломается большинство от…","t":"Когорты и удержание: как читать кривые и не обмануться","u":"/post/data-analytics/11-cohorts-and-retention/","w":"2026-07-16"},{"b":"Код-ревью, командные стандарты и Definition of Done Весь трек до этого места говорил про код: какие у него должны быть имена, границы, зависимости, тесты, обработка ошибок. Всё это — знания, живущие в голове отдельного и…","c":"post","d":"principles","g":["принципы","код-ревью","процессы разработки","качество кода","командная работа"],"h":"1. Зачем на самом деле нужно ревью · Немного истории: откуда это всё · 2. Экономика ревью: почему размер PR — главный рычаг · Как физически ","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Зачем на самом деле нужно код-ревью, как устроен здоровый процесс проверки изменений, что автоматизировать, а что остави…","t":"Код-ревью, командные стандарты и Definition of Done","u":"/post/principles/09-code-review-and-standards/","w":"2026-07-16"},{"b":"Кодирование Чёрча: истина, ложь и условия из одних функций В прошлой статье мы закончили с полным набором правил игры: альфа, бета, эта. У нас есть язык, в котором ровно три конструкции — переменная, абстракция, аппликац…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","функциональное программирование","логика","комбинаторы"],"h":"Зачем булеву значению вообще существовать · Истина и ложь · Условный оператор · IF на самом деле не нужен · Ловушка строгих языков: обе ветк","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"В лямбда-исчислении нет true, false и if — и они не нужны: булево значение оказывается функцией выбора из двух аргументо…","t":"Кодирование Чёрча: истина, ложь и условия из одних функций","u":"/post/lambda-calculus/04-booleans/","w":"2026-07-16"},{"b":"Коллекции и дженерики: устройство, выбор структуры, вариантность В прикладном Java-коде примерно 80% операций с данными проходят через java.util. Выбор между ArrayList и LinkedList, между HashMap и TreeMap кажется мелочь…","c":"post","d":"java","g":["java","коллекции","дженерики","структуры данных","jvm"],"h":"Карта: интерфейсы против реализаций · Дженерики: что делает компилятор и чего не знает JVM · Heap pollution: почему ClassCastException падае","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как устроены ArrayList, HashMap и их родственники изнутри, как работает стирание типов, что такое PECS и вариантность, и…","t":"Коллекции и дженерики: устройство, выбор структуры, вариантность","u":"/post/java/04-collections-and-generics/","w":"2026-07-16"},{"b":"Коллекции и итераторы: ленивость, адаптеры, эффективность Пока мы разбирали владение, времена жизни, трейты и обработку ошибок, речь шла об одиночных значениях. Настоящий код работает с множествами: записи из базы, строк…","c":"post","d":"rust","g":["rust","коллекции","итераторы","производительность","стандартная библиотека"],"h":"Итератор — это машина состояний, а не коллекция · Ленивость и её честная цена · Три способа взять итератор — и первая настоящая ошибка · Кар","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Итератор в Rust — не список и не поток, а машина состояний, которую компилятор растворяет в обычном цикле: разбираем мод…","t":"Коллекции и итераторы: ленивость, адаптеры, эффективность","u":"/post/rust/07-collections-and-iterators/","w":"2026-07-16"},{"b":"Коллекции: списки, словари, множества, кортежи и их устройство Базовый синтаксис коллекций разобран в курсе «Программирование с нуля» — если for x in xs и d[\"ключ\"] пока не рефлекс, начните с Коллекции данных и вернитесь…","c":"post","d":"python","g":["python","коллекции","структуры данных","производительность","cpython"],"h":"Карта абстракций: collections.abc · list: массив указателей с запасом · Рост и амортизация · Стоимость операций · Срезы, копии и алиасинг · ","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как на самом деле устроены list, tuple, dict и set в CPython, какие операции сколько стоят, где прячутся классические гр…","t":"Коллекции: списки, словари, множества, кортежи и их устройство","u":"/post/python/03-collections/","w":"2026-07-16"},{"b":"Команда, коммуникации, конфликты и мотивация Предыдущие статьи трека были про работу: как её резать (https://courses.digitable.life/post/project-management/03-estimation-and-planning/), как ей управлять (https://courses.…","c":"post","d":"project-management","g":["управление проектами","менеджмент","команда","коммуникации","мотивация"],"h":"1. Команда как система обработки информации · 1.1. Закон Конвея: структура связей просачивается в код · 1.2. Цена координации растёт квадрат","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Почему цена координации растёт квадратично, как устроена психологическая безопасность, чем полезный конфликт отличается …","t":"Команда, коммуникации, конфликты и мотивация","u":"/post/project-management/05-team-and-communication/","w":"2026-07-16"},{"b":"Командная строка и Git: как разработчики работают с кодом До сих пор мы говорили о самом коде: переменные, циклы, функции, классы. Но у профессии есть вторая половина, о которой в учебниках пишут меньше, — быт разработчи…","c":"post","d":"intro","g":["с нуля","git","терминал","инструменты разработчика"],"h":"Часть первая: терминал · Что это вообще такое · Зачем он нужен, если есть мышка · Как его открыть · Из чего состоит команда · Где я нахожусь","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Осваиваем два инструмента, которыми разработчик пользуется каждый день: терминал для управления компьютером текстом и Gi…","t":"Командная строка и Git: как разработчики работают с кодом","u":"/post/intro/12-terminal-and-git/","w":"2026-07-16"},{"b":"Командная строка и инструментарий Linux: shell, утилиты, процессы, пакеты Есть распространённое заблуждение, что командная строка — это «устаревший интерфейс для тех, кому лень поставить GUI». Это ровно наоборот. Графиче…","c":"post","d":"operating-systems","g":["операционные системы","linux","shell","bash","инструменты"],"h":"Часть I. Что такое shell на самом деле · Три системных вызова, из которых собрано всё · Встроенные, функции, алиасы, внешние: порядок разреш","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Shell как тонкая обёртка над fork/exec/pipe: порядок раскрытий и почему кавычки не косметика, файловые дескрипторы и кон…","t":"Командная строка и инструментарий Linux: shell, утилиты, процессы, пакеты","u":"/post/operating-systems/13-linux-cli-and-tooling/","w":"2026-07-16"},{"b":"Комбинаторная логика: S, K, I и программирование без переменных Оглянитесь на пройденный трек и спросите себя: что в лямбда-исчислении было по-настоящему сложным? Не абстракция — это x =\u003e .... Не аппликация — это вызов. …","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","комбинаторы","функциональное программирование","point-free"],"h":"Идея: функция без параметров · I — лишний: SKK · Теорема: это тот же самый язык · Считаем руками · Реализация: 40 строк на Python · Цена наи","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Что останется от лямбда-исчисления, если выбросить переменные: три комбинатора вместо всего языка, алгоритм механическог…","t":"Комбинаторная логика: S, K, I и программирование без переменных","u":"/post/lambda-calculus/11-combinatory-logic/","w":"2026-07-16"},{"b":"Комментарии на ревью: как сказать «нет» и не обидеть Код-ревью — самое опасное место в рабочем английском инженера, и не из-за сложности языка: словарь ревью крошечный, предложения короткие. Это единственная регулярная с…","c":"post","d":"engineering-english","g":["английский","код-ревью","коммуникация","обратная связь"],"h":"Почему ревью ломается чаще всего · Код, на котором будем тренироваться · Анатомия рабочего комментария · Маркеры силы: главный инструмент гл","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Как устроен язык код-ревью: из чего состоит рабочий комментарий, как распознать силу требования за мягкой формулировкой,…","t":"Комментарии на ревью: как сказать «нет» и не обидеть","u":"/post/engineering-english/06-code-review-comments/","w":"2026-07-16"},{"b":"Коммиты и pull request: короткий текст, который читают чаще всего Есть тексты, которые инженер пишет раз в год и мучает неделю: RFC, дизайн-док, письмо в поддержку вендора. И есть текст, который он пишет по пять раз в де…","c":"post","d":"engineering-english","g":["английский","git","код-ревью","коммуникация","документация"],"h":"Для кого эта глава и что нужно знать заранее · Куда попадает ваш текст · Анатомия сообщения коммита · Заголовок — это метка, а не предложени","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Как писать заголовки коммитов, тела сообщений и описания pull request на английском: разбор реальных формулировок, что в…","t":"Коммиты и pull request: короткий текст, который читают чаще всего","u":"/post/engineering-english/04-commits-and-prs/","w":"2026-07-16"},{"b":"Компиляторы: карта трека и что происходит между кодом и процессором Вы пишете let x = 2 + 3 * 4;, нажимаете «запустить» и через долю секунды получаете 14. Между этими двумя событиями лежит одна из самых красивых инженерн…","c":"post","d":"compilers","g":["компиляторы","языки программирования","интерпретаторы","основы"],"h":"Что такое компилятор, если говорить точно · Компилятор, интерпретатор, JIT, транспайлер — это спектр · Конвейер: из чего собран любой компил","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Обзор трека: как текст программы превращается в исполняемые инструкции, из каких фаз собран компилятор, чем он отличаетс…","t":"Компиляторы: карта трека и что происходит между кодом и процессором","u":"/post/compilers/00-overview/","w":"2026-07-16"},{"b":"Композиция, каррирование, частичное применение и конвейеры Предыдущие статьи курса дали строительный материал: чистые функции (https://courses.digitable.life/post/functional-programming/01-pure-functions/), неизменяемые …","c":"post","d":"functional-programming","g":["функциональное программирование","композиция функций","каррирование","typescript","elixir"],"h":"Сначала боль: код, который читается изнутри наружу · Композиция: одна операция, два направления · Реализация в четырёх языках · Законы: поче","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Как из маленьких функций собирать большие: композиция и её законы, каррирование и частичное применение, порядок аргумент…","t":"Композиция, каррирование, частичное применение и конвейеры","u":"/post/functional-programming/05-composition-and-currying/","w":"2026-07-16"},{"b":"Компьютерные сети: карта трека и модель уровней Эта статья — вход в трек. Её задача не пересказать четырнадцать последующих материалов, а поставить линзу, через которую они читаются: любой сетевой запрос — это последоват…","c":"post","d":"networking","g":["сети","tcp/ip","инкапсуляция","диагностика","http"],"h":"1. Почему стек разбит на уровни · 2. OSI и TCP/IP: что из этого правда · 3. Инкапсуляция: что физически лежит в кадре · 4. Один запрос целик","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Зачем сетевому стеку уровни, что реально лежит в кадре Ethernet, как проследить один HTTPS-запрос от DNS до origin реаль…","t":"Компьютерные сети: карта трека и модель уровней","u":"/post/networking/00-overview/","w":"2026-07-16"},{"b":"Конвейер как платформенный сервис: общее против «у каждого своё» Первая сцена. Компания на тридцать продуктовых команд, около двухсот пятидесяти инженеров. Приходит требование: все образы, попадающие в прод, должны быть …","c":"post","d":"platform-engineering","g":["платформа","ci-cd","developer experience","автоматизация сборки","adoption"],"h":"Почему конвейер — самый заметный сервис платформы · Разделение владения: субстрат, инварианты, содержание, маршрут · Три способа сделать общ","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Что в конвейере имеет смысл делать общим, а что обязано остаться у команд: разделение владения, SLO конвейера, атрибуция…","t":"Конвейер как платформенный сервис: общее против «у каждого своё»","u":"/post/platform-engineering/07-ci-cd-platform/","w":"2026-07-16"},{"b":"Конвейер: как процессор делает несколько дел одновременно Есть простое наблюдение, из которого выросла вся современная микроархитектура. Когда процессор выполняет одну команду, большая часть его схем простаивает: пока АЛ…","c":"post","d":"hardware","g":["железо","процессор","микроархитектура","конвейер","производительность"],"h":"Где мы находимся: что уже разобрано и что начинается здесь · Идея: разделить работу, а не ускорить её · Латентность и пропускная способность","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Как перекрытие работы превращает одну инструкцию за пять тактов в одну инструкцию за такт, откуда берутся конфликты по д…","t":"Конвейер: как процессор делает несколько дел одновременно","u":"/post/hardware/06-pipelines/","w":"2026-07-16"},{"b":"Конкурентность в C#: async/await и всё вокруг Это самая важная и одновременно самая коварная тема в C#. Здесь новички теряют недели на дедлоках и «странных зависаниях», а сеньоров отличает именно понимание того, что на с…","c":"post","d":"csharp","g":["csharp","конкурентность","асинхронность","многопоточность","диагностика"],"h":"Зачем вообще нужна асинхронность · TAP: Task-based Asynchronous Pattern · Что делает await на самом деле: машина состояний · Task vs ValueTa","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Полное погружение в TAP: async/await и машина состояний, Task vs ValueTask, ConfigureAwait, CancellationToken, параллели…","t":"Конкурентность в C#: async/await, Task, Channels и как не словить дедлок","u":"/post/csharp/04-concurrency/","w":"2026-07-16"},{"b":"Конкурентность в Elixir Это центральная статья курса. Всё остальное в Elixir — приятно, но именно модель конкурентности отличает его от любого мейнстрим-языка. Здесь вы научитесь мыслить в терминах процессов и деревьев с…","c":"post","d":"elixir","g":["elixir","конкурентность","акторы","отказоустойчивость","распределённые системы"],"h":"С первых принципов: почему акторы · Базовые примитивы: spawn, send, receive · Ссылки и мониторы: как узнать о падении · «Let it crash»: фило","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Акторная модель BEAM: процессы, spawn/send/receive, ссылки и мониторы, let it crash, OTP (GenServer, Supervisor, Task, R…","t":"Конкурентность в Elixir: процессы, OTP, супервизия, GenStage/Broadway и распределённость","u":"/post/elixir/04-concurrency/","w":"2026-07-16"},{"b":"Конкурентность в Go Конкурентность — то, ради чего многие приходят в Go. В большинстве языков параллельное программирование — это дополнительная библиотека, ручное управление пулами потоков и минное поле блокировок. В Go…","c":"post","d":"golang","g":["go","конкурентность","многопоточность","синхронизация","производительность"],"h":"Горутины · Каналы · Небуферизованные каналы синхронизируют · Буферизованные каналы · Итерация и закрытие · select — переключатель каналов · ","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"От первых принципов: горутины и планировщик, каналы и select, context для отмены, sync-примитивы, worker pool/fan-in/fan…","t":"Конкурентность в Go: горутины, каналы, context, sync и паттерны","u":"/post/golang/04-concurrency/","w":"2026-07-16"},{"b":"Конкурентность в TypeScript: event loop, Promise и async/await TypeScript исполняется на JavaScript-рантайме, а у него необычная модель: один поток. Здесь нет потоков, мьютексов и гонок в классическом смысле — и это одно…","c":"post","d":"typescript","g":["typescript","конкурентность","асинхронность","javascript","производительность"],"h":"Однопоточная модель и event loop · Promise — значение, которого ещё нет · async / await — синхронный вид для асинхронного кода · Ловушка: не","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Однопоточная модель и event loop, Promise и async/await, AbortController, ограничение конкурентности, воркеры, стримы и …","t":"Конкурентность в TypeScript: event loop, Promise и async/await","u":"/post/typescript/04-concurrency/","w":"2026-07-16"},{"b":"Конкурентность в ФП: неизменяемость, STM, акторы Есть фраза, которую любят повторять на конференциях: «в функциональном программировании конкурентность бесплатна, потому что данные неизменяемы». Это полуправда, и вторая …","c":"post","d":"functional-programming","g":["функциональное программирование","конкурентность","многопоточность","акторы","elixir"],"h":"Часть 1. Боль: почему замки не работают · Гонка, которую видно · Гонка, которую не видно: замки не композируются · Что именно чинит неизменя","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Почему разделяемое изменяемое состояние — источник почти всех багов конкурентности, и что предлагают взамен ФП-модели: S…","t":"Конкурентность в ФП: неизменяемость, STM, акторы","u":"/post/functional-programming/14-concurrency/","w":"2026-07-16"},{"b":"Конкурентность: GIL, threading, multiprocessing, asyncio — что когда Есть задача, на которой ломается интуиция большинства питонистов. Сервис ходит в двенадцать внешних API, складывает ответы и считает по ним агрегат. Ра…","c":"post","d":"python","g":["python","конкурентность","asyncio","многопоточность","производительность"],"h":"Три слова, которые постоянно путают · GIL: что это на самом деле · Как GIL отпускается · Чего GIL НЕ даёт: атомарность · threading: когда по","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как устроен GIL и что он на самом деле запрещает, почему потоки спасают на I/O и бесполезны на счёте, чем платят процесс…","t":"Конкурентность: GIL, threading, multiprocessing, asyncio — что когда","u":"/post/python/11-concurrency/","w":"2026-07-16"},{"b":"Конкурентность: потоки, executors, CompletableFuture, виртуальные потоки Конкурентность в Java начинается не с new Thread(), а с честного ответа на вопрос: что именно вы ускоряете? Если задача упирается в процессор, пото…","c":"post","d":"java","g":["java","конкурентность","многопоточность","jvm","производительность"],"h":"Конкурентность и параллелизм — разные вопросы · Модель памяти: без неё всё остальное — суеверие · Жизненный цикл потока и блокировки · synch","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Модель памяти Java, платформенные потоки и пулы, композиция асинхронности через CompletableFuture и переход на виртуальн…","t":"Конкурентность: потоки, executors, CompletableFuture, виртуальные потоки","u":"/post/java/07-concurrency/","w":"2026-07-16"},{"b":"Конкурентные парадигмы: акторы, CSP, STM, разделяемая память Одна строчка, которая ломается Вот код. Он неправильный. Найдите ошибку за пять секунд: counter = 0 def worker(): global counter for _ in range(100_000): count…","c":"post","d":"paradigms","g":["парадигмы","конкурентность","многопоточность","акторы","распределённые системы"],"h":"Одна строчка, которая ломается · Два разных слова: конкурентность и параллелизм · Карта моделей · Корень зла: три разные беды, а не одна · В","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Четыре способа организовать одновременно работающий код — блокировки поверх общей памяти, CSP-каналы, акторы и программн…","t":"Конкурентные парадигмы: акторы, CSP, STM, разделяемая память","u":"/post/paradigms/05-concurrent-actors-csp/","w":"2026-07-16"},{"b":"Коннекторы и приём данных: SaaS API, файлы, вебхуки и дрейф схемы В первой статье трека мы разобрали приём данных из базы: инкремент по водяному знаку, нахлёст, CDC через журнал транзакций, идемпотентный MERGE. Это честн…","c":"post","d":"data-engineering","g":["данные","ingestion","коннекторы","api","интеграции"],"h":"1. Пять классов источников и их физика · 2. Анатомия коннектора · 3. Пагинация: самая тихая потеря данных · 4. Лимиты, ретраи и бюджет вызов","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как устроен слой приёма данных из внешних систем: анатомия коннектора, пагинация и лимиты API, состояние и чекпоинты, фа…","t":"Коннекторы и приём данных: SaaS API, файлы, вебхуки и дрейф схемы","u":"/post/data-engineering/09-connectors-and-ingestion/","w":"2026-07-16"},{"b":"Консенсус: Paxos, Raft, выбор лидера, репликация лога Есть ровно одна задача, к которой сводится большинство «сложных» вещей в распределённых системах: заставить несколько машин согласиться на одном значении и никогда не…","c":"post","d":"distributed-systems","g":["распределённые системы","консенсус","raft","paxos","отказоустойчивость"],"h":"1. Что именно требуется от консенсуса · Консенсус, атомарная широковещательная рассылка и реплицированный лог — одно и то же · 2. FLP: почем","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Как несколько машин договариваются об одном значении и никогда не передумывают: FLP и три обхода, Paxos, Raft, выборы ли…","t":"Консенсус: Paxos, Raft, выбор лидера, репликация лога","u":"/post/distributed-systems/07-consensus/","w":"2026-07-16"},{"b":"Контейнеры в доставке: Docker, сборка образов, реестры, безопасность и размер В предыдущей статье — https://courses.digitable.life/post/devops/04-cd-and-release-strategies/ — мы разбирали, как выкатывать новую версию: bl…","c":"post","d":"devops","g":["devops","docker","контейнеры","ci/cd","безопасность"],"h":"Зачем вообще контейнер: проблема, которую он решает · Анатомия OCI-образа · Сборка: кэш решает всё · Плохой и хороший Dockerfile: Node.js · ","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как устроен OCI-образ, как собирать его быстро и маленьким, где хранить, чем сканировать и подписывать — с рабочими Dock…","t":"Контейнеры в доставке: Docker, сборка образов, реестры, безопасность и размер","u":"/post/devops/05-containers-and-registries/","w":"2026-07-16"},{"b":"Контекст: окно, компакция и что можно терять без ущерба В модели исполнения мы разобрали цикл «наблюдение — действие»: агент вызывает инструмент, получает результат, дописывает его в контекст, решает, что делать дальше. …","c":"post","d":"ai-agents","g":["ai-агенты","контекстное окно","токены","стоимость"],"h":"Что физически лежит в окне · Почему окно не резиновое: три независимых ограничения · Заявленное окно и полезное окно · Что именно съедает ок","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Что физически лежит в окне контекста агента, почему заявленный размер окна и полезный размер — разные величины, как рабо…","t":"Контекст: окно, компакция и что можно терять без ущерба","u":"/post/ai-agents/04-context-window/","w":"2026-07-16"},{"b":"Контроль версий как инженерная практика Есть навыки, которые выглядят как «умение пользоваться инструментом», а на самом деле определяют, как работает вся команда. Контроль версий — главный из них. Человек, который освои…","c":"post","d":"development","g":["development","git","версионирование","командная работа","инженерная практика"],"h":"1. Три вопроса, на которые отвечает контроль версий · 2. Что держать под версией, а что нет · 3. Как мы сюда пришли · 4. Централизованная мо","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Зачем нужен контроль версий, чем распределённая модель отличается от централизованной, почему Git хранит снимки вместо п…","t":"Контроль версий как инженерная практика","u":"/post/development/06-version-control/","w":"2026-07-16"},{"b":"Контроль исполнения и извлечённые уроки: отчётность, освоенный объём, health check, база знаний Тринадцать предыдущих глав трека были про то, как проект устроить: жизненный цикл, свод знаний, устав, оценка, декомпозиция,…","c":"post","d":"management","g":["менеджмент","управление проектами","планирование","качество"],"h":"1. Контроль как контур обратной связи, а не как отчётность · 2. Что измерять: базовый план, вехи и правила готовности · 3. Метод освоенного ","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Как понять, что проект идёт не туда, раньше, чем это станет очевидно: контур контроля, правила процента готовности, мето…","t":"Контроль исполнения и извлечённые уроки: отчётность, освоенный объём, health check, база знаний","u":"/post/management/13-control-and-lessons/","w":"2026-07-16"},{"b":"Конфигурируемые системы: покрывающие массивы, модели фич и поиск по конфигурациям В предыдущей статье пространство поиска рождалось из структуры кода. Здесь оно рождается из вариантов сборки и запуска: флаги компилятора,…","c":"post","d":"sbse","g":["sbse","тестирование","конфигурации","комбинаторное тестирование","оптимизация"],"h":"Сколько стоит «протестировать все конфигурации» · Покрывающий массив: формальная постановка · Две стратегии построения и почему поиск выигры","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Флаги, фичи и параметры окружения дают экспоненциальное пространство сборок: как поиск строит минимальные наборы конфигу…","t":"Конфигурируемые системы: покрывающие массивы, модели фич и поиск по конфигурациям","u":"/post/sbse/11-configurable-systems/","w":"2026-07-16"},{"b":"Конфликты и трудные разговоры Конфликт в команде — не сбой процесса и не признак того, что вы плохо подобрали людей. Два инженера, всерьёз спорящих о схеме миграции, делают ровно то, за что им платят. Проблема начинается…","c":"post","d":"engineering-leadership","g":["лидерство","конфликты","тимлид","коммуникация","управление людьми"],"h":"Позиция руководителя: три рычага и две потери · Честно про доказательную базу · Что называют «конфликтом»: шесть разных ситуаций · Диагности","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Как руководитель разбирает конфликты, будучи не нейтральным посредником, а стороной с полномочиями: диагностика причины,…","t":"Конфликты и трудные разговоры","u":"/post/engineering-leadership/14-conflicts/","w":"2026-07-16"},{"b":"Конфликты слияния: почему возникают, как разрешать, как предотвращать Слово «конфликт» пугает сильнее, чем заслуживает, — и виновата терминология. Оно звучит как авария: что-то сломалось, данные под угрозой, зови старшег…","c":"post","d":"git","g":["git","слияние","конфликты","командная работа","code review"],"h":"Конфликт — это отказ угадывать · Что происходит с репозиторием: stage 1, 2 и 3 · Маркеры конфликта и три стиля · Таксономия: конфликты бываю","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Конфликт — не поломка Git, а честный отказ угадывать за вас: трёхстороннее слияние и stage 1/2/3 в индексе, маркеры в ст…","t":"Конфликты слияния: почему возникают, как разрешать, как предотвращать","u":"/post/git/06-conflicts/","w":"2026-07-16"},{"b":"Координация: распределённые блокировки, лизы, etcd и ZooKeeper В однопроцессной программе взаимное исключение стоит несколько наносекунд и одну строчку кода. mutex.Lock() работает потому, что под ним лежат три вещи, кото…","c":"post","d":"distributed-systems","g":["распределённые системы","координация","блокировки","etcd","zookeeper"],"h":"Два мотива для блокировки, и они не равнозначны · Лиза: блокировка, у которой есть срок годности · Fencing-токен: единственное, что действит","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Почему мьютекс не переносится по сети: лизы вместо блокировок, fencing-токены вместо надежды, устройство etcd и ZooKeepe…","t":"Координация: распределённые блокировки, лизы, etcd и ZooKeeper","u":"/post/distributed-systems/10-coordination/","w":"2026-07-16"},{"b":"Корреляция и причинность: что делать, когда эксперимент невозможен Фраза «корреляция не означает причинности» — самая известная и самая бесполезная в прикладной аналитике. Её знают все. Её произносят на каждом разборе. И…","c":"post","d":"data-analytics","g":["аналитика данных","статистика","причинность","эксперименты","sql"],"h":"Что вообще значит «X влияет на Y» · Откуда берётся смещение отбора · Четыре механизма связи без влияния · Третья переменная: контролировать ","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Практический разбор причинного вывода без эксперимента: потенциальные исходы и смещение отбора, конфаундер против медиат…","t":"Корреляция и причинность: что делать, когда эксперимент невозможен","u":"/post/data-analytics/10-causality/","w":"2026-07-16"},{"b":"Коучинг команды, конфликты и сопротивление изменениям Механику Scrum можно выучить за выходные. События, артефакты, тайм-боксы, обязательства — всё это конечный список фактов, который укладывается в голову к третьему про…","c":"post","d":"scrum-master","g":["scrum","psm-i","коучинг","конфликты","команда"],"h":"Что Scrum Guide реально говорит о коучинге · Континуум вмешательства: сколько себя добавить в ситуацию · Как выбрать режим · Механика коучин","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Как Scrum-мастер работает с людьми: континуум вмешательства от директивы до коучинга, разбор конфликтов по уровням эскал…","t":"Коучинг команды, конфликты и сопротивление изменениям","u":"/post/scrum-master/08-coaching-and-conflicts/","w":"2026-07-16"},{"b":"Кошельки и ключи: seed-фразы, HD-кошельки, подпись транзакций, потеря доступа В Криптографии Web3 мы выяснили главное: приватный ключ — это и есть аккаунт. Нет логина, нет пароля, нет службы поддержки. Кошелёк — программ…","c":"post","d":"web3","g":["web3","кошельки","криптография","ключи","безопасность"],"h":"1. Кошелёк не хранит монеты — он хранит право подписи · 2. Энтропия: единственное место, где рождается настоящий секрет · 3. BIP-39: как 128","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Как 128 бит энтропии превращаются в 12 слов, дерево ключей и адреса, что физически происходит при подписи транзакции, по…","t":"Кошельки и ключи: seed-фразы, HD-кошельки, подпись транзакций, потеря доступа","u":"/post/web3/07-wallets-and-keys/","w":"2026-07-16"},{"b":"Кратчайшие пути: Дейкстра, Беллман–Форд, Флойд–Уоршелл, A* Задача о кратчайшем пути — это, пожалуй, самый переиспользуемый алгоритмический примитив в индустрии. Она стоит за навигатором в телефоне, за таблицей маршрутов …","c":"post","d":"algorithms","g":["алгоритмы","графы","кратчайшие пути","динамическое программирование","оптимизация"],"h":"1. Постановка и единственная операция, из которой всё растёт · 2. Базовый случай: BFS и 0-1 BFS · 3. Дейкстра · 3.1 Интуиция · 3.2 Доказател","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Одна операция релаксации порождает всё семейство алгоритмов кратчайших путей: разбираем условия корректности каждого, до…","t":"Кратчайшие пути: Дейкстра, Беллман–Форд, Флойд–Уоршелл, A*","u":"/post/algorithms/09-shortest-paths/","w":"2026-07-16"},{"b":"Криптография Web3: хеши, пары ключей, подписи, адреса В блокчейне нет базы пользователей, нет пароля, нет «восстановить доступ по email» и нет администратора, который подтвердит, что вы — это вы. Есть ровно одно утвержде…","c":"post","d":"web3","g":["web3","криптография","ecdsa","хеш-функции","ethereum"],"h":"Три примитива и что каждый из них реально гарантирует · Хеш-функции: договор, который вы принимаете, не читая · Keccak-256 — это не SHA3-256","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Как из 32 случайных байт получается адрес, что именно подписывает кошелёк, почему повтор одного числа k раскрывает прива…","t":"Криптография Web3: хеши, пары ключей, подписи, адреса","u":"/post/web3/02-cryptography/","w":"2026-07-16"},{"b":"Кромка системы: API-шлюз, BFF, sidecar и service mesh Почти на любой архитектурной схеме между пользователем и сервисами стоит один безымянный прямоугольник. Иногда он подписан «API Gateway», иногда «nginx», иногда прост…","c":"post","d":"architecture-patterns","g":["архитектура","api-шлюз","service mesh","bff","микросервисы"],"h":"1. Сквозные заботы: список, который никто не пишет целиком · 2. Анатомия пути запроса: от DNS до строки в базе · 3. API-шлюз: три законные р","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Где физически исполняются сквозные заботы — TLS, аутентификация, лимиты, ретраи, трассировка, маршрутизация: в библиотек…","t":"Кромка системы: API-шлюз, BFF, sidecar и service mesh","u":"/post/architecture-patterns/14-edge-and-cross-cutting/","w":"2026-07-16"},{"b":"Кроссплатформа: Flutter, React Native, KMP — сравнение и цена решения Есть вопрос, который задают на каждом старте мобильного проекта, и почти всегда — неправильно. «Что лучше: Flutter или React Native?» На него нет отве…","c":"post","d":"mobile","g":["мобильная разработка","кроссплатформа","flutter","react native","kotlin multiplatform"],"h":"Что на самом деле означает «общий код» · Четыре стратегии: как вообще можно разделить код · Кладбище как аргумент · Flutter изнутри · React ","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Как устроены Flutter, React Native и Kotlin Multiplatform изнутри, что именно они разделяют между платформами, чем распл…","t":"Кроссплатформа: Flutter, React Native, KMP — сравнение и цена решения","u":"/post/mobile/04-cross-platform/","w":"2026-07-16"},{"b":"Кто есть кто в команде: роли, зоны ответственности, кто что решает Первые недели на работе большая часть непонимания — не про код. Код можно прочитать. Непонятно другое: кто эти пятнадцать человек в общем чате, почему од…","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","команда","роли","коммуникация"],"h":"Главное отличие: роль — это не должность и не человек · Три зоны решений · Карта ролей: кто вообще бывает · Продуктовые роли · Product Manag","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Разбор ролей в разработке — от продакта и аналитика до SRE и тимлида: чем они реально занимаются, кто принимает какие ре…","t":"Кто есть кто в команде: роли, зоны ответственности, кто что решает","u":"/post/sdlc-and-career/08-roles-and-teams/","w":"2026-07-16"},{"b":"Куда двигаться дальше: специализации, план обучения и первая работа Вы дошли до конца курса. Это последняя статья — и она не про новый синтаксис, а про то, что делать завтра утром, когда учебник закончился, а работы ещё …","c":"post","d":"intro","g":["с нуля","карьера","обучение","python","портфолио"],"h":"Что вы уже умеете (и это больше, чем кажется) · Карта специализаций · Как выбрать одно направление · Ширина и глубина: почему нельзя учить в","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Что вы уже умеете после базового курса, какие бывают специализации, как выбрать одну, как построить план на полгода-год …","t":"Куда двигаться дальше: специализации, план обучения и первая работа","u":"/post/intro/15-what-next/","w":"2026-07-16"},{"b":"Кучи и приоритетные очереди Есть класс задач, в которых нужен не «весь порядок», а ровно один вопрос: кто следующий? Какая задача в планировщике должна выполниться раньше всех. Какая вершина в алгоритме Дейкстры сейчас б…","c":"post","d":"data-structures","g":["структуры данных","кучи","приоритетные очереди","сортировка","графы"],"h":"Приоритетная очередь как абстрактный тип · Почему наивные реализации не годятся · Инвариант кучи: минимум порядка ради максимума скорости · ","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Как из обычного массива получается структура, которая всегда знает свой минимум: инвариант кучи, sift-up и sift-down, по…","t":"Кучи и приоритетные очереди","u":"/post/data-structures/08-heaps-priority-queues/","w":"2026-07-16"},{"b":"Кэши и локальность: почему одинаковый по сложности код работает в 10 раз медленнее Асимптотическая сложность — прекрасный инструмент с одним катастрофическим допущением: модель RAM считает, что любое обращение к памяти с…","c":"post","d":"performance","g":["производительность","кэш","память","perf","оптимизация"],"h":"1. Стена памяти: почему кэш вообще существует · 2. Кэш-линия: минимальная единица обмена · 3. Куда именно ложится линия: наборы, пути, конфл","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Как устроена кэш-иерархия и почему два цикла с одинаковым O(n) отличаются по времени на порядок: кэш-линии, наборы и кон…","t":"Кэши и локальность: почему одинаковый по сложности код работает в 10 раз медленнее","u":"/post/performance/05-cache-and-locality/","w":"2026-07-16"},{"b":"Кэширование и масштабирование: уровни, инвалидация, шардирование Есть два способа сделать систему быстрее: делать меньше работы или делать работу на большем количестве машин. Кэширование — это первое. Масштабирование — в…","c":"post","d":"architecture-patterns","g":["архитектура","кэширование","масштабирование","шардирование","производительность"],"h":"1. Прежде чем масштабировать: три закона, которые нельзя обойти · Закон Литтла · Закон Амдала · Универсальный закон масштабируемости (USL) ·","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Как система выдерживает рост нагрузки: закон масштабируемости и куб масштабирования, уровни кэша от процесса до CDN, стр…","t":"Кэширование и масштабирование: уровни, инвалидация, шардирование","u":"/post/architecture-patterns/08-caching-and-scaling/","w":"2026-07-16"},{"b":"Кэширование: уровни, инвалидация, cache stampede, hit rate В предыдущей статье мы заставляли базу отвечать быстро. Кэш — соседняя стратегия: не ускорить работу, а не делать её вовсе. Это самый мощный инструмент в наборе …","c":"post","d":"performance","g":["производительность","кэширование","redis","измерения","http"],"h":"Арифметика ставки: считайте промахи, а не попадания · Почему кэш вообще работает · Уровни: где именно вы кэшируете · Сначала измерьте: прибо","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Кэш как измеримая ставка на повторяемость: арифметика hit rate, кривая промахов, уровни от браузера до буферного пула, с…","t":"Кэширование: уровни, инвалидация, cache stampede, hit rate","u":"/post/performance/09-caching/","w":"2026-07-16"},{"b":"Ландшафт стандартов: ISO 21500/21502, IPMA ICB, P3.express, ГОСТ и модели зрелости Две предыдущие главы разобрали два самых известных ответа на вопрос «как управлять проектами»: PMBOK как свод знаний и PRINCE2 как метод.…","c":"post","d":"management","g":["менеджмент","управление проектами","стандарты","процессы","качество"],"h":"1. Зачем нужны стандарты · Стандарт, свод знаний и методология — три разные вещи · 2. Две оси карты · 3. Семейство ISO 21500 · 4. IPMA ICB 4","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Карта всего поля стандартов управления проектами: чем стандарт отличается от методологии и свода знаний, что внутри ISO …","t":"Ландшафт стандартов: ISO 21500/21502, IPMA ICB, P3.express, ГОСТ и модели зрелости","u":"/post/management/06-standards-landscape/","w":"2026-07-16"},{"b":"Легаси-код: швы, характеризующие тесты и безопасные изменения Весь предыдущий трек описывал, как писать код, который потом будет легко менять. Эта статья — про противоположную ситуацию, в которой большинство инженеров пр…","c":"post","d":"principles","g":["принципы","легаси","рефакторинг","тестирование","технический долг"],"h":"1. Общий алгоритм: что делать, когда пришла задача · 2. Разведка: сначала понять, потом менять · 3. Швы: где физически можно вмешаться · 4. ","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Что делать с кодом, который страшно трогать: как его разведывать, где искать швы, как обложить характеризующими тестами …","t":"Легаси-код: швы, характеризующие тесты и безопасные изменения","u":"/post/principles/12-legacy-code/","w":"2026-07-16"},{"b":"Лексический анализ: токены, регулярные языки, свой лексер с нуля Компилятор получает на вход ровно одну вещь: последовательность байтов. Никаких «функций», «переменных» и «операторов» в файле нет — есть 0x6c 0x65 0x74 0x…","c":"post","d":"compilers","g":["компиляторы","лексический анализ","конечные автоматы","регулярные выражения"],"h":"Что такое токен · Почему это отдельная фаза, а не часть парсера · Где эта граница протекает · Теория: почему регулярных языков достаточно · ","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Первая фаза компилятора: как поток символов превращается в поток токенов, почему для этого хватает конечного автомата, г…","t":"Лексический анализ: токены, регулярные языки, свой лексер с нуля","u":"/post/compilers/01-lexer/","w":"2026-07-16"},{"b":"Ленивость, бесконечные структуры и потоки данных Есть задачи, где обычный подход ломается не из-за алгоритма, а из-за порядка вычислений. Файл на 40 ГБ не помещается в память. Список простых чисел не имеет конца. Цепочка…","c":"post","d":"functional-programming","g":["функциональное программирование","ленивые вычисления","потоки данных","генераторы","производительность"],"h":"Три боли, из которых вырастает ленивость · Боль первая: промежуточные коллекции · Боль вторая: структура, у которой нет конца · Боль третья:","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Ленивое вычисление — это не экзотика Haskell, а способ разделить «что мы порождаем» и «сколько нам нужно». Разбираем thu…","t":"Ленивость, бесконечные структуры и потоки данных","u":"/post/functional-programming/11-laziness-and-streams/","w":"2026-07-16"},{"b":"Линейная алгебра: векторы, пространства, базисы и линейная независимость Если спросить инженера, какой раздел математики окупился сильнее всего, чаще всего услышишь «линейная алгебра». Причина простая: это единственная о…","c":"post","d":"mathematics","g":["математика","линейная алгебра","векторы","базис","numpy"],"h":"Зачем это программисту: три сцены из практики · Что такое вектор: три ответа, и только третий верный · Строгое определение · Примеры простра","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Как из восьми аксиом вырастает вся линейная алгебра: векторные пространства, линейная оболочка, независимость, базис, ра…","t":"Линейная алгебра: векторы, пространства, базисы и линейная независимость","u":"/post/mathematics/05-linear-algebra-vectors/","w":"2026-07-16"},{"b":"Линейная и логистическая регрессия Если из всего машинного обучения оставить только два алгоритма, разумно оставить именно эти. Линейная регрессия — это скелет, на который натянуто почти всё остальное: нейросеть без акти…","c":"post","d":"machine-learning","g":["машинное обучение","линейные модели","регрессия","классификация","регуляризация"],"h":"1. Постановка: что вообще значит «линейная модель» · Что мы оптимизируем · 2. Геометрия МНК и нормальное уравнение · Сложность и почему inv(","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Два базовых линейных алгоритма ML от первых принципов: МНК как проекция, нормальное уравнение и градиентный спуск, регул…","t":"Линейная и логистическая регрессия","u":"/post/machine-learning/03-linear-and-logistic-regression/","w":"2026-07-16"},{"b":"Лицензии как инженерное ограничение: копилефт и разрешительные Инженер добавляет в проект библиотеку для конвертации документов. Она делает ровно то, что нужно, у неё две тысячи звёзд, тесты зелёные, CI прошёл, ревью зан…","c":"post","d":"software-distribution","g":["поставка софта","лицензии","открытый код","копилефт","комплаенс"],"h":"Лицензия — это условное разрешение, а не описание характера проекта · Три с половиной момента, когда лицензия просыпается · Что копилефт зап","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Лицензия — это не юридическая экзотика, а условие на графе сборки: она определяет, что вы обязаны положить рядом с бинар…","t":"Лицензии как инженерное ограничение: копилефт и разрешительные","u":"/post/software-distribution/04-licensing/","w":"2026-07-16"},{"b":"Личный канбан и ограничение незавершённой работы В предыдущей статье — Фокус: помодоро, deep work и защита от прерываний — речь шла о том, как защитить один блок времени. Личный канбан решает соседнюю задачу: что происхо…","c":"post","d":"time-management","g":["тайм-менеджмент","канбан","продуктивность","поток работы"],"h":"Откуда это взялось · Механика: доска, карточки, лимит · Минимальная конфигурация · Что именно ограничивает лимит · Почему это работает: немн","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Как визуализация работы и WIP-лимиты превращают список дел в управляемый поток: происхождение метода, математика очереде…","t":"Личный канбан и ограничение незавершённой работы","u":"/post/time-management/07-personal-kanban/","w":"2026-07-16"},{"b":"Локальная оптимизация: как улучшение части ломает целое Команда сервиса корзины закрыла квартальную цель: p99 их эндпоинта упал с 240 мс до 90 мс. Способ честный — убрали синхронный вызов сервиса скидок, перенесли его в …","c":"post","d":"systems-thinking","g":["системное мышление","системная динамика","метрики","производительность","инженерная культура"],"h":"Что именно называется локальной оптимизацией · Три структурные причины · Почему сумма локальных оптимумов не равна оптимуму целого · Огранич","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Почему сумма локальных оптимумов не равна оптимуму целого: узкие места, перенос нагрузки, метрики-заместители — и как от…","t":"Локальная оптимизация: как улучшение части ломает целое","u":"/post/systems-thinking/10-local-optimization/","w":"2026-07-16"},{"b":"Локальные модели: llama.cpp, Ollama, vLLM, LM Studio, квантизация, требования к железу До этого момента модель в наших пайплайнах была чужим HTTP-эндпоинтом: вы платите за токены и не думаете, что происходит внутри. Лока…","c":"post","d":"ai-engineering","g":["ии-инженерия","локальные модели","квантизация","инференс","llm"],"h":"Зачем вообще локально: четыре честные причины и одна ложная · Арифметика памяти: три слагаемых, которые надо уметь считать в уме · Слагаемое","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Арифметика VRAM и пропускной способности памяти, честная экономика своего GPU против API, как устроена квантизация и что…","t":"Локальные модели: llama.cpp, Ollama, vLLM, LM Studio, квантизация, требования к железу","u":"/post/ai-engineering/11-local-models/","w":"2026-07-16"},{"b":"Локальный поиск: hill climbing, имитация отжига, tabu search В предыдущей статье — Пространство поиска, представление решения и фитнес-функция — мы договорились о трёх вещах: как закодировать решение, как измерить его ка…","c":"post","d":"sbse","g":["sbse","оптимизация","метаэвристики","алгоритмы"],"h":"Формальная рамка · Общий каркас · Сквозной пример: Next Release Problem · Hill climbing · Три способа застрять · Рестарты и итеративный лока","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как работают траекторные метаэвристики — от жадного восхождения к вершине до отжига и поиска с запретами — и почему в SB…","t":"Локальный поиск: hill climbing, имитация отжига, tabu search","u":"/post/sbse/02-local-search/","w":"2026-07-16"},{"b":"Лямбда-исчисление Чёрча: зачем оно программисту и что это вообще такое Представьте язык программирования, в котором нет чисел. Нет строк, булевых значений, массивов, циклов, объектов, if, операторов присваивания и даже и…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","функциональное программирование","теория вычислений","основы"],"h":"Зачем это программисту, а не только математику · Идея на одной аналогии · Три конструкции — и это весь язык · Три термина, которые встретятс","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Язык программирования из трёх правил, придуманный до появления компьютеров: зачем он нужен практикующему разработчику и …","t":"Лямбда-исчисление Чёрча: зачем оно программисту и что это вообще такое","u":"/post/lambda-calculus/00-overview/","w":"2026-07-16"},{"b":"Лямбда-исчисление в живых языках: от Lisp до современных стрелочных функций Мы прошли весь трек: синтаксис, подстановку, редукции, булевы значения, числа, структуры данных, рекурсию через Y, стратегии вычисления и типы. …","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","функциональное программирование","компиляторы","замыкания"],"h":"Короткая история одной идеи · Три конструкции — и всё ваше рабочее утро · Вызов функции — это бета-редекс, буквально · let, где, аргументы п","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Где именно лямбда-исчисление живёт в языках, на которых вы пишете каждый день: стрелочные функции как абстракции, вызов …","t":"Лямбда-исчисление в живых языках: от Lisp до современных стрелочных функций","u":"/post/lambda-calculus/10-in-practice/","w":"2026-07-16"},{"b":"Магазины приложений: правила, комиссии, ревью и отказы В главе о каналах канал определялся как ответ на вопрос «кто владеет отношениями с покупателем». Магазин приложений — крайняя точка этой шкалы: он владеет отношениям…","c":"post","d":"software-distribution","g":["поставка софта","магазины приложений","комиссии","релизы","монетизация"],"h":"Магазин — это четыре бизнеса в одном · Комиссия: механизм, а не число · Продавец записи: главное, что вы покупаете за комиссию · Правила пло","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Магазин — не витрина, а посредник, который одновременно владеет кассой, правилами и правом сказать «нет»: разбираем, из …","t":"Магазины приложений: правила, комиссии, ревью и отказы","u":"/post/software-distribution/09-app-stores/","w":"2026-07-16"},{"b":"Массивы, динамические массивы и строки Массив — самая скучная структура данных и одновременно самая важная. Хеш-таблица внутри себя — массив. Куча — массив. Дерево отрезков — массив. Буфер сокета — массив. Строка — масси…","c":"post","d":"data-structures","g":["структуры данных","массивы","строки","амортизация","unicode"],"h":"1. Массив: почему O(1) — это правда · Интуиция и формула · Раскладка в памяти и кэш · Раскладка многомерных массивов и AoS против SoA · Стои","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"От адресной арифметики и кэш-линий до амортизированного append, Go-слайсов, UTF-8 и графемных кластеров — как устроена с…","t":"Массивы, динамические массивы и строки","u":"/post/data-structures/02-arrays-and-strings/","w":"2026-07-16"},{"b":"Массивы, строки и структуры: раскладка в памяти и выравнивание В Python list — это объект. В Java String — это объект с полем length. В Go []int — дескриптор из трёх машинных слов. Во всех этих языках между вами и байтам…","c":"post","d":"systems-programming","g":["системное программирование","c","память","выравнивание","структуры данных"],"h":"Модель памяти C: объект и его представление · Массивы: смежность и её последствия · Индексация — это арифметика указателей · Распад массива ","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Как массивы, строки и структуры на самом деле лежат в байтах: распад массива в указатель, NUL-терминация, padding и выра…","t":"Массивы, строки и структуры: раскладка в памяти и выравнивание","u":"/post/systems-programming/03-arrays-strings-structs/","w":"2026-07-16"},{"b":"Масштабирование Scrum: Nexus, LeSS, SAFe — что нужно знать для экзамена Обычно это звучит так: «Нас стало сорок человек, продукт один, релизы разъезжаются. Давайте внедрим SAFe». Дальше приезжает консультант, рисует на с…","c":"post","d":"scrum-master","g":["scrum","масштабирование","nexus","less","safe","psm"],"h":"Сначала главное: что из этого действительно нужно для PSM I · Физика проблемы: почему N команд не дают N-кратной скорости · Главный рычаг: г","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Что Scrum Guide говорит о нескольких командах на одном продукте, как устроены Nexus, LeSS и SAFe, где они противоречат S…","t":"Масштабирование Scrum: Nexus, LeSS, SAFe — что нужно знать для экзамена","u":"/post/scrum-master/11-scaling/","w":"2026-07-16"},{"b":"Масштабирование процессов: SAFe, LeSS, Spotify-модель и их критика Одна команда из семи человек умеет всё: договориться за пять минут, выкатить релиз до обеда, переспросить у соседа вместо тикета. Пятнадцать таких команд…","c":"post","d":"project-management","g":["управление проектами","масштабирование","организационный дизайн","safe","less"],"h":"Часть 1. Физика: почему N команд никогда не дают N× результата · 1.1. Два разных налога на размер · 1.2. Главный вывод, который определяет в","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Физика масштабирования разработки: почему растёт цена связей, что на самом деле предлагают SAFe, LeSS, Nexus и Spotify-м…","t":"Масштабирование процессов: SAFe, LeSS, Spotify-модель и их критика","u":"/post/project-management/08-scaling-frameworks/","w":"2026-07-16"},{"b":"Масштабирование: L2, роллапы, шардирование, мосты и их риски В статье про Ethereum и EVM мы сформулировали неприятный факт: каждый полный узел выполняет каждую транзакцию. Это не архитектурная небрежность, а прямое следс…","c":"post","d":"web3","g":["web3","масштабирование","L2","роллапы","мосты","безопасность"],"h":"Почему блокчейн не масштабируется сам по себе · Три разных узких места, которые постоянно путают · Трилемма как инженерное ограничение, а не","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Инженерный разбор масштабирования блокчейнов: где именно упирается L1, как устроены оптимистичные и ZK-роллапы, что дали…","t":"Масштабирование: L2, роллапы, шардирование, мосты и их риски","u":"/post/web3/10-scaling/","w":"2026-07-16"},{"b":"Масштабирование: оси, узкие места и эволюция системы Разговор о масштабировании в большинстве команд начинается не с измерения, а с интуиции: «нас стало больше, надо распиливать монолит», «давайте добавим Kafka», «пора ш…","c":"post","d":"development","g":["development","масштабирование","архитектура","производительность","микросервисы"],"h":"Что значит «масштабируемая система» · Что вы на самом деле покупаете · Вертикальное масштабирование: первый и часто правильный ответ · Куб м","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Куб масштабирования и его три оси без путаницы, диагностика настоящего узкого места вместо догадок и честный разбор семи…","t":"Масштабирование: оси, узкие места и эволюция системы","u":"/post/development/12-scaling/","w":"2026-07-16"},{"b":"Математика для ML: линейная алгебра, анализ, вероятности Есть распространённая иллюзия: «математика в ML не нужна, есть же scikit-learn». Пока всё работает — иллюзия держится. Ломается она в конкретных, очень типичных си…","c":"post","d":"machine-learning","g":["машинное обучение","линейная алгебра","оптимизация","теория вероятностей","математическая статистика"],"h":"Карта: что именно нужно и зачем · Часть 1. Линейная алгебра: язык данных · Вектор — это описание объекта · Скалярное произведение, нормы, ко","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Рабочий минимум математики для машинного обучения: векторы и матрицы как язык данных, градиенты и оптимизация как механи…","t":"Математика для ML: линейная алгебра, анализ, вероятности","u":"/post/machine-learning/01-math-foundations/","w":"2026-07-16"},{"b":"Математика для программиста: карта трека и зачем она нужна на практике Есть два одинаково вредных мифа: «программисту математика не нужна, всё уже написано в библиотеках» и «сначала весь матанализ, потом можно программир…","c":"post","d":"mathematics","g":["математика","обзор","дискретная математика","линейная алгебра","теория вычислимости"],"h":"Что мы понимаем под «математикой для программиста» · Карта трека · Граф зависимостей: в каком порядке читать · Где математика реально всплыв","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Обзорная карта трека: какие разделы математики реально окупаются в инженерной работе, в каком порядке их брать и как каж…","t":"Математика для программиста: карта трека и зачем она нужна на практике","u":"/post/mathematics/00-overview/","w":"2026-07-16"},{"b":"Математическая логика и доказательства: как рассуждать строго Программист рассуждает логически каждый день, просто не называет это логикой. «Если кэш протух или ключа нет — идём в базу». «Функция вернёт не-null всегда, к…","c":"post","d":"mathematics","g":["математика","логика","доказательства","формальные методы","sat"],"h":"1. Высказывания и связки: минимальный язык · Импликация — главный источник ошибок · 2. Эквивалентности, которые стоит знать наизусть · 3. Но","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Пропозициональная логика, кванторы, правила вывода и методы доказательств — от таблиц истинности и SAT-солверов до инвар…","t":"Математическая логика и доказательства: как рассуждать строго","u":"/post/mathematics/02-logic-and-proofs/","w":"2026-07-16"},{"b":"Матрицы, линейные отображения, определители и системы уравнений Матрица — самый недопонятый объект в программистской математике. Её почти всегда объясняют как «двумерный массив чисел», после чего правило умножения выгляд…","c":"post","d":"mathematics","g":["математика","линейная алгебра","матрицы","определитель","numpy"],"h":"Зачем это программисту: где матрицы уже есть в вашем коде · Линейное отображение: строгое определение · Почему линейность — жёсткое ограниче","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Матрица — это не таблица чисел, а линейное отображение в координатах: откуда берётся правило умножения, что на самом дел…","t":"Матрицы, линейные отображения, определители и системы уравнений","u":"/post/mathematics/06-linear-algebra-matrices/","w":"2026-07-16"},{"b":"Машинное обучение: карта трека, типы задач и постановка Эта статья — вход в трек. Она не пересказывает пятнадцать последующих материалов, а даёт систему координат, без которой они превращаются в список библиотечных вызов…","c":"post","d":"machine-learning","g":["машинное обучение","постановка задачи","обобщение","метрики","кросс-валидация"],"h":"1. Почему вообще нужно учиться по данным · 2. Формальная постановка: риск, эмпирический риск, обобщение · 3. Таксономия: какие вообще бывают","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Что такое обучение по данным с точки зрения первых принципов, как формально ставится задача, какие бывают типы задач, ка…","t":"Машинное обучение: карта трека, типы задач и постановка","u":"/post/machine-learning/00-overview/","w":"2026-07-16"},{"b":"Машинное обучение: картинки, звук, текст Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 12:15 — отсюда взято содержание этой главы. Есть утверждение, которое стоит принять до того, как в тексте появится слово «…","c":"post","d":"ai-basics","g":["основы ии","машинное обучение","перцептивные хеши","ocr","распознавание"],"h":"Три семейства методов и три домена данных · Изображения: перцептивный хеш · Алгоритм aHash · Родственники: dHash и pHash · Чем перцептивный ","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Перцептивные хеши и расстояние Хэмминга для изображений, спектрограммы и аудиоотпечатки для звука, OCR для текста: разбо…","t":"Машинное обучение: картинки, звук, текст","u":"/post/ai-basics/03-machine-learning/","w":"2026-07-16"},{"b":"Международные клиенты: валюта, платёжные рельсы, юрисдикции и асинхронная работа Совет «работай на зарубежных заказчиков, там платят больше» верен ровно наполовину. Верно, что за один и тот же навык разные рынки платят р…","c":"post","d":"business","g":["бизнес","фриланс","деньги","договоры","риски"],"h":"1. Что покупает зарубежный клиент и почему платит больше · 2. Пять контуров трансграничной сделки · 3. Чистая ставка: единственное честное ч","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Как инженеру работать через границу и не потерять заработанное по дороге: чистая ставка после комиссий и курса, валютные…","t":"Международные клиенты: валюта, платёжные рельсы, юрисдикции и асинхронная работа","u":"/post/business/11-international-clients/","w":"2026-07-16"},{"b":"Ментальные модели: почему участники видят разные системы Предыдущие семь глав описывали систему так, будто она одна и существует объективно: вот границы, вот петли, вот запасы, вот задержки. Эмерджентность добавила непри…","c":"post","d":"systems-thinking","g":["системное мышление","ментальные модели","инциденты","командная работа","моделирование"],"h":"Что такое ментальная модель — и что ей не является · Пять механизмов расхождения · 1. Разные границы · 2. Разная наблюдаемость · 3. Разный г","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Откуда берутся несовместимые описания одного и того же инцидента, почему это структурный эффект, а не свойство характера…","t":"Ментальные модели: почему участники видят разные системы","u":"/post/systems-thinking/08-mental-models/","w":"2026-07-16"},{"b":"Метапрограммирование Elixir В главе Идиоматика и обработка ошибок было сказано: «не пишите макросы, пока не исчерпаны функции». Совет верный — и при этом читать макросы вам придётся с первого дня. defmodule, def, if, use…","c":"post","d":"elixir","g":["elixir","метапрограммирование","макросы","компиляция","dsl"],"h":"Код — это данные · Этапы компиляции · Первый макрос: unless на пустом месте · unquote_splicing и bind_quoted · Гигиена: почему переменные не","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Как код Elixir становится данными: структура AST, quote и unquote, гигиена переменных, этапы компиляции, use и __using__…","t":"Метапрограммирование Elixir: AST, quote/unquote, гигиена, макросы и DSL","u":"/post/elixir/11-metaprogramming-macros/","w":"2026-07-16"},{"b":"Метапрограммирование в Go В Go нет макросов, аннотаций-процессоров, метаклассов и декораторов. Язык сознательно отказался от способов писать код, который пишет код прямо во время компиляции: авторы считали, что читателю …","c":"post","d":"golang","g":["go","рефлексия","кодогенерация","cgo","unsafe"],"h":"Три уровня и порядок выбора · Рефлексия: три закона · Практический пример: маппер конфигурации из окружения · Цена рефлексии · Теги структур","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Три закона рефлексии и её цена, теги структур как мини-DSL, go generate как основной путь Go, аварийные люки unsafe и cg…","t":"Метапрограммирование в Go: reflect, теги структур, кодогенерация, unsafe и cgo","u":"/post/golang/12-reflection-codegen-and-cgo/","w":"2026-07-16"},{"b":"Метод опорных векторов и ядерный трюк SVM — самый «математический» из классических алгоритмов и одновременно самый недопонятый. Его обычно запоминают как «тот, где ядра», хотя главная идея — не ядра, а максимальный зазор…","c":"post","d":"machine-learning","g":["машинное обучение","классификация","оптимизация","ядерные методы","регуляризация"],"h":"1. Проблема: разделяющих прямых бесконечно много · 2. Геометрия: что именно мы максимизируем · 3. Мягкий зазор: реальные данные не разделимы","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Как из идеи «раздвинь классы как можно шире» вырастает выпуклая задача оптимизации, почему решение зависит только от опо…","t":"Метод опорных векторов и ядерный трюк","u":"/post/machine-learning/05-svm/","w":"2026-07-16"},{"b":"Методы решения проблем и генерации идей: от мозгового штурма к brainswarming и 5 почему Обычный разбор проблемы в IT выглядит так: собрали шесть человек в переговорке, кто-то сказал «а давайте поставим Kafka», остальные …","c":"post","d":"management","g":["менеджмент","команда","принятие решений","процессы","качество"],"h":"1. Рамка: сначала проблема, потом идеи · 2. Формулировка проблемы · 3. Анализ причин: от «пяти почему» до дерева отказов · «Пять почему» · Д","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Сначала проблема, потом идеи: двойной алмаз и формулировка problem statement, анализ причин через «5 почему», Исикаву, F…","t":"Методы решения проблем и генерации идей: от мозгового штурма к brainswarming и 5 почему","u":"/post/management/11-problem-solving/","w":"2026-07-16"},{"b":"Метрики UX: что измерять, как связать с продуктовыми показателями Сцена, знакомая почти каждому. Команда три недели переделывала форму заявки: убрала два поля, переписала подписи, развела шаги. Релиз. Через неделю продак…","c":"post","d":"ux-design","g":["дизайн","ux","метрики","аналитика"],"h":"Зачем дизайнеру метрики · Ландшафт: что вообще можно измерить · Лестница метрик: от клика до денег · Дерево метрик: как связать кнопку с выр","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как измерять качество интерфейса так, чтобы цифры подсказывали правку в макете: лестница метрик, дерево от кнопки до выр…","t":"Метрики UX: что измерять, как связать с продуктовыми показателями","u":"/post/ux-design/12-metrics/","w":"2026-07-16"},{"b":"Метрики и закон Гудхарта: цифра, которая меняет поведение Тринадцать глав этого трека были про то, как получить из данных вывод, который выдержит проверку. Эта — про то, что происходит после вывода. Потому что аналитика …","c":"post","d":"data-analytics","g":["аналитика данных","метрики","закон гудхарта","системное мышление","sql"],"h":"1. Формулировка, которую обычно цитируют неверно · 2. Механика: метрика — это всегда прокси · 3. Четыре разных Гудхарта · 3.1 Регрессионный:","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Почему измерение не нейтрально: четыре разных механизма закона Гудхарта, математика регрессионного отбора по прокси, пар…","t":"Метрики и закон Гудхарта: цифра, которая меняет поведение","u":"/post/data-analytics/14-metrics-and-goodhart/","w":"2026-07-16"},{"b":"Механизмы консенсуса: PoW, PoS, финальность, форки, атака 51% В предыдущих статьях трека мы разобрали, как устроен блок и хеш-цепочка, и как криптография даёт подписи и адреса. Но у этих двух кирпичей есть общая дыра, ко…","c":"post","d":"web3","g":["web3","блокчейн","консенсус","распределённые системы","безопасность"],"h":"Что именно нужно согласовать · Proof of Work изнутри · Задача, которую решает майнер · Регулировка сложности · Почему 10 минут, а не 10 секу","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Как сеть без начальника договаривается о единой истории: proof-of-work изнутри, proof-of-stake и Gasper, правила выбора …","t":"Механизмы консенсуса: PoW, PoS, финальность, форки, атака 51%","u":"/post/web3/03-consensus/","w":"2026-07-16"},{"b":"Миграции: как переводить десятки команд и не сорвать поставку Платформенная команда выбрала новый рантайм. Причины настоящие: старый стек держится на трёх самописных скриптах, у одного из них нет автора уже год, апгрейд …","c":"post","d":"platform-engineering","g":["платформа","миграции","устаревание","принятие"],"h":"Асимметрия выгоды и работы · Единственная честная метрика миграции · Считаем до старта: три числа · Классы миграций: стратегия зависит от кл","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Миграция — это релиз платформы, работу по которому делают чужие руки: арифметика окупаемости и окно двойной стоимости, к…","t":"Миграции: как переводить десятки команд и не сорвать поставку","u":"/post/platform-engineering/12-migrations/","w":"2026-07-16"},{"b":"Миграция JavaScript → TypeScript и производительность компилятора Большинство разработчиков встречают TypeScript не на пустом проекте, а на живом JavaScript-коде: 200 тысяч строк, десять человек в команде, релиз каждый д…","c":"post","d":"typescript","g":["typescript","миграция","производительность","инструменты","монорепо"],"h":"Стратегии перехода · Шаг 1: типы без переименования файлов · Шаг 2: переименование от листьев к корню · Шаг 3: строгость по одному флагу · П","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Пошаговый перевод живого JS-проекта на TypeScript без остановки разработки и диагностика медленного tsc: диагностика, тр…","t":"Миграция JavaScript → TypeScript и производительность компилятора","u":"/post/typescript/12-migration-and-compiler-performance/","w":"2026-07-16"},{"b":"Микросервисы: границы, коммуникация, данные, эксплуатация Микросервисы — самый обсуждаемый и самый неправильно применяемый архитектурный стиль последних пятнадцати лет. Проблема не в том, что он плох: в нужных условиях о…","c":"post","d":"architecture-patterns","g":["архитектура","микросервисы","распределённые системы","границы контекстов","эксплуатация"],"h":"1. Зачем: единственное свойство, за которое платят · 2. Границы: где резать · 3. Извлечение сервиса: strangler fig, а не big bang · 4. Комму","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Что на самом деле покупают за микросервисы, как проводить границы по бизнес-возможностям, как выбирать синхронную и асин…","t":"Микросервисы: границы, коммуникация, данные, эксплуатация","u":"/post/architecture-patterns/03-microservices/","w":"2026-07-16"},{"b":"Многоагентные схемы: когда оправданы, а когда дорогая иллюзия Есть соблазн, который возникает у всех примерно на третьей неделе работы с агентом. Один агент справляется наполовину; значит, нужно несколько. Архитектор, ра…","c":"post","d":"ai-agents","g":["ai-агенты","многоагентные системы","оркестрация","цена","проверяемость"],"h":"Что вообще считать многоагентной схемой · Единственный ресурс, который вы действительно покупаете · Цена: арифметика, а не ощущение · Шов: г","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Что реально покупается несколькими агентами — изоляция контекста и время по стенным часам, — сколько это стоит в токенах…","t":"Многоагентные схемы: когда оправданы, а когда дорогая иллюзия","u":"/post/ai-agents/11-multi-agent/","w":"2026-07-16"},{"b":"Многозадачность: процессы, потоки, параллелизм и почему это сложно В статье про операционную систему мы видели, как одно ядро создаёт иллюзию, что десятки программ работают одновременно: планировщик тысячи раз в секунду …","c":"post","d":"computer-science","g":["computer science","конкурентность","параллелизм","потоки","синхронизация"],"h":"Зачем это вообще стало важно: стена частоты · Два разных слова: конкурентность и параллелизм · Процессы и потоки: две единицы многозадачност","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Что такое конкурентность и чем она отличается от параллелизма, зачем нужны процессы и потоки, откуда берутся гонки данны…","t":"Многозадачность: процессы, потоки, параллелизм и почему это сложно","u":"/post/computer-science/14-concurrency-and-parallelism/","w":"2026-07-16"},{"b":"Многокритериальная оптимизация: Парето, NSGA-II, SPEA2 В предыдущих статьях трека фитнес-функция всегда возвращала одно число. Это удобно, но почти всегда — ложь. Реальные инженерные задачи звучат иначе: Отбор тестов для…","c":"post","d":"sbse","g":["sbse","оптимизация","метаэвристики","генетические алгоритмы","многокритериальная оптимизация"],"h":"Формальная постановка · Доминирование по Парето · Почему нельзя просто сложить цели с весами · Недоминируемая сортировка · Crowding distance","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как искать решения, когда целей несколько и они конфликтуют: доминирование по Парето, недоминируемая сортировка, crowdin…","t":"Многокритериальная оптимизация: Парето, NSGA-II, SPEA2","u":"/post/sbse/05-multi-objective/","w":"2026-07-16"},{"b":"Многотенантность: изоляция, данные и стоимость обслуживания Компания продаёт систему учёта заявок. 380 организаций-клиентов, один экземпляр приложения, одна база. В понедельник приходит письмо от юриста крупного клиента:…","c":"post","d":"software-distribution","g":["поставка софта","saas","архитектура","изоляция","стоимость"],"h":"Тенант — это не пользователь и не аккаунт · Арифметика: почему вообще один экземпляр на всех · Спектр изоляции: пять ступеней, а не два вари","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Как один экземпляр продукта обслуживает сотни организаций: спектр изоляции от общей строки до отдельного облачного аккау…","t":"Многотенантность: изоляция, данные и стоимость обслуживания","u":"/post/software-distribution/03-multitenancy/","w":"2026-07-16"},{"b":"Многоуровневая, гексагональная, луковичная и чистая архитектуры Есть вопрос, который решает любая кодовая база размером больше одного файла: где живёт бизнес-логика и от чего она имеет право зависеть. Ответов накопилось …","c":"post","d":"architecture-patterns","g":["архитектура","гексагональная архитектура","чистая архитектура","слои","python"],"h":"Симптом: почему вообще понадобились слои · Эволюция: как мы сюда пришли · Классическая многоуровневая архитектура · Правило зависимостей: ме","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Четыре школы структурирования кода вокруг одной идеи — правила зависимостей: от классических слоёв до портов и адаптеров…","t":"Многоуровневая, гексагональная, луковичная и чистая архитектуры","u":"/post/architecture-patterns/01-layered-hexagonal-clean/","w":"2026-07-16"},{"b":"Многоядерность: согласованность, барьеры, модели памяти Многоядерность — не архитектурное достижение, а вынужденное отступление. К середине 2000-х рост тактовой частоты упёрся в плотность тепла (Мощность и пределы), а ро…","c":"post","d":"hardware","g":["железо","многоядерность","модель памяти","конкурентность","микроархитектура"],"h":"Когерентность и согласованность — разные вещи · Почему порядок ломается: физические причины · Классический пример: два ядра видят разное · М","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Аппаратная сторона многоядерности: чем когерентность отличается от согласованности, почему буфер записи ломает интуитивн…","t":"Многоядерность: согласованность, барьеры, модели памяти","u":"/post/hardware/11-multicore/","w":"2026-07-16"},{"b":"Мобильная разработка: карта трека и чем мобильный контекст отличается Что такое мобильное приложение с точки зрения инженера Определение «программа для телефона» бесполезно: оно описывает форм-фактор, а не работу. Работа…","c":"post","d":"mobile","g":["мобильная разработка","ios","android","кроссплатформа","оффлайн"],"h":"Что такое мобильное приложение с точки зрения инженера · Откуда взялись сегодняшние правила · Стек: где живёт ваш код и кто им управляет · О","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Что делает мобильную разработку отдельной инженерной дисциплиной: энергия, сеть с провалами, оффлайн, разрешения, убивае…","t":"Мобильная разработка: карта трека и чем мобильный контекст отличается","u":"/post/mobile/00-overview/","w":"2026-07-16"},{"b":"Мобильное, кроссбраузерное тестирование и доступность Три темы в одной статье — не потому что они мелкие, а потому что у них общий корень. Все три отвечают на один вопрос: работает ли продукт не только там, где его писал…","c":"post","d":"testing","g":["тестирование","мобильное тестирование","кроссбраузерность","доступность","автоматизация"],"h":"Комбинаторный взрыв и почему его нельзя победить в лоб · Начните с данных, а не с интуиции · Кроссбраузерное тестирование · Хорошая новость:","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Как не утонуть в комбинаторном взрыве устройств и браузеров, что реально ломается на мобильных, зачем нужна доступность …","t":"Мобильное, кроссбраузерное тестирование и доступность","u":"/post/testing/11-mobile-and-compatibility/","w":"2026-07-16"},{"b":"Мобильный UI и навигация: паттерны, жесты, адаптация под экраны Интерфейс мобильного приложения выглядит как упрощённый веб: меньше экран, крупнее кнопки, меньше элементов. Это самое дорогое заблуждение трека. Мобильный …","c":"post","d":"mobile","g":["мобильная разработка","ui","навигация","жесты","адаптивность"],"h":"Чем мобильный UI отличается от веб-интерфейса · Физика ввода: палец вместо курсора · Единицы, плотность и типографика · UI = f(state): один ","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Как устроен мобильный интерфейс: физика пальца и зоны досягаемости, навигация как данные, диплинки и восстановление стек…","t":"Мобильный UI и навигация: паттерны, жесты, адаптация под экраны","u":"/post/mobile/05-ui-and-navigation/","w":"2026-07-16"},{"b":"Могут ли нейросети думать Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 34:20 — отсюда взято содержание этой главы. Это самый частый вопрос лекции и единственный, на который у автора есть готовый резкий ответ:…","c":"post","d":"ai-basics","g":["основы ии","llm","галлюцинации","философия ии","тест тьюринга"],"h":"Что модель делает механически · Почему модель уверенно выдумывает · Как убедиться в этом самому · Спор о понимании: обе стороны · Позиция «п","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Почему в конвейере из токенов, весов и матричных умножений негде поместиться мышлению, откуда берётся уверенная выдумка,…","t":"Могут ли нейросети думать","u":"/post/ai-basics/09-can-they-think/","w":"2026-07-16"},{"b":"Модели отказов: сбои узлов, сеть, разделение, византийские отказы Любой протокол распределённой системы — Raft, 2PC, gossip, ваш самописный failover на трёх bash-скриптах — доказуемо корректен только относительно предпол…","c":"post","d":"distributed-systems","g":["распределённые системы","отказоустойчивость","надёжность","сети","консенсус"],"h":"1. Модель системы — это три независимые оси · 2. Иерархия моделей отказов процессов · 2.1 Crash-stop (fail-stop) · 2.2 Crash-recovery · 2.3 ","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Что именно ломается в распределённой системе и как это выглядит в логах: иерархия отказов от crash-stop до византийских,…","t":"Модели отказов: сбои узлов, сеть, разделение, византийские отказы","u":"/post/distributed-systems/01-failure-models/","w":"2026-07-16"},{"b":"Модели поставки: коробка, SaaS, self-hosted, гибрид Команда из шести человек сделала анализатор логов. Два года продавали архив: клиент скачивал .tar.gz, ставил на свой сервер, платил один раз и жил. К концу второго года…","c":"post","d":"software-distribution","g":["поставка софта","модели поставки","saas","self-hosted","лицензирование"],"h":"Модель поставки — это ответ на три вопроса · Коробка: артефакт, который живёт без вас · SaaS: вы стали оператором чужого рабочего дня · Self","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Четыре способа довезти один и тот же код до пользователя — и четыре разных набора обязательств, которые вы подписываете …","t":"Модели поставки: коробка, SaaS, self-hosted, гибрид","u":"/post/software-distribution/01-delivery-models/","w":"2026-07-16"},{"b":"Модели процесса разработки: code-and-fix, водопад, V-модель, инкремент, итерации, спираль Модель процесса отвечает на один вопрос: в каком порядке и сколько раз мы проходим стадии разработки. Требования, проектирование, …","c":"post","d":"management","g":["менеджмент","процессы","методологии","жизненный цикл","качество"],"h":"1. Code-and-fix: модель, от которой все убегали · 2. Водопад: что на самом деле написал Ройс · 3. Прототипная модель и модель хаоса · 4. V-м","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Что на самом деле написал Ройс в 1970 году и как его картинка-антипример стала нормативом, чем V-модель отличается от во…","t":"Модели процесса разработки: code-and-fix, водопад, V-модель, инкремент, итерации, спираль","u":"/post/management/02-process-models/","w":"2026-07-16"},{"b":"Модели согласованности: от линеаризуемости до eventual Инженер приходит с багом: «пользователь нажал “Сохранить”, получил зелёную галочку, обновил страницу — старые данные». Дальше обычно начинается охота на «гонку», «кэ…","c":"post","d":"distributed-systems","g":["распределённые системы","согласованность","линеаризуемость","репликация","идемпотентность"],"h":"1. История, спецификация, модель · 2. Две разные оси: согласованность и изоляция · 3. Линеаризуемость · 4. Последовательная согласованность ","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Модель согласованности — контракт о том, какие истории чтений и записей система вправе показать клиенту: линеаризуемость…","t":"Модели согласованности: от линеаризуемости до eventual","u":"/post/distributed-systems/04-consistency-models/","w":"2026-07-16"},{"b":"Моделирование данных: нормализация, звезда, снежинка, Data Vault Пайплайн можно переписать за неделю. Модель данных переписать за неделю нельзя: на неё завязаны сотни дашбордов, десятки витрин, регуляторная отчётность и …","c":"post","d":"data-engineering","g":["данные","моделирование данных","dwh","sql"],"h":"Зачем вообще моделировать · Три уровня модели · Нормализация: как не хранить один факт дважды · Функциональные зависимости · Цена нормализац","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как превратить сырые таблицы в структуру, которая переживёт пять лет изменений бизнеса: нормальные формы, размерное моде…","t":"Моделирование данных: нормализация, звезда, снежинка, Data Vault","u":"/post/data-engineering/02-data-modeling/","w":"2026-07-16"},{"b":"Моделирование данных: сущности, связи, ERD, словарь данных Модель данных — самый долгоживущий артефакт проекта. Интерфейс перерисуют три раза, фреймворк поменяют, процесс переделают под новую оргструктуру, а таблица orde…","c":"post","d":"systems-analysis","g":["аналитика","модель данных","erd","требования","базы данных"],"h":"1. Три уровня модели: не путать разговоры · 2. Как найти сущности: от текста требований к кандидатам · 2.1. Приём подчёркивания существитель","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как аналитик находит сущности в тексте требований, выбивает мощности связей вопросами, строит ERD и словарь данных — и к…","t":"Моделирование данных: сущности, связи, ERD, словарь данных","u":"/post/systems-analysis/06-data-modeling/","w":"2026-07-16"},{"b":"Моделирование и его пределы: что модель не покажет Предыдущая глава научила рисовать диаграммы причинных связей. Диаграмма — дешёвый и честный инструмент: она фиксирует гипотезу о структуре и делает её обсуждаемой. Но у …","c":"post","d":"systems-thinking","g":["системное мышление","моделирование","симуляция","валидация","прогнозирование"],"h":"Четыре разных вопроса, которые называют одним словом «модель» · Лестница строгости: от разговора к эксперименту · Кейс: техдолг и скорость п","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Как довести системную схему до модели, которая делает проверяемые предсказания, какими тестами её ломать до того, как на…","t":"Моделирование и его пределы: что модель не покажет","u":"/post/systems-thinking/13-modeling-and-limits/","w":"2026-07-16"},{"b":"Моделирование процессов: BPMN, нотации, типичные ошибки в схемах Схема процесса — самый недооценённый инструмент аналитика. Её рисуют «для документа», согласуют за пятнадцать минут на созвоне и кладут в Confluence, где о…","c":"post","d":"systems-analysis","g":["аналитика","bpmn","моделирование процессов","нотации","требования"],"h":"1. Зачем моделировать процесс: три причины и одна ловушка · 1.1. Схема как разделяемая память · 1.2. Схема как детектор противоречий · 1.3. ","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как аналитик рисует процесс так, чтобы схема вскрывала противоречия, а не украшала документ: семантика токена в BPMN, ра…","t":"Моделирование процессов: BPMN, нотации, типичные ошибки в схемах","u":"/post/systems-analysis/05-bpmn/","w":"2026-07-16"},{"b":"Моделирование типами: недопустимые состояния невыразимы В предыдущих статьях инварианты защищались тремя способами: проверкой внутри агрегата, юнит-тестом и договорённостью на ревью. Все три работают, и все три имеют общ…","c":"post","d":"ddd","g":["ddd","моделирование","типы","python","typescript"],"h":"1. Проблема: сколько состояний разрешает ваш тип · 2. Парси, а не валидируй · 3. Идентификаторы: самая дешёвая победа · 4. Суммы типов для с","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Как переложить часть инвариантов домена с ревью и тестов на систему типов: parse don't validate, типизированные идентифи…","t":"Моделирование типами: недопустимые состояния невыразимы","u":"/post/ddd/11-modeling-with-types/","w":"2026-07-16"},{"b":"Моделирование угроз: STRIDE, поверхность атаки, разбор на примере Безопасность нельзя «добавить» в конце — это не библиотека и не middleware. Она получается или не получается из решений, принятых на этапе дизайна: где пр…","c":"post","d":"security","g":["безопасность","моделирование угроз","stride","риски"],"h":"Четыре вопроса, из которых состоит вся дисциплина · Словарь, без которого разговор превращается в спор · Поверхность атаки: считаем не серви","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как систематически находить дыры в собственном дизайне до того, как их найдут другие: DFD и границы доверия, STRIDE, оце…","t":"Моделирование угроз: STRIDE, поверхность атаки, разбор на примере","u":"/post/security/01-threat-modeling/","w":"2026-07-16"},{"b":"Модель данных Python: объекты, ссылки, изменяемость, dunder-методы Есть один документ, который отличает человека, «пишущего на Python», от человека, «понимающего Python»: глава Data Model в Language Reference. Она объясн…","c":"post","d":"python","g":["python","модель данных","cpython","ооп","память"],"h":"Объект: идентичность, тип, значение · Сколько это стоит в памяти · Имя — это ярлык, а не ячейка · Аргументы функций: call by sharing · Измен","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Что такое объект в CPython, чем имя отличается от переменной, как работают изменяемость, копирование, подсчёт ссылок и с…","t":"Модель данных Python: объекты, ссылки, изменяемость, dunder-методы","u":"/post/python/02-data-model/","w":"2026-07-16"},{"b":"Модель исполнения: контекст, инструменты, цикл наблюдение-действие Когда инженер впервые видит, как агент сам читает файлы, запускает тесты и правит код, возникает ощущение собеседника, который «работает в проекте». Это …","c":"post","d":"ai-agents","g":["ai-агенты","агенты","контекст","инструменты","tool use"],"h":"Три вещи, которые называют словом «агент» · Один ход цикла целиком · Анатомия того, что уезжает в модель · Цикл в псевдокоде и в коде · Инст","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Из чего на самом деле состоит работающий агент: модель без памяти, харнесс с состоянием и среда как единственный источни…","t":"Модель исполнения: контекст, инструменты, цикл наблюдение-действие","u":"/post/ai-agents/02-execution-model/","w":"2026-07-16"},{"b":"Модель как источник: профиль ошибок и способы проверки Две крайности, одинаково мешающие работать. Первая: «модель всё знает, зачем искать». Приводит к коду, который использует несуществующие методы, и к решениям, обосно…","c":"post","d":"research-skills","g":["поиск информации","ии","источники","проверка"],"h":"Откуда берётся профиль ошибок · Где модель сильнее поиска · Где модель слабее поиска · Как сделать ответ проверяемым · Режим с веб-поиском: ","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Генеративная модель — не замена поиску и не оракул, а источник с собственным профилем ошибок: уверенный тон при выдуманн…","t":"Модель как источник: профиль ошибок и способы проверки","u":"/post/research-skills/08-ai-as-a-source/","w":"2026-07-16"},{"b":"Модули и файлы деклараций: ESM, CommonJS и типы чужого кода Есть класс ошибок, на которых спотыкается каждый TypeScript-разработчик, и они не про систему типов вовсе: Cannot find module 'lodash' or its corresponding type…","c":"post","d":"typescript","g":["typescript","модули","esm","инструменты","типизация"],"h":"Почему всё так сложно: две модульные системы · Как Node решает, чем считать файл · Как TypeScript резолвит импорты · Условные exports: как п","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Как Node и tsc резолвят импорты, что такое exports-мапа и dual package hazard, откуда берутся .d.ts и как типизировать б…","t":"Модули и файлы деклараций: ESM, CommonJS и типы чужого кода","u":"/post/typescript/09-modules-and-declarations/","w":"2026-07-16"},{"b":"Модули, пакеты и распространение: импорты, структура проекта, публикация В большинстве компилируемых языков импорт — это указание компоновщику. В Go import разрешается на этапе компиляции, в Java import вообще не делает …","c":"post","d":"python","g":["python","модули","пакеты","packaging","импорты"],"h":"Модуль — это объект, а не файл · Что на самом деле делает import · Байткод-кеш · Пакеты, __init__.py и namespace-пакеты · Что писать в __ini","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Импорт как операция времени выполнения: sys.modules, finders и loaders, циклические зависимости, src layout, точки входа…","t":"Модули, пакеты и распространение: импорты, структура проекта, публикация","u":"/post/python/09-modules-and-packaging/","w":"2026-07-16"},{"b":"Модульное и компонентное программирование: единица композиции крупнее функции Любая парадигма трека до этого отвечала на вопрос «как выразить вычисление»: шагами, объектами, функциями, правилами, событиями, состояниями, …","c":"post","d":"paradigms","g":["парадигмы","модульность","интерфейсы","зависимости","проектирование"],"h":"Критерий Парнаса: резать по решениям, а не по шагам · Что модульная парадигма отнимает и что даёт · Немного истории: одна идея, четыре вопло","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Парадигма, где единица сборки программы — не функция и не класс, а модуль со скрытым решением: критерий декомпозиции Пар…","t":"Модульное и компонентное программирование: единица композиции крупнее функции","u":"/post/paradigms/12-modular-and-component/","w":"2026-07-16"},{"b":"Модульные тесты: изоляция, тестовые дублёры, что такое хороший юнит-тест Юнит-тесты — единственный вид тестов, который пишут почти все и который почти все пишут плохо. Плохо не потому, что не умеют вызывать assert, а пот…","c":"post","d":"testing","g":["тестирование","юнит-тесты","моки","автоматизация","рефакторинг"],"h":"1. Что такое «юнит» и почему спор о его размере тупиковый · 2. Экономика: зачем вообще этот уровень · 3. Четыре свойства хорошего юнит-теста","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Что считать юнитом, почему изоляция бывает двух несовместимых видов, чем stub отличается от mock и когда дублёр вредит, …","t":"Модульные тесты: изоляция, тестовые дублёры, что такое хороший юнит-тест","u":"/post/testing/05-unit-testing/","w":"2026-07-16"},{"b":"Монады без страха: что это на самом деле и зачем Про монады написано столько плохих объяснений, что появился фольклор: «монада — это буррито», «монада — это моноид в категории эндофункторов, в чём проблема?». Обе фразы б…","c":"post","d":"functional-programming","g":["функциональное программирование","монады","композиция","обработка ошибок"],"h":"Три лестницы, которые вы уже писали · Лестница первая: значения, которых может не быть · Лестница вторая: ошибки, у которых есть причина · Л","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Монада — не философия, а ответ на конкретную боль: как соединять функции, которые возвращают не значение, а значение в к…","t":"Монады без страха: что это на самом деле и зачем","u":"/post/functional-programming/08-monads/","w":"2026-07-16"},{"b":"Мониторинг: метрики, логи, трейсы и что из этого когда В главе про SLI и SLO мы выбирали показатель, который что-то значит для пользователя. В главе про бюджет ошибок считали, сколько этого показателя можно потратить. Об…","c":"post","d":"sre","g":["надёжность","мониторинг","наблюдаемость","метрики","телеметрия"],"h":"Мониторинг отвечает на два разных вопроса · Четыре сигнала и что каждый умеет · Правило, которое реально решает, что куда класть · Метрики: ","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Чем метрики отличаются от логов и трейсов не по определению, а по стоимости и по классу вопросов, на которые отвечают: а…","t":"Мониторинг: метрики, логи, трейсы и что из этого когда","u":"/post/sre/04-monitoring/","w":"2026-07-16"},{"b":"Монолит и модульный монолит: недооценённый выбор Слово «монолит» за последнее десятилетие превратилось в диагноз. На собеседованиях его произносят с извиняющейся интонацией: «ну, у нас пока монолит, но мы, конечно, пилим…","c":"post","d":"architecture-patterns","g":["архитектура","монолит","модульность","границы контекста","рефакторинг"],"h":"1. Три разных вещи, которые называют одним словом · 2. Что на самом деле болит в «монолите» · Цена распределённости, которую редко считают ·","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Почему монолит — не архаизм, а разумный старт по умолчанию, чем модульный монолит отличается от big ball of mud, как зас…","t":"Монолит и модульный монолит: недооценённый выбор","u":"/post/architecture-patterns/02-monolith-and-modular-monolith/","w":"2026-07-16"},{"b":"Мощность и пределы: почему частота больше не растёт С середины 1970-х до середины 2000-х тактовая частота массовых процессоров выросла примерно на три порядка. Затем рост практически остановился: частоты ядер общего назн…","c":"post","d":"hardware","g":["железо","энергоэффективность","микроархитектура","физика","производительность"],"h":"Откуда берётся мощность · Масштабирование Деннарда и почему оно закончилось · Кубическая цена частоты · Гонка к простою · Тёмный кремний · К","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Физика бюджета ватт: динамическая и статическая мощность, конец масштабирования Деннарда, кубическая цена частоты, тёмны…","t":"Мощность и пределы: почему частота больше не растёт","u":"/post/hardware/13-power-and-limits/","w":"2026-07-16"},{"b":"Мультиагентные системы: роли, оркестрация, критики, верификация В статье про агентов и ReAct мы собрали один цикл «рассуждение → действие → наблюдение». Эта статья — про то, что происходит, когда одного такого цикла не х…","c":"post","d":"ai-engineering","g":["ии-инженерия","агенты","мультиагентные системы","llm"],"h":"Интуиция: три причины, по которым один агент ломается · Что говорят замеры · Топологии оркестрации · 1. Orchestrator-workers · 2. Pipeline (","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Когда несколько агентов действительно лучше одного, а когда это дорогой способ размножить ошибки: топологии оркестрации,…","t":"Мультиагентные системы: роли, оркестрация, критики, верификация","u":"/post/ai-engineering/08-multi-agent/","w":"2026-07-16"},{"b":"Мультимедиа: субтитры, транскрипты, аудиодескрипция и доступный плеер В прошлой статье мы разбирали статичный нетекстовый контент: картинку можно описать одной строкой, и она останется на месте. Видео так не умеет. У мед…","c":"post","d":"accessibility","g":["доступность","a11y","wcag","видео","субтитры"],"h":"Три канала и кто что теряет · Карта критериев: что именно требуется · Субтитры: терминология, форматы, качество · Транскрипт: почему он не з","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Что требуют критерии 1.2.1–1.2.9, чем субтитры отличаются от транскрипта и когда нужна аудиодескрипция, как устроен WebV…","t":"Мультимедиа: субтитры, транскрипты, аудиодескрипция и доступный плеер","u":"/post/accessibility/11-media/","w":"2026-07-16"},{"b":"Мультимодальные модели: речь, зрение и язык в одной сети Весь трек до этого места двигался по модальностям раздельно: свёрточные сети работали с картинками, рекуррентные и трансформеры — с текстом, генеративные модели по…","c":"post","d":"neural-networks","g":["нейросети","мультимодальность","распознавание речи","компьютерное зрение","llm"],"h":"1. Общий принцип: всё превращается в последовательность векторов · 2. Таксономия: три разные задачи под одним словом · 3. Как соединяют мода","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Как одна сеть работает со звуком, картинкой и текстом сразу: токенизация любой модальности, стратегии слияния и выравнив…","t":"Мультимодальные модели: речь, зрение и язык в одной сети","u":"/post/neural-networks/13-multimodal-models/","w":"2026-07-16"},{"b":"Наблюдаемость и дежурства: метрики, логи, трейсы, алерты, SLO и постмортемы Всё, что мы строили в предыдущих статьях трека, имеет одно неприятное свойство: оно работает до тех пор, пока не перестаёт. Пайплайн из https://…","c":"post","d":"devops","g":["devops","наблюдаемость","мониторинг","prometheus","sre"],"h":"Мониторинг против наблюдаемости: чем отличается вопрос · Сигналы: что это физически и сколько стоит · Кардинальность: главный источник авари","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как устроены три сигнала телеметрии, сколько на самом деле стоит их хранить, как считать SLO и настраивать алерты по ско…","t":"Наблюдаемость и дежурства: метрики, логи, трейсы, алерты, SLO и постмортемы","u":"/post/devops/16-observability-and-oncall/","w":"2026-07-16"},{"b":"Наблюдаемость и производительность ОС: /proc, strace, perf, eBPF, ftrace Есть характерный разговор, который повторяется в каждой команде примерно раз в квартал. «Сервис тормозит». — «Где?» — «Не знаю, CPU 40%, память в н…","c":"post","d":"operating-systems","g":["операционные системы","производительность","наблюдаемость","linux","eBPF"],"h":"Сначала методология, потом инструменты · Уровень 0: счётчики. /proc, /sys и почему они почти бесплатны · Общесистемные счётчики · Счётчики п","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как узнать, что на самом деле делает система: счётчики в /proc и PSI, методологии USE и off-CPU, трассировка вызовов чер…","t":"Наблюдаемость и производительность ОС: /proc, strace, perf, eBPF, ftrace","u":"/post/operating-systems/14-observability-and-performance/","w":"2026-07-16"},{"b":"Наблюдаемость как платформа: единые метрики, логи и трейсы 02:41. Падает оформление заказа. Дежурный по checkout открывает Grafana — там метрики его сервиса, потому что его команда полтора года назад подняла себе Prometh…","c":"post","d":"platform-engineering","g":["платформа","наблюдаемость","observability","opentelemetry","developer experience"],"h":"Почему наблюдаемость — самый платформенный из платформенных сервисов · Кто чем владеет: контракт двух сторон · Инструментирование как контра","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Как сделать наблюдаемость платформенным сервисом, которым действительно пользуются: контракт инструментирования, метрики…","t":"Наблюдаемость как платформа: единые метрики, логи и трейсы","u":"/post/platform-engineering/08-observability-platform/","w":"2026-07-16"},{"b":"Наблюдаемость распределённых систем: трассировка, корреляция, поиск причин В однопроцессной программе есть волшебный артефакт — стек вызовов. Он бесплатно даёт полную причинную историю: кто кого вызвал, в каком порядке, …","c":"post","d":"distributed-systems","g":["распределённые системы","наблюдаемость","трассировка","opentelemetry","инциденты"],"h":"Почему «просто посмотреть, что происходит» невозможно · Три плоскости телеметрии и швы между ними · Трейс — это граф причинности, а не таймл","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Почему в распределённой системе нет стек-трейса и что играет его роль: трейс как граф причинности, распространение конте…","t":"Наблюдаемость распределённых систем: трассировка, корреляция, поиск причин","u":"/post/distributed-systems/12-observability/","w":"2026-07-16"},{"b":"Навигация по коду: поиск, теги, символы и чтение незнакомого проекта Весь трек до этого места был про инструменты: модальность, конфигурации, расширения, сравнение. Но настоящая работа в редакторе состоит не из набора те…","c":"post","d":"editors","g":["редакторы","навигация по коду","поиск","lsp","инструменты разработчика"],"h":"Почему это отдельная тема, а не строчка в настройках · Три слоя поиска · Слой 1: текстовый поиск, который стоит настроить один раз · Почему ","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Три слоя навигации — текст, теги, семантика: как устроен ripgrep и почему он быстрый, зачем в 2026 году всё ещё нужны ct…","t":"Навигация по коду: поиск, теги, символы и чтение незнакомого проекта","u":"/post/editors/11-code-navigation/","w":"2026-07-16"},{"b":"Нагрузочное тестирование: k6, JMeter, профили нагрузки, чтение результатов Функциональные тесты отвечают на вопрос «работает ли». Нагрузочные — на вопрос «работает ли, когда пользователей много, и что именно сломается пе…","c":"post","d":"testing","g":["тестирование","нагрузочное тестирование","производительность","k6","jmeter"],"h":"Зачем это нужно и когда это дешевле не делать · Словарь, без которого разговор рассыпается · Виды нагрузочных тестов и их профили · Открытая","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Как поставить вопрос о производительности так, чтобы на него можно было ответить: профили нагрузки, открытая и закрытая …","t":"Нагрузочное тестирование: k6, JMeter, профили нагрузки, чтение результатов","u":"/post/testing/09-performance-testing/","w":"2026-07-16"},{"b":"Нагрузочное тестирование: профили нагрузки, k6, чтение результатов Всё, чем мы занимались в предыдущих статьях трека, — от профилирования CPU до сетевых задержек — было исследованием системы изнутри. Нагрузочное тестиров…","c":"post","d":"performance","g":["производительность","нагрузочное тестирование","k6","измерения"],"h":"Тест начинается с вопроса, а не с инструмента · Главное решение: открытая модель против закрытой · Закон Литтла как рабочий инструмент · k6:","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Как превратить «а выдержим ли мы» в измеримый эксперимент: выбор профиля нагрузки, открытая и закрытая модель, закон Лит…","t":"Нагрузочное тестирование: профили нагрузки, k6, чтение результатов","u":"/post/performance/11-load-testing/","w":"2026-07-16"},{"b":"Надёжность, доступность и отказоустойчивость: что чем меряют Разговор, который случается в каждой второй команде. «Мы надёжные, у нас всё в двух зонах». — «А сколько это в цифрах?» — «Ну, четыре девятки где-то». — «Это с…","c":"post","d":"sre","g":["надёжность","sre","доступность","slo","метрики"],"h":"Три слова, которые обычно путают · Надёжность · Доступность · Отказоустойчивость · Робастность и эластичность · Откуда берётся отказ: дефект","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Три слова, которые в разговорах об эксплуатации подменяют друг друга, и честная арифметика за ними: сколько минут даёт к…","t":"Надёжность, доступность и отказоустойчивость: что чем меряют","u":"/post/sre/01-reliability-basics/","w":"2026-07-16"},{"b":"Найм: что проверяет собеседование и чего оно не видит Когда вы были инженером, найм выглядел так: приходило приглашение «посидеть на секции», вы час говорили с незнакомым человеком, писали пару абзацев в форму и возвраща…","c":"post","d":"engineering-leadership","g":["лидерство","найм","собеседования","команда","решения"],"h":"Сначала честно про доказательность · Что меняется, когда вакансия ваша · Найм — не первый инструмент, а самый медленный · Профиль: вы покупа","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Найм глазами руководителя: зачем нужна вакансия, как из карты команды получается профиль, во что обходится воронка в час…","t":"Найм: что проверяет собеседование и чего оно не видит","u":"/post/engineering-leadership/04-hiring/","w":"2026-07-16"},{"b":"Настройка самого поиска: параметры, гиперэвристики и выбор алгоритма Вопрос, который задают чаще любого другого после первой же прочитанной статьи про генетические алгоритмы: какие ставить параметры? Популяция 50 или 500…","c":"post","d":"sbse","g":["sbse","метаэвристики","оптимизация","гиперэвристики","настройка параметров"],"h":"Сколько на самом деле даёт настройка · Две принципиально разные стратегии · Настройка как задача поиска на мета-уровне · Гонки: F-race и ira","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Какие ставить размер популяции и вероятность мутации, стоит ли вообще их настраивать, как устроены гонки конфигураций (F…","t":"Настройка самого поиска: параметры, гиперэвристики и выбор алгоритма","u":"/post/sbse/13-tuning-the-search/","w":"2026-07-16"},{"b":"Нативная Android-разработка: Kotlin, Compose, жизненный цикл, экосистема В предыдущей статье мы разобрали iOS: один вендор владеет всем стеком, матрица устройств узкая, парк обновляется быстро. Android устроен наоборот —…","c":"post","d":"mobile","g":["мобильная разработка","android","kotlin","compose","жизненный цикл"],"h":"Что именно вы выбираете, выбирая нативный Android · Kotlin: язык, а не «Java без точек с запятой» · Корутины и Flow: конкурентность, привяза","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Как устроена современная нативная разработка под Android: Kotlin и корутины, Jetpack Compose и три фазы кадра, жизненный…","t":"Нативная Android-разработка: Kotlin, Compose, жизненный цикл, экосистема","u":"/post/mobile/03-native-android/","w":"2026-07-16"},{"b":"Нативная iOS-разработка: Swift, SwiftUI, жизненный цикл, экосистема Зачем вообще отдельная статья про натив, если есть Flutter Начнём с неудобного. Нативная iOS-разработка — не «правильный» способ делать мобильные прилож…","c":"post","d":"mobile","g":["мобильная разработка","ios","swift","swiftui","нативная разработка"],"h":"Зачем вообще отдельная статья про натив, если есть Flutter · Swift: язык, спроектированный под ограниченное устройство · Значения по умолчан","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Что вы реально покупаете, выбирая нативную iOS: семантика значений и ARC вместо GC, структурированная конкурентность, де…","t":"Нативная iOS-разработка: Swift, SwiftUI, жизненный цикл, экосистема","u":"/post/mobile/02-native-ios/","w":"2026-07-16"},{"b":"Неизменяемость: как работать с данными, ничего не меняя Баг, с которого всё начинается Прежде чем определять неизменяемость, посмотрим на боль, которую она лечит. Вот код на Python, который писал каждый: class Order: def…","c":"post","d":"functional-programming","g":["функциональное программирование","неизменяемость","структуры данных","конкурентность"],"h":"Баг, с которого всё начинается · Что такое неизменяемость на самом деле · Что мы получаем взамен · Как обновлять, ничего не меняя · Elixir ·","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Почему запрет на изменение данных убирает целый класс багов, как обновлять неизменяемые структуры без квадратичного копи…","t":"Неизменяемость: как работать с данными, ничего не меняя","u":"/post/functional-programming/02-immutability/","w":"2026-07-16"},{"b":"Нейронные сети: карта трека, интуиция и место среди ML Эта статья — вводная для всего трека. Её задача двойная: дать честную интуицию, что такое нейронная сеть на самом деле (не «модель мозга», а конкретный математически…","c":"post","d":"neural-networks","g":["нейросети","глубокое обучение","машинное обучение","обзор"],"h":"1. Проблема, из которой всё выросло · 2. Что такое нейронная сеть строго · 3. Три кита: параметризация, потеря, градиент · 4. Минимальная се","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Что такое нейронная сеть с первых принципов, чем она отличается от классического ML, почему работает глубина — и как уст…","t":"Нейронные сети: карта трека, интуиция и место среди ML","u":"/post/neural-networks/00-overview/","w":"2026-07-16"},{"b":"Нейросети: как обучают модель Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 19:32 — отсюда взято содержание этой главы. В прошлой главе правило писал человек: программист смотрел на данные, придумывал признак …","c":"post","d":"ai-basics","g":["основы ии","нейросети","обучение с учителем","веса","перцептрон"],"h":"Почему нейросети выделяют в отдельный класс · Нейрон и синапс — это разные вещи · Что такое «веса» физически · Арифметика размера · Режимы о","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Что физически происходит при обучении: веса как массив чисел, подбор параметров вместо написания правил, режимы с учител…","t":"Нейросети: как обучают модель","u":"/post/ai-basics/04-training/","w":"2026-07-16"},{"b":"Нелинейность и пороги: когда «чуть больше» меняет режим Трафик рос по 2 % в неделю четыре месяца. Латентность держалась ровно, дежурства были скучными. На пятнадцатой неделе трафик вырос ещё на 2 % — и сервис лёг. Нагруз…","c":"post","d":"systems-thinking","g":["системное мышление","нелинейность","динамика систем","надёжность","производительность"],"h":"Что такое нелинейность и что ею не является · Четыре формы нелинейности, которые надо различать · Колено: нелинейность, которую можно посчит","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Почему рост нагрузки на 2 % кладёт сервис, а откат на исходный уровень его не поднимает: формы нелинейности, гистерезис,…","t":"Нелинейность и пороги: когда «чуть больше» меняет режим","u":"/post/systems-thinking/06-nonlinearity/","w":"2026-07-16"},{"b":"Неопределённое поведение и безопасность памяти: как ломается и как не ломать В большинстве языков вопрос «а что будет, если выйти за границу массива» имеет ответ: исключение, паника, IndexError. В C ответа нет — и это не…","c":"post","d":"systems-programming","g":["системное программирование","c","безопасность памяти","undefined behavior","отладка"],"h":"Абстрактная машина: откуда вообще берётся UB · Почему UB не убрали из языка · Механика: как предположение съедает ваш код · 1. Проверка посл","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Что стандарт C называет неопределённым поведением и почему компилятор вправе им пользоваться, каталог реального UB с раз…","t":"Неопределённое поведение и безопасность памяти: как ломается и как не ломать","u":"/post/systems-programming/11-undefined-behavior/","w":"2026-07-16"},{"b":"Неопределённость: доверительные интервалы и размер выборки Есть один вопрос, который отделяет аналитика от человека, умеющего писать GROUP BY: насколько ваша цифра могла бы оказаться другой, если бы вы собрали данные ещё…","c":"post","d":"data-analytics","g":["аналитика данных","статистика","доверительные интервалы","размер выборки","бутстрап"],"h":"Два источника расхождения, и интервал ловит только один · «У нас же все данные» — почему интервал всё равно нужен · Стандартная ошибка: одна","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Как честно сказать, насколько точна ваша цифра: стандартная ошибка, доверительные интервалы для долей и средних, бутстра…","t":"Неопределённость: доверительные интервалы и размер выборки","u":"/post/data-analytics/07-uncertainty/","w":"2026-07-16"},{"b":"Непрерывная интеграция: принципы, триггеры, кэш, матрицы сборок Зачем это вообще нужно: боль, из которой выросла идея Представьте команду из восьми человек, которая пишет один продукт. Каждый работает в своей ветке две-т…","c":"post","d":"devops","g":["devops","ci","github actions","кэширование","автоматизация сборки"],"h":"Зачем это вообще нужно: боль, из которой выросла идея · Пять принципов, без которых пайплайн бесполезен · Метрики, по которым видно, что CI ","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Что такое CI на уровне первых принципов, как устроены триггеры и merge queue, как правильно кэшировать зависимости и сло…","t":"Непрерывная интеграция: принципы, триггеры, кэш, матрицы сборок","u":"/post/devops/01-ci-fundamentals/","w":"2026-07-16"},{"b":"Нефункциональные требования: производительность, надёжность, безопасность, как их измерять Функциональные требования ломают спринт. Нефункциональные ломают архитектуру. Разница в цене ошибки. Если вы забыли поле в форме,…","c":"post","d":"systems-analysis","g":["аналитика","требования","нефункциональные требования","производительность","надёжность"],"h":"Почему слово «нефункциональные» — плохое · Анатомия проверяемого НФТ: восемь слотов · Производительность: три разные величины, которые посто","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как превратить «быстро, надёжно и безопасно» в числа с условиями, точкой замера и владельцем: бюджеты латентности, SLI/S…","t":"Нефункциональные требования: производительность, надёжность, безопасность, как их измерять","u":"/post/systems-analysis/08-nonfunctional/","w":"2026-07-16"},{"b":"Нотация: переменная, абстракция, аппликация и как читать выражения Первое столкновение с записью вроде λf.λx.f (f x) обычно заканчивается одинаково: глаз цепляется за греческую букву, мозг говорит «это математика, я не в…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","синтаксис","функциональное программирование","каррирование"],"h":"Зачем вообще отдельная нотация · Три кирпича · Переменная · Абстракция — определение функции · Аппликация — вызов функции · Два соглашения о","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Весь синтаксис лямбда-исчисления — три конструкции и два соглашения о скобках; учимся читать выражения вслух и переводит…","t":"Нотация: переменная, абстракция, аппликация и как читать выражения","u":"/post/lambda-calculus/01-syntax/","w":"2026-07-16"},{"b":"ООП в Java: классы, интерфейсы, наследование, records и sealed-типы В Java нельзя написать программу вне класса — но это не значит, что вы автоматически пишете объектно-ориентированный код. Большая часть боли в старых Ja…","c":"post","d":"java","g":["java","ооп","records","sealed","pattern matching"],"h":"Что такое объект на самом деле · Класс: инкапсуляция как сужение множества состояний · Порядок инициализации и главная ловушка конструкторов","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Объектная модель Java от заголовка объекта в куче до алгебраических типов данных: инкапсуляция, диспетчеризация, контрак…","t":"ООП в Java: классы, интерфейсы, наследование, records и sealed-типы","u":"/post/java/03-oop/","w":"2026-07-16"},{"b":"ООП в Python: классы, наследование, MRO, дескрипторы, dataclasses Если вы пришли из Java или C#, у вас есть модель «класс — это чертёж, компилятор раскладывает поля по смещениям, интерфейс — контракт, проверяемый на этап…","c":"post","d":"python","g":["python","ооп","dataclasses","наследование","дескрипторы"],"h":"Класс — это выполняемый код и объект в памяти · Где живут данные: __dict__ экземпляра и __dict__ класса · Грабли №1: изменяемый атрибут клас","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как устроены классы в Python: поиск атрибутов, MRO и кооперативный super(), протокол дескрипторов, property и slots, dat…","t":"ООП в Python: классы, наследование, MRO, дескрипторы, dataclasses","u":"/post/python/05-oop/","w":"2026-07-16"},{"b":"Обновления и версии: каналы, откат, поддержка старых В пятницу вечером в разборе архивов вашего агента находят уязвимость. Исправление — одиннадцать строк и полчаса. Дальше начинается настоящая работа: агент стоит у 340 …","c":"post","d":"software-distribution","g":["поставка софта","обновления","версионирование","релизы","совместимость"],"h":"Обновление как обязательство: три колонки · Три разные вещи, которые называют «версией» · SemVer и CalVer: что вы обещаете номером · Окно со","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Обновление — обязательство, подписанное в момент второй продажи: три разные сущности, которые называют «версией», окно с…","t":"Обновления и версии: каналы, откат, поддержка старых","u":"/post/software-distribution/11-updates-and-versions/","w":"2026-07-16"},{"b":"Обобщённое программирование и метапрограммирование С чего всё начинается: одна и та же функция, написанная шесть раз Откройте почти любую взрослую кодовую базу и поищите функции с именами вида findUserById, findOrderById…","c":"post","d":"paradigms","g":["парадигмы","обобщённое программирование","метапрограммирование","макросы","типы"],"h":"С чего всё начинается: одна и та же функция, написанная шесть раз · Карта территории · История: обобщённость придумали ради алгоритмов, а не","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Как писать один алгоритм для многих типов и как заставить программу писать программу: параметрический полиморфизм, огран…","t":"Обобщённое программирование и метапрограммирование","u":"/post/paradigms/07-generic-and-metaprogramming/","w":"2026-07-16"},{"b":"Обработка ошибок в ФП: Option, Either, Result, накопление ошибок Любая программа, которая делает что-то полезное, большую часть кода тратит не на счастливый путь. Разбор ввода, поход в базу, вызов чужого HTTP, проверка б…","c":"post","d":"functional-programming","g":["функциональное программирование","обработка ошибок","монады","elixir","typescript"],"h":"Сначала боль: три способа сообщить об ошибке, и все три текут · Исключения: невидимая вторая сигнатура · null: миллиардная ошибка · Коды воз","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Почему исключения и null плохо масштабируются, как Option, Either и Result делают отказ частью типа, чем аппликативное н…","t":"Обработка ошибок в ФП: Option, Either, Result, накопление ошибок","u":"/post/functional-programming/10-error-handling/","w":"2026-07-16"},{"b":"Обработка ошибок, контракты и отказоустойчивое мышление Практически весь предыдущий трек говорил о счастливом пути: как назвать функцию, как разделить модули, как не продублировать знание. Но в проде код проводит в счаст…","c":"post","d":"principles","g":["принципы","обработка ошибок","отказоустойчивость","контракты","распределённые системы"],"h":"1. Три вида «плохих исходов», которые нельзя смешивать · 2. Контракты: предусловия, постусловия, инварианты · Assert против валидации: разны","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Как отличить баг от ожидаемого исхода, зачем нужны предусловия и инварианты, чем исключения отличаются от result-типов, …","t":"Обработка ошибок, контракты и отказоустойчивое мышление","u":"/post/principles/08-errors-and-resilience/","w":"2026-07-16"},{"b":"Обработка ошибок: Result, Option, оператор ?, свои типы ошибок В предыдущих главах мы собрали арсенал: перечисления с данными, обобщения, трейты, владение. Эта глава показывает задачу, ради которой всё это собиралось вме…","c":"post","d":"rust","g":["rust","ошибки","надёжность","типы","api"],"h":"Задача: три ответа индустрии и почему Rust выбрал значения · Две категории: восстановимое и невосстановимое · Option\u003cT\u003e: отсутствие — не оши","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Ошибка как значение и как часть контракта: чем Option отличается от Result, что на самом деле делает оператор ?, как спр…","t":"Обработка ошибок: Result, Option, оператор ?, свои типы ошибок","u":"/post/rust/06-error-handling/","w":"2026-07-16"},{"b":"Обратная связь: без неё практика закрепляет ошибки В предыдущей главе мы разобрали, что у Эрикссона называется осознанной практикой и почему популярный пересказ про «10 000 часов» к его работам относится плохо. Один из к…","c":"post","d":"learning","g":["обучение","обратная связь","практика","когнитивная психология"],"h":"Что такое обратная связь и чем она не является · Практика без обратной связи: что об этом известно · Условия, при которых опыт превращается ","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Почему повторение без коррекции не улучшает навык, что показал метаанализ Kluger и DeNisi про случаи ухудшения, чем добр…","t":"Обратная связь: без неё практика закрепляет ошибки","u":"/post/learning/09-feedback/","w":"2026-07-16"},{"b":"Обратная связь: о работе, а не о человеке Обратная связь — самый дешёвый управленческий инструмент из доступных тимлиду и самый часто ломающийся. Дешёвый, потому что не требует бюджета, согласований и чужих полномочий: в…","c":"post","d":"engineering-leadership","g":["лидерство","обратная связь","тимлид","коммуникация","управление людьми"],"h":"Что обратная связь делает и чего не делает · Честно про доказательную базу · Ступени вывода: где заканчивается факт · Анатомия одного сообще","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Как руководителю давать обратную связь так, чтобы она меняла работу: наблюдаемые факты вместо ярлыков, короткая задержка…","t":"Обратная связь: о работе, а не о человеке","u":"/post/engineering-leadership/03-feedback/","w":"2026-07-16"},{"b":"Обучение с подкреплением Все предыдущие статьи трека решали одну и ту же задачу: есть выборка пар «объект — правильный ответ», нужно найти функцию, которая по объекту предсказывает ответ. Даже кластеризация и снижение ра…","c":"post","d":"machine-learning","g":["машинное обучение","обучение с подкреплением","марковские процессы","policy gradient","многорукие бандиты"],"h":"Формализм: марковский процесс принятия решений · Зачем нужен дисконт γ · Игрушечный MDP · Ценность и уравнения Беллмана · Если модель извест","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Как обучать агента, который принимает последовательность решений и получает только отложенную награду: марковские процес…","t":"Обучение с подкреплением","u":"/post/machine-learning/14-reinforcement-learning/","w":"2026-07-16"},{"b":"Обучение сетей: оптимизаторы, инициализация, нормализация, регуляризация В прошлой статье мы разобрались, как сеть считает предсказание и как обратное распространение выдаёт градиент функции потерь по каждому весу. Это о…","c":"post","d":"neural-networks","g":["нейросети","глубокое обучение","оптимизация","регуляризация"],"h":"1. Что мы вообще оптимизируем · 1.1. Функция невыпуклая — и это почти не мешает · 1.2. Ландшафт плохо обусловлен · 1.3. Градиент, который мы","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Полный разбор того, что происходит между «есть архитектура» и «есть работающая модель»: ландшафт потерь, SGD и Adam, lea…","t":"Обучение сетей: оптимизаторы, инициализация, нормализация, регуляризация","u":"/post/neural-networks/02-training-and-optimization/","w":"2026-07-16"},{"b":"Обходы графов: BFS, DFS, топологическая сортировка, компоненты Граф — это не «структура данных для олимпиад». Граф — это то, во что превращается почти любая задача, как только в ней появляются сущности и отношения между …","c":"post","d":"algorithms","g":["алгоритмы","графы","обход в ширину","обход в глубину","топологическая сортировка"],"h":"Словарь: что именно мы обходим · Как хранить граф: три представления и одно правильное · Матрица смежности · Список смежности · CSR: список ","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Один каркас обхода, из которого вырастают BFS, DFS, топологическая сортировка, компоненты связности, SCC и мосты: интуиц…","t":"Обходы графов: BFS, DFS, топологическая сортировка, компоненты","u":"/post/algorithms/08-graph-traversal/","w":"2026-07-16"},{"b":"Объектно-ориентированное программирование: инкапсуляция, полиморфизм, наследование В предыдущей статье мы разбирали процедурный код: данные отдельно, процедуры отдельно, программа — это последовательность шагов над общей…","c":"post","d":"paradigms","g":["парадигмы","ооп","полиморфизм","проектирование"],"h":"Зачем это вообще: две независимые идеи, которые слиплись · Инкапсуляция — это про инварианты, а не про private · Полиморфизм — это единствен","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Как из идеи «данные и поведение живут вместе» вырастают инкапсуляция, полиморфизм и наследование — от механики vtable до…","t":"Объектно-ориентированное программирование: инкапсуляция, полиморфизм, наследование","u":"/post/paradigms/02-oop/","w":"2026-07-16"},{"b":"Объектные хранилища: S3, MinIO, слои хранения и lakehouse Есть смешной способ понять, насколько S3 изменил индустрию: посмотрите, что лежит под современными базами данных. Под Snowflake — S3. Под BigQuery — Colossus, тот…","c":"post","d":"databases","g":["базы данных","object storage","s3","lakehouse","iceberg"],"h":"Модель данных: bucket, key, object — и чего в ней нет · Консистентность: что изменилось в декабре 2020 · Механика API: то, на чём реально те","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Объектное хранилище как фундамент современных данных: плоское пространство ключей и его следствия, честная арифметика кл…","t":"Объектные хранилища: S3, MinIO, слои хранения и lakehouse","u":"/post/databases/16-object-storage/","w":"2026-07-16"},{"b":"Объекты и классы: первое знакомство с ООП Три буквы ООП обычно пугают новичков сильнее всего остального. Их произносят с интонацией «ну, это уже серьёзно», в вакансиях пишут «знание ООП обязательно», а в учебниках сразу …","c":"post","d":"intro","g":["с нуля","python","основы программирования","ооп"],"h":"Проблема: данные отдельно, действия отдельно · Аналогия: чертёж и изделия · Первый класс · Что такое __init__ · Что такое self · Методы: что","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Разбираем, зачем нужны классы: как сложить данные и действия в одну вещь, что такое self и __init__, и почему объекты — …","t":"Объекты и классы: первое знакомство с ООП","u":"/post/intro/11-objects-and-classes/","w":"2026-07-16"},{"b":"Ограничения: юрисдикции, экспорт, персональные данные Команда из шести человек, продукт работает, первые платящие клиенты есть. За одну неделю приходят четыре письма, и ни одно из них не про баги. Первое — от отдела заку…","c":"post","d":"software-distribution","g":["поставка софта","юрисдикции","персональные данные","экспортный контроль","соответствие требованиям"],"h":"Чем ограничение не является · Четыре формы, в которые превращается любое ограничение · Откуда ограничения берутся: шесть независимых источни","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Последняя глава трека: почему ограничения — не юридический слой поверх продукта, а входные данные архитектуры; как юрисд…","t":"Ограничения: юрисдикции, экспорт, персональные данные","u":"/post/software-distribution/13-compliance/","w":"2026-07-16"},{"b":"Ограниченные контексты и карта контекстов В прошлой статье мы разобрали домен, поддомены и единый язык. Осталась неудобная деталь: единый язык не бывает единым на всю компанию. Стоит собрать всех — продажи, склад, бухгал…","c":"post","d":"ddd","g":["ddd","архитектура","моделирование","интеграция","микросервисы"],"h":"1. Интуиция: почему одна модель на всех не работает · Мысленный эксперимент со словом «клиент» · Что происходит, если попытаться объединить ","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Как найти границы моделей, почему одно слово в разных контекстах означает разное, и как описать связи между контекстами …","t":"Ограниченные контексты и карта контекстов","u":"/post/ddd/02-bounded-contexts/","w":"2026-07-16"},{"b":"Один на один: как вести, чтобы это не стало статусом Первое, что делает новый тимлид, — ставит в календарь еженедельные встречи с каждым инженером. Это правильный шаг. Второе, что происходит, — через шесть-восемь недель …","c":"post","d":"engineering-leadership","g":["лидерство","один-на-один","команда","коммуникация"],"h":"Зачем вообще нужен отдельный разговор · Честно про доказательную базу · Как формат ломается · Анатомия встречи · Частота, длительность, слот","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Зачем руководителю регулярный разговор один на один, почему он почти всегда деградирует в отчёт о задачах, что об этом и…","t":"Один на один: как вести, чтобы это не стало статусом","u":"/post/engineering-leadership/02-one-on-ones/","w":"2026-07-16"},{"b":"Окружения, конфигурация и секреты Есть категория инцидентов, о которой не пишут в резюме, но которая исправно занимает верхние строчки постмортемов: код не менялся, а прод лёг. Поменяли одно значение — таймаут, размер пу…","c":"post","d":"development","g":["development","конфигурация","окружения","секреты","12-factor"],"h":"Конфигурация — это то, что отличается между развёртываниями · Что такое окружение и зачем их несколько · Способы задать конфигурацию и поряд","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Как одна и та же сборка работает в пяти разных местах, отличаясь только конфигурацией: иерархия источников значений, вал…","t":"Окружения, конфигурация и секреты","u":"/post/development/11-config-and-environments/","w":"2026-07-16"},{"b":"Окружения: локальная разработка, превью, стенды и их цена В понедельник в 11:40 в общем чате появляется сообщение: «стейджинг лежит, кто катал?» К 12:15 выясняется, что накатили миграцию из ветки, которая ещё не прошла р…","c":"post","d":"platform-engineering","g":["платформа","окружения","developer experience","тестирование","стоимость"],"h":"Окружение — это не копия прода, а вопрос, который вы ему задаёте · Похожесть на прод: девять осей вместо одной · Локальная разработка: самое","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Как платформа даёт инженерам локальный контур, превью на каждый PR и общие стенды: какой сигнал покупает каждое окружени…","t":"Окружения: локальная разработка, превью, стенды и их цена","u":"/post/platform-engineering/06-environments/","w":"2026-07-16"},{"b":"Ончейн-управление: DAO, голоса, таймлоки и захват протокола Весь трек мы говорили, что контракт неизменяем и в этом его ценность. Пора признаться: в проде это почти никогда не так. Подавляющее большинство работающих прот…","c":"post","d":"web3","g":["web3","dao","управление","смарт-контракты","безопасность"],"h":"1. Карта власти: кто вообще может что-то сделать · 2. Как прочитать чужое управление за пятнадцать минут · 3. Мультисиг: минимальная работаю","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Кто на самом деле управляет неизменяемым контрактом: карта прав от деплойера до таймлока, механика мультисига Safe, устр…","t":"Ончейн-управление: DAO, голоса, таймлоки и захват протокола","u":"/post/web3/13-onchain-governance/","w":"2026-07-16"},{"b":"Операторы, движки и время: механика запроса Предыдущая глава закончилась на том, что у вас появился термин. Эта — про то, как донести его до индекса без потерь и в каком именно индексе искать. Тезис главы простой и непоп…","c":"post","d":"research-skills","g":["поиск информации","инструменты","документация","инженерная практика"],"h":"Анатомия запроса · Что из синтаксиса действительно работает · Почему длинный естественный запрос работает хуже · Воронка сужения · Ограничен","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Что из синтаксиса поиска действительно работает, почему длинный естественный запрос хуже трёх существительных, как огран…","t":"Операторы, движки и время: механика запроса","u":"/post/research-skills/02-query-operators/","w":"2026-07-16"},{"b":"Операционные системы: карта трека и что программисту нужно знать об ОС Большинство программистов знакомятся с операционной системой в момент, когда она ломается. Приложение работало на ноутбуке и упало в контейнере с OOM…","c":"post","d":"operating-systems","g":["операционные системы","ядро","системные вызовы","linux","unix"],"h":"Что такое операционная система, если говорить строго · Единственный настоящий механизм: граница привилегий · Почему clock_gettime не являетс","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Строгое определение ОС, граница привилегий и системные вызовы, три базовые абстракции, реальная цена каждой из них в нан…","t":"Операционные системы: карта трека и что программисту нужно знать об ОС","u":"/post/operating-systems/00-overview/","w":"2026-07-16"},{"b":"Операционный контур одиночки: бэк-офис, автоматизация и непрерывность В компании между инженером и деньгами стоит десяток людей: продавец, юрист, бухгалтер, офис-менеджер, администратор, служба безопасности. Их работа не…","c":"post","d":"business","g":["бизнес","фриланс","процессы","автоматизация","риски"],"h":"1. Невидимая работа и куда девается утилизация · 2. Восемь контуров практики · 3. Учётный минимум: сущности и связи · 4. Пайплайн без CRM · ","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Как устроен рабочий контур практика без отдела: восемь петель дела и единый источник правды для каждой, минимальный учёт…","t":"Операционный контур одиночки: бэк-офис, автоматизация и непрерывность","u":"/post/business/12-operations-and-continuity/","w":"2026-07-16"},{"b":"Описательная статистика: среднее врёт чаще, чем кажется Вы выгрузили таблицу на два миллиона строк. В отчёт войдёт одно число. Между этими двумя фактами лежит операция, которую редко проговаривают вслух: сжатие с потерям…","c":"post","d":"data-analytics","g":["аналитика данных","статистика","sql","метрики","визуализация данных"],"h":"Меры центра: почему их шесть · Разбор на десяти числах · Разброс: что показывать рядом с центром · Сколько наблюдений стоит за цифрой · Кван","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Как свести миллион строк к нескольким числам и не потерять правду: центр, разброс, форма, квантили, робастные меры и SQL…","t":"Описательная статистика: среднее врёт чаще, чем кажется","u":"/post/data-analytics/05-descriptive-stats/","w":"2026-07-16"},{"b":"Оптимизации: свёртка констант, инлайнинг, устранение мёртвого кода В прошлой статье мы построили промежуточное представление: плоский трёхадресный код, разрезанный на базовые блоки, в SSA-форме, где у каждого значения ро…","c":"post","d":"compilers","g":["компиляторы","оптимизация","ssa","анализ программ"],"h":"Контракт оптимизатора: что нельзя ломать · Почему компилятор обязан быть пессимистом · Три этажа: где живут оптимизации · IR, с которым мы р","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Как компилятор переписывает программу, не меняя её смысла: решётки и анализ потока данных, SCCP, нумерация значений, DCE…","t":"Оптимизации: свёртка констант, инлайнинг, устранение мёртвого кода","u":"/post/compilers/07-optimization/","w":"2026-07-16"},{"b":"Опыт разработчика: что измерять и как это делать честно Платформенная команда из шести человек показывает на квартальном ревью дашборд. Средняя оценка платформы в опросе — 4,4 из 5. Доля сервисов на золотом пути — 71 %. …","c":"post","d":"platform-engineering","g":["платформа","developer experience","метрики","dora","инженерная культура"],"h":"Что такое опыт разработчика и почему это не «удобство» · Единица измерения — путь, а не команда · Три класса сигналов и почему нужны все три","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Как измерять опыт разработчика так, чтобы числа отражали реальную боль инженеров, а не удобство платформенной команды: т…","t":"Опыт разработчика: что измерять и как это делать честно","u":"/post/platform-engineering/03-developer-experience/","w":"2026-07-16"},{"b":"Оркестрация пайплайнов: Airflow, dbt, идемпотентность и backfill К этому моменту трека у нас есть все кирпичи: мы умеем забирать данные (https://courses.digitable.life/post/data-engineering/01-etl-vs-elt/), раскладывать …","c":"post","d":"data-engineering","g":["данные","оркестрация","airflow","dbt","идемпотентность"],"h":"1. Модель: DAG как язык зависимостей · 2. Время: логическая дата против времени запуска · 3. Идемпотентность: главное свойство пайплайна · Т","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как из отдельных джоб собрать управляемый пайплайн: DAG и планировщики, Airflow и dbt, идемпотентность записи, backfill,…","t":"Оркестрация пайплайнов: Airflow, dbt, идемпотентность и backfill","u":"/post/data-engineering/05-orchestration/","w":"2026-07-16"},{"b":"Основы C#: типы, значения, ссылки и память Эта статья — фундамент. Мы разберём систему типов не как список ключевых слов, а через главный вопрос: «где живут данные и как они копируются». Понимание этого объясняет 90% пов…","c":"post","d":"csharp","g":["csharp","основы","типы","коллекции","память","gc"],"h":"Единая система типов · Стек, куча и boxing · Nullable reference types · Records: неизменяемые данные с value-семантикой · Pattern matching и","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Система типов C# от value/reference до nullable, records и pattern matching, коллекции и LINQ, а также модель памяти и р…","t":"Основы C#: типы, nullable, записи, pattern matching, LINQ и память","u":"/post/csharp/02-fundamentals/","w":"2026-07-16"},{"b":"Основы C: типы, операторы, управление потоком, функции Синтаксис C помещается на трёх страницах: 32 ключевых слова, десяток управляющих конструкций, ни классов, ни модулей, ни исключений. Именно поэтому «выучить C за вых…","c":"post","d":"systems-programming","g":["системное программирование","c","типы данных","неопределённое поведение","компиляторы"],"h":"Абстрактная машина: почему компилятор не обязан делать то, что написано · От текста к процессу: что происходит между main.c и ./a.out · Типы","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Базовый C глазами системного программиста: абстрактная машина стандарта, целочисленные преобразования и их ловушки, опер…","t":"Основы C: типы, операторы, управление потоком, функции","u":"/post/systems-programming/01-c-basics/","w":"2026-07-16"},{"b":"Основы Elixir Elixir — функциональный язык, и его синтаксис компактен: вы освоите его за выходные. Но два понятия переворачивают мышление привычного императивного разработчика: паттерн-матчинг (= — это не присваивание) и…","c":"post","d":"elixir","g":["elixir","основы","структуры данных","неизменяемость","функциональное программирование"],"h":"= — это оператор сопоставления, а не присваивания · Базовые типы · Неизменяемость: что это значит на практике · Оператор |\u003e (pipe) — конвейе","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Синтаксис, типы данных, паттерн-матчинг как основа языка, неизменяемость, коллекции Enum/Stream, управление потоком и мо…","t":"Основы Elixir: паттерн-матчинг, неизменяемость, структуры данных и управление потоком","u":"/post/elixir/02-fundamentals/","w":"2026-07-16"},{"b":"Основы языка Go Go учится за выходные — синтаксиса действительно мало. Но за этой простотой прячутся несколько моделей, которые нужно понять глубоко, иначе будете писать код, который компилируется, но ведёт себя не так, …","c":"post","d":"golang","g":["go","основы","типы","структуры данных","интерфейсы"],"h":"Первая программа и структура файла · Переменные, константы, нулевые значения · Базовые типы · Строки, байты и руны · Управление потоком · Ук","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Синтаксис, система типов, структуры данных и, главное, модель значений против указателей — то, на чём спотыкаются новичк…","t":"Основы Go: типы, срезы, карты, управление потоком и модель значений","u":"/post/golang/02-fundamentals/","w":"2026-07-16"},{"b":"Основы Java: типы, ссылки, строки, управление потоком Синтаксис Java учится за вечер. Проблема в том, что вечером выученный синтаксис не объясняет, почему 0.1 + 0.2 не равно 0.3, почему две одинаковые строки бывают не ра…","c":"post","d":"java","g":["java","типы данных","строки","основы","jvm"],"h":"Развилка, из которой следует всё остальное · Восемь примитивов и их точная семантика · Целая арифметика: молчаливое переполнение · Дробные ч","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Модель значений Java от бита до строки: восемь примитивов и их точная арифметика, ссылки и null, автобоксинг, массивы, у…","t":"Основы Java: типы, ссылки, строки, управление потоком","u":"/post/java/02-fundamentals/","w":"2026-07-16"},{"b":"Основы Rust: типы, переменные, управление потоком, функции В предыдущей статье мы поставили rustup, собрали первый крейт и научились запускать cargo run. Теперь нужно понять, из чего вообще состоит программа на Rust. Соб…","c":"post","d":"rust","g":["rust","типы","основы","компилятор","управление потоком"],"h":"Программа целиком: с чего всё начинается · Модель первая: у всего есть размер, и он известен заранее · Переменные: неизменяемость по умолчан","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Базовый Rust как единая модель, а не список синтаксиса: почему размер типа известен заранее, почему неизменяемость по ум…","t":"Основы Rust: типы, переменные, управление потоком, функции","u":"/post/rust/02-fundamentals/","w":"2026-07-16"},{"b":"Основы безопасности: угрозы, шифрование, аутентификация В прошлых статьях трека мы собрали работающий интернет: научили компьютеры находить друг друга и обмениваться пакетами (Как компьютеры общаются) и проследили путь з…","c":"post","d":"computer-science","g":["computer science","безопасность","криптография","аутентификация","сети"],"h":"Безопасность — свойство, а не фича · Триада CIA: что именно мы защищаем · Думать как атакующий · Криптография: математика доверия · Хеш-функ","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Почему безопасность — это не последний слой поверх готовой системы, а свойство, которое должно держаться на всех слоях с…","t":"Основы безопасности: угрозы, шифрование, аутентификация","u":"/post/computer-science/16-security-basics/","w":"2026-07-16"},{"b":"Основы визуального дизайна: сетка, типографика, цвет, иерархия К этому моменту трека у вас уже есть содержание: исследования объяснили, кто пользователь и что ему мешает; персоны и JTBD сформулировали задачу; информацион…","c":"post","d":"ux-design","g":["дизайн","ux","типографика","вёрстка","дизайн-системы"],"h":"1. Что вообще делает визуальный дизайн · 2. Как глаз читает экран: минимум теории, который реально нужен · Предвнимание: что видно до того, ","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как визуальные средства — размер, вес, цвет, расстояние и позиция — превращаются в понятный интерфейс: сетка и шкала отс…","t":"Основы визуального дизайна: сетка, типографика, цвет, иерархия","u":"/post/ux-design/06-visual-basics/","w":"2026-07-16"},{"b":"Основы промптинга: zero-shot, few-shot, роли, структура и формат ответа Промпт — это не «заклинание» и не способ уговорить модель. Это единственный интерфейс, через который вы задаёте условие для распределения, из которо…","c":"post","d":"ai-engineering","g":["ии-инженерия","промптинг","few-shot","llm"],"h":"1. Что на самом деле делает промпт · 2. Анатомия запроса · Что куда класть · 3. Zero-shot: инструкция без примеров · Негативные инструкции р","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Как устроен промпт с точки зрения инженера: почему работают инструкции и примеры, где они ломаются, как задать формат от…","t":"Основы промптинга: zero-shot, few-shot, роли, структура и формат ответа","u":"/post/ai-engineering/02-prompting-fundamentals/","w":"2026-07-16"},{"b":"Осознанная практика: что на самом деле показали исследования Предыдущие главы разбирали приёмы работы с материалом: извлечение, интервалы, желательные трудности, перемежение. Все они про то, как удерживать и переструктур…","c":"post","d":"learning","g":["обучение","практика","экспертиза","когнитивная психология"],"h":"Что именно сделали Эрикссон, Крампе и Теш-Рёмер в 1993 году · Методические слабости, о которых стоит знать · Определение: что считается осоз","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Что именно измерили Эрикссон и коллеги в 1993 году, как из этого получились «10 000 часов», что показали метаанализы и р…","t":"Осознанная практика: что на самом деле показали исследования","u":"/post/learning/08-deliberate-practice/","w":"2026-07-16"},{"b":"Остовные деревья и потоки в сетях Есть класс задач, который выглядит как «геометрия на графе»: соединить всё дёшево, пропихнуть как можно больше, разрезать как можно дешевле, распределить как можно справедливее. Все они …","c":"post","d":"algorithms","g":["алгоритмы","графы","потоки в сетях","жадные алгоритмы","оптимизация"],"h":"Часть I. Минимальное остовное дерево · Постановка и зачем · Два свойства, из которых следует всё · Алгоритм Крускала · Алгоритм Прима · Алго","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Два столпа сетевой оптимизации: минимальное остовное дерево через свойства разреза и цикла, и максимальный поток через о…","t":"Остовные деревья и потоки в сетях","u":"/post/algorithms/10-mst-and-flows/","w":"2026-07-16"},{"b":"От кода к исполнению: компиляторы, интерпретаторы, ассемблер, машинный код В предыдущих статьях трека мы дошли снизу до процессора: собрали из вентилей сумматор и регистр (Булева логика и вентили), а потом увидели, что п…","c":"post","d":"computer-science","g":["computer science","компилятор","интерпретатор","ассемблер","трансляция"],"h":"Лестница языков: три этажа над транзистором · Ассемблер: перевод один-к-одному · Компиляция: перевод с пониманием · Сборка: от исходника до ","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Что происходит между строкой на Python или C и потоком чисел, которые исполняет процессор: ассемблер, фазы компилятора, …","t":"От кода к исполнению: компиляторы, интерпретаторы, ассемблер, машинный код","u":"/post/computer-science/07-from-code-to-execution/","w":"2026-07-16"},{"b":"От ламп до кристалла: как физика формировала архитектуру Есть два способа читать историю вычислительной техники. Первый — как галерею портретов: гении, даты, «первый компьютер». Он бесполезен для инженера. Второй — как ц…","c":"post","d":"hardware","g":["железо","архитектура компьютера","история","процессоры"],"h":"Дисциплина обращения с числами · Карта эпох · Реле: когда бит стоит как деталь машины · Лампа: в тысячу раз быстрее и в сто раз капризнее · ","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Реле, лампы, транзисторы и интегральные схемы задавали жёсткие физические рамки — и почти каждая странность современных …","t":"От ламп до кристалла: как физика формировала архитектуру","u":"/post/hardware/01-history-tubes-to-chips/","w":"2026-07-16"},{"b":"От симптома к термину: как превратить незнание в запрос Три запроса про одну и ту же проблему: почему сервер иногда отдаёт кусок ответа python socket recv возвращает не всё сообщение TCP message framing length prefix Пер…","c":"post","d":"research-skills","g":["поиск информации","формулировка задачи","терминология","отладка"],"h":"Почему естественная формулировка плоха · Когда поиск по тексту ошибки, наоборот, отличный · Лестница абстракции · Как выглядит подъём в реал","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Главная потеря времени в поиске происходит до первого запроса — на формулировке. Разбираем, почему поиск по тексту ошибк…","t":"От симптома к термину: как превратить незнание в запрос","u":"/post/research-skills/01-from-symptom-to-term/","w":"2026-07-16"},{"b":"Открытый код как способ поставки: что даёт и чего стоит Я поднял на своём сервере инстанс it-tools — набор инженерных утилит в браузере: генераторы токенов, конвертеры, калькуляторы подсетей. Форкнул, прикрутил свою тему…","c":"post","d":"software-distribution","g":["поставка софта","open source","лицензии","монетизация","сопровождение"],"h":"Четыре разные вещи, которые называют одним словом · Что получает потребитель — и чем он на самом деле платит · Что это стоит поставщику: счё","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Открыть исходники — это не жест доброй воли, а выбор канала поставки со своим счётом: что получает пользователь, за что …","t":"Открытый код как способ поставки: что даёт и чего стоит","u":"/post/software-distribution/05-open-source-distribution/","w":"2026-07-16"},{"b":"Откуда берутся данные: сбор, события, выживший источник В прошлой главе мы договорились начинать с решения: какой выбор изменится от ответа. Допустим, вопрос сформулирован честно — «раскатывать ли новый онбординг на всех…","c":"post","d":"data-analytics","g":["аналитика данных","сбор данных","события","смещение выборки","sql"],"h":"Данных не существует, есть процесс их производства · Состояние против события: разница, из которой растёт половина ошибок · Клиент или серве","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Данные не лежат в базе сами по себе — их производит процесс сбора, и именно он решает, на какие вопросы вы сможете ответ…","t":"Откуда берутся данные: сбор, события, выживший источник","u":"/post/data-analytics/02-data-sources/","w":"2026-07-16"},{"b":"Отладка и диагностика: gdb, valgrind, санитайзеры, чтение core dump В языке с исключениями и управляемой памятью падение — это событие с описанием: тип ошибки, сообщение, стек вызовов, номер строки. Рантайм сам поймал на…","c":"post","d":"systems-programming","g":["системное программирование","c","отладка","gdb","безопасность памяти"],"h":"Разрыв между ошибкой и симптомом · Подготовка бинаря: флаги, без которых отладка не работает · Отладочная информация в проде · gdb: не «поша","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Инженерная дисциплина поиска багов в C: флаги сборки, работа в gdb, санитайзеры и valgrind, разбор core dump и охота на …","t":"Отладка и диагностика: gdb, valgrind, санитайзеры, чтение core dump","u":"/post/systems-programming/06-debugging/","w":"2026-07-16"},{"b":"Отладка и производство: SWD, логический анализатор, прошивки, OTA На «большой» машине отладка — привилегия, о которой не думают. Упало? В логах стектрейс. Непонятно? Поставил брейкпоинт, покрутил переменные, перезапустил…","c":"post","d":"embedded","g":["встраиваемые системы","отладка","прошивки","ota","производство"],"h":"Почему printf — не отладка · Карта инструментов: чем смотрят на что · SWD и JTAG: как отладчик попадает внутрь чипа · Три грабли, на которые","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Как искать баги там, где нет ни логов, ни stdout, ни возможности перезапустить процесс: SWD и JTAG изнутри, RTT и SWO вм…","t":"Отладка и производство: SWD, логический анализатор, прошивки, OTA","u":"/post/embedded/11-debugging-and-production/","w":"2026-07-16"},{"b":"Оценка и бенчмарки: MMLU, SWE-bench, HumanEval, LLM-as-judge, свои датасеты Все предыдущие статьи трека учили что-то строить: промпты, структурированный вывод, RAG, агентов, мультиагентные системы. Эта статья — про единс…","c":"post","d":"ai-engineering","g":["ии-инженерия","оценка качества","бенчмарки","llm","тестирование"],"h":"Три уровня оценки · Уровень 1: анатомия публичных бенчмарков · Что есть и что оно меряет · Метрика pass@k и почему её постоянно врут · Четыр","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Как перестать выбирать модель по маркетинговым графикам: что на самом деле измеряют публичные бенчмарки и где они врут, …","t":"Оценка и бенчмарки: MMLU, SWE-bench, HumanEval, LLM-as-judge, свои датасеты","u":"/post/ai-engineering/10-evaluation-and-benchmarks/","w":"2026-07-16"},{"b":"Оценка и границы работ: как не утонуть в бесконечных правках Самая частая финансовая катастрофа независимого разработчика выглядит не как «клиент не заплатил». Она выглядит скучно: проект на месяц идёт три, оплата фиксир…","c":"post","d":"business","g":["бизнес","фриланс","оценка","договор","риски"],"h":"1. Оценка, цель и обязательство — три разные вещи · 2. Почему оценки систематически занижены · 2.1. Оценка — распределение, а не число · 2.2","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Почему оценки систематически занижены, как считать срок распределением вместо одного числа и как описать границу работ т…","t":"Оценка и границы работ: как не утонуть в бесконечных правках","u":"/post/business/03-estimation-and-scope/","w":"2026-07-16"},{"b":"Оценка и планирование: story points, PERT, #NoEstimates Есть вопрос, который убил больше проектов, чем любая архитектурная ошибка: «когда будет готово?». Ответ на него всегда неправильный. Не потому что инженеры ленивы и…","c":"post","d":"project-management","g":["управление проектами","оценка","планирование","прогнозирование","метрики"],"h":"1. Три разных слова, которые все путают · Жизненный цикл одной оценки · 2. Почему мы систематически ошибаемся (и всегда в одну сторону) · 2.","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"От planning fallacy до вероятностного прогноза: зачем нужны оценки, как работают story points и PERT, как считать Монте-…","t":"Оценка и планирование: story points, PERT, #NoEstimates","u":"/post/project-management/03-estimation-and-planning/","w":"2026-07-16"},{"b":"Оценка и рост: ожидания, грейды и разговор о повышении Пока вы были инженером, грейды выглядели как набор правил, которые кто-то придумал и применяет к вам. Теперь этот «кто-то» — вы. И первое, что обнаруживается: правил…","c":"post","d":"engineering-leadership","g":["лидерство","команда","грейды","рост","оценка"],"h":"Что вы на самом деле решаете · Где кончается ваша власть · Насколько вообще можно верить оценке человека · Почему нет метрики индивидуальной","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Как руководителю формулировать ожидания уровня, собирать свидетельства, защищать промо-пакет на калибровке и вести разго…","t":"Оценка и рост: ожидания, грейды и разговор о повышении","u":"/post/engineering-leadership/06-growth-and-grades/","w":"2026-07-16"},{"b":"Оценка моделей: метрики, кросс-валидация, калибровка Предыдущие девять статей трека учили строить модели. Эта — единственная, без которой все они бесполезны. Причина простая: модель, качество которой вы не умеете измерят…","c":"post","d":"machine-learning","g":["машинное обучение","метрики","кросс-валидация","калибровка","валидация"],"h":"Что мы вообще оцениваем: риск и его оценки · Протокол разбиения: train / validation / test · Метрики классификации · Матрица ошибок — источн","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Как честно измерить качество модели: от матрицы ошибок и ROC-AUC до вложенной кросс-валидации, доверительных интервалов,…","t":"Оценка моделей: метрики, кросс-валидация, калибровка","u":"/post/machine-learning/10-model-evaluation/","w":"2026-07-16"},{"b":"Очереди и потоки: брокеры, порядок сообщений, backpressure, повторы Брокер сообщений выглядит как труба: с одной стороны положили, с другой достали. Это самая дорогая метафора в инженерии распределённых систем. Труба не …","c":"post","d":"distributed-systems","g":["распределённые системы","очереди сообщений","kafka","backpressure","надёжность"],"h":"Что покупает брокер и чем вы за это платите · Две модели: очередь и лог · Долговечность: что означает «брокер принял» · Порядок сообщений: ч","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Чем очередь отличается от лога, почему порядок сообщений ломается в шести местах, как устроено обратное давление и что п…","t":"Очереди и потоки: брокеры, порядок сообщений, backpressure, повторы","u":"/post/distributed-systems/11-messaging/","w":"2026-07-16"},{"b":"Ошибки и отладка: как читать сообщения и находить причину Давайте начнём с признания, которое многим экономит месяцы страданий. Профессиональный программист видит ошибки постоянно. Не иногда, не в плохой день — постоянно…","c":"post","d":"intro","g":["с нуля","python","основы программирования","отладка","ошибки"],"h":"Три вида ошибок · Синтаксические ошибки: программа даже не стартовала · Traceback: главный инструмент, который все игнорируют · Словарь типи","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Учимся не бояться красного текста: разбираем traceback построчно, переводим типичные сообщения Python дословно, ищем при…","t":"Ошибки и отладка: как читать сообщения и находить причину","u":"/post/intro/10-errors-and-debugging/","w":"2026-07-16"},{"b":"Пакетная обработка: MapReduce, Spark, партиционирование Пакетная обработка (batch processing) — это вычисление над ограниченным набором данных: у него есть начало и конец, и мы знаем оба. «Выручка за вчера», «пересобрать…","c":"post","d":"data-engineering","g":["данные","batch","spark","mapreduce","партиционирование"],"h":"1. Первый принцип: почему нужен распределённый батч · 2. MapReduce: модель, а не только фреймворк · 2.1 Контракт модели · 2.2 Полный конвейе","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как устроена пакетная обработка больших данных: модель MapReduce, движок Spark, shuffle, партиционирование, перекос и ин…","t":"Пакетная обработка: MapReduce, Spark, партиционирование","u":"/post/data-engineering/03-batch-processing/","w":"2026-07-16"},{"b":"Память агента: что стоит хранить, а что вредно В прошлой главе агент получил руки: инструменты, протоколы, интеграции. Но между вчерашней сессией и сегодняшней он не помнит ничего. Совсем ничего. И вот здесь начинается с…","c":"post","d":"ai-agents","g":["ai-агенты","память","контекстное окно","документация","стоимость"],"h":"Шесть вещей, которые называют одним словом · Единственный механизм: текст, попавший в окно · Дообучение — не память · Куда писать: приоритет","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Почему у агента нет памяти, а есть файлы, которые кто-то кладёт ему в контекст; какие пять поводов оправдывают постоянну…","t":"Память агента: что стоит хранить, а что вредно","u":"/post/ai-agents/06-agent-memory/","w":"2026-07-16"},{"b":"Память и указатели: адреса, разыменование, арифметика указателей Зачем вообще нужны указатели В языках с автоматическим управлением памятью вопрос «где лежит эта переменная» задавать не принято: рантайм знает сам. В C он…","c":"post","d":"systems-programming","g":["системное программирование","c","указатели","память","отладка"],"h":"Зачем вообще нужны указатели · Память глазами программы · Адресное пространство процесса · Указатель: тип, значение, размер · \u0026 и *: что про","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Что такое адрес и объект в модели памяти C, как выглядит адресное пространство процесса, во что компилируется разыменова…","t":"Память и указатели: адреса, разыменование, арифметика указателей","u":"/post/systems-programming/02-memory-and-pointers/","w":"2026-07-16"},{"b":"Память: аллокации, фрагментация, утечки, влияние GC CPU-профиль из https://courses.digitable.life/post/performance/03-cpu-profiling/ почти всегда заканчивается одинаково. В топе оказываются runtime.mallocgc, scanobject, …","c":"post","d":"performance","g":["производительность","память","gc","профилирование","аллокации"],"h":"1. Четыре числа, которые все называют «памятью» · 2. Маршрут одной аллокации · 3. Три налога, которые не видно в микробенчмарке · 4. Приборы","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Почему аллокация стоит дороже своих наносекунд, как читать heap-профили в Go, JVM, .NET, Python и браузере, чем внутренн…","t":"Память: аллокации, фрагментация, утечки, влияние GC","u":"/post/performance/04-memory/","w":"2026-07-16"},{"b":"Парадигмы за горизонтом: вероятностное, дифференцируемое и квантовое программирование Все двенадцать предыдущих статей трека объединяло молчаливое допущение: переменная содержит значение, и это значение можно напечатать.…","c":"post","d":"paradigms","g":["парадигмы","вероятностное программирование","машинное обучение","квантовые вычисления","будущее"],"h":"Общая рамка: что каждая отнимает и что даёт · Часть I. Вероятностное программирование · Идея: программа как генеративная модель · Как это сч","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Три парадигмы, где единица вычисления перестаёт быть обычным значением: распределение, градиент и амплитуда. Как устроен…","t":"Парадигмы за горизонтом: вероятностное, дифференцируемое и квантовое программирование","u":"/post/paradigms/13-emerging-paradigms/","w":"2026-07-16"},{"b":"Парадигмы программирования: карта, история и как они связаны Слово «парадигма» в вакансиях и на собеседованиях обычно означает что-то вроде принадлежности к секте: «мы пишем в ООП», «а мы — функциональщики». Это самое бе…","c":"post","d":"paradigms","g":["парадигмы","проектирование","функциональное программирование","ооп","языки программирования"],"h":"Часть 1. Что такое парадигма на самом деле · Определение через ограничения, а не через возможности · Три вопроса, ответы на которые задают п","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Обзорная статья трека: что такое парадигма как инженерное понятие, по каким осям парадигмы различаются, откуда они взяли…","t":"Парадигмы программирования: карта, история и как они связаны","u":"/post/paradigms/00-overview/","w":"2026-07-16"},{"b":"Параллельные и распределённые алгоритмы, консенсус Все предыдущие статьи трека предполагали одну машину, одно ядро и надёжную память. Реальность другая: у сервера 128 ядер, у GPU — десятки тысяч потоков, а данные лежат в…","c":"post","d":"algorithms","g":["алгоритмы","параллельные вычисления","распределённые системы","консенсус","конкурентность"],"h":"Часть I. Параллельные алгоритмы · Модель работа/глубина: правильный способ считать сложность · Закон Амдала и почему он не приговор · Три ки","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Как считать сложность параллельных алгоритмов в модели работа/глубина, писать scan и параллельную сортировку, и почему в…","t":"Параллельные и распределённые алгоритмы, консенсус","u":"/post/algorithms/16-parallel-and-distributed/","w":"2026-07-16"},{"b":"Партиционирование и шардирование: стратегии, ребалансировка, горячие ключи Репликация отвечает на вопрос «сколько копий у одних и тех же данных». Партиционирование отвечает на принципиально другой: какие данные вообще жи…","c":"post","d":"distributed-systems","g":["распределённые системы","партиционирование","шардирование","консистентное хеширование","масштабирование"],"h":"1. Что мы режем и как это называется · 2. Ключ партиционирования — решение о том, что можно сделать одним запросом · 3. Стратегии разбиения ","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Как разложить данные, которые не помещаются на один узел: диапазоны против хеша, консистентное хеширование и виртуальные…","t":"Партиционирование и шардирование: стратегии, ребалансировка, горячие ключи","u":"/post/distributed-systems/06-partitioning/","w":"2026-07-16"},{"b":"Партнёрство и выход: доли, договорённости на берегу, продажа дела и закрытие Весь трек до этого места отвечал на вопрос «как работает моё дело». Осталось два вопроса, которые инженеры откладывают дольше всего, потому что…","c":"post","d":"business","g":["бизнес","партнёрство","карьера","продукт","деньги"],"h":"1. Партнёр — это не помощник · 2. Доли: почему «пополам по-братски» ломается · 3. Вестинг: доля, которую зарабатывают временем · 4. Двенадца","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Два самых необратимых решения самостоятельного инженера: впустить в дело второго человека с правом голоса и когда-нибудь…","t":"Партнёрство и выход: доли, договорённости на берегу, продажа дела и закрытие","u":"/post/business/13-partnership-and-exit/","w":"2026-07-16"},{"b":"Пары, списки и структуры данных из одних лямбд Есть один вопрос, который убивает доверие к лямбда-исчислению быстрее всего: «ладно, числа и булевы вы кое-как выкрутили, но данные-то где хранить?» Программист привык, что …","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","структуры данных","функциональное программирование","кодирование чёрча"],"h":"Пара Чёрча · Полная раскрутка: FST (PAIR M N) · То же самое кодом · Производные операции · Кортежи, тройки и записи · Зачем это нужно: PRED ","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Как построить кортеж, запись и связный список, когда в языке есть только функции: пара Чёрча, два способа кодировать спи…","t":"Пары, списки и структуры данных из одних лямбд","u":"/post/lambda-calculus/06-pairs-and-lists/","w":"2026-07-16"},{"b":"Паттерны в реальном коде: когда они мешают Весь трек мы разбирали, как паттерны решают проблемы. Эта статья — про обратную сторону: каждый паттерн является платой, и довольно часто плата превышает выгоду. Это не призыв «…","c":"post","d":"design-patterns","g":["паттерны проектирования","рефакторинг","архитектура","код-ревью"],"h":"Почему это вообще проблема · Цена абстракции: из чего она складывается · Случай 1. Интерфейс с одной реализацией · Случай 2. Strategy там, г","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Разбор реальных ситуаций, где паттерн делает код хуже: цена косвенности, спекулятивная обобщённость, невидимый поток упр…","t":"Паттерны в реальном коде: когда они мешают","u":"/post/design-patterns/07-patterns-in-practice/","w":"2026-07-16"},{"b":"Паттерны границ: DTO, мэпперы и отсутствующее значение У любой системы есть периметр, и на нём происходят две вещи, которые в остальном коде не происходят никогда. Внутрь приходят данные, которым нельзя верить: поле приш…","c":"post","d":"design-patterns","g":["паттерны проектирования","ооп","архитектура","типы"],"h":"Три представления одного заказа · Парсить, а не валидировать · Notification: все ошибки сразу, а не первая · Отсутствующее значение: Optiona","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Что происходит с данными на входе и выходе системы: зачем нужен DTO и когда он лишний, «парсить, а не валидировать», нак…","t":"Паттерны границ: DTO, мэпперы и отсутствующее значение","u":"/post/design-patterns/12-boundary-patterns/","w":"2026-07-16"},{"b":"Паттерны конкурентности: пул, producer-consumer, future, pipeline В обзоре трека мы договорились: паттерн — это имя для решения, которое возникает снова и снова под давлением одних и тех же сил. В порождающих, структурны…","c":"post","d":"design-patterns","g":["паттерны проектирования","конкурентность","многопоточность","асинхронность","архитектура"],"h":"Карта территории · Сила №1: поток дорог → Thread Pool · Интуиция · Жизненный цикл задачи в пуле · Сколько потоков? · Почему нельзя грузить п","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Как устроены пул воркеров, producer-consumer с обратным давлением, future/promise и pipeline — с формулами размера пула,…","t":"Паттерны конкурентности: пул, producer-consumer, future, pipeline","u":"/post/design-patterns/04-concurrency-patterns/","w":"2026-07-16"},{"b":"Паттерны проектирования: что это, откуда взялись и как читать каталог Есть два способа прочитать книгу «Design Patterns». Первый — как список из 23 рецептов, которые надо выучить к собеседованию и потом натыкать в код. Т…","c":"post","d":"design-patterns","g":["паттерны проектирования","ооп","рефакторинг","архитектура"],"h":"Зачем нужны паттерны: две аналогии · Откуда это взялось: Кристофер Александер, 1977 · Что такое паттерн строго · Механика: любой паттерн — э","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Откуда взялись паттерны, что такое паттерн строго, как устроен каталог GoF, чем за него платят и как применять его от за…","t":"Паттерны проектирования: что это, откуда взялись и как читать каталог","u":"/post/design-patterns/00-overview/","w":"2026-07-16"},{"b":"Паттерны ресурсов: Object Pool, RAII и владение временем жизни Предыдущая глава закончилась на том, что composition root собирает граф объектов и раздаёт зависимости. Осталась вторая половина вопроса, о которой каталог G…","c":"post","d":"design-patterns","g":["паттерны проектирования","конкурентность","производительность","go"],"h":"Карта главы · Что такое ресурс строго · Владение: единственный вопрос, на который надо ответить · Один паттерн под шестью именами · Object P","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Кто освобождает соединения, файлы и буферы: RAII, scope guard, with и using как один паттерн, Object Pool с валидацией и…","t":"Паттерны ресурсов: Object Pool, RAII и владение временем жизни","u":"/post/design-patterns/09-object-lifecycle-and-resources/","w":"2026-07-16"},{"b":"Первая программа: устанавливаем инструменты и запускаем код В прошлых статьях мы разбирались, https://courses.digitable.life/post/intro/01-how-computers-work/ как компьютер хранит и обрабатывает данные и https://courses.…","c":"post","d":"intro","g":["с нуля","python","инструменты","терминал"],"h":"Что вообще нужно, чтобы программировать · Почему Python · Шаг 1. Устанавливаем Python · Windows · macOS · Linux · Шаг 2. Знакомимся с термин","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Ставим Python и редактор кода, разбираемся с терминалом и запускаем первую настоящую программу — с разбором каждой строч…","t":"Первая программа: устанавливаем инструменты и запускаем код","u":"/post/intro/03-first-program/","w":"2026-07-16"},{"b":"Первая работа и первые 90 дней: онбординг, ожидания, типичные ошибки Оффер подписан, дата выхода назначена. Дальше в голове у большинства пустота: понятно, что надо «хорошо работать», но неясно, что это значит в первую н…","c":"post","d":"sdlc-and-career","g":["карьера","онбординг","испытательный срок","джуниор","коммуникация"],"h":"Что вообще такое онбординг с точки зрения компании · До первого дня: что можно сделать заранее · Первая неделя: цель — не код, а инфраструкт","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Что на самом деле происходит в первые три месяца на работе: как устроен онбординг, чего от новичка ждут и чего не ждут, …","t":"Первая работа и первые 90 дней: онбординг, ожидания, типичные ошибки","u":"/post/sdlc-and-career/18-first-90-days/","w":"2026-07-16"},{"b":"Первоисточник против пересказа: как дойти до места, где написана правда Вопрос: обязан ли HTTP-клиент повторять запрос при получении ответа 503? Три ответа, которые вы получите за одинаковое время: Из статьи в блоге: «на…","c":"post","d":"research-skills","g":["поиск информации","источники","документация","спецификации"],"h":"Что такое первичный источник в инженерии · Что теряется при пересказе · Восхождение к источнику · Где искать нормативные тексты · Changelog:","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Что считать первичным источником в инженерии, какие пять вещей систематически теряются при пересказе, как за несколько м…","t":"Первоисточник против пересказа: как дойти до места, где написана правда","u":"/post/research-skills/04-primary-sources/","w":"2026-07-16"},{"b":"Первые 90 дней Scrum-мастера в новой команде Вы сдали PSM I, знаете наизусть все пять событий, три ответственности и три артефакта. В понедельник вы выходите в команду, которая работает шесть лет, ненавидит слово «эджайл…","c":"post","d":"scrum-master","g":["scrum","agile","psm","управление командой","фасилитация"],"h":"Предупреждение о статусе материала · Почему 90 дней, а не 30 и не год · Фаза ноль: до первого рабочего дня · Дни 1–30: диагностика, а не рем","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Как войти в незнакомую команду: тридцать дней диагностики, один осмысленный эксперимент, работа с организацией — и честн…","t":"Первые 90 дней Scrum-мастера в новой команде","u":"/post/scrum-master/13-first-90-days/","w":"2026-07-16"},{"b":"Первый проект: от идеи до работающей программы До этого момента вы решали чужие задачи. Условие было готовым, правильный ответ существовал, и если что-то не получалось — вы точно знали, что искать нужно в текущей теме: р…","c":"post","d":"intro","g":["с нуля","python","основы программирования","проект","практика"],"h":"Проект — это не «упражнение побольше» · Как выбрать первую идею · Формулируем задачу: одно предложение и список функций · Главная ошибка: ст","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Собираем всё изученное в один настоящий проект: выбираем идею, режем её на тонкие работающие срезы и шаг за шагом пишем …","t":"Первый проект: от идеи до работающей программы","u":"/post/intro/13-first-project/","w":"2026-07-16"},{"b":"Переговоры об оффере: как готовиться, что можно обсуждать, типичные ошибки Типичная сцена. Человек прошёл четыре секции собеседований, потратил три вечера на подготовку и один выходной на тестовое. Ему звонит рекрутер: «…","c":"post","d":"sdlc-and-career","g":["карьера","оффер","переговоры","найм","вознаграждение"],"h":"Почему торг — часть процесса, а не наглость · Что на самом деле происходит по ту сторону стола · Три числа, которые нужно посчитать до перво","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Оффер — это не приговор, а первая редакция документа. Разбираем, как устроен процесс согласования внутри компании, что к…","t":"Переговоры об оффере: как готовиться, что можно обсуждать, типичные ошибки","u":"/post/sdlc-and-career/15-negotiation/","w":"2026-07-16"},{"b":"Передача в разработку, совместная работа и карьера в дизайне Сцена, знакомая до боли. Дизайнер две недели рисовал экран «Заказы», выложил ссылку на файл в задачу, написал «готово, вопросы задавайте». Через три недели дем…","c":"post","d":"ux-design","g":["дизайн","handoff","процессы","командная работа","карьера"],"h":"Почему слово «передача» вводит в заблуждение · Что на самом деле передаётся: контракт экрана · Контракт как текст, а не как набор картинок ·","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как устроен нормальный хендофф, почему «пиксель в пиксель» — вредная цель, как вести дизайн-ревью реализации, отличать з…","t":"Передача в разработку, совместная работа и карьера в дизайне","u":"/post/ux-design/13-handoff-and-career/","w":"2026-07-16"},{"b":"Перемежение и вариативность: против иллюзии беглости Предыдущая глава — Желательные трудности — объяснила общий принцип: условия, которые ухудшают показатели во время тренировки, часто улучшают удержание и перенос. Эта г…","c":"post","d":"learning","g":["обучение","практика","перенос","доказательность"],"h":"Часть 1. Три разных вещи, которые путают · Часть 2. Что показали исследования · Моторная линия: Ши и Морган, 1979 · Математическая линия: Ро","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Почему десять однотипных задач подряд тренируют не то, что нужно; что показали работы Ши и Моргана, Рорера, Корнелла и Б…","t":"Перемежение и вариативность: против иллюзии беглости","u":"/post/learning/07-interleaving/","w":"2026-07-16"},{"b":"Переменные и типы данных: как программа хранит информацию В прошлой статье вы запустили первую программу и увидели, как компьютер печатает текст на экран. Это уже настоящая программа, но пока она делает ровно одно и то ж…","c":"post","d":"intro","g":["с нуля","python","переменные","типы данных"],"h":"Зачем вообще что-то хранить · Переменная — это не коробка, это наклейка · Как называть переменные · Типы данных: почему нельзя сложить всё с","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Что такое переменная на самом деле, зачем нужны типы данных, как Python работает с числами, строками и логическими значе…","t":"Переменные и типы данных: как программа хранит информацию","u":"/post/intro/04-variables-and-types/","w":"2026-07-16"},{"b":"Перенос знания: почему выученное не применяется само Полгода назад вы разбирались с идемпотентностью. Читали внимательно, поняли всё: почему at-least-once доставка означает, что обработчик увидит одно и то же сообщение д…","c":"post","d":"learning","g":["обучение","перенос знания","ментальные модели","память","экспертиза"],"h":"Что ломается между «знаю» и «применил» · Инертное знание: не метафора, а измеренный эффект · Почему память ищет по поверхности · Что из этог","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Знание может быть выучено, воспроизводимо по запросу — и не сработать в момент, когда оно нужно. Разбираем механику пере…","t":"Перенос знания: почему выученное не применяется само","u":"/post/learning/10-mental-models-and-transfer/","w":"2026-07-16"},{"b":"Переобучение, bias-variance и регуляризация Есть ровно одна ошибка, которая убивает больше ML-проектов, чем все остальные вместе: модель показала прекрасное качество на данных, которые видела, и посредственное — на тех, …","c":"post","d":"machine-learning","g":["машинное обучение","регуляризация","переобучение","bias-variance","кросс-валидация"],"h":"Постановка: риск, эмпирический риск и разрыв обобщения · Разложение на смещение и дисперсию · Что этот компромисс НЕ означает · Численный эк","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Почему модель, идеальная на обучении, проваливается в проде: строгое разложение ошибки на смещение и дисперсию, диагност…","t":"Переобучение, bias-variance и регуляризация","u":"/post/machine-learning/11-overfitting-and-regularization/","w":"2026-07-16"},{"b":"Переписывание истории: amend, interactive rebase, filter-repo и риски Фраза «переписать историю» звучит зловеще и слегка мошеннически: будто вы подделываете документы. На практике это самая обычная операция, которую хоро…","c":"post","d":"git","g":["git","rebase","версионирование","командная работа"],"h":"1. Что физически происходит при amend · 2. Почему меняется хеш у всех потомков · 3. Карта инструментов: масштаб решает · 4. Интерактивный re","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Как Git на самом деле «переписывает» историю — создавая новые объекты и двигая ссылки, — от git commit --amend и интерак…","t":"Переписывание истории: amend, interactive rebase, filter-repo и риски","u":"/post/git/05-history-rewriting/","w":"2026-07-16"},{"b":"Периферия: GPIO, АЦП, ШИМ, таймеры — управляем железом из кода Главный сдвиг: периферия — это сопроцессоры, а не библиотеки Программист «больших» машин привык к модели «я вызываю функцию — она делает работу». В прошивке …","c":"post","d":"embedded","g":["встраиваемые системы","микроконтроллеры","gpio","таймеры","stm32"],"h":"Главный сдвиг: периферия — это сопроцессоры, а не библиотеки · GPIO: одна ножка и десяток регистров · Мигание светодиодом на уровне регистро","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Как из программы управлять физическим миром: устройство ножки GPIO, работа АЦП и цена ошибки в опорном напряжении, тайме…","t":"Периферия: GPIO, АЦП, ШИМ, таймеры — управляем железом из кода","u":"/post/embedded/03-gpio-and-peripherals/","w":"2026-07-16"},{"b":"Персистентные и конкурентные структуры данных Все предыдущие тринадцать статей трека жили в одном очень удобном мире. В этом мире есть ровно одна копия структуры, ровно один исполнитель, который её трогает, и время течёт…","c":"post","d":"data-structures","g":["структуры данных","персистентность","конкурентность","lock-free","иммутабельность"],"h":"Часть I. Персистентность · Что вообще значит «персистентная структура» · Наивное решение и почему оно провальное · Path copying: главный при","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Что происходит со структурами данных, когда время перестаёт быть линейным: персистентность и структурное разделение, pat…","t":"Персистентные и конкурентные структуры данных","u":"/post/data-structures/14-persistent-and-concurrent/","w":"2026-07-16"},{"b":"Персистентные структуры данных и их реальная стоимость Задача, из которой всё выросло Вы пишете редактор. Пользователь набрал 200 страниц текста и нажал Ctrl+Z. Нужно вернуть предыдущее состояние документа. Как? Первый и…","c":"post","d":"functional-programming","g":["функциональное программирование","структуры данных","неизменяемость","производительность"],"h":"Задача, из которой всё выросло · Терминология, в которой все путаются · Базовый приём: path copying · Почему ветвление 32, а не 2 · Персисте","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Как устроены внутри персистентные векторы, HAMT, finger tree и зипперы, почему амортизация ломается под персистентностью…","t":"Персистентные структуры данных и их реальная стоимость","u":"/post/functional-programming/12-persistent-data-structures/","w":"2026-07-16"},{"b":"Персоны и Jobs To Be Done: как понять, для кого и зачем После исследований у вас гора сырья: расшифровки интервью, заметки наблюдений, выгрузки аналитики, скриншоты чужих таблиц в Excel, которыми люди подпирают ваш проду…","c":"post","d":"ux-design","g":["дизайн","ux","персоны","jtbd","исследования"],"h":"1. Почему «средний пользователь» — источник плохих интерфейсов · 2. Персона: что это на самом деле · 3. Как персона получается из данных, а ","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как превратить сырьё исследований в инструмент решений: рабочая персона вместо картонного портрета, работа и четыре силы…","t":"Персоны и Jobs To Be Done: как понять, для кого и зачем","u":"/post/ux-design/02-personas-and-jtbd/","w":"2026-07-16"},{"b":"Перцептрон, функции активации и обратное распространение ошибки В обзорной статье трека мы договорились, что нейросеть — это композиция аффинных преобразований и нелинейностей, а обучение — подбор параметров градиентным …","c":"post","d":"neural-networks","g":["нейросети","глубокое обучение","backpropagation","функции активации"],"h":"1. Один нейрон: от аналогии к линейной модели · Стена: XOR · 2. Функции активации: почему без них всё разваливается · 3. Многослойный перцеп","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"От одного нейрона Розенблатта до алгоритма, который считает градиент по миллиардам параметров за один проход: линейная р…","t":"Перцептрон, функции активации и обратное распространение ошибки","u":"/post/neural-networks/01-perceptron-and-backprop/","w":"2026-07-16"},{"b":"Петли обратной связи: усиливающие и уравновешивающие В прошлой главе мы разбирали, как выбор границы меняет вывод: одна и та же авария выглядит как «баг в сервисе» или как «сбой процесса дежурства» в зависимости от того,…","c":"post","d":"systems-thinking","g":["системное мышление","обратная связь","системная динамика","надёжность","моделирование"],"h":"Минимальное определение · Знак связи и полярность петли · Уравновешивающая петля: цель, разрыв, действие · Усиливающая петля: то, что растёт","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Как читать причинные петли по знакам связей, чем усиливающая петля отличается от уравновешивающей, почему шторм ретраев …","t":"Петли обратной связи: усиливающие и уравновешивающие","u":"/post/systems-thinking/03-feedback-loops/","w":"2026-07-16"},{"b":"Питание и ограничения: режимы сна, бюджет энергии, память и флеш На «большой» машине ресурсы — это то, что кончается медленно и о чём сообщает мониторинг. Память кончилась — OOM killer, диск кончился — алерт, процессор з…","c":"post","d":"embedded","g":["встраиваемые системы","энергопотребление","микроконтроллеры","память","flash"],"h":"Смена системы координат: энергия — это ресурс, а не свойство · Немного физики, без которой цифры не сходятся · Откуда берётся энергия: харак","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Как считать бюджет энергии в миллиампер-секундах, что реально выключается в каждом режиме сна STM32, ESP32 и nRF52, поче…","t":"Питание и ограничения: режимы сна, бюджет энергии, память и флеш","u":"/post/embedded/07-power-and-constraints/","w":"2026-07-16"},{"b":"План обучения: как не утонуть и как заметить, что продвинулся Четырнадцать предыдущих глав отвечали на вопрос «как учить». Извлечение, интервалы, перемежение, желательные трудности, обратная связь, перенос — всё это про …","c":"post","d":"learning","g":["обучение","планирование","метапознание","самообразование"],"h":"Сначала — что здесь доказано, а что нет · Две болезни плана · Болезнь первая: утонуть · Болезнь вторая: не заметить прогресс · Откуда берутс","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Как собрать план обучения, который переживает столкновение с рабочей неделей: откуда брать темы, как ставить учебные цел…","t":"План обучения: как не утонуть и как заметить, что продвинулся","u":"/post/learning/15-learning-plan/","w":"2026-07-16"},{"b":"Планирование и декомпозиция: когда агент должен остановиться и спросить В главе «Промпт как спецификация» мы разбирали, как сформулировать задачу так, чтобы множество допустимых решений сузилось. Эта глава про следующий …","c":"post","d":"ai-agents","g":["ai-агенты","планирование","декомпозиция","ревью"],"h":"Зачем нужен план, если агент и так что-то сделает · Что агент называет планированием и почему это не планирование · Единица работы: что счит","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Почему план агента — это гипотеза, а не обязательство, как резать задачу на шаги, каждый из которых заканчивается прогон…","t":"Планирование и декомпозиция: когда агент должен остановиться и спросить","u":"/post/ai-agents/07-planning/","w":"2026-07-16"},{"b":"Планирование и оценки: почему сроки врут и что с этим делать Инженер, которого спросили «сколько займёт», отвечает за одно число. Тимлид, которого спросили то же самое, отвечает за три разных: за то, что скажет команда, …","c":"post","d":"engineering-leadership","g":["лидерство","планирование","оценка","управление командой","менеджмент"],"h":"Сначала о доказательности · Три разных числа, которые называют одним словом «срок» · Кто на самом деле решает дату · Почему сроки врут: пять","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Почему оценка превращается в обязательство и теряет неопределённость по дороге наверх, как считать ёмкость команды честн…","t":"Планирование и оценки: почему сроки врут и что с этим делать","u":"/post/engineering-leadership/11-planning-and-estimates/","w":"2026-07-16"},{"b":"Платформа в небольшой компании: с чего начать и когда не начинать Компания на 24 инженера, пять продуктовых команд, девятнадцать сервисов. На встрече техлидов кто-то произносит фразу, ради которой написан весь трек: «нам…","c":"post","d":"platform-engineering","g":["платформа","devex","внутренние инструменты","стоимость владения"],"h":"Главный вопрос: что именно у вас повторяется · Нулевой шаг: замер на две недели · Арифметика полставки · Когда не начинать: семь честных «не","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Замер на две недели вместо обсуждения, арифметика полставки и точка, где платформа становится налогом: что делать при 10…","t":"Платформа в небольшой компании: с чего начать и когда не начинать","u":"/post/platform-engineering/15-practice-and-resources/","w":"2026-07-16"},{"b":"Платформа как продукт: у неё есть пользователи и они могут уйти Компания на 80 продуктовых инженеров и 42 сервиса. Полтора года назад собрали платформенную команду — пять человек. Сделали шаблоны сервисов, единый пайплай…","c":"post","d":"platform-engineering","g":["платформа","платформенная инженерия","продуктовый подход","метрики","developer experience"],"h":"Пользователь, который ничего не платит, но может уйти · Кто именно ваш пользователь · Метрики принятия важнее полноты функций · Три типовых ","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Внутренняя платформа отличается от инфраструктурного проекта одним: у неё есть добровольные пользователи, которые в любо…","t":"Платформа как продукт: у неё есть пользователи и они могут уйти","u":"/post/platform-engineering/01-platform-as-product/","w":"2026-07-16"},{"b":"Платформенная инженерия: карта трека и зачем нужна внутренняя платформа Компания на семьдесят инженеров, двенадцать продуктовых команд. Полтора года назад собрали платформенную команду из пяти человек с понятной задачей:…","c":"post","d":"platform-engineering","g":["платформа","devex","золотой путь","внутренние инструменты"],"h":"Что такое внутренняя платформа и чем она не является · Пользователи: кто они и что делают, когда платформа не помогает · Арифметика: платфор","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Внутренняя платформа как продукт, у которого есть пользователи и они могут уйти: арифметика окупаемости платформенной ко…","t":"Платформенная инженерия: карта трека и зачем нужна внутренняя платформа","u":"/post/platform-engineering/00-overview/","w":"2026-07-16"},{"b":"Платформенная команда: состав, поддержка, дежурство и границы Пять инженеров, квартальный план на шесть пунктов. К концу квартала сделано полтора: каталог сервисов доехал до беты, единый шаблон Java-сервиса застрял на ре…","c":"post","d":"platform-engineering","g":["платформа","платформенная инженерия","команда","дежурство","поддержка"],"h":"Бюджет времени — единственный настоящий ресурс · Состав: пять компетенций, а не пять «devops-инженеров» · Режимы взаимодействия и срок годно","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Платформенная команда не пишет продукт, поэтому её главный ресурс — время, а главный продукт — не репозиторий, а поддерж…","t":"Платформенная команда: состав, поддержка, дежурство и границы","u":"/post/platform-engineering/13-platform-team/","w":"2026-07-16"},{"b":"Платформы: iOS и Android изнутри, отличия, ограничения, публикация Мобильный разработчик, пришедший из веба, первые полгода живёт в тихом недоумении. Почему приложение «само» перезапустилось и потеряло заполненную форму?…","c":"post","d":"mobile","g":["мобильная разработка","ios","android","платформы","релиз"],"h":"Что вообще значит «платформа» · iOS изнутри · Android изнутри · Приложение — не веб-страница: жизненный цикл · Разрешения: пользователь може","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Как устроены iOS и Android от ядра до магазина: процессы и жизненный цикл, песочница и разрешения, подпись и публикация,…","t":"Платформы: iOS и Android изнутри, отличия, ограничения, публикация","u":"/post/mobile/01-platforms/","w":"2026-07-16"},{"b":"Поведенческие паттерны: Strategy, Observer, Command, State и другие Порождающие паттерны отвечали на вопрос «кто создаёт объект», структурные — «как объекты складываются в целое». Поведенческие отвечают на третий и самый…","c":"post","d":"design-patterns","g":["паттерны проектирования","ооп","рефакторинг","архитектура"],"h":"Карта группы: по какому вопросу выбирать · Strategy: вынести «как именно» в отдельный объект · Template Method: близнец Strategy на наследов","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Одиннадцать паттернов о том, кто кому звонит и кто за что отвечает: Strategy, State, Command, Observer, Chain of Respons…","t":"Поведенческие паттерны: Strategy, Observer, Command, State и другие","u":"/post/design-patterns/03-behavioral/","w":"2026-07-16"},{"b":"Поддержка, технический долг и эволюция продукта В предыдущей статье мы довели изменение до продакшена: оно задеплоено, метрики зелёные, дежурный не разбужен. В учебниках здесь обычно ставят точку и рисуют стрелку обратно…","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","технический долг","поддержка","рефакторинг","легаси"],"h":"Сопровождение — это четыре разных занятия · Как устроен поток обращений: линии поддержки · Энтерпрайз и стартап: две разные реальности · Три","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Что происходит с системой после релиза: как устроены линии поддержки и триаж багов, что такое технический долг на самом …","t":"Поддержка, технический долг и эволюция продукта","u":"/post/sdlc-and-career/07-support-and-techdebt/","w":"2026-07-16"},{"b":"Подсистема памяти: кэши, когерентность, контроллер Всё, что разобрано в предыдущих главах — конвейер, внеочередное исполнение, предсказание переходов, — существует ради одной цели: не дать ядру простаивать. Простаивает ж…","c":"post","d":"hardware","g":["железо","память","кэш","микроархитектура","производительность"],"h":"Стена памяти: как разошлись скорости · Локальность: единственная причина, по которой это работает · Устройство кэша: адрес как три поля · Ас","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Как устроен кэш изнутри — разбор адреса, ассоциативность, политики замещения и записи; что делает TLB и почему страницы …","t":"Подсистема памяти: кэши, когерентность, контроллер","u":"/post/hardware/09-memory-subsystem/","w":"2026-07-16"},{"b":"Подходы и методологии: предиктивный, итеративный, гибкий — и семейство Agile целиком Модель процесса отвечает на вопрос «в каком порядке и сколько раз мы проходим стадии». Она ничего не говорит о том, как работать внутри…","c":"post","d":"management","g":["менеджмент","методологии","agile","scrum","kanban"],"h":"1. Терминологическая лестница: семь ступеней · 2. Подход: что фиксируем, а чем торгуемся · 3. Предиктивный подход в двух абзацах · 4. Agile:","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Терминологическая лестница от парадигмы до инструмента, четыре подхода и то, что каждый из них фиксирует, манифест Agile…","t":"Подходы и методологии: предиктивный, итеративный, гибкий — и семейство Agile целиком","u":"/post/management/03-approaches-and-methodologies/","w":"2026-07-16"},{"b":"Поиск во время отладки: отдельный жанр Всё, что было в предыдущих главах, применимо к отладке — но применимо в особом режиме, потому что у отладочного поиска четыре отличия. Вопрос причинный. Не «как это работает» и не «…","c":"post","d":"research-skills","g":["поиск информации","отладка","инциденты","инженерная практика"],"h":"Нулевой шаг: до первого запроса · Порядок действий · «Что изменилось» — самый сильный вопрос · Поиск внутри своей системы · Когда идти во вн","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Отладочный поиск устроен иначе: вопрос причинный, ответа «вообще» не существует, а главный источник — ваша собственная с…","t":"Поиск во время отладки: отдельный жанр","u":"/post/research-skills/12-debugging-search/","w":"2026-07-16"},{"b":"Поиск для созидателя: карта трека и почему это отдельный навык Сцена, знакомая каждому. Вы пишете сервис. Всё идёт нормально ровно до момента, когда очередь начинает терять сообщения при перезапуске брокера, а в документ…","c":"post","d":"research-skills","g":["поиск информации","источники","документация","инженерная практика"],"h":"Что здесь называется поиском · Что про это известно из измерений · Цикл разведки · Пять видов незнания, и почему стратегия у каждого своя · ","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Обзорная статья трека: чем поиск инженера, который что-то строит, отличается от бытового гугления, из каких шагов состои…","t":"Поиск для созидателя: карта трека и почему это отдельный навык","u":"/post/research-skills/00-overview/","w":"2026-07-16"},{"b":"Поиск и бинарный поиск, в том числе по ответу Бинарный поиск — самый недооценённый алгоритм в индустрии. Его «знают все», но корректно с первого раза пишут единицы: Джон Бентли в 1980-х давал эту задачу профессиональным …","c":"post","d":"algorithms","g":["алгоритмы","поиск","бинарный поиск","инварианты","оптимизация"],"h":"Три вопроса перед выбором метода поиска · Бинарный поиск, выведенный из инварианта · Почему lo + (hi - lo) // 2, а не (lo + hi) // 2 · lower","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"От линейного перебора до lower_bound, бинарного поиска по ответу, тернарного и экспоненциального поиска и кэш-дружествен…","t":"Поиск и бинарный поиск, в том числе по ответу","u":"/post/algorithms/03-searching-and-binary-search/","w":"2026-07-16"},{"b":"Поиск по коду и артефактам: индекс, который не врёт У документации есть одно неустранимое свойство: она описывает намерение. Код описывает поведение. Когда эти двое расходятся — а расходятся они регулярно, — прав код. Из…","c":"post","d":"research-skills","g":["поиск информации","инструменты","чтение кода","github"],"h":"Пять вопросов, на которые отвечает только код · GitHub code search: синтаксис, который стоит выучить · grep.app и другие индексы · Реестры п","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Как искать в чужом и своём коде: синтаксис GitHub code search, регулярные выражения в grep.app, структурный поиск, реест…","t":"Поиск по коду и артефактам: индекс, который не врёт","u":"/post/research-skills/03-code-search/","w":"2026-07-16"},{"b":"Поисковый рефакторинг: модуляризация монолита и уборка кода как задача оптимизации Девятая статья подвела итог основной линии трека: три ингредиента, семейство алгоритмов, два флагманских применения — генерация тестов и …","c":"post","d":"sbse","g":["sbse","рефакторинг","архитектура","многокритериальная оптимизация","метаэвристики"],"h":"Почему это вообще задача поиска · Две разные задачи под одним словом «рефакторинг» · Часть I. Ремодуляризация: граф зависимостей и метрика M","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как отдать поиску две задачи сопровождения кода — разложить сотни классов по модулям и подобрать последовательность рефа…","t":"Поисковый рефакторинг: модуляризация монолита и уборка кода как задача оптимизации","u":"/post/sbse/10-search-based-refactoring/","w":"2026-07-16"},{"b":"Покупки и подписки в приложении: StoreKit, Play Billing, права и восстановление Трек прошёл путь от устройства платформ до релиза: приложение спроектировано, данные переживают оффлайн, фон не съедает батарею, сборка подп…","c":"post","d":"mobile","g":["мобильная разработка","монетизация","подписка","биллинг","магазины приложений"],"h":"Два контура: где деньги и где право · Типы продуктов: слово «покупка» означает четыре разные вещи · Каноническая последовательность покупки ","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Как устроена касса, которая вам не принадлежит: типы продуктов и их семантика, StoreKit 2 и Play Billing по шагам, право…","t":"Покупки и подписки в приложении: StoreKit, Play Billing, права и восстановление","u":"/post/mobile/14-purchases-and-subscriptions/","w":"2026-07-16"},{"b":"Пользовательские сценарии и потоки: от задачи к экранам К этому месту трека известно, кому и зачем нужен продукт (исследования, персоны и JTBD) и из чего он состоит (информационная архитектура). Не хватает глагола. ИА от…","c":"post","d":"ux-design","g":["дизайн","ux","сценарии","потоки","handoff"],"h":"1. Сценарий, поток, задача: разные слова про разное · 2. Четыре уровня зума · 3. Обратный ход: проектируем поток от завершения · 4. Пять ист","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как из задачи пользователя вырастить конкретные экраны: уровни зума от пути до состояния кнопки, обратный ход от заверше…","t":"Пользовательские сценарии и потоки: от задачи к экранам","u":"/post/ux-design/04-user-flows/","w":"2026-07-16"},{"b":"Порождающие паттерны: Factory, Builder, Singleton, Prototype Порождающие (creational) паттерны отвечают на один вопрос: кто и как создаёт объекты. Звучит скучно — пока не столкнёшься с классом, у которого конструктор при…","c":"post","d":"design-patterns","g":["паттерны проектирования","ооп","рефакторинг","python","go"],"h":"Зачем выделять создание объектов · Factory Method · Abstract Factory · Builder · Functional Options: builder для языков без перегрузок · Sin","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Как перестать разбрасывать new по коду: фабрики, строители, синглтоны и прототипы — от интуиции до продакшн-нюансов, пот…","t":"Порождающие паттерны: Factory, Builder, Singleton, Prototype","u":"/post/design-patterns/01-creational/","w":"2026-07-16"},{"b":"Поставка софта: карта трека и почему это инженерный вопрос Три решения из жизни небольшой команды, каждое принято за пять минут в переписке. Первое. «Поднимем себе инстанс it-tools на поддомене, чтобы не бегать по десяти…","c":"post","d":"software-distribution","g":["поставка софта","лицензии","монетизация","магазины приложений","обновления"],"h":"Что такое поставка и где проходит её граница · Почему это инженерный вопрос, а не «вопрос продажников» · Цена владения: рамка, через которую","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Поставка — не «продажники разберутся»: каждое решение о том, как софт доезжает до пользователя и как за него берут деньг…","t":"Поставка софта: карта трека и почему это инженерный вопрос","u":"/post/software-distribution/00-overview/","w":"2026-07-16"},{"b":"Постмортем: документ, который меняет систему, а не ищет виноватого Один инцидент, два документа. Первый: полторы страницы, раздел «Root cause: human error», список из четырёх пунктов, где три начинаются со слова «усилить…","c":"post","d":"technical-writing","g":["техническое письмо","документация","постмортем","инциденты"],"h":"Читатель и решение: у постмортема их несколько, и они спорят · Тест на пустоту для постмортема · Обвинение живёт в грамматике, а не только в","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Как написать разбор инцидента, после которого чинят систему: читатель и решение, грамматика обвинения, хронология без по…","t":"Постмортем: документ, который меняет систему, а не ищет виноватого","u":"/post/technical-writing/06-postmortem/","w":"2026-07-16"},{"b":"Постмортемы: почему без обвинения и как довести до правок 21:04. Инцидент закрыт, SLI вернулся в норму, в канале написали «спасибо всем». Дежурный идёт спать. Через три недели то же самое повторяется в 03:40, и на этот р…","c":"post","d":"sre","g":["надёжность","sre","постмортемы","инциденты","процессы"],"h":"Что такое постмортем и что не является постмортемом · Когда его писать: порог, а не привычка · Механизм безобвинительности · Модель: почему ","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Разбор инцидента как инженерная процедура: почему поиск виноватого физически перекрывает поток данных, как считать ущерб…","t":"Постмортемы: почему без обвинения и как довести до правок","u":"/post/sre/08-postmortems/","w":"2026-07-16"},{"b":"Потоки и синхронизация: pthreads, мьютексы, условные переменные, атомарность В предыдущей статье трека — https://courses.digitable.life/post/systems-programming/08-processes-and-signals/ — процессы разделены аппаратно: у…","c":"post","d":"systems-programming","g":["системное программирование","c","многопоточность","синхронизация","конкурентность"],"h":"Что общее, а что своё · Гонка данных — это неопределённое поведение · Мьютекс: не только взаимное исключение · Что происходит внутри: futex ","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Как устроены потоки в C: pthreads, гонки данных как неопределённое поведение, мьютексы и futex, условные переменные, мод…","t":"Потоки и синхронизация: pthreads, мьютексы, условные переменные, атомарность","u":"/post/systems-programming/09-threads-and-sync/","w":"2026-07-16"},{"b":"Потоковая обработка: Kafka, Flink, окна и семантика доставки В пакетной обработке мир устроен уютно: есть конечный набор файлов, есть момент «данные за вчера готовы», есть право пересчитать всё с нуля, если что-то сломал…","c":"post","d":"data-engineering","g":["данные","streaming","kafka","flink","event-driven"],"h":"Зачем вообще поток: три причины, а не одна · Лог: абстракция, на которой всё держится · Устройство Kafka в объёме, который реально нужен инж","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как устроен непрерывный поток данных: лог Kafka, время события и водяные знаки, окна, состояние и чекпоинты Flink, а так…","t":"Потоковая обработка: Kafka, Flink, окна и семантика доставки","u":"/post/data-engineering/04-streaming/","w":"2026-07-16"},{"b":"Потоковые алгоритмы и алгоритмы внешней памяти Почти вся классическая теория алгоритмов молча предполагает одну вещь: данные лежат в оперативной памяти, и обращение к любому элементу стоит одинаково. Эта модель называетс…","c":"post","d":"algorithms","g":["алгоритмы","потоковые алгоритмы","скетчи","внешняя память","big data"],"h":"Зачем это нужно на практике · Часть I. Потоковая модель · Формализация: что именно нам разрешено · Почему точный ответ невозможен: нижние гр","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Что делать, когда данные не влезают в память: скетчи Count–Min и HyperLogLog, reservoir sampling, квантили, модель ввода…","t":"Потоковые алгоритмы и алгоритмы внешней памяти","u":"/post/algorithms/17-streaming-and-external-memory/","w":"2026-07-16"},{"b":"Почему документация устаревает и что с этим делать структурно В вики компании 4200 страниц. Поиск по слову «деплой» отдаёт семнадцать результатов: три инструкции противоречат друг другу, две ссылаются на Jenkins, которог…","c":"post","d":"technical-writing","g":["техническое письмо","документация","docs as code","автоматизация","инженерная культура"],"h":"Устаревание — свойство конструкции, а не характера · Три вида расхождения, и лечатся они по-разному · У каждого факта свой период полураспад","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Устаревание документа — не следствие лени, а свойство конструкции: разбираем экономику расхождения, классы изменчивости …","t":"Почему документация устаревает и что с этим делать структурно","u":"/post/technical-writing/11-maintenance/","w":"2026-07-16"},{"b":"Почта, мессенджеры, уведомления: информационная гигиена инженера В предыдущей статье мы разбирались со встречами — с той частью коммуникации, которая занимает слот в календаре и потому хотя бы видима. Эта статья про её н…","c":"post","d":"time-management","g":["тайм-менеджмент","продуктивность","коммуникация","асинхронность","прерывания"],"h":"Часть 1. Что мы вообще измеряем · Часть 2. Короткая история: как мы сюда попали · Часть 3. Механика: коммуникация как система массового обсл","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Как устроена коммуникационная нагрузка разработчика, что о ней известно из исследований, и как настроить каналы, уведомл…","t":"Почта, мессенджеры, уведомления: информационная гигиена инженера","u":"/post/time-management/12-communication-load/","w":"2026-07-16"},{"b":"Правила как данные: Interpreter, Specification и композиция предикатов Есть класс задач, где обычный код проигрывает не по красоте, а по скорости изменения. Скидочные правила, антифрод, тарификация, роутинг заявок, право…","c":"post","d":"design-patterns","g":["паттерны проектирования","композиция","python","рефакторинг"],"h":"Карта главы · Specification: предикат, ставший объектом · Главная выгода: одно правило — две интерпретации · Interpreter: когда правила скла","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Что делать, когда бизнес-правила меняются быстрее релизов: спецификация как объект, композиция предикатов, компиляция од…","t":"Правила как данные: Interpreter, Specification и композиция предикатов","u":"/post/design-patterns/10-rules-as-data/","w":"2026-07-16"},{"b":"Практика и ресурсы: как поддерживать язык без курсов Посчитаем неделю одного конкретного человека. Бэкендер, шесть лет опыта, распределённая команда: Белград, Дублин, Остин. Рабочий язык — английский. За неделю он прочит…","c":"post","d":"engineering-english","g":["английский","практика","обучение","ресурсы","коммуникация"],"h":"Почему четыре года контакта не двигают уровень · Три механизма роста · Почему курс — плохой инструмент именно для этой задачи · Журнал форму","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Почему годы чтения документации не двигают уровень, из каких трёх механизмов складывается рост, как устроен журнал форму…","t":"Практика и ресурсы: как поддерживать язык без курсов","u":"/post/engineering-english/13-practice-and-resources/","w":"2026-07-16"},{"b":"Практика и ресурсы: как поставить письмо в процесс команды В команду вышел сильный инженер, который умел писать. За год он оставил одиннадцать ADR, переписал README так, что новый человек разворачивал окружение за полдня…","c":"post","d":"technical-writing","g":["техническое письмо","документация","инженерная культура","процессы","docs as code"],"h":"Два контура, которые постоянно путают · Личный контур: навык растёт от переписывания, а не от объёма · Разбор: правило команды про документа","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Почему личный навык письма не переживает увольнение автора, как прикрепить документы к событиям, которые в команде проис…","t":"Практика и ресурсы: как поставить письмо в процесс команды","u":"/post/technical-writing/13-practice-and-resources/","w":"2026-07-16"},{"b":"Практика и ресурсы: с чего начать и что читать дальше Пятнадцать глав назад мы начали с истории про пул соединений, который увеличили на одном сервисе, а лёг другой — через девять дней. К этому моменту вы умеете разобрат…","c":"post","d":"systems-thinking","g":["системное мышление","практика","обучение","моделирование","инженерная культура"],"h":"Что реально удерживается: три навыка вместо шестнадцати глав · Доказательная база тренировки: неприятные данные · Петля обучения: почему без","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Как превратить прочитанное в рабочую практику: одностраничный разбор, журнал предсказаний, стенд на сорок строк Python, …","t":"Практика и ресурсы: с чего начать и что читать дальше","u":"/post/systems-thinking/15-practice-and-resources/","w":"2026-07-16"},{"b":"Практическая оптимизация: кэш, ветвления, профилирование, SIMD Весь трек мы считали операции. Мы говорили «этот алгоритм O(n log n), а тот O(n²)» и делали вывод, кто победит. Это правда — но правда про поведение на беско…","c":"post","d":"algorithms","g":["алгоритмы","оптимизация","производительность","профилирование","кэш","simd"],"h":"Модель машины, которой у нас не было · Дисциплина: цикл оптимизации · Как правильно мерить · Кэш: главный источник ускорений · Локальность: ","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Что происходит с алгоритмом, когда он встречается с реальным процессором: иерархия памяти, предсказание переходов, векто…","t":"Практическая оптимизация: кэш, ветвления, профилирование, SIMD","u":"/post/algorithms/18-practical-optimization/","w":"2026-07-16"},{"b":"Предварительная оценка IT-проекта: аналогия, оценка по фичам, PERT и конус неопределённости В начале работы над IT-проектом почти всегда проводят оценку. Её отсутствие или неточность формирует неправильные ожидания по ср…","c":"post","d":"management","g":["менеджмент","оценка","планирование","риски"],"h":"1. Оценка, цель и обязательство — три разные вещи · 2. Конус неопределённости: сколько точности физически доступно · 3. Методы оценки: полны","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Зачем нужна оценка и чем она отличается от обещания: конус неопределённости, метод аналогии и оценка по фичам, два этапа…","t":"Предварительная оценка IT-проекта: аналогия, оценка по фичам, PERT и конус неопределённости","u":"/post/management/08-estimation/","w":"2026-07-16"},{"b":"Предсказание переходов и спекуляция: цена ошибки В предыдущих главах конвейер уже собран и разогнан: команды разложены по стадиям (Конвейер), несколько штук запускаются за такт, порядок исполнения оторван от порядка прог…","c":"post","d":"hardware","g":["железо","процессор","микроархитектура","производительность","spectre"],"h":"Почему нельзя просто подождать · Не один вопрос, а три · Статика: что можно сделать без истории · Двухбитный счётчик: минимум работающей пам","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Почему глубокий конвейер не может ждать исхода условного перехода, как устроены предсказатели от двухбитного счётчика до…","t":"Предсказание переходов и спекуляция: цена ошибки","u":"/post/hardware/08-branch-prediction/","w":"2026-07-16"},{"b":"Предсказуемость: какой вопрос на самом деле решает ИИ Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 00:00 — отсюда взято содержание этой главы. Разговор про ИИ обычно начинают с конца: вот модель, она пишет ко…","c":"post","d":"ai-basics","g":["основы ии","предсказуемость","случайность","машина тьюринга","детерминизм"],"h":"Что вообще называют искусственным интеллектом · Линия, по которой к этому шли · Две модели вычисления, и обе строго детерминированные · Маши","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Компьютер построен на детерминизме и не умеет производить случайность. Откуда взялась потребность в вероятностных моделя…","t":"Предсказуемость: какой вопрос на самом деле решает ИИ","u":"/post/ai-basics/01-predictability/","w":"2026-07-16"},{"b":"Представление данных: целые, дробные (IEEE 754), текст (Unicode), цвет, звук В предыдущей статье трека — Двоичная система, биты и байты — мы выяснили, что внутри компьютера нет ничего, кроме двух состояний: есть заряд ил…","c":"post","d":"computer-science","g":["computer science","представление данных","ieee 754","unicode","кодировки"],"h":"1. Целые числа: позиционная запись и её пределы · Как хранят отрицательные числа: дополнительный код · Порядок байтов · 2. Дробные числа: IE","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Как числа, буквы, цвет и звук становятся байтами: беззнаковые и знаковые целые, дополнительный код, IEEE 754 и почему 0.…","t":"Представление данных: целые, дробные (IEEE 754), текст (Unicode), цвет, звук","u":"/post/computer-science/03-data-representation/","w":"2026-07-16"},{"b":"Представления: почему модель «не знает», как выглядит мир Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 21:10 — отсюда взято содержание этой главы. В предыдущей главе мы разобрали, что «обучить модель» — значи…","c":"post","d":"ai-basics","g":["основы ии","представления","эмбеддинги","признаки","смещение данных"],"h":"Цвет — не свойство объекта, а свойство измерителя · Тигр, который оранжевый только для нас · Где кончается техника и начинается философия · ","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Модель видит не объект, а вектор чисел. Что такое признаки и эмбеддинги, почему близость по смыслу превращается в близос…","t":"Представления: почему модель «не знает», как выглядит мир","u":"/post/ai-basics/05-representations/","w":"2026-07-16"},{"b":"Прерывания и реальное время: ISR, приоритеты, гонки, детерминизм Зачем вообще прерывания и почему это не колбэк На сервере вы никогда не писали обработчик прерывания. Не потому, что их нет — их там тысячи в секунду, — а …","c":"post","d":"embedded","g":["встраиваемые системы","прерывания","реальное время","stm32","отладка"],"h":"Зачем вообще прерывания и почему это не колбэк · Что физически происходит при прерывании · Латентность, джиттер и детерминизм · Приоритеты и","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Как устроен вход в прерывание на Cortex-M, откуда берётся латентность и джиттер, почему volatile не спасает от гонок, чт…","t":"Прерывания и реальное время: ISR, приоритеты, гонки, детерминизм","u":"/post/embedded/04-interrupts-and-timing/","w":"2026-07-16"},{"b":"Префиксные деревья, суффиксные массивы и строковые структуры Все структуры, которые мы разбирали до сих пор, относились к ключу как к атомарной точке. Хеш-таблица сминает ключ в одно число и теряет о нём всё остальное. Д…","c":"post","d":"data-structures","g":["структуры данных","строки","деревья","поиск","автоматы"],"h":"Карта территории · Бор: ключ как путь · Сложность и — главное — память · Сжатый бор: убираем цепочки без ветвления · Куда идти дальше по пам","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Что делать, когда ключ — не число, а последовательность: боры и их сжатые формы, автомат Ахо-Корасик для поиска тысячи ш…","t":"Префиксные деревья, суффиксные массивы и строковые структуры","u":"/post/data-structures/09-tries-and-string-structures/","w":"2026-07-16"},{"b":"Приватность и соответствие: персональные данные, минимизация, аудит Четырнадцать предыдущих статей трека отвечали на вопрос «как не дать посторонним получить доступ к данным». Эта — на другой: какие данные вообще имеют п…","c":"post","d":"security","g":["безопасность","приватность","персональные данные","аудит","compliance"],"h":"Что считать персональными данными: почему интуиция подводит · Инвентаризация: карта данных как код · Минимизация: четыре разных приёма, кото","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как инженерно работать с персональными данными: инвентаризация и классификация, минимизация вместо «соберём на всякий сл…","t":"Приватность и соответствие: персональные данные, минимизация, аудит","u":"/post/security/15-privacy-and-compliance/","w":"2026-07-16"},{"b":"Прикладная криптография: симметрика, асимметрика, хеши, подписи, KDF Криптография — единственная часть прикладной безопасности, где математика даёт настоящие гарантии. И одновременно та часть, где эти гарантии чаще всего…","c":"post","d":"security","g":["безопасность","криптография","шифрование","ключи","хеширование"],"h":"Что криптография даёт и чего не даёт · Модель злоумышленника: против чего доказывают стойкость · Фундамент: случайность · Симметричное шифро","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как выбрать и правильно применить криптографический примитив: AEAD вместо самодельного шифрования, HMAC вместо хеша от с…","t":"Прикладная криптография: симметрика, асимметрика, хеши, подписи, KDF","u":"/post/security/09-applied-crypto/","w":"2026-07-16"},{"b":"Принципы и терминология: верификация, валидация, дефект, качество Есть соблазн пролистать статью про термины: «ну баг и баг, все понимают». Проблема в том, что не понимают — и расхождение стоит денег. Типичный диалог на …","c":"post","d":"testing","g":["тестирование","качество","терминология","верификация и валидация","дефекты"],"h":"Ошибка, дефект, сбой: три разные вещи · Верификация и валидация: два разных вопроса · Что такое качество (и почему определение важнее, чем к","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Базовый словарь профессии: чем ошибка отличается от дефекта и сбоя, зачем нужны верификация и валидация, что такое качес…","t":"Принципы и терминология: верификация, валидация, дефект, качество","u":"/post/testing/01-principles-and-terminology/","w":"2026-07-16"},{"b":"Принципы разработки: зачем нужны и как не превратить их в карго-культ Почти каждый разработчик проходит один и тот же путь. Сначала он не знает принципов и пишет код, который через полгода невозможно менять. Потом узнаёт…","c":"post","d":"principles","g":["принципы","проектирование","рефакторинг","инженерная культура"],"h":"1. Зачем вообще нужны принципы · Интуиция: шахматные эвристики · Строгая формулировка: принципы оптимизируют стоимость изменения · Почему ст","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Откуда взялись принципы разработки, какую экономическую задачу они решают, чем принцип отличается от правила и как отлич…","t":"Принципы разработки: зачем нужны и как не превратить их в карго-культ","u":"/post/principles/00-overview/","w":"2026-07-16"},{"b":"Принципы тестирования: пирамида, TDD, BDD, свойства хорошего теста Спросите десять разработчиков, зачем нужны тесты, и девять ответят «чтобы находить баги». Это правда, но это самая скучная и наименее ценная часть правды…","c":"post","d":"principles","g":["принципы","тестирование","tdd","bdd","рефакторинг","качество кода"],"h":"Четыре свойства хорошего теста · Главное правило: проверяйте наблюдаемое поведение, а не устройство · Что считать «единицей» · Пирамида тест","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Зачем на самом деле нужны тесты, как выбрать уровень проверки, что отличает устойчивый тест от хрупкого, и как TDD, BDD …","t":"Принципы тестирования: пирамида, TDD, BDD, свойства хорошего теста","u":"/post/principles/06-testing-principles/","w":"2026-07-16"},{"b":"Принципы, которые проверяет машина: типы, линтеры, архитектурные тесты и quality gates Весь трек до этого места описывал знания, живущие в голове инженера: как назвать функцию, куда направить зависимость, как не сломать …","c":"post","d":"principles","g":["принципы","качество кода","статический анализ","ci","инженерная культура"],"h":"1. Лестница обратной связи: где ловить дефект · 2. Типы: самый дешёвый гейт из существующих · 3. Форматтеры и линтеры: правила без переговор","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Как превратить договорённости о качестве в автоматические проверки: лестница обратной связи, типы как самый дешёвый гейт…","t":"Принципы, которые проверяет машина: типы, линтеры, архитектурные тесты и quality gates","u":"/post/principles/13-principles-in-ci/","w":"2026-07-16"},{"b":"Принятие решений в проекте: типы решений, DACI и RAPID, ADR, эскалация и допуски Предыдущая глава заканчивается там, где на столе лежит набор вариантов: три способа починить производительность, два способа закрыть регуля…","c":"post","d":"management","g":["менеджмент","принятие решений","управление проектами","документация"],"h":"1. Решение как объект управления · 2. Стоимость задержки решения · 3. Кто решает: пять моделей распределения прав · 4. DACI и RAPID: фреймво","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Как проект выбирает один вариант из многих: обратимость и цена задержки, модели распределения прав, DACI и RAPID против …","t":"Принятие решений в проекте: типы решений, DACI и RAPID, ADR, эскалация и допуски","u":"/post/management/12-decision-making/","w":"2026-07-16"},{"b":"Принятие: почему платформу обходят и что с этим делать Пятница, 17:40. Команда checkout чинит расчёт скидки при частичном возврате. Платформенный пайплайн падает на проверке политик: образ подтянул библиотеку с известной…","c":"post","d":"platform-engineering","g":["платформа","принятие","метрики","developer experience","миграции"],"h":"Обход — это арифметика, а не саботаж · Как рождается обход: хроника одной пятницы · Где искать следы: обход невидим по построению · Воронка ","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Обход платформы — не саботаж, а рациональное решение инженера под сроком. Как найти обходы в чужих журналах, разобрать и…","t":"Принятие: почему платформу обходят и что с этим делать","u":"/post/platform-engineering/14-adoption/","w":"2026-07-16"},{"b":"Приоритизация: RICE, ICE, Kano, MoSCoW, WSJF Приоритизация — самый профанируемый навык в продуктовой работе. Её обычно преподают как набор аббревиатур: «посчитай RICE, отсортируй, вот бэклог». Это неверно на уровне поста…","c":"post","d":"product-management","g":["продукт","приоритизация","rice","kano","wsjf"],"h":"1. Задача с первых принципов · 1.1. Почему приоритизация вообще существует · 1.2. Три разные задачи, которые путают · 1.3. Что такое «приори","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Как выбирать, что делать раньше: скоринговые модели RICE и ICE, модель Кано, MoSCoW и WSJF — с формулами, кодом, разборо…","t":"Приоритизация: RICE, ICE, Kano, MoSCoW, WSJF","u":"/post/product-management/03-prioritization/","w":"2026-07-16"},{"b":"Приоритизация: матрица Эйзенхауэра, ABC, MoSCoW, «съешь лягушку» В предыдущей статье — GTD Дэвида Аллена целиком — мы разобрали, как довести список дел до состояния «всё выгружено, всё сформулировано как физическое дейст…","c":"post","d":"time-management","g":["тайм-менеджмент","приоритизация","продуктивность","принятие решений"],"h":"Почему инженеру нельзя просто «работать по списку» · Краткая история: откуда взялись методы · Матрица Эйзенхауэра · Происхождение · Механика","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Честный разбор четырёх классических методов приоритизации: откуда они взялись, как работают, где ломаются у инженера и ч…","t":"Приоритизация: матрица Эйзенхауэра, ABC, MoSCoW, «съешь лягушку»","u":"/post/time-management/04-prioritization/","w":"2026-07-16"},{"b":"Приёмка: как проверить, что сделали именно то, и как избежать споров Приёмка — единственный момент проекта, когда всем становится видно качество анализа. Пока идёт разработка, неточная формулировка выглядит безобидно. На…","c":"post","d":"systems-analysis","g":["аналитика","требования","приёмка","критерии приёмки","качество"],"h":"1. Что такое приёмка и чем она не является · 1.1. Три элемента, без которых приёмки не существует · 1.2. Пять ворот, которые постоянно путаю","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Приёмка как решение, а не мероприятие: основание, доказательство и полномочие; пять разных ворот, которые постоянно пута…","t":"Приёмка: как проверить, что сделали именно то, и как избежать споров","u":"/post/systems-analysis/12-acceptance/","w":"2026-07-16"},{"b":"Провайдеры, фрейминг и цензура Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 01:20:55 — отсюда взято содержание этой главы. Сразу о сроке годности. Всё, что сказано в этой главе про конкретные сервисы, версии …","c":"post","d":"ai-basics","g":["основы ии","провайдеры","цензура","выравнивание","фрейминг"],"h":"Почему два сервиса отвечают по-разному: семь слоёв · Что из этого меняется без предупреждения · Выравнивание: где в модель попадают ценности","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Почему один и тот же вопрос в разных сервисах даёт по-разному окрашенные ответы: состав корпуса, выравнивание, системный…","t":"Провайдеры, фрейминг и цензура","u":"/post/ai-basics/14-providers-and-framing/","w":"2026-07-16"},{"b":"Проверка гипотез: что на самом деле означает p-значение Предыдущая глава — неопределённость и доверительные интервалы — закончилась на том, что у любой оценки по выборке есть разброс, и его надо показывать. Эта глава про…","c":"post","d":"data-analytics","g":["аналитика данных","статистика","проверка гипотез","p-значение","множественные сравнения"],"h":"Что именно спрашивает тест · Нулевая гипотеза — это модель, а не убеждение · p-значение без формул: перестановочный тест · Чего p-значение Н","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Честный разбор проверки гипотез: что p-значение измеряет, что оно НЕ означает, откуда берутся ошибки первого и второго р…","t":"Проверка гипотез: что на самом деле означает p-значение","u":"/post/data-analytics/08-hypothesis-testing/","w":"2026-07-16"},{"b":"Проверка и вывод типов: системы типов, унификация, Хиндли-Милнер В прошлой статье мы научили компилятор отвечать на вопрос «что означает это имя»: построили таблицу символов, разрешили области видимости, связали каждый V…","c":"post","d":"compilers","g":["компиляторы","типы","вывод типов","языки программирования"],"h":"Что такое тип и зачем он компилятору · Оси проектирования: как языки различаются · Правила типизации: формальный язык для «это выражение кор","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Как компилятор доказывает, что программа не сложит число со строкой: суждения типизации, бидирекциональная проверка, уни…","t":"Проверка и вывод типов: системы типов, унификация, Хиндли-Милнер","u":"/post/compilers/05-type-checking/","w":"2026-07-16"},{"b":"Проверка отказом: учения, chaos-эксперименты, game day В понедельник в 11:20 у платёжного сервиса умирает первичный узел базы. У команды есть горячая реплика, автоматическое переключение и документ, где написано «RTO 2 м…","c":"post","d":"sre","g":["надёжность","sre","chaos-engineering","учения","устойчивость"],"h":"Три разные практики, которые постоянно путают · Арифметика латентного дефекта · Уверенность деградирует, а не держится · Сколько девяток вы ","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Резерв, фолбэк и рунбук — это гипотезы, пока их не активировали специально: арифметика латентного дефекта, расчёт радиус…","t":"Проверка отказом: учения, chaos-эксперименты, game day","u":"/post/sre/12-chaos-and-drills/","w":"2026-07-16"},{"b":"Проверка: дата, автор, воспроизводимость Есть два утверждения, которые выглядят одинаково: «Чтобы отключить это поведение, добавьте флаг --legacy-mode». «Чтобы отключить это поведение, добавьте флаг --legacy-mode» — напи…","c":"post","d":"research-skills","g":["поиск информации","источники","доказательность","критическое мышление"],"h":"Пять осей проверки · Ось первая: датировка · Период полураспада: разные знания стареют по-разному · Проверка «жив ли совет» · Ось вторая: ав","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Как отличить «работает» от «работало в 2016 на другой версии»: пять осей проверки источника, период полураспада разных в…","t":"Проверка: дата, автор, воспроизводимость","u":"/post/research-skills/07-verifying-sources/","w":"2026-07-16"},{"b":"Проверяемость: тесты, прогоны и доказательства вместо обещаний Предыдущая глава — «Где агенты врут» — про типологию отказов: что именно ломается и почему. Эта глава про противоядие, и оно ровно одно. Утверждение агента о…","c":"post","d":"ai-agents","g":["ai-агенты","тестирование","проверяемость","ревью","ci"],"h":"Два вида текста в одной ленте · Честная вторая сторона · Лестница свидетельств · Почему рассуждение не заменяет прогон · Конвейер: от утверж","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Почему отчёт агента о поведении кода — это текст о событии, а не событие, как отличить прогон от пересказа прогона, каки…","t":"Проверяемость: тесты, прогоны и доказательства вместо обещаний","u":"/post/ai-agents/10-verification/","w":"2026-07-16"},{"b":"Программирование с нуля: карта курса и честный разговор о профессии Если вы читаете это, скорее всего, вы никогда не писали код. Может быть, вы вообще не уверены, что это слово значит. Это нормально, и это ровно та точка…","c":"post","d":"intro","g":["с нуля","программирование","обучение","карьера","python"],"h":"Что такое программа простыми словами · Что происходит между вами и процессором · Пять кирпичиков, из которых собрано всё · Карта курса · Чес","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Что такое программирование на самом деле, из чего состоит этот курс, сколько времени и сил нужно и кому эта профессия де…","t":"Программирование с нуля: карта курса и честный разговор о профессии","u":"/post/intro/00-overview/","w":"2026-07-16"},{"b":"Программирование, ориентированное на данные: DOP, ECS и массивы Под словами «ориентированный на данные» в индустрии живут два разных движения, и это регулярно ссорит людей, которые на самом деле согласны друг с другом. П…","c":"post","d":"paradigms","g":["парадигмы","данные","производительность","проектирование","ecs"],"h":"Сделка: что отнимаем, что получаем · Часть I. DOP: код отдельно, данные отдельно · Схема отдельно от кода · Часть II. DOD: как данные лежат ","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Парадигма, в которой центр программы — не объект, а данные: отделение кода от данных и схемы от представления, раскладка…","t":"Программирование, ориентированное на данные: DOP, ECS и массивы","u":"/post/paradigms/11-data-oriented/","w":"2026-07-16"},{"b":"Прод на Rust: структура проекта, модули, конфигурация, ошибки в проде Компилятор уже отобрал у вас целый класс проблем: висячие указатели, гонки данных, use-after-free, забытый unlock. Но эта экономия не архитектурная. К…","c":"post","d":"rust","g":["rust","архитектура","продакшн","cargo","observability"],"h":"Что «прод» значит именно для Rust · Модули: приватность как инструмент, а не бюрократия · Крейты и workspace: когда резать · Порты и адаптер","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Как собрать из Rust-кода живой сервис: модули и крейты как инструмент архитектуры, трейты-порты, слоистая конфигурация, …","t":"Прод на Rust: структура проекта, модули, конфигурация, ошибки в проде","u":"/post/rust/12-architecture-production/","w":"2026-07-16"},{"b":"Продакшн-архитектура на TypeScript: слои, DI, БД, устойчивость Знание синтаксиса и типов позволяет писать функции. Продакшн-сервис требует большего: как организовать код, чтобы он оставался изменяемым через два года; как…","c":"post","d":"typescript","g":["typescript","архитектура","di","конфигурация","базы данных"],"h":"Выбор фреймворка: Express против Fastify · Слоистая и гексагональная архитектура · Dependency Injection без «магии» · Конфигурация · Работа ","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Гексагональная архитектура, dependency injection, конфигурация, работа с БД через Prisma, и паттерны устойчивости бэкенд…","t":"Продакшн-архитектура на TypeScript: слои, DI, БД, устойчивость","u":"/post/typescript/06-architecture-production/","w":"2026-07-16"},{"b":"Продакшн-архитектура: слои, зависимости, конфигурация, логирование Есть момент, который переживал каждый Python-проект. Первые полгода всё летит: один файл app.py, пара функций, os.environ читается там, где нужен, соедин…","c":"post","d":"python","g":["python","архитектура","конфигурация","logging","продакшен"],"h":"Что архитектура вообще оптимизирует · Слои и правило зависимостей · Порты — это Protocol, а не абстрактный базовый класс · Как удержать прав","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как собрать Python-сервис, который переживёт три года и десять разработчиков: правило зависимостей и порты через Protoco…","t":"Продакшн-архитектура: слои, зависимости, конфигурация, логирование","u":"/post/python/16-architecture-production/","w":"2026-07-16"},{"b":"Продвижение без маркетолога: контент, комьюнити, репутация, продажи У самостоятельного инженера почти всегда есть навык и почти никогда — поток. Работа заканчивается, и выясняется, что следующей нет: три месяца было неко…","c":"post","d":"business","g":["бизнес","маркетинг","продажи","репутация","фриланс"],"h":"1. Что такое продвижение на самом деле · 1.1. Уравнение потока и его коварство · 2. Три состояния покупателя и два вида спроса · 3. Что имен","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Как инженеру самостоятельно построить поток обращений: чем продвижение отличается от рекламы, какие каналы работают на к…","t":"Продвижение без маркетолога: контент, комьюнити, репутация, продажи","u":"/post/business/08-marketing-basics/","w":"2026-07-16"},{"b":"Продвинутые техники: chain-of-thought, self-consistency, tree-of-thoughts, chain-of-verification В основах промптинга мы разбирали, как объяснить модели, что делать. Эта статья — про то, как дать ей больше вычислений на …","c":"post","d":"ai-engineering","g":["ии-инженерия","prompt engineering","reasoning","llm"],"h":"Интуиция: почему одного прохода мало · 1. Chain-of-Thought: заставить модель писать черновик · Что это · Два варианта · Рабочий промпт: стру","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Как заставить модель тратить больше вычислений на трудную задачу: рассуждение цепочкой, голосование по выборкам, поиск п…","t":"Продвинутые техники: chain-of-thought, self-consistency, tree-of-thoughts, chain-of-verification","u":"/post/ai-engineering/03-advanced-prompting/","w":"2026-07-16"},{"b":"Продвинутые типы, идиомы и обработка ошибок в TypeScript В прошлом файле мы разобрали ядро системы типов. Теперь — «система типов как язык программирования»: условные и отображаемые типы, infer, шаблонные строковые типы.…","c":"post","d":"typescript","g":["typescript","типы","обработка ошибок","идиомы","валидация"],"h":"Conditional types — типы, которые ветвятся · infer — извлечение типов из структур · Mapped types — трансформация каждого поля · Template lit","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Conditional и mapped types, infer, template literal types, satisfies, валидация через Zod и идиоматичная обработка ошибо…","t":"Продвинутые типы, идиомы и обработка ошибок в TypeScript","u":"/post/typescript/03-idioms-and-errors/","w":"2026-07-16"},{"b":"Продвинутый RAG: graph RAG, агентный поиск, контекстное сжатие, кэширование В базовой статье про RAG мы собрали работающий пайплайн: чанкинг → эмбеддинги → гибридный поиск → реранжирование. Он закрывает большую часть зап…","c":"post","d":"ai-engineering","g":["ии-инженерия","rag","поиск","llm"],"h":"Где именно ломается наивный RAG · 1. Contextual retrieval: самый дешёвый большой выигрыш · Проблема в одну строку · Решение · Код · Про стои","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Что делать, когда обычный RAG перестал вытягивать: обогащение чанков контекстом, графовое индексирование, агентные циклы…","t":"Продвинутый RAG: graph RAG, агентный поиск, контекстное сжатие, кэширование","u":"/post/ai-engineering/06-advanced-rag/","w":"2026-07-16"},{"b":"Продвинутый Vim: регистры, макросы, текстовые объекты, буферы, окна, quickfix В первой статье трека мы разобрали модальность и первые команды. На этом уровне Vim выглядит как редактор со странным способом ввода: вместо C…","c":"post","d":"editors","g":["редакторы","vim","терминал","продуктивность"],"h":"Грамматика: оператор + область · Текстовые объекты — то, ради чего стоит остаться · Оператор ! — забытая суперсила · Регистры: где Vim храни","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Как Vim перестаёт быть набором горячих клавиш и становится языком редактирования: грамматика операторов, регистры, макро…","t":"Продвинутый Vim: регистры, макросы, текстовые объекты, буферы, окна, quickfix","u":"/post/editors/02-vim-advanced/","w":"2026-07-16"},{"b":"Продвинутый промптинг: ZS, FS, CoT, CoV, ToT Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 53:53 — отсюда взято содержание этой главы. В предыдущей главе мы разобрали, как устроен один хороший запрос: роль, ко…","c":"post","d":"ai-basics","g":["основы ии","промптинг","chain-of-thought","tree of thoughts","few-shot"],"h":"Структура ответа: линия, цепочка, дерево · Сквозной пример · Ступень 1. Zero-shot: задача без примеров · Ступень 2. Few-shot: несколько прим","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Пять техник промптинга как лестница «дороже — надёжнее»: zero-shot, few-shot, цепочка рассуждений, самопроверка и дерево…","t":"Продвинутый промптинг: ZS, FS, CoT, CoV, ToT","u":"/post/ai-basics/11-advanced-prompting/","w":"2026-07-16"},{"b":"Продолжения и CPS: откуда взялись колбэки, генераторы и async/await Вы пишете строчку: const user = await fetchUser(id); renderProfile(user); И где-то в глубине рантайма происходит вот что: функция останавливается, а всё…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","продолжения","функциональное программирование","компиляторы"],"h":"Что такое продолжение · Дисциплина CPS: функция, которая не возвращает · Правила преобразования · Главная теорема: CPS убивает выбор стратег","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Одно преобразование лямбда-термов, из которого выросли колбэки, промисы, обработка исключений, генераторы и async/await:…","t":"Продолжения и CPS: откуда взялись колбэки, генераторы и async/await","u":"/post/lambda-calculus/12-continuations-and-cps/","w":"2026-07-16"},{"b":"Продуктовая аналитика и принятие решений на данных В https://courses.digitable.life/post/product-management/02-metrics/ мы выбирали, какие числа считать. В https://courses.digitable.life/post/product-management/05-mvp-an…","c":"post","d":"product-management","g":["продукт","аналитика","метрики","эксперименты","данные"],"h":"1. Зачем это нужно: аналитика как экономика информации · 1.1. Решение первично, данные вторичны · 1.2. Ценность информации (EVSI) — почему н","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Как превратить события в решения: модель данных и tracking plan, качество данных, диагностика падения метрик и парадокс …","t":"Продуктовая аналитика и принятие решений на данных","u":"/post/product-management/08-analytics-and-decisions/","w":"2026-07-16"},{"b":"Продуктовая стратегия и роадмап В статье про приоритизацию мы научились сравнивать задачи между собой: RICE, ICE, WSJF. Но у любой формулы приоритизации есть слепое пятно: она ранжирует только то, что уже попало в список…","c":"post","d":"product-management","g":["продукт","стратегия","роадмап","okr","приоритизация"],"h":"1. Что такое стратегия на самом деле · 1.1. Определение через отрицание · 1.2. Ядро стратегии: три обязательных части · 1.3. Иерархия: от ви","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Стратегия как диагноз, направляющая политика и связный набор действий; как из неё вырастает роадмап Now/Next/Later, как …","t":"Продуктовая стратегия и роадмап","u":"/post/product-management/04-strategy-and-roadmap/","w":"2026-07-16"},{"b":"Продуктовые метрики: AARRR, North Star, unit-экономика В https://courses.digitable.life/post/product-management/01-discovery-and-research/ мы выясняли, существует ли проблема. Метрики отвечают на следующий вопрос: измени…","c":"post","d":"product-management","g":["продукт","метрики","unit-экономика","аналитика","retention"],"h":"1. Что такое метрика по существу · 1.1. Метрика — это сжатие с потерями · 1.2. Критерии хорошей метрики · 1.3. Vanity metrics: почему «растё","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Как устроены продуктовые метрики от первых принципов: зачем нужно сжатие реальности в числа, воронка AARRR, выбор North …","t":"Продуктовые метрики: AARRR, North Star, unit-экономика","u":"/post/product-management/02-metrics/","w":"2026-07-16"},{"b":"Проект, продукт и жизненный цикл: фазы, гейты и почему ЖЦ проекта не равен ЖЦ продукта Словосочетание «жизненный цикл» в IT означает три разные вещи, и почти никто не уточняет, какую именно. Продакт говорит о судьбе прод…","c":"post","d":"management","g":["менеджмент","жизненный цикл","управление проектами","процессы"],"h":"1. Проект строго: четыре определения, которые стоит знать точно · 1.1. Что «временность» ломает в продуктовых командах · 2. Три жизненных ци","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Строгие определения проекта, программы и портфеля, разбор трёх разных жизненных циклов — продукта, проекта и разработки …","t":"Проект, продукт и жизненный цикл: фазы, гейты и почему ЖЦ проекта не равен ЖЦ продукта","u":"/post/management/01-project-and-lifecycle/","w":"2026-07-16"},{"b":"Проектирование языков и DSL: синтаксис, ошибки, эргономика Одиннадцать статей мы решали инженерные задачи: как разбить текст на токены, как построить дерево, как вывести типы, как разложить всё это в SSA, соптимизировать…","c":"post","d":"compilers","g":["компиляторы","dsl","проектирование языков","диагностика","эргономика"],"h":"Ступень нулевая: точно ли нужен свой язык · Внутренний DSL: арендуем чужой синтаксис · Проектируем внешний DSL: три итерации одного примера ","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Язык — это интерфейс: когда свой DSL оправдан, а когда достаточно конфига; как проектировать синтаксис, однозначный и дл…","t":"Проектирование языков и DSL: синтаксис, ошибки, эргономика","u":"/post/compilers/12-dsl-design/","w":"2026-07-16"},{"b":"Проектирование: почему нельзя просто сразу начать писать код В предыдущей статье — Требования и аналитика — мы дошли до момента, когда в трекере лежит задача с внятными критериями приёмки. Соблазн очевиден: открыть IDE и…","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","проектирование","архитектура","разработка"],"h":"Что ломается, когда проектирования не было · Два разных занятия, которые называют одним словом · Сколько проектирования нужно: дозировка · И","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Что на самом деле происходит между «задача в спринте» и «первая строчка кода»: какие решения принимаются, кем, в каком в…","t":"Проектирование: почему нельзя просто сразу начать писать код","u":"/post/sdlc-and-career/03-design/","w":"2026-07-16"},{"b":"Производительность .NET: от аллокаций до JIT Сразу обозначим границу. Методология оптимизации — как измерять, как профилировать, как читать флеймграф, как строить нагрузочный тест, что кэшировать и как ускорять базу — жи…","c":"post","d":"csharp","g":["csharp","производительность","память","бенчмарки","gc"],"h":"Порядок действий: что оптимизировать первым · Измерение: BenchmarkDotNet · Аллокации — главная валюта .NET · Span и Memory · Пулы вместо нов","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Специфика оптимизации именно .NET-кода: измерение через BenchmarkDotNet, борьба с аллокациями через Span и пулы, boxing,…","t":"Производительность .NET: аллокации, Span, бенчмарки, GC и JIT","u":"/post/csharp/13-performance-dotnet/","w":"2026-07-16"},{"b":"Производительность БД: планы запросов, индексы, пул соединений, N+1 В подавляющем большинстве бэкендов, которые вы будете чинить, ответ на вопрос «куда ушло время» звучит одинаково: в базу. Не потому, что базы медленные …","c":"post","d":"performance","g":["производительность","базы данных","sql","индексы","postgresql"],"h":"1. Прибор №0: где вообще теряется время · 2. pg_stat_statements: профайлер нагрузки, а не запроса · 3. EXPLAIN ANALYZE: как читать, чтобы не","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Как измерять базу данных вместо того чтобы гадать: pg_stat_statements как профайлер нагрузки, честное чтение EXPLAIN ANA…","t":"Производительность БД: планы запросов, индексы, пул соединений, N+1","u":"/post/performance/08-database-performance/","w":"2026-07-16"},{"b":"Производительность в общей среде: cgroup-троттлинг, steal time и шумные соседи Знакомая картина. Дашборд показывает утилизацию CPU 30 %, памяти — 45 %, ошибок нет, очередей нет. И при этом p99 пилит: базовые 12 мс, а раз…","c":"post","d":"performance","g":["производительность","контейнеры","kubernetes","cgroups","облако"],"h":"1. Пять слоёв, на которых у вас отнимают процессор · 2. Механика CFS bandwidth control: период, квота, потоки · Историческая мина: истечение","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Почему сервис в контейнере пилит по хвосту при 30 % утилизации CPU: механика CFS-квоты по периодам, честное измерение тр…","t":"Производительность в общей среде: cgroup-троттлинг, steal time и шумные соседи","u":"/post/performance/14-shared-environment/","w":"2026-07-16"},{"b":"Производительность и стоимость аналитической нагрузки Один и тот же ответ — «выручка по регионам за 90 дней» — можно получить за 0,8 секунды и полтора цента или за 4 минуты и двенадцать долларов. Разница почти никогда не…","c":"post","d":"data-engineering","g":["данные","производительность","стоимость","sql","оптимизация"],"h":"1. Три ресурса и три модели биллинга · 2. Жизнь запроса: где именно уходит время · 3. Как читать план запроса · 4. Семь рычагов по убыванию ","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Из чего складывается счёт за хранилище данных: модели биллинга, чтение плана распределённого запроса, семь рычагов оптим…","t":"Производительность и стоимость аналитической нагрузки","u":"/post/data-engineering/11-performance-and-cost/","w":"2026-07-16"},{"b":"Производительность конкурентного кода: контеншн, false sharing, закон Амдала Есть эксперимент, который стоит проделать один раз в жизни, чтобы навсегда изменить интуицию. Возьмите сервис, который держит 12 000 запросов в…","c":"post","d":"performance","g":["производительность","конкурентность","многопоточность","профилирование","масштабируемость"],"h":"1. Что именно мы масштабируем: три разных «больше потоков» · 2. Закон Амдала: потолок, который считается до работы · Как измерить $p$, а не ","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Почему добавление потоков перестаёт помогать и начинает вредить: закон Амдала как арифметика потолка, универсальный зако…","t":"Производительность конкурентного кода: контеншн, false sharing, закон Амдала","u":"/post/performance/07-concurrency-performance/","w":"2026-07-16"},{"b":"Производительность мобильного: старт, плавность, батарея, трафик В вебе производительность — это в основном про то, как быстро страница станет интерактивной. Метрики LCP, INP и CLS описывают один сеанс: человек пришёл, п…","c":"post","d":"mobile","g":["мобильная разработка","производительность","профилирование","оптимизация","батарея"],"h":"Четыре бюджета и что их связывает · Правило номер ноль: меряйте в поле, а не на своём телефоне · Старт: самая заметная метрика · Три вида ст","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Четыре бюджета мобильного приложения — время старта, время кадра, энергия и трафик — и как их измерять в поле, а не на ф…","t":"Производительность мобильного: старт, плавность, батарея, трафик","u":"/post/mobile/09-performance/","w":"2026-07-16"},{"b":"Производительность фронтенда: Core Web Vitals, бюджеты, ленивая загрузка Производительность — единственная нефункциональная характеристика, которую пользователь ощущает физически. Он не видит вашу архитектуру и не знает,…","c":"post","d":"frontend","g":["frontend","производительность","core web vitals","оптимизация","мониторинг"],"h":"Почему фронтенд тормозит: три ресурса и один поток · Модель пользователя: четыре вопроса, а не «скорость» · LCP: почему картинка появляется ","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Почему интерфейс тормозит на самом деле, что меряют LCP, INP и CLS, как собрать полевые данные с атрибуцией, поставить б…","t":"Производительность фронтенда: Core Web Vitals, бюджеты, ленивая загрузка","u":"/post/frontend/14-web-performance/","w":"2026-07-16"},{"b":"Производительность: карта трека и методика «измерь, потом чини» Есть два способа сделать систему быстрее. Первый: прочитать статью «10 приёмов ускорения», применить их все и надеяться. Второй: измерить, где уходит время,…","c":"post","d":"performance","g":["производительность","профилирование","бенчмаркинг","оптимизация","наблюдаемость"],"h":"1. «Быстро» — это три разные величины · Среднее — самая бесполезная метрика · 2. Метод: измерь, локализуй, почини, докажи · Закон Амдала как","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Что такое производительность как инженерная дисциплина, почему угадывание всегда проигрывает измерению, какие инструмент…","t":"Производительность: карта трека и методика «измерь, потом чини»","u":"/post/performance/00-overview/","w":"2026-07-16"},{"b":"Производительность: профилирование, JMH, настройка GC, типичные утечки Разговор о производительности в Java почти всегда начинается не с того конца. Кто-то заменяет ArrayList на массив, кто-то расставляет final, кто-то п…","c":"post","d":"java","g":["java","производительность","профилирование","jvm","gc"],"h":"Что именно вы оптимизируете · Четыре уровня наблюдения · JDK Flight Recorder: профайлер, который не жалко держать включённым · async-profile","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как измерять Java-приложение честно: JFR и async-profiler в проде, JMH для микробенчмарков, чтение GC-логов и выбор колл…","t":"Производительность: профилирование, JMH, настройка GC, типичные утечки","u":"/post/java/13-performance/","w":"2026-07-16"},{"b":"Производительность: профилирование, оптимизации, C-расширения, PyPy Разговор про скорость Python почти всегда начинается не с того конца. Кто-то приносит микробенчмарк «Python в 80 раз медленнее C», кто-то советует замен…","c":"post","d":"python","g":["python","производительность","профилирование","оптимизация","cython"],"h":"Правило номер ноль: сначала цель, потом цифра · Модель стоимости CPython: откуда берутся десятки раз · Как мерить, чтобы не обмануть себя · ","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как на самом деле ускоряют Python: модель стоимости CPython, честные замеры, cProfile и py-spy, memray и tracemalloc, ка…","t":"Производительность: профилирование, оптимизации, C-расширения, PyPy","u":"/post/python/13-performance/","w":"2026-07-16"},{"b":"Производство: литография, техпроцессы, выход годных Весь трек до этого места рассматривал кристалл как данность: вот транзистор, вот вентиль, вот конвейер. Эта глава спрашивает, откуда физически берётся кристалл — и обна…","c":"post","d":"hardware","g":["железо","производство","литография","техпроцесс","экономика"],"h":"От слитка к пластине · Как делают слой · Литография как физика · Нанометры, которых нет · Структура транзистора: ответ на утечки · Металлиза","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Как из круглой пластины кремния получается кристалл, почему число в названии техпроцесса давно ничего не измеряет, откуд…","t":"Производство: литография, техпроцессы, выход годных","u":"/post/hardware/14-manufacturing/","w":"2026-07-16"},{"b":"Прокрастинация: настоящие причины и что действительно помогает Есть задача. Вы знаете, что её надо делать. Вы знаете, что откладывание сделает хуже. Вы даже хотите её сделать. И вы её не делаете — вместо этого чистите бэ…","c":"post","d":"time-management","g":["тайм-менеджмент","прокрастинация","мотивация","фокус","продуктивность"],"h":"Что это такое и чем не является · Откуда взялось: короткая история идеи · Механизм первый: отложенная награда обесценивается нелинейно · Мех","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Прокрастинация — не дефицит дисциплины, а сбой регуляции настроения и нелинейное обесценивание отложенной награды. Механ…","t":"Прокрастинация: настоящие причины и что действительно помогает","u":"/post/time-management/10-procrastination/","w":"2026-07-16"},{"b":"Прокси и балансировка: L4 vs L7, nginx, health checks, sticky sessions У вас один DNS-адрес и двадцать серверов. Между ними стоит коробка, которая решает, кому достанется запрос. Эта коробка — самое влиятельное устройств…","c":"post","d":"networking","g":["сети","прокси","балансировка","nginx","диагностика"],"h":"Три разных зверя, которые все называют «прокси» · L4 против L7: где именно проходит разрез · Три способа реализовать L4 · Как отличить L4 от","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Как один адрес превращается в сотню серверов: разрез на L4 и на L7, режимы DSR и DNAT, алгоритмы выбора бэкенда от round…","t":"Прокси и балансировка: L4 vs L7, nginx, health checks, sticky sessions","u":"/post/networking/10-proxies-and-balancing/","w":"2026-07-16"},{"b":"Промежуточное представление: IR, SSA, зачем нужен средний слой К этому месту трека у нас есть дерево, размеченное типами: лексер дал токены, парсер — AST, семантический анализ привязал каждое имя к объявлению, а проверка…","c":"post","d":"compilers","g":["компиляторы","ir","ssa","оптимизации","языки программирования"],"h":"Почему дерева недостаточно · Что называют промежуточным представлением · Трёхадресный код: как выглядит средний слой · Лоуэринг Mini в TAC ·","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Почему после проверки типов дерево выбрасывают: трёхадресный код, базовые блоки и граф потока управления, доминаторы и ф…","t":"Промежуточное представление: IR, SSA, зачем нужен средний слой","u":"/post/compilers/06-intermediate-representation/","w":"2026-07-16"},{"b":"Промпт как спецификация, а не заклинание В чате цена плохого запроса — один прочитанный абзац. Вы читаете ответ, морщитесь, переспрашиваете. Потеряно полминуты. В агенте цена плохого запроса другая. Агент не отвечает тек…","c":"post","d":"ai-agents","g":["ai-агенты","промптинг","спецификация","требования","проверяемость"],"h":"Откуда взялись заклинания · Что здесь значит слово «спецификация» · Путь от намерения к принятому изменению · Семь слотов рабочей спецификац","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Почему в работе с агентом в реальной кодовой базе выигрывает не подбор магических фраз, а текст, из которого можно напис…","t":"Промпт как спецификация, а не заклинание","u":"/post/ai-agents/03-prompt-as-spec/","w":"2026-07-16"},{"b":"Промптинг: RCTF и STAR Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 43:32 — отсюда взято содержание этой главы. До сих пор мы разбирали модель изнутри: как она предсказывает следующий токен, почему у неё нет …","c":"post","d":"ai-basics","g":["основы ии","промптинг","rctf","star","формат ответа"],"h":"Из чего на самом деле состоит вход модели · Заход через людей: почему шаблон вообще помогает · RCTF: четыре слота промпта · Role — роль · Co","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Промпт как структурированный запрос: из чего собирается вход модели, зачем роль, контекст, задача и формат ответа, почем…","t":"Промптинг: RCTF и STAR","u":"/post/ai-basics/10-prompting/","w":"2026-07-16"},{"b":"Пространство поиска, представление решения и фитнес-функция В обзорной статье трека мы договорились, что SBSE — это переформулировка инженерной задачи как задачи поиска. Здесь мы разбираем самый важный и самый недооценён…","c":"post","d":"sbse","g":["sbse","оптимизация","фитнес-функция","пространство поиска","метаэвристики"],"h":"Три вопроса до первой строчки кода · Пространство поиска · Представление решения · Свойства хорошего представления · Trade-off: выразительно","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как превратить инженерную задачу в задачу оптимизации: выбрать кодировку решения, задать соседство и построить фитнес-фу…","t":"Пространство поиска, представление решения и фитнес-функция","u":"/post/sbse/01-search-space-and-fitness/","w":"2026-07-16"},{"b":"Протоколы: UART, I2C, SPI, CAN — как устройства общаются Стек, которого нет Программист «больших» машин привык, что связь начинается со строчки socket(). Под ней лежат семь этажей чужой работы: железо выправляет уровни, …","c":"post","d":"embedded","g":["встраиваемые системы","протоколы","i2c","spi","can"],"h":"Стек, которого нет · Система координат · UART: два провода и вера в кварц · Почему битрейт почти никогда не точный · Приём без потерь · Кадр","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Физика, кадры и отказы четырёх главных шин встраиваемого мира: почему у UART нет тактовой линии, откуда у I2C подтяжки, …","t":"Протоколы: UART, I2C, SPI, CAN — как устройства общаются","u":"/post/embedded/05-communication-protocols/","w":"2026-07-16"},{"b":"Прототипирование и проверка гипотез до разработки Самая дорогая строка в бэклоге — та, про которую все уверены, что она понятна. Её оценили, взяли в спринт, сделали за три недели, выкатили — и выяснили, что операторы под…","c":"post","d":"systems-analysis","g":["аналитика","прототипирование","требования","гипотезы","исследования"],"h":"1. Зачем аналитику прототип: он ловит те же четыре поломки · 1.1. Неявные требования: прототип нельзя нарисовать наполовину · 1.2. Противоре","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как аналитик проверяет требования до того, как за них заплатят разработкой: гипотеза вместо «хотелки», лестница проверок…","t":"Прототипирование и проверка гипотез до разработки","u":"/post/systems-analysis/09-prototyping/","w":"2026-07-16"},{"b":"Профессия тестировщика: роли, грейды, собеседования, развитие Это последняя статья трека, и она про людей, а не про техники. Предыдущие четырнадцать статей отвечали на вопрос «как тестировать». Эта отвечает на вопрос «ке…","c":"post","d":"testing","g":["тестирование","карьера","собеседования","автоматизация","процессы"],"h":"Что тестировщик на самом деле продаёт · Карта ролей: кто вообще есть в QA · Как профессия менялась и куда идёт · Грейды: что реально стоит з","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Как устроена карьера в тестировании: какие бывают роли и чем они реально отличаются, что стоит за грейдами, как проходят…","t":"Профессия тестировщика: роли, грейды, собеседования, развитие","u":"/post/testing/15-qa-career/","w":"2026-07-16"},{"b":"Профилирование CPU: сэмплирование, flame graphs, горячие пути Инженер, который «знает, где тормозит», почти всегда ошибается. Это не оскорбление, а воспроизводимый факт: интуиция натренирована на сложности алгоритма и об…","c":"post","d":"performance","g":["производительность","профилирование","perf","flame graph","pprof"],"h":"1. Профиль против метрики: разные вопросы · 2. Две школы: инструментирование против сэмплирования · 3. Сэмплирование — это статистика, а не ","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Как устроен сэмплирующий профайлер изнутри — от прерывания PMU до развёрнутого стека, как честно читать flame graph и не…","t":"Профилирование CPU: сэмплирование, flame graphs, горячие пути","u":"/post/performance/03-cpu-profiling/","w":"2026-07-16"},{"b":"Процессы и сигналы: fork, exec, каналы, обработка сигналов Когда вы пишете subprocess.run([\"ls\", \"-l\"]) в Python, exec.Command(\"ls\").Output() в Go или Process.Start() в .NET, под этим лежит одна и та же последовательност…","c":"post","d":"systems-programming","g":["системное программирование","c","процессы","сигналы","ipc"],"h":"Что такое процесс с точки зрения C-программиста · fork: один вызов, два возврата · Copy-on-write: почему fork не копирует гигабайты · Буфери","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Как из одной программы на C получаются несколько процессов: fork и copy-on-write, семейство exec, сбор статусов через wa…","t":"Процессы и сигналы: fork, exec, каналы, обработка сигналов","u":"/post/systems-programming/08-processes-and-signals/","w":"2026-07-16"},{"b":"Процессы, потоки и планировщики У вас 8 ядер и 600 работоспособных задач. Кто-то должен каждые несколько миллисекунд отвечать на вопрос «кому отдать ядро прямо сейчас» — и делать это за сотни наносекунд, потому что сам о…","c":"post","d":"operating-systems","g":["операционные системы","процессы","потоки","планировщик","linux"],"h":"Процесс: контейнер ресурсов, а не «запущенная программа» · Поток: контекст исполнения внутри контейнера · Модели потоков: 1:1, N:1, M:N · Ро","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как ОС представляет исполняемую программу, чем поток отличается от процесса, что реально стоит переключение контекста и …","t":"Процессы, потоки и планировщики","u":"/post/operating-systems/03-processes-and-scheduling/","w":"2026-07-16"},{"b":"Работа с бэклогом: уточнение, декомпозиция, пользовательские истории, оценка Есть один вопрос, который безошибочно диагностирует зрелость команды. Спросите на планировании: «Сколько времени вы сейчас потратите на выяснен…","c":"post","d":"scrum-master","g":["scrum","продуктовый бэклог","оценка","scrum-мастер","psm"],"h":"Что Scrum Guide действительно говорит о Product Backlog · Градиент детализации: почему бэклог не список равных задач · Уточнение бэклога: де","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Что Scrum Guide на самом деле говорит о Product Backlog, чем уточнение отличается от отдельной встречи, как резать крупн…","t":"Работа с бэклогом: уточнение, декомпозиция, пользовательские истории, оценка","u":"/post/scrum-master/06-product-backlog/","w":"2026-07-16"},{"b":"Работа с данными: fetch, React Query, кэширование, оптимистичные обновления В предыдущей статье мы разбирали состояние: где его держать, как не протащить контекст через всё дерево, зачем нужны сторы. Но там речь шла о со…","c":"post","d":"frontend","g":["frontend","react","кэширование","http","производительность"],"h":"Серверное состояние не равно клиентскому · Слой платформы: что на самом деле умеет fetch · Ретраи: не «повторить три раза», а экспонента с д","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Серверное состояние против клиентского: честный fetch с отменой и ретраями, гонки в useEffect, устройство кэша запросов,…","t":"Работа с данными: fetch, React Query, кэширование, оптимистичные обновления","u":"/post/frontend/11-data-fetching/","w":"2026-07-16"},{"b":"Работа с данными: JDBC, JPA/Hibernate, транзакции, N+1 и другие ловушки Всё, что мы делали до сих пор, жило внутри одного процесса. Объект создавался, менялся, умирал вместе с JVM. Настоящее приложение устроено иначе: пр…","c":"post","d":"java","g":["java","базы данных","jdbc","hibernate","транзакции"],"h":"Модель исполнения: кто что делает · JDBC: слой, который надо знать даже если вы его не пишете · Батчи: одна главная оптимизация JDBC · Поток","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как устроен путь от объекта до строки в таблице: JDBC и пул соединений, persistence context Hibernate, границы транзакци…","t":"Работа с данными: JDBC, JPA/Hibernate, транзакции, N+1 и другие ловушки","u":"/post/java/11-persistence/","w":"2026-07-16"},{"b":"Работа с данными: numpy, pandas, форматы, типичные ошибки производительности Питон медленный. Это правда ровно до того момента, пока вы не перестаёте писать циклы на Python и не начинаете описывать что нужно сделать с ма…","c":"post","d":"python","g":["python","numpy","pandas","производительность","форматы данных"],"h":"Цена абстракции: почему список чисел — это не массив · C-order, F-order и почему sum(axis=0) иногда вдвое медленнее · Broadcasting: правило,","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как устроен ndarray и почему срез бесплатен, а маска — нет; DataFrame как набор типизированных колонок, Copy-on-Write и …","t":"Работа с данными: numpy, pandas, форматы, типичные ошибки производительности","u":"/post/python/14-data-stack/","w":"2026-07-16"},{"b":"Работа с заказчиком: ожидания, статусы, сложные разговоры, неплатежи Инженеры привычно считают коммуникацию «мягким навыком» — приятным дополнением к настоящей работе. На самостоятельной работе это неверно фактически: ко…","c":"post","d":"business","g":["бизнес","фриланс","коммуникация","заказчик","риски"],"h":"1. Разрыв ожиданий — главная переменная · 2. На той стороне не один человек · 3. Установочный контракт коммуникации · 4. Статусы: ритм, кото","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Как управлять ожиданиями заказчика, вести статусы, которые покупают доверие, проводить тяжёлые разговоры про срыв срока …","t":"Работа с заказчиком: ожидания, статусы, сложные разговоры, неплатежи","u":"/post/business/05-client-communication/","w":"2026-07-16"},{"b":"Работа со стейкхолдерами: конфликты интересов, приоритеты, согласования Требования не лежат в природе готовыми. Они находятся в головах людей, у которых разные цели, разные премии и разный страх быть виноватым. Поэтому «…","c":"post","d":"systems-analysis","g":["аналитика","требования","стейкхолдеры","согласования","приоритизация"],"h":"1. Стейкхолдер — это не «начальник», а источник или владелец требования · 1.1. Четыре типа власти над требованием · 1.2. Круги: кого вспомин","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Как аналитик собирает карту стейкхолдеров, докапывается от позиций до интересов и метрик, диагностирует шесть типов конф…","t":"Работа со стейкхолдерами: конфликты интересов, приоритеты, согласования","u":"/post/systems-analysis/10-stakeholders/","w":"2026-07-16"},{"b":"Рабочее окружение разработчика: инструменты и локальный стенд Новый инженер выходит в понедельник. В 9:30 он получает ноутбук и доступ к репозиторию, в 9:35 делает git clone. Дальше есть два сценария. В первом он открыва…","c":"post","d":"development","g":["development","окружение","инструменты","docker","ide"],"h":"Окружение как продукт: метрика — время от clone до running · Слои окружения · Управление версиями рантайма · Внешние зависимости локально: d","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Как собрать воспроизводимое локальное окружение: слои от рантайма до внешних сервисов, менеджеры версий, docker compose,…","t":"Рабочее окружение разработчика: инструменты и локальный стенд","u":"/post/development/07-dev-environment/","w":"2026-07-16"},{"b":"Рабочий процесс оптимизации: бюджеты, регрессии в CI, когда остановиться Одиннадцать предыдущих статей учили находить и устранять узкие места: мерить перцентили, читать flame graph, ловить N+1, считать промахи кэша, гоня…","c":"post","d":"performance","g":["производительность","ci","измерения","бенчмарки","процессы"],"h":"Три способа проиграть, уже умея оптимизировать · Контур: жизненный цикл одной гипотезы · Бюджет: число, которое превращает «быстрее» в «гото","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Как превратить разовые ускорения в процесс: бюджет производительности как критерий готовности, эшелоны защиты от регресс…","t":"Рабочий процесс оптимизации: бюджеты, регрессии в CI, когда остановиться","u":"/post/performance/12-optimization-workflow/","w":"2026-07-16"},{"b":"Разборы: инцидент, техдолг, найм и очередь как системы Тринадцать предыдущих глав выдавали инструменты поштучно: границы, петли, запасы, задержки, пороги, архетипы, рычаги, проверка диаграмм и пределы моделирования. Эта …","c":"post","d":"systems-thinking","g":["системное мышление","инциденты","техдолг","очереди","найм"],"h":"Одна структура, четыре масштаба времени · Протокол разбора: семь шагов и стоп-правило · Разбор 1: очередь, которая растёт при неизменной наг","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Четыре сквозных разбора по одному протоколу — от референсного режима и границы до петель, задержек, проверяемых предсказ…","t":"Разборы: инцидент, техдолг, найм и очередь как системы","u":"/post/systems-thinking/14-engineering-cases/","w":"2026-07-16"},{"b":"Разработка: ветки, код-ревью, стандарты и Definition of Done На собеседовании вас спросят про алгоритмы. На работе 80% времени вы будете заниматься другим: читать чужой код, выяснять, что имелось в виду в задаче, ждать C…","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","git","код-ревью","разработка"],"h":"Единица работы — не строка кода, а изменение, доехавшее до пользователя · Жизненный цикл задачи: что означают колонки в трекере · Что сделат","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Как устроен этап разработки в реальной команде: жизненный цикл задачи, стратегии ветвления, код-ревью с обеих сторон, ав…","t":"Разработка: ветки, код-ревью, стандарты и Definition of Done","u":"/post/sdlc-and-career/04-development/","w":"2026-07-16"},{"b":"Рандомизированные алгоритмы и вероятностный анализ Есть класс задач, где детерминированное решение либо мучительно сложное, либо мучительно медленное, либо и то и другое — а решение, которое один раз бросает монетку, уме…","c":"post","d":"algorithms","g":["алгоритмы","рандомизированные алгоритмы","вероятность","хеширование","теория чисел"],"h":"1. Таксономия: Las Vegas, Monte Carlo и что между ними · 2. Инструментарий вероятностного анализа · 2.1 Индикаторы и линейность матожидания ","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Почему подбрасывание монетки делает алгоритмы проще и быстрее: Las Vegas против Monte Carlo, индикаторы и линейность мат…","t":"Рандомизированные алгоритмы и вероятностный анализ","u":"/post/algorithms/14-randomized-algorithms/","w":"2026-07-16"},{"b":"Рантайм Go изнутри Go компилируется в нативный код, но это не «C с горутинами». В каждый бинарник линкуется рантайм — несколько мегабайт кода, который живёт рядом с вашей программой и делает три вещи: раскладывает горути…","c":"post","d":"golang","g":["go","рантайм","сборка мусора","память","производительность"],"h":"Что вообще входит в рантайм · Планировщик G-P-M · Зачем понадобилась третья буква · Как P выбирает следующую горутину · Когда горутина теряе","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Как устроены планировщик G-P-M, растущие стеки горутин, escape-анализ, аллокатор и конкурентный GC — и как это знание ме…","t":"Рантайм Go изнутри: планировщик, стеки, escape-анализ и сборщик мусора","u":"/post/golang/09-runtime-and-memory/","w":"2026-07-16"},{"b":"Расписание, зависимости и ресурсы: сетевой график, сжатие срока, критическая цепь Задача «из работ, длительностей и связей получить дату» выглядит решённой в 1957 году: алгоритм критического пути линеен и умещается в три…","c":"post","d":"project-management","g":["управление проектами","планирование","расписание","зависимости","оценка"],"h":"Часть 1. Когда расписание вообще нужно · Часть 2. Из чего сделана сеть: работы, связи, лаги · Часть 3. Два резерва, и почему их путают · Час","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Почему дата из диаграммы Ганта врёт: два разных резерва, ресурсные ограничения и NP-трудность, честная цена сжатия срока…","t":"Расписание, зависимости и ресурсы: сетевой график, сжатие срока, критическая цепь","u":"/post/project-management/14-schedule-dependencies-resources/","w":"2026-07-16"},{"b":"Распределения: почему хвосты важнее центра Описательная статистика закончилась на неприятной ноте: среднее — это сжатие с потерями, и потерять оно может ровно то, ради чего вы считали. Эта глава про то, что именно теряет…","c":"post","d":"data-analytics","g":["аналитика данных","статистика","распределения","перцентили","тяжёлые хвосты"],"h":"1. Распределение — это ответ, а статистика — его сжатие · 2. Зоопарк форм, которые реально встречаются · 3. Что значит «тяжёлый хвост» и поч","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Форма данных решает, какая сводная цифра осмысленна: зоопарк распределений в продуктовых данных, тяжёлые хвосты и их диа…","t":"Распределения: почему хвосты важнее центра","u":"/post/data-analytics/06-distributions/","w":"2026-07-16"},{"b":"Распределённое обучение: от одной видеокарты до кластера В статье про обучение сетей мы разобрали, как заставить модель сойтись, молчаливо предполагая, что всё происходит на одном ускорителе. В статье про инференс — как …","c":"post","d":"neural-networks","g":["нейросети","глубокое обучение","распределённое обучение","gpu","оптимизация"],"h":"1. Три разные причины выйти за пределы одной карты · 1.1 Бюджет памяти: считаем честно · 2. Физика кластера: иерархия каналов · 2.1 MFU — ед","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Что делать, когда модель не влезает в память, а обучение идёт месяц: бюджет памяти шага оптимизатора, коллективные опера…","t":"Распределённое обучение: от одной видеокарты до кластера","u":"/post/neural-networks/12-distributed-training/","w":"2026-07-16"},{"b":"Распределённые системы: карта трека и почему всё ломается иначе Эта статья — вход в трек. Она не пересказывает остальные четырнадцать материалов, а даёт то, без чего они рассыпаются на список алгоритмов: модель мира, в к…","c":"post","d":"distributed-systems","g":["распределённые системы","отказоустойчивость","согласованность","идемпотентность","консенсус"],"h":"1. Определение, которое действительно работает · 2. Карта трека · 3. Третий исход: почему catch не спасает · 4. Тайм-аут — это решение, а не","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Что делает систему распределённой, почему в ней появляется третий исход вместо «получилось» и «не получилось», как читат…","t":"Распределённые системы: карта трека и почему всё ломается иначе","u":"/post/distributed-systems/00-overview/","w":"2026-07-16"},{"b":"Распределённые транзакции: 2PC, saga, outbox, компенсации Локальная транзакция — это соглашение с одним ресурсом: «либо всё, либо ничего, и я тебе честно скажу, что получилось». Соглашение держится на одном физическом фа…","c":"post","d":"distributed-systems","g":["распределённые системы","транзакции","saga","outbox","идемпотентность"],"h":"Задача атомарного коммита — это не консенсус · Двойная запись: самая частая распределённая транзакция, которую никто так не называет · Two-P","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Как сохранить атомарность, когда эффект размазан по нескольким базам и брокерам: почему 2PC блокируется, что на самом де…","t":"Распределённые транзакции: 2PC, saga, outbox, компенсации","u":"/post/distributed-systems/08-distributed-transactions/","w":"2026-07-16"},{"b":"Расследование по истории: log, pickaxe, blame и bisect Десять предыдущих статей трека были про то, как записать историю: объекты, ветки, слияния, переписывание, ревью. Но история пишется не ради архива. Она нужна в тот м…","c":"post","d":"git","g":["git","отладка","инструменты","инциденты"],"h":"Три вопроса и три инструмента · Язык вопросов: выбор ревизий · Почему коммит «пропал» из git log по файлу · Поиск по содержимому: pickaxe · ","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"История нужна не для отчётности, а для расследований: разбираем язык выбора ревизий, упрощение истории (из-за которого к…","t":"Расследование по истории: log, pickaxe, blame и bisect","u":"/post/git/11-history-search/","w":"2026-07-16"},{"b":"Реактивное программирование и dataflow Электронная таблица как самая успешная реактивная система в истории Введите в ячейку A1 число 10, в B1 — формулу =A1*2, в C1 — =B1+A1. Теперь поменяйте A1 на 20. Что вы сделали, что…","c":"post","d":"paradigms","g":["парадигмы","реактивное программирование","потоки данных","асинхронность"],"h":"Электронная таблица как самая успешная реактивная система в истории · Определение через две оси · Немного истории: это старше, чем ваш фронт","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Как работает реактивность изнутри: граф зависимостей, топологическое распространение изменений, глитчи, push против pull…","t":"Реактивное программирование и dataflow","u":"/post/paradigms/06-reactive-and-dataflow/","w":"2026-07-16"},{"b":"Реакция на инцидент: роли, связь, первые действия 03:52. Пейджер сработал по правилу CheckoutErrorRate, и в этот раз это не ерунда: половина платежей падает. Дежурный открывает чат. 04:01 — в канале уже семь человек. Дво…","c":"post","d":"sre","g":["надёжность","sre","инциденты","дежурство","мониторинг"],"h":"Что считать инцидентом: порог, а не ощущение · Уровни серьёзности — это обязательства, а не ярлыки · Почему толпа чинит медленнее: арифметик","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Инцидент — это не «все побежали чинить», а координация: кто командует, кто чинит, кто пишет наружу, почему митигация идё…","t":"Реакция на инцидент: роли, связь, первые действия","u":"/post/sre/07-incident-response/","w":"2026-07-16"},{"b":"Реальное время: WebSocket, SSE, long polling, WebRTC HTTP построен на одном допущении: разговор начинает клиент. Он спрашивает — сервер отвечает и замолкает. Это допущение сделало веб масштабируемым (сервер не помнит кли…","c":"post","d":"networking","g":["сети","websocket","webrtc","http","реальное время"],"h":"Что мы вообще оптимизируем · Эволюция: как индустрия шла к push · Уровень 0: честный короткий polling · Уровень 1: long polling · Уровень 2:","n":"Компьютерные сети","p":"Инфраструктура, инструменты и качество","q":"06","r":"TCP/IP, DNS, HTTP, TLS, QUIC, балансировка, CDN, диагностика.","s":"Четыре способа доставить данные, о которых сервер узнал раньше клиента: от честного опроса и long polling до SSE, кадров…","t":"Реальное время: WebSocket, SSE, long polling, WebRTC","u":"/post/networking/08-websockets-and-realtime/","w":"2026-07-16"},{"b":"Ревью кода от агента: на что смотреть в первую очередь Агент отдал вам диф на восемьсот строк за девять минут. Прочитать его внимательно — сорок минут вашего внимания, и это в хорошем случае, когда вы знаете этот кусок с…","c":"post","d":"ai-agents","g":["ai-агенты","код-ревью","тестирование","качество кода","агенты"],"h":"Три отличия от ревью человеческого кода · Уверенность перестала быть сигналом · Автора нельзя допросить · Объём перестал быть ограниченным ·","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Почему у агентского кода другое распределение дефектов, чем у человеческого, в каком порядке читать такой диф, чтобы не …","t":"Ревью кода от агента: на что смотреть в первую очередь","u":"/post/ai-agents/08-reviewing-ai-code/","w":"2026-07-16"},{"b":"Ревью текста: как читать чужой документ и как принимать правки RFC-14 «Асинхронные вебхуки для партнёров» собрал за четыре дня шестьдесят три комментария от шести ревьюеров. Пятьдесят четыре — про формулировки, оформлени…","c":"post","d":"technical-writing","g":["техническое письмо","документация","ревью","коммуникация","инженерная культура"],"h":"Почему ревью текста ломается чаще, чем ревью кода · Шесть уровней правки и правило порядка · Протокол: три прохода за двадцать минут · Как ч","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Протокол ревью инженерного документа: шесть уровней правки и порядок их прохождения, три прохода за двадцать минут, обра…","t":"Ревью текста: как читать чужой документ и как принимать правки","u":"/post/technical-writing/12-review/","w":"2026-07-16"},{"b":"Редакторы и IDE: карта трека и как выбирать инструмент Редактор — единственная программа, которая открыта у вас все восемь часов рабочего дня. Компилятор запускается пачками, браузер — по делу, мессенджер — когда отвлека…","c":"post","d":"editors","g":["редакторы","vim","vscode","ide","инструменты разработчика"],"h":"Влияет ли редактор на продуктивность вообще? · Анатомия редактора: пять слоёв · Как мы сюда пришли · LSP: почему после 2016 года спор измени","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Как устроены редакторы кода изнутри, почему LSP изменил правила сравнения, сколько реально стоит смена инструмента и по …","t":"Редакторы и IDE: карта трека и как выбирать инструмент","u":"/post/editors/00-overview/","w":"2026-07-16"},{"b":"Рекомендательные системы Все задачи трека до этого момента имели общий вид: есть объект x, нужно предсказать y. Регрессия предсказывала число, деревья и бустинг — класс или число, кластеризация искала структуру без ответ…","c":"post","d":"machine-learning","g":["машинное обучение","рекомендательные системы","ранжирование","коллаборативная фильтрация","матричная факторизация"],"h":"Постановка задачи: три разные задачи под одним словом · Явный и неявный отклик · Разреженность — определяющее свойство данных · Карта подход","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"От матрицы взаимодействий до продакшн-воронки retrieval → ranking: коллаборативная фильтрация, матричная факторизация, i…","t":"Рекомендательные системы","u":"/post/machine-learning/12-recommender-systems/","w":"2026-07-16"},{"b":"Рекуррентные сети, LSTM и GRU В статье о свёрточных сетях мы разобрали архитектуру для данных с пространственной решёткой. Теперь — про данные, у которых есть порядок и переменная длина: текст, речь, логи кликов, показан…","c":"post","d":"neural-networks","g":["нейросети","глубокое обучение","последовательности","rnn","nlp"],"h":"1. Почему обычная сеть не справляется с последовательностью · 2. Vanilla RNN: определение и развёртка · 3. BPTT: обратное распространение ск","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Как сеть обрабатывает последовательности произвольной длины: развёртка во времени, BPTT, проблема исчезающих градиентов …","t":"Рекуррентные сети, LSTM и GRU","u":"/post/neural-networks/04-rnn-and-lstm/","w":"2026-07-16"},{"b":"Рекурсия без имён: комбинатор неподвижной точки Y Вот факториал. Все его писали: const fact = n =\u003e n === 0 ? 1 : n * fact(n - 1); def fact(n): return 1 if n == 0 else n * fact(n - 1) Присмотритесь к правой части. Внутри …","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","рекурсия","комбинаторы","функциональное программирование"],"h":"Идея: пусть функция получит саму себя аргументом · Ручная версия: передаём себя руками · Вывод Y · Полная раскрутка: считаем факториал двойк","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Как написать факториал в языке, где у функций нет имён: приём открытой рекурсии, вывод комбинатора Y с полной раскруткой…","t":"Рекурсия без имён: комбинатор неподвижной точки Y","u":"/post/lambda-calculus/07-recursion-and-y/","w":"2026-07-16"},{"b":"Рекурсия и разделяй-и-властвуй Рекурсия — самый недооценённый инструмент в арсенале. Её либо боятся («сложно отлаживать, съест стек»), либо применяют механически («задача про дерево — значит, рекурсия»). И то и другое ме…","c":"post","d":"algorithms","g":["алгоритмы","рекурсия","разделяй и властвуй","сложность алгоритмов"],"h":"1. Рекурсия — это индукция, записанная как программа · Три условия завершения · Таксономия рекурсивных схем · 2. Что происходит в железе: ка","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Как устроена рекурсия на уровне кадров стека, почему она эквивалентна математической индукции, как проектировать алгорит…","t":"Рекурсия и разделяй-и-властвуй","u":"/post/algorithms/05-recursion-and-divide-conquer/","w":"2026-07-16"},{"b":"Рекурсия, хвостовые вызовы и как не переполнить стек В предыдущих статьях курса мы отказались от мутации: функции стали чистыми (https://courses.digitable.life/post/functional-programming/01-pure-functions/), данные — не…","c":"post","d":"functional-programming","g":["функциональное программирование","рекурсия","хвостовая рекурсия","стек вызовов","оптимизация"],"h":"Сначала боль: RecursionError на ровном месте · Что такое стек вызовов и почему он кончается · Рекурсия — это индукция, а не магия · Хвостово","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Почему в ФП повторение делают рекурсией, как устроен стек вызовов, что такое хвостовой вызов и TCO, как превращать рекур…","t":"Рекурсия, хвостовые вызовы и как не переполнить стек","u":"/post/functional-programming/04-recursion/","w":"2026-07-16"},{"b":"Релиз и сторы: подписи, ревью, поэтапная раскатка, аналитика и крэши В вебе релиз — это операция над сервером, который принадлежит вам. Выкатили, увидели всплеск ошибок, откатили: пять минут, и в проде снова старая верси…","c":"post","d":"mobile","g":["мобильная разработка","релиз","ci-cd","мониторинг","аналитика"],"h":"Чем мобильный релиз отличается от веб-деплоя · Инвариант первый: у вас в проде всегда живёт N версий · Версии и номера сборок: скучное, что ","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Почему мобильный релиз необратим и как с этим жить: версии и номера сборок, две модели подписи, артефакты и символы, бет…","t":"Релиз и сторы: подписи, ревью, поэтапная раскатка, аналитика и крэши","u":"/post/mobile/12-release-and-stores/","w":"2026-07-16"},{"b":"Релиз и эксплуатация: деплой, мониторинг, дежурства, инциденты До этого момента в треке мы шли по фазам, где разработчик — главный герой: требования, проектирование, код, тесты. Всё это заканчивается моментом, когда PR в…","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","процессы разработки","эксплуатация","инциденты"],"h":"Три разных слова, которые путают: билд, релиз, деплой · Окружения и путь артефакта · Стратегии выкатки и их честная цена · Миграции базы дан","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Что происходит с кодом после мержа: как он доезжает до пользователей, как понять, что он сломался, кто отвечает ночью и …","t":"Релиз и эксплуатация: деплой, мониторинг, дежурства, инциденты","u":"/post/sdlc-and-career/06-release-and-operations/","w":"2026-07-16"},{"b":"Реляционная модель, нормализация и SQL как язык Реляционная модель — самая живучая абстракция в истории промышленного софта. Ей больше пятидесяти лет, её многократно хоронили (объектные БД в девяностых, NoSQL в десятых, …","c":"post","d":"databases","g":["базы данных","sql","реляционная модель","нормализация","проектирование данных"],"h":"1. Задача, которую решал Кодд · 2. Отношение: строгое определение и чем оно отличается от таблицы · Ключи · 3. Реляционная алгебра — то, во ","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Откуда взялась реляционная модель, что такое отношение и функциональная зависимость, как нормальные формы устраняют аном…","t":"Реляционная модель, нормализация и SQL как язык","u":"/post/databases/01-relational-model/","w":"2026-07-16"},{"b":"Репликация, шардирование и высокая доступность Есть две принципиально разные операции, которые постоянно склеивают в одно слово «масштабирование». Репликация — это копирование: одни и те же данные лежат на нескольких узл…","c":"post","d":"databases","g":["базы данных","репликация","шардирование","отказоустойчивость","распределённые системы"],"h":"Часть I. Репликация · Что именно копируем: три уровня журнала · Синхронность: где стоит подтверждение и что обещано клиенту · Топологии · Чт","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Как копировать и разрезать данные, чтобы система пережила отказ узла и рост нагрузки: журналы репликации, синхронность, …","t":"Репликация, шардирование и высокая доступность","u":"/post/databases/08-replication-and-sharding/","w":"2026-07-16"},{"b":"Репликация: лидер и последователи, кворумы, конфликты, CRDT Если бы данные никогда не менялись, репликация была бы задачей на scp. Скопировали файл на пять машин, поставили балансировщик — готово. Вся сложность появляетс…","c":"post","d":"distributed-systems","g":["распределённые системы","репликация","кворум","crdt","согласованность"],"h":"Три топологии и один вопрос · Один лидер и последователи · Что именно реплицируется · Синхронно, асинхронно и коварное «полусинхронно» · Ско","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Как данные копируются между узлами: лидер и последователи, кворумы в стиле Dynamo, окно потери подтверждённых записей пр…","t":"Репликация: лидер и последователи, кворумы, конфликты, CRDT","u":"/post/distributed-systems/05-replication/","w":"2026-07-16"},{"b":"Репозитории, единица работы и персистентность без протечек В прошлой статье мы собрали агрегат — кусочек модели, который сам защищает себя от невалидных состояний. Он живёт в памяти, проверяет инварианты и не знает ни сл…","c":"post","d":"ddd","g":["ddd","архитектура","базы данных","orm","транзакции"],"h":"1. Интуиция: иллюзия бесконечной памяти · 2. Репозиторий — на агрегат, а не на таблицу · 3. Unit of Work: транзакция как объект · 4. Полный ","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Как хранить агрегаты в базе так, чтобы домен не знал про SQL: репозиторий, Unit of Work, мэппинг, конкурентность и честн…","t":"Репозитории, единица работы и персистентность без протечек","u":"/post/ddd/04-repositories-and-persistence/","w":"2026-07-16"},{"b":"Решающие деревья Все модели из предыдущих статей трека — линейная и логистическая регрессия, kNN, SVM — основаны на геометрии расстояний и скалярных произведений. Отсюда общие свойства: нужно масштабировать признаки, нуж…","c":"post","d":"machine-learning","g":["машинное обучение","решающие деревья","интерпретируемость","регуляризация","cart"],"h":"Формальная постановка · Как дерево строится: жадная рекурсия · Критерии неоднородности · Реализация с нуля · Категориальные признаки · Пропу","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Как устроены решающие деревья: жадное рекурсивное разбиение, критерии Джини и энтропии, обрезка по сложности, работа с к…","t":"Решающие деревья","u":"/post/machine-learning/06-decision-trees/","w":"2026-07-16"},{"b":"Роадмап портала: как учиться по курсам Digitable На портале лежат несколько сотен материалов, и без карты в них легко утонуть. Эта страница — навигационный центр: она показывает, из чего состоит база знаний, в каком поря…","c":"post","g":["роадмап","обучение","карьера"],"h":"Как устроена база знаний · Ступени и зависимости · 00 · Первые шаги · 01 · Фундамент · 02 · Языки и парадигмы · 03 · Проектирование систем ·","s":"Карта всех треков портала, маршруты под конкретные цели и порядок изучения — от структур данных до продуктовых решений…","t":"Роадмап портала: как учиться по курсам Digitable","u":"/post/roadmap/","w":"2026-07-16"},{"b":"Робототехника: кинематика, управление, ROS, обратная связь Серверный код живёт в мире, где состояние меняется только тогда, когда вы его меняете. Робот живёт в мире, где состояние меняется само: колесо продолжает катитьс…","c":"post","d":"embedded","g":["встраиваемые системы","робототехника","ros","управление","кинематика"],"h":"Робот как иерархия замкнутых контуров · Системы координат: без них не работает вообще ничего · Кинематика манипулятора: прямая, обратная, си","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Как из микроконтроллера, мотора и энкодера получается управляемая машина: системы координат и однородные преобразования,…","t":"Робототехника: кинематика, управление, ROS, обратная связь","u":"/post/embedded/10-robotics/","w":"2026-07-16"},{"b":"Роевой интеллект: муравьиные алгоритмы и PSO В генетических алгоритмах популяция улучшается через отбор и рекомбинацию: хорошие решения скрещиваются, плохие вымирают. Роевой интеллект (swarm intelligence) устроен принцип…","c":"post","d":"sbse","g":["sbse","оптимизация","метаэвристики","алгоритмы"],"h":"Три принципа, из которых состоит любой рой · Часть I. ACO: решение живёт в среде · Двойной мост · Формальная модель · Три варианта, которые ","n":"SBSE и поисковые алгоритмы","p":"Данные, ML и ИИ","q":"05","r":"Генетические алгоритмы, многокритериальная оптимизация, автогенерация тестов, APR.","s":"Как из простых локальных правил и общей памяти рождается глобальный поиск: муравьиные алгоритмы (ACO) для комбинаторных …","t":"Роевой интеллект: муравьиные алгоритмы и PSO","u":"/post/sbse/06-swarm-intelligence/","w":"2026-07-16"},{"b":"Роутинг и стратегии рендеринга: SPA, SSR, SSG, ISR, гидратация В формах мы работали внутри одного экрана. Теперь — про то, как экранов становится много и откуда берётся HTML для каждого из них. Это самая заболтанная и са…","c":"post","d":"frontend","g":["frontend","react","ssr","роутинг","производительность"],"h":"Часть I. Роутинг · Что браузер делает сам и что вы теряете, когда перехватываете навигацию · History API — весь фундамент · Минимальный роут","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Как URL превращается в экран: History API и матчинг маршрутов, каскады запросов и loader'ы, CSR/SSR/SSG/ISR/PPR, стримин…","t":"Роутинг и стратегии рендеринга: SPA, SSR, SSG, ISR, гидратация","u":"/post/frontend/13-routing-and-rendering/","w":"2026-07-16"},{"b":"Руководства и обучающие тексты: разные жанры, разные правила Новый инженер выходит в понедельник. В вики висит страница «Getting started», написанная полгода назад добросовестным человеком: девять экранов, шестнадцать ко…","c":"post","d":"technical-writing","g":["техническое письмо","документация","онбординг","раннбук","обучение"],"h":"Четыре состояния читателя, четыре жанра · Один факт в четырёх жанрах · Почему смешение жанров разрушает оба текста · Пара 0: расщепление сме","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Туториал, инструкция, раннбук и объяснение — четыре жанра с несовместимыми правилами: что обещает каждый, как выглядит в…","t":"Руководства и обучающие тексты: разные жанры, разные правила","u":"/post/technical-writing/09-guides-and-tutorials/","w":"2026-07-16"},{"b":"Рутина и автоматизация: что автоматизировать, а что убрать В команде из шести человек есть операция: раз в две недели кто-то заходит на сервер, продлевает TLS-сертификат, раскладывает его по трём узлам и перезапускает ба…","c":"post","d":"sre","g":["надёжность","sre","автоматизация","процессы","инструменты"],"h":"Что такое рутина и что ею не является · Чем рутина не является · Как измерить: журнал рутины · Порог, за которым команда останавливается · Л","n":"SRE и надёжность","p":"Инфраструктура, инструменты и качество","q":"06","r":"SLI и SLO, бюджет ошибок, алерты и дежурство, разбор инцидентов, деградация вместо отказа и безопасные релизы.","s":"Рутина как измеримая величина, а не жалоба: журнал операций, арифметика окупаемости автоматизации, лестница «убрать — уп…","t":"Рутина и автоматизация: что автоматизировать, а что убрать","u":"/post/sre/14-toil-and-automation/","w":"2026-07-16"},{"b":"Ручное тестирование: исследовательское, смоук, регресс, приёмочное Есть удобный миф: ручное тестирование — временная стадия, которую индустрия проходит по пути к полной автоматизации. Миф удобен всем. Менеджеру он обещае…","c":"post","d":"testing","g":["тестирование","ручное тестирование","исследовательское тестирование","регрессия","качество"],"h":"1. Проблема оракула: почему человека нельзя выкинуть · 2. Карта видов: что чем занимается · 3. Смоук-тестирование: контракт «билд пригоден д","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Что человек умеет делать с продуктом, чего не умеет ни один скрипт: чартеры и сессии исследовательского тестирования, см…","t":"Ручное тестирование: исследовательское, смоук, регресс, приёмочное","u":"/post/testing/04-manual-testing/","w":"2026-07-16"},{"b":"Рынок и конкуренты: сегменты, ICP, TAM/SAM/SOM, позиционирование Трек до этой статьи разбирал вопросы «что болит» (https://courses.digitable.life/post/product-management/01-discovery-and-research/), «как измерить» (https…","c":"post","d":"product-management","g":["продукт","рынок","сегментация","конкурентный анализ","позиционирование"],"h":"1. Зачем продакту считать рынок · 1.1. Число ради решения, а не ради слайда · 1.2. Почему цифра из отчёта не работает · 1.3. Формулировка, к","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Как продакт считает рынок и читает конкурентное поле: сегментация по работе, а не по демографии, профиль идеального клие…","t":"Рынок и конкуренты: сегменты, ICP, TAM/SAM/SOM, позиционирование","u":"/post/product-management/09-market-and-competition/","w":"2026-07-16"},{"b":"Самообслуживание: от заявки в тикете к платформе, которой пользуются Инженеру нужна новая тема в Kafka. Он открывает Jira, находит проект INFRA, выбирает тип «Запрос ресурса», заполняет восемь полей, из которых на четыре…","c":"post","d":"platform-engineering","g":["платформа","developer experience","автоматизация","процессы","метрики"],"h":"Что такое самообслуживание и что им не является · Пять уровней, между которыми выбирают · Что вообще отдают в самообслуживание · Цена заявки","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Как перевести операции из очереди тикетов в самообслуживание: арифметика ожидания, окупаемость платформенной команды, че…","t":"Самообслуживание: от заявки в тикете к платформе, которой пользуются","u":"/post/platform-engineering/04-self-service/","w":"2026-07-16"},{"b":"Сбалансированные деревья: AVL, красно-чёрные, B-деревья Обычное бинарное дерево поиска — прекрасная идея с одним фатальным изъяном: его качество зависит от того, в каком порядке приходят данные. Вставьте в BST последоват…","c":"post","d":"data-structures","g":["структуры данных","деревья","балансировка","базы данных","производительность"],"h":"Карта семейства · Что вообще значит «сбалансированное» · Поворот — единственный примитив, который вам нужен · AVL-деревья: строгий баланс · ","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Как заставить дерево поиска не вырождаться: повороты как базовый примитив, строгий баланс AVL, слабый баланс красно-чёрн…","t":"Сбалансированные деревья: AVL, красно-чёрные, B-деревья","u":"/post/data-structures/07-balanced-trees/","w":"2026-07-16"},{"b":"Сбор задач: инбокс, выгрузка из головы и почему память — плохой планировщик В предыдущей статье трека — Внимание и энергия — мы разбирались, что дефицитный ресурс инженера это не часы, а способность удерживать внимание. …","c":"post","d":"time-management","g":["тайм-менеджмент","продуктивность","gtd","инбокс","внимание"],"h":"Часть 1. Почему память — плохой планировщик · Рабочая память: не столько, сколько кажется · Забывание — это норма, а не сбой · Эффект Зейгар","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Как устроен слой сбора входящих у инженера: почему рабочая память не выдерживает роль планировщика, как построить один и…","t":"Сбор задач: инбокс, выгрузка из головы и почему память — плохой планировщик","u":"/post/time-management/02-capture-and-inbox/","w":"2026-07-16"},{"b":"Сборка и зависимости: от исходника до артефакта Откройте типичный веб-сервис на Node.js и посчитайте строки. Своего кода — 20 тысяч. В node_modules — 40 мегабайт и полторы тысячи пакетов, написанных людьми, которых вы ни…","c":"post","d":"development","g":["development","сборка","зависимости","пакетные менеджеры","воспроизводимость"],"h":"Что вообще делает сборка · Менеджеры пакетов: манифест против lock-файла · Три разных подхода к одной задаче · SemVer по-настоящему · Разреш","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Как исходный код превращается в запускаемый артефакт: стадии сборки, манифесты и lock-файлы, SemVer и разрешение конфлик…","t":"Сборка и зависимости: от исходника до артефакта","u":"/post/development/08-build-and-dependencies/","w":"2026-07-16"},{"b":"Сборка и компоновка: препроцессор, объектные файлы, статические и динамические библиотеки Почему это отдельная профессия, а не деталь реализации В языках с модулями сборка почти невидима: компилятор сам знает, где лежат …","c":"post","d":"systems-programming","g":["системное программирование","c","компоновка","elf","сборка"],"h":"Почему это отдельная профессия, а не деталь реализации · Шаг 1. Препроцессор: текстовая машина, ничего не знающая о C · Защита от повторного","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Что происходит между нажатием make и появлением исполняемого файла: препроцессор как текстовая машина, единица трансляци…","t":"Сборка и компоновка: препроцессор, объектные файлы, статические и динамические библиотеки","u":"/post/systems-programming/05-build-and-linking/","w":"2026-07-16"},{"b":"Сборка мусора: подсчёт ссылок, mark-sweep, поколения, паузы В предыдущей статье ВМ языка Mini начала исполнять байткод, и вместе с первой же строкой let s = \"привет\" + name; в ней появилась куча. Строка не помещается в 8…","c":"post","d":"compilers","g":["компиляторы","сборка мусора","управление памятью","рантайм","производительность"],"h":"Что такое мусор, если говорить точно · Три с половиной способа управлять памятью · Подсчёт ссылок · Реализация для рантайма Mini · Что подсч","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Как рантайм решает, что память больше не нужна: достижимость против живости, подсчёт ссылок и его циклы, трассирующая сб…","t":"Сборка мусора: подсчёт ссылок, mark-sweep, поколения, паузы","u":"/post/compilers/10-garbage-collection/","w":"2026-07-16"},{"b":"Сборка прошивки: тулчейн, стартовый код, компоновщик, образ Первые полгода встраиваемой разработки сборка выглядит как кнопка. Вы нажимаете Build в CubeIDE или в Arduino IDE, откуда-то берётся .bin, кнопка Flash заливает…","c":"post","d":"embedded","g":["встраиваемые системы","сборка","тулчейн","компоновщик","микроконтроллеры"],"h":"Тулчейн — это не компилятор, а шесть программ · Флаги архитектуры: несовпадение не прощается · Библиотека времени исполнения: newlib, nano и","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Что происходит между нажатием Build и мигающим светодиодом: кросс-тулчейн и его флаги, скрипт компоновщика построчно, ст…","t":"Сборка прошивки: тулчейн, стартовый код, компоновщик, образ","u":"/post/embedded/12-build-and-toolchain/","w":"2026-07-16"},{"b":"Сборка фронтенда: Vite, бандлеры, tree-shaking, code splitting, dev-server В прошлой статье мы работали с DOM напрямую — открыли index.html, подключили скрипт, всё поехало. Реальный проект так не живёт: у него сотни моду…","c":"post","d":"frontend","g":["frontend","vite","сборка","производительность","javascript"],"h":"Зачем вообще бандлер, если браузер умеет модули · Конвейер: что происходит между src/ и dist/ · Модули: ESM, CommonJS и почему это до сих по","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Зачем нужен бандлер, если браузер умеет ESM: конвейер сборки, dev-сервер и HMR, tree-shaking и его провалы, разбиение на…","t":"Сборка фронтенда: Vite, бандлеры, tree-shaking, code splitting, dev-server","u":"/post/frontend/07-build-tooling/","w":"2026-07-16"},{"b":"Свободные и связанные переменные, подстановка и захват имён В прошлой статье (https://courses.digitable.life/post/lambda-calculus/01-syntax/) мы научились читать лямбда-выражения: где абстракция, где аппликация, куда тян…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","функциональное программирование","замыкания","интерпретаторы"],"h":"Зачем это программисту, а не логику · Свободные и связанные: интуиция · Одно имя, разные роли · Строгое определение: множество свободных пер","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Разбираем, чем переменная-параметр отличается от переменной из внешнего мира, как правильно подставлять выражение вместо…","t":"Свободные и связанные переменные, подстановка и захват имён","u":"/post/lambda-calculus/02-variables-and-substitution/","w":"2026-07-16"},{"b":"Свой продукт: от идеи к первым платящим, MVP и проверка спроса Услуги — честная, но линейная сделка: перестали работать — перестали получать. Продукт обещает разорвать эту связь: сделали один раз, продали много раз. Обещ…","c":"post","d":"business","g":["бизнес","продукт","mvp","деньги","риски"],"h":"1. Продукт — это повторяемая сделка, а не готовый код · 1.1. Спектр между услугой и продуктом · 1.2. Что меняется в вашей работе · 2. Откуда","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Как инженеру перейти от услуг к собственному продукту: где брать и как фильтровать идеи, чем сильный сигнал спроса отлич…","t":"Свой продукт: от идеи к первым платящим, MVP и проверка спроса","u":"/post/business/06-own-product/","w":"2026-07-16"},{"b":"Связанность, связность и закон Деметры Если из всей теории проектирования вам разрешат унести с собой ровно две идеи — берите эти две. Низкая связанность (coupling) между модулями и высокая связность (cohesion) внутри мо…","c":"post","d":"principles","g":["принципы","связанность","связность","закон деметры","модульность"],"h":"1. Интуиция: почему это вообще важно · 2. Шкала связанности и шкала связности · 2.1 Связанность, снизу вверх (от худшего к лучшему) · 2.2 Св","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Две главные метрики структуры кода — coupling и cohesion: шкалы Константина, коннасценция, метрики Мартина, закон Деметр…","t":"Связанность, связность и закон Деметры","u":"/post/principles/03-coupling-and-cohesion/","w":"2026-07-16"},{"b":"Связные списки: односвязные, двусвязные, кольцевые Связный список — первая структура данных, где мы платим памятью за гибкость. В массиве элементы лежат подряд, и это одновременно его сила (мгновенный доступ по индексу) …","c":"post","d":"data-structures","g":["структуры данных","связные списки","указатели","кэш процессора","lru"],"h":"Анатомия: узел, ссылка, инвариант · Как это лежит в памяти · Три вида списков · Односвязный список: реализация и разбор · Фиктивная голова: ","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Как устроены связные списки, почему они дают O(1) вставку и проигрывают массивам по кэшу, и где их всё ещё применяют в п…","t":"Связные списки: односвязные, двусвязные, кольцевые","u":"/post/data-structures/03-linked-lists/","w":"2026-07-16"},{"b":"Свёрточные сети и компьютерное зрение В прошлой статье мы научились обучать произвольную сеть: оптимизаторы, инициализация, нормализация, регуляризация. Всё это работает для любой архитектуры. Но архитектура — не пустое …","c":"post","d":"neural-networks","g":["нейросети","компьютерное зрение","cnn","глубокое обучение"],"h":"1. Почему полносвязная сеть на картинке безнадёжна · 2. Свёртка строго · 3. Пишем свёртку руками · 4. Пулинг и понижение разрешения · 5. Рец","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Почему на изображениях полносвязная сеть безнадёжна, как устроена свёртка изнутри, что такое рецептивное поле, как эволю…","t":"Свёрточные сети и компьютерное зрение","u":"/post/neural-networks/03-cnn/","w":"2026-07-16"},{"b":"Секреты и ключи: хранение, ротация, Vault, переменные окружения Любая нетривиальная система знает что-то, чего не должна знать её среда: пароль к базе, приватный ключ подписи, ключ платёжного шлюза, токен внешнего API. Э…","c":"post","d":"security","g":["безопасность","секреты","vault","kms","devops"],"h":"Что считать секретом · Модель угроз: где секрет оседает · Антипаттерн нулевой: секрет в исходном коде · Переменные окружения: честный разбор","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как перестать хранить пароли в репозитории: модель угроз секрета, честный разбор переменных окружения, конвертное шифров…","t":"Секреты и ключи: хранение, ротация, Vault, переменные окружения","u":"/post/security/12-secrets-management/","w":"2026-07-16"},{"b":"Семантика как фундамент: нативные элементы против div-супа В обзоре трека мы договорились, что интерфейсом пользуются очень по-разному: глазами и мышью, ушами и клавиатурой, увеличенным до 400% экраном, голосовыми команд…","c":"post","d":"accessibility","g":["доступность","html","семантика","wcag","скринридеры"],"h":"Главная идея: разметка — это API страницы для машин · Как из тегов получается речь: конвейер доступности · Четыре вопроса к каждому элементу","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Почему дерево доступности строится из тегов, что именно ломается при замене button на div и как за пять минут руками про…","t":"Семантика как фундамент: нативные элементы против div-супа","u":"/post/accessibility/02-semantic-foundation/","w":"2026-07-16"},{"b":"Семантический HTML: структура, формы, метаданные и почему теги важны Есть заблуждение: «HTML — простая часть, вся сложность во фреймворках». Оно живёт до первого инцидента, когда форма оплаты не работает в мобильном Safa…","c":"post","d":"frontend","g":["frontend","html","семантика","формы","seo"],"h":"1. Первый принцип: тег — это контракт с платформой · Кто читает вашу разметку · 2. Скелет документа и ориентиры · Заголовки: то, что ломают ","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Как разметка превращается в дерево доступности, ориентиры, формы и превью в мессенджерах — и почему div-суп стоит вам ск…","t":"Семантический HTML: структура, формы, метаданные и почему теги важны","u":"/post/frontend/02-html-semantics/","w":"2026-07-16"},{"b":"Семантический анализ: области видимости, таблицы символов, разрешение имён Парсер из статьи 02 с удовольствием разберёт вот это: fn main() { let total = subtotal + tax; print totl; } Дерево построится безупречно: скобки …","c":"post","d":"compilers","g":["компиляторы","языки программирования","области видимости","таблица символов"],"h":"Что именно проверяет семантический анализ · Почему это отдельная фаза, а не строчка в грамматике · Область видимости: связывание имени с объ","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Фаза, связывающая каждое имя с его объявлением: лексические области видимости, таблица символов, слоты кадра и захват пе…","t":"Семантический анализ: области видимости, таблицы символов, разрешение имён","u":"/post/compilers/04-semantic-analysis/","w":"2026-07-16"},{"b":"Семейство BSD: FreeBSD, OpenBSD, NetBSD, DragonFly — философия и различия Вы почти наверняка каждый день пользуетесь кодом BSD, даже если никогда не устанавливали ни одну из этих систем. Когда вы открываете терминал на m…","c":"post","d":"operating-systems","g":["операционные системы","bsd","freebsd","openbsd","unix"],"h":"Откуда взялись четыре системы · Главное отличие от Linux: base system · Лицензия: чем BSD отличается от GPL на практике · Четыре системы, че","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Почему из одного 386BSD выросли четыре разные операционные системы, что такое base system и чем она отличается от Linux-…","t":"Семейство BSD: FreeBSD, OpenBSD, NetBSD, DragonFly — философия и различия","u":"/post/operating-systems/15-bsd-family/","w":"2026-07-16"},{"b":"Серверная сторона: машина, процесс и жизненный цикл запроса В прошлой главе мы условились: клиент — это UX, сервер — это истина. Теперь посмотрим, как эта истина устроена изнутри. Запрос ушёл с устройства пользователя, п…","c":"post","d":"development","g":["development","backend","клиент-сервер","конкурентность","инфраструктура"],"h":"Три разных значения слова «сервер» · Жизненный цикл HTTP-запроса: от сокета до ответа · Модели конкурентности: как обслужить многих одноврем","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Три значения слова «сервер», подробный разбор пути запроса от сокета до ответа, четыре модели конкурентности и C10K, sta…","t":"Серверная сторона: машина, процесс и жизненный цикл запроса","u":"/post/development/02-server-side/","w":"2026-07-16"},{"b":"Сетевая производительность: RTT, keep-alive, сжатие, батчинг Все предыдущие статьи трека объединяет одно допущение: время тратит работа. Процессор считает, аллокатор ищет блок, база данных перебирает страницы. Оптимизаци…","c":"post","d":"performance","g":["производительность","сети","http","латентность","оптимизация"],"h":"1. Модель времени: из чего складывается сетевой вызов · 2. RTT: единственная величина, которую нельзя оптимизировать · Как измерить RTT чест","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Почему в сети время тратит не код, а количество round-trip'ов: как разложить запрос на DNS/TCP/TLS/TTFB приборами curl и…","t":"Сетевая производительность: RTT, keep-alive, сжатие, батчинг","u":"/post/performance/10-network-performance/","w":"2026-07-16"},{"b":"Сетевой стек операционной системы: от сокета до драйвера Вы пишете conn.Write(data) — и данные оказываются на другом континенте. Между этими двумя событиями лежит, пожалуй, самый сложный подсистемный слой ядра: полтора д…","c":"post","d":"operating-systems","g":["операционные системы","сети","tcp","сокеты","ядро linux"],"h":"Карта территории · Сокет: файловый дескриптор с протоколом внутри · sk_buff: структура, вокруг которой построено всё · Путь наружу: что дела","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Полный путь байта от send() до провода и обратно: сокеты и struct sock, sk_buff и mbuf, TX- и RX-тракт, NAPI и GRO, SYN-…","t":"Сетевой стек операционной системы: от сокета до драйвера","u":"/post/operating-systems/08-networking-stack/","w":"2026-07-16"},{"b":"Синтаксический анализ: грамматики, рекурсивный спуск, приоритеты операторов В прошлой статье мы превратили текст в поток токенов. Это уже победа: let x = 2 + 3 * 4; перестал быть последовательностью байтов и стал последо…","c":"post","d":"compilers","g":["компиляторы","парсеры","грамматики","языки программирования"],"h":"Почему плоского потока токенов недостаточно · Контекстно-свободные грамматики: минимальный необходимый формализм · BNF, EBNF и как читать сп","n":"Компиляторы и языки","p":"Проектирование систем","q":"04","r":"Лексер, парсер, AST, типы, IR, кодоген, VM, сборка мусора, JIT.","s":"Как из плоского потока токенов получается дерево: контекстно-свободные грамматики, BNF, неоднозначность, левая рекурсия,…","t":"Синтаксический анализ: грамматики, рекурсивный спуск, приоритеты операторов","u":"/post/compilers/02-parsing/","w":"2026-07-16"},{"b":"Система команд: контракт между железом и программой Двоичный файл, собранный в 1995 году под x86, запускается на процессоре, спроектированном тридцать лет спустя, где нет ни одного общего транзистора с оригиналом, где вн…","c":"post","d":"hardware","g":["железо","архитектура","процессор","risc-v","ассемблер"],"h":"Архитектура и микроархитектура: линия, которую нельзя размывать · Архитектурное состояние: то, что программа имеет право видеть · Из чего со","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Что именно фиксирует система команд, что она оставляет реализации, как из этого вырастают разные модели вычислений — и п…","t":"Система команд: контракт между железом и программой","u":"/post/hardware/03-isa/","w":"2026-07-16"},{"b":"Система непересекающихся множеств (DSU) Задача, из которой всё выросло Представьте социальную сеть, в которой есть только одно действие — «подружить A и B», и один вопрос — «знакомы ли A и B хотя бы через цепочку общих д…","c":"post","d":"data-structures","g":["структуры данных","dsu","графы","амортизированный анализ"],"h":"Задача, из которой всё выросло · Интуиция: лес представителей · Эвристика 1: объединение по размеру (рангу) · Эвристика 2: сжатие пути · Вар","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Как двумя массивами и двадцатью строками кода получить структуру, которая отвечает на вопрос «связаны ли эти два объекта…","t":"Система непересекающихся множеств (DSU)","u":"/post/data-structures/11-disjoint-set-union/","w":"2026-07-16"},{"b":"Система типов TypeScript: фундамент Синтаксис TypeScript — это JavaScript плюс аннотации. Выучить его — дело часа. Настоящая ценность и настоящая глубина языка — в системе типов. Она устроена иначе, чем в Java или C#, и …","c":"post","d":"typescript","g":["typescript","типы","типизация","основы","обобщения"],"h":"Мысленная модель: типы — это множества значений · Структурная типизация («если крякает как утка») · Примитивы и литеральные типы · any, unkn","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Структурная типизация, union/intersection, generics, unknown/any/never, narrowing и discriminated unions — ядро языка.…","t":"Система типов TypeScript: фундамент","u":"/post/typescript/02-fundamentals/","w":"2026-07-16"},{"b":"Системное мышление: карта трека и зачем это инженеру Профилировщик показал, что сервис упирается в пул соединений к базе: воркеры стоят в ожидании свободного коннекта. Инженер увеличил пул с 20 до 40 — измерение подтверд…","c":"post","d":"systems-thinking","g":["системное мышление","системная динамика","обратная связь","моделирование","инженерная культура"],"h":"Три признака того, что перед вами системная задача · Рабочее определение (и что в него не входит) · Где системное мышление стоит относительн","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Зачем инженеру системная динамика: запасы, потоки, петли и задержки как рабочий инструмент, честный разбор доказательной…","t":"Системное мышление: карта трека и зачем это инженеру","u":"/post/systems-thinking/00-overview/","w":"2026-07-16"},{"b":"Системные архетипы: повторяющиеся ловушки Третий постмортем за полгода начинается словами «мы уже это чинили». Люди другие, сервис другой, формулировка причины другая — а разбор идёт по знакомой колее: был симптом, было …","c":"post","d":"systems-thinking","g":["системное мышление","системная динамика","архетипы","обратная связь","инженерная культура"],"h":"Что такое архетип и чем он не является · Статус знания: это словарь, а не открытие · Карточка архетипа · Протокол применения: от симптома к ","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Каталог повторяющихся системных структур — от починки, которая ломает, до трагедии общего ресурса — с инженерными пример…","t":"Системные архетипы: повторяющиеся ловушки","u":"/post/systems-thinking/09-archetypes/","w":"2026-07-16"},{"b":"Системные вызовы и ввод-вывод: файлы, дескрипторы, буферизация Всё, что программа делает сама, — это арифметика над своей памятью. Сложить два числа, пройти по массиву, вызвать функцию — процессор выполняет это, ни у ког…","c":"post","d":"systems-programming","g":["системное программирование","c","linux","ввод-вывод","файловая система"],"h":"Что такое системный вызов на самом деле · Цена перехода в ядро · Файловый дескриптор: маленькое целое с большими последствиями · Пять вызово","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Как программа на C просит ядро о работе: механика инструкции syscall, три уровня таблиц дескрипторов, короткие записи и …","t":"Системные вызовы и ввод-вывод: файлы, дескрипторы, буферизация","u":"/post/systems-programming/07-syscalls-and-io/","w":"2026-07-16"},{"b":"Системные вызовы и межпроцессное взаимодействие Процесс живёт в изоляции. У него нет доступа к диску, к сетевой карте, к памяти соседа, к системному времени — вообще ни к чему за пределами собственного адресного простран…","c":"post","d":"operating-systems","g":["операционные системы","системные вызовы","ipc","linux","конкурентность"],"h":"Часть I. Системные вызовы · Что физически происходит при переходе · Полный путь одного вызова · Почему это дорого и что сделала с этим Meltd","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Единственная дверь из процесса в ядро: ABI системного вызова, vDSO, EINTR и частичные записи, батчинг через io_uring — и…","t":"Системные вызовы и межпроцессное взаимодействие","u":"/post/operating-systems/07-syscalls-and-ipc/","w":"2026-07-16"},{"b":"Системный и бизнес-анализ: кто такой аналитик и что он реально делает Аналитик — не «писатель ТЗ», не курьер между бизнесом и разработкой и не «человек, который рисует схемы в Miro». Роль существует ради одной вещи: прев…","c":"post","d":"systems-analysis","g":["аналитика","требования","бизнес-анализ","моделирование","документация"],"h":"1. Проблема: два человека знают половину каждый · 1.1. Разрыв, который никто не закрывает по умолчанию · 1.2. Почему ошибка в требованиях до","n":"Системный и бизнес-анализ","p":"Продукт, процесс и люди","q":"07","r":"Требования, документирование, UML и BPMN, интеграции, прототипы, стейкхолдеры, приёмка.","s":"Что за профессия аналитик в IT: какую проблему решает роль, как выглядят её рабочие артефакты — user story, use case, BP…","t":"Системный и бизнес-анализ: кто такой аналитик и что он реально делает","u":"/post/systems-analysis/00-overview/","w":"2026-07-16"},{"b":"Системы инициализации: SysV, systemd, runit, OpenRC, launchd, rc.d в BSD Ядро загрузилось, смонтировало корневую файловую систему, инициализировало драйверы — и оказалось в тупике. У него есть планировщик, но нечего план…","c":"post","d":"operating-systems","g":["операционные системы","systemd","init","linux","bsd","контейнеры"],"h":"Что вообще обязана делать PID 1 · Эволюция: почему у нас столько разных init · SysV init: как это было и почему сломалось · Что здесь принци","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Что обязан делать процесс с PID 1, почему shell-скрипты в /etc/rc.d проиграли, как устроена модель юнитов systemd, чем н…","t":"Системы инициализации: SysV, systemd, runit, OpenRC, launchd, rc.d в BSD","u":"/post/operating-systems/11-init-systems/","w":"2026-07-16"},{"b":"Скринридеры: как они читают страницу, NVDA/VoiceOver на практике У большинства разработчиков картина примерно такая: скринридер — программа, которая читает вслух то, что нарисовано на экране, сверху вниз. Из этой картины…","c":"post","d":"accessibility","g":["доступность","скринридер","nvda","voiceover","aria"],"h":"Скринридер — это клиент API доступности, а не «читалка экрана» · Что происходит между нажатием клавиши и звуком · Виртуальный буфер: почему ","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Как устроен скринридер изнутри: дерево доступности, виртуальный буфер, три курсора и режимы работы. Практический разбор …","t":"Скринридеры: как они читают страницу, NVDA/VoiceOver на практике","u":"/post/accessibility/05-screen-readers/","w":"2026-07-16"},{"b":"Слабый результат: как заметить рано и что делать дальше Почти каждый разговор про увольнение за слабый результат начинается одинаково: «Вообще-то я заметил это ещё осенью». Между «заметил» и «сделал» проходят месяцы, за …","c":"post","d":"engineering-leadership","g":["лидерство","управление людьми","обратная связь","performance review","найм"],"h":"Сразу о качестве доказательств · Что вообще считать слабым результатом · Почему замечают поздно · Ранние сигналы: что наблюдать · Диагностик","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Как руководителю отличить слабый результат от шума, найти настоящую причину, провести диагностический разговор, построит…","t":"Слабый результат: как заметить рано и что делать дальше","u":"/post/engineering-leadership/07-underperformance/","w":"2026-07-16"},{"b":"Слой данных: хранилища глазами прикладного разработчика Эта глава — не про устройство баз данных. Про устройство есть отдельный трек из двадцати глав: там разбирают B-деревья и планы запросов («Индексы и планы запросов»)…","c":"post","d":"development","g":["development","базы данных","sql","orm","миграции"],"h":"Зачем СУБД, если есть файлы · База данных против электронной таблицы · Три термина, которые постоянно путают · Схема как контракт · Как мы с","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Как прикладной разработчик выбирает хранилище, подключается к нему, держит границу транзакции, не попадает в N+1 и меняе…","t":"Слой данных: хранилища глазами прикладного разработчика","u":"/post/development/03-data-layer/","w":"2026-07-16"},{"b":"Смарт-контракты: Solidity, жизненный цикл, тестирование, деплой Название «смарт-контракт» — историческая неудача. Термин придумал Ник Сабо в 1994 году (оригинальный текст), и он не означает ни «умный», ни «контракт» в юр…","c":"post","d":"web3","g":["web3","solidity","смарт-контракты","ethereum","тестирование"],"h":"1. Что такое смарт-контракт технически · 2. Путь вызова: от кнопки до записи в состояние · 3. Solidity: минимум, который надо держать в голо","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Что такое смарт-контракт как программа: модель исполнения без потоков и таймеров, storage и газ, Solidity от типов до на…","t":"Смарт-контракты: Solidity, жизненный цикл, тестирование, деплой","u":"/post/web3/05-smart-contracts/","w":"2026-07-16"},{"b":"Сначала вопрос: какое решение изменится от ответа Продакт написал в чат: «посмотри, пожалуйста, что там с оттоком». Аналитик потратил три дня, собрал витрину, вывел четырнадцать графиков на дашборд и отправил ссылку. Чер…","c":"post","d":"data-analytics","g":["аналитика данных","постановка задачи","принятие решений","метрики","sql"],"h":"Тест на бесполезный вопрос · Ответ → действие, записанное заранее · Пять минут перед SQL · Четыре вида вопросов и почему их путают · Лестниц","n":"Аналитика данных","p":"Данные, ML и ИИ","q":"05","r":"От вопроса к выводу: SQL, распределения, неопределённость, A/B-тесты, причинность, когорты и закон Гудхарта.","s":"Как превратить расплывчатую просьбу «посмотри аналитику» в вопрос, на который данные вправе ответить: тест на смену реше…","t":"Сначала вопрос: какое решение изменится от ответа","u":"/post/data-analytics/01-question-first/","w":"2026-07-16"},{"b":"Снижение размерности: PCA, SVD, t-SNE, UMAP Есть два совершенно разных вопроса, которые почему-то обсуждают в одной главе учебника, и из-за этого рождается половина всех ошибок в теме. Вопрос первый: как сжать признаки, …","c":"post","d":"machine-learning","g":["машинное обучение","снижение размерности","pca","t-sne","umap","визуализация данных"],"h":"Проклятие размерности: что именно ломается · Историческая линия · PCA: три эквивалентных определения · Вывод через множители Лагранжа · Связ","n":"Машинное обучение","p":"Данные, ML и ИИ","q":"05","r":"Все базовые алгоритмы: регрессии, SVM, деревья, ансамбли, кластеризация, MLOps.","s":"Почему в высокой размерности ломается геометрия и как её чинить: линейные проекции (PCA, SVD, случайные проекции) для сж…","t":"Снижение размерности: PCA, SVD, t-SNE, UMAP","u":"/post/machine-learning/09-dimensionality-reduction/","w":"2026-07-16"},{"b":"Собеседование на английском: что спрашивают и как отвечать Восемь лет опыта, платёжный бэкенд, крепкая Java. Скрининг с нанимающим менеджером из Дублина, первые сорок секунд: Interviewer: So, tell me a bit about yourself…","c":"post","d":"engineering-english","g":["английский","собеседования","карьера","коммуникация"],"h":"Что на самом деле проверяет язык · Карта этапов: где именно ломается язык · Скрининг: двадцать минут, где решают не про технологии · Behavio","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Разбор языка собеседования: как устроен ответ на «tell me about yourself», почему «мы» вместо «я» стоит оффера, как дума…","t":"Собеседование на английском: что спрашивают и как отвечать","u":"/post/engineering-english/10-interviews/","w":"2026-07-16"},{"b":"Собственные значения, SVD и матричные разложения В предыдущей статье трека — Матрицы, линейные отображения, определители и системы уравнений — матрица была таблицей чисел, которая умеет умножаться на вектор. Этого достат…","c":"post","d":"mathematics","g":["математика","линейная алгебра","svd","собственные значения","numpy"],"h":"Зачем это программисту: четыре сцены · Часть 1. Собственные значения и векторы · Интуиция: оси, которые преобразование не сбивает · Строгое ","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Собственные векторы как «оси, которые матрица не поворачивает», спектральная теорема, SVD и её геометрия, малоранговые п…","t":"Собственные значения, SVD и матричные разложения","u":"/post/mathematics/07-eigen-and-decompositions/","w":"2026-07-16"},{"b":"Событийная архитектура: брокеры, топики, гарантии доставки Синхронный вызов — это вопрос: «сделай это и скажи мне, что получилось». Событие — это утверждение: «вот что произошло; кому надо — разберётся». Разница выглядит…","c":"post","d":"architecture-patterns","g":["архитектура","событийная архитектура","kafka","асинхронность","идемпотентность"],"h":"1. Что такое «событие» и почему это не просто сообщение · Тонкое или толстое событие · 2. Очередь и лог: два разных примитива · 3. Топики, п","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Как устроена событийная архитектура: чем событие отличается от команды, как работают очереди и логи, что реально означаю…","t":"Событийная архитектура: брокеры, топики, гарантии доставки","u":"/post/architecture-patterns/04-event-driven/","w":"2026-07-16"},{"b":"События Scrum: спринт, планирование, дейли, обзор, ретроспектива Самая частая карикатура на Scrum выглядит так: команда сидит на пяти встречах в неделю, каждый по очереди рассказывает, что делал вчера, раз в две недели п…","c":"post","d":"scrum-master","g":["scrum","psm-i","agile","фасилитация","события scrum"],"h":"Зачем событиям быть событиями: эмпиризм как механика · Спринт: контейнер, а не отрезок календаря · Планирование спринта: три вопроса, один р","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Пять событий Scrum разобраны через задачу, которую каждое решает: что говорит Scrum Guide, что делают команды на практик…","t":"События Scrum: спринт, планирование, дейли, обзор, ретроспектива","u":"/post/scrum-master/04-events/","w":"2026-07-16"},{"b":"Совместимость: как менять то, чем уже пользуются Пока у кода нет потребителей, менять его бесплатно: переименовали, переставили аргументы, удалили поле — компилятор поправит вызовы, тесты позеленеют. Как только появился …","c":"post","d":"principles","g":["принципы","совместимость","версионирование","api","миграции"],"h":"1. Закон Хайрама: контракт — не то, что вы написали в документации · 2. Что является контрактом: полная инвентаризация · 3. Три вида совмест","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Закон Хайрама, виды совместимости, честные границы SemVer, правила эволюции схем данных и БД, совместимость во время вык…","t":"Совместимость: как менять то, чем уже пользуются","u":"/post/principles/11-compatibility-and-contract-evolution/","w":"2026-07-16"},{"b":"Совместная работа: код-ревью в масштабе, соглашения о коммитах, релизы Девять статей трека мы разбирали Git как систему: объекты, DAG, ссылки, слияния, восстановление. Всё это — механика одного репозитория. Но настоящая …","c":"post","d":"git","g":["git","код-ревью","процессы","релизы","командная работа"],"h":"1. Что из «совместной работы» реально живёт в Git · 2. Ревью — это функция от DAG, а не «список файлов» · Повторное ревью после force-push ·","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Ревью, соглашения о коммитах и релизы — это надстройка над одной и той же моделью данных: коммит-DAG, merge-base, теги-о…","t":"Совместная работа: код-ревью в масштабе, соглашения о коммитах, релизы","u":"/post/git/10-collaboration/","w":"2026-07-16"},{"b":"Современные альтернативы: Rust, Zig, Go — когда уходить с C и когда оставаться Двенадцать предыдущих статей трека были про то, как устроен C и что происходит под высокоуровневыми языками: указатели, куча, компоновка, сис…","c":"post","d":"systems-programming","g":["системное программирование","c","rust","zig","go","миграция"],"h":"Сначала разложите «C» на части · Оси сравнения, которые действительно решают · Rust: владение вынесено в систему типов · Чего Rust не даёт ·","n":"Системное программирование на C","p":"Языки и парадигмы","q":"03","r":"Указатели и память, сборка и линковка, системные вызовы, процессы, потоки, ассемблер.","s":"Инженерное сравнение Rust, Zig и Go с C по осям, которые реально решают: гарантии компилятора, рантайм, ABI и FFI, кросс…","t":"Современные альтернативы: Rust, Zig, Go — когда уходить с C и когда оставаться","u":"/post/systems-programming/13-modern-alternatives/","w":"2026-07-16"},{"b":"Созвоны: как участвовать, когда не успеваешь за темпом Типичная сцена. Инженер, который читает исходники Kubernetes без словаря и пишет внятные PR-описания, сорок минут молчит на дизайн-ревью. В конце его спрашивают Any …","c":"post","d":"engineering-english","g":["английский","коммуникация","встречи","аудирование","удалённая работа"],"h":"Почему выключается именно тот, кто хорошо читает · Речь склеена не там, где текст · Карта причин: где именно теряется нить · Что делать до с","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Почему на звонке выключается именно тот, кто прекрасно читает документацию: бюджет внимания, склеенная речь, окно в 200 …","t":"Созвоны: как участвовать, когда не успеваешь за темпом","u":"/post/engineering-english/08-meetings/","w":"2026-07-16"},{"b":"Сообщения об ошибках и логи: как читать чужие и писать свои 03:40. Алерт. В канале инцидента висит строка: 2026-07-16T09:14:22Z ERROR checkout failed to charge card: post https://api.pay/v1/charges: dial tcp 10.0.3.7:443…","c":"post","d":"engineering-english","g":["английский","логирование","отладка","документация","коммуникация"],"h":"Почему это отдельный диалект · Анатомия строки: где заканчивается логгер и начинается человек · Глаголы отказа: карта территории · Сетевые о","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Телеграфный диалект английского, на котором говорят компиляторы, ядро и чужие библиотеки: как разобрать незнакомую строк…","t":"Сообщения об ошибках и логи: как читать чужие и писать свои","u":"/post/engineering-english/03-error-messages/","w":"2026-07-16"},{"b":"Сортировки: от пузырька до Timsort и radix Сортировка — самый изученный алгоритмический сюжет в информатике, и это не случайность. Дональд Кнут посвятил ей целый том «Искусства программирования», а Кормен с соавторами вы…","c":"post","d":"algorithms","g":["алгоритмы","сортировка","разделяй и властвуй","сложность алгоритмов"],"h":"Карта территории · Четыре свойства, по которым сортировки реально различают · Почему O(n log n) — это стена (для сравнений) · Квадратичные: ","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Полный разбор сортировок: почему нижняя граница O(n log n) неизбежна для сравнений, как устроены merge/quick/heap, что н…","t":"Сортировки: от пузырька до Timsort и radix","u":"/post/algorithms/02-sorting/","w":"2026-07-16"},{"b":"Списки, словари и множества: работа с наборами данных До сих пор одна переменная хранила одно значение: возраст, имя, цену. Этого хватает, пока данных мало. Но настоящие задачи выглядят иначе — не «цена товара», а «цены …","c":"post","d":"intro","g":["с нуля","python","структуры данных","списки","словари"],"h":"Три инструмента и три разные задачи · Список: когда важен порядок · Обращение к элементу: индексы · Срезы: взять кусок списка · Изменение сп","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Как хранить не одно значение, а сразу много: списки с индексами и срезами, словари с ключами, множества для уникальности…","t":"Списки, словари и множества: работа с наборами данных","u":"/post/intro/08-collections/","w":"2026-07-16"},{"b":"Сравнение всех методологий: waterfall, RUP, XP, Scrum, Kanban, Scrumban, LeSS, SAFe, Lean Спор «Scrum против Kanban» имеет примерно столько же смысла, сколько спор «молоток против рулетки». Это разные инструменты с разны…","c":"post","d":"project-management","g":["управление проектами","методологии","agile","процессы","выбор процесса"],"h":"Часть 1. Почему обычные сравнения бесполезны · 1.1. Восемь осей, по которым методологии реально различаются · Часть 2. Родословная: кто от к","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Единая система координат для девяти методологий: что каждая фиксирует, какой длины у неё петля обратной связи, сколько о…","t":"Сравнение всех методологий: waterfall, RUP, XP, Scrum, Kanban, Scrumban, LeSS, SAFe, Lean","u":"/post/project-management/12-methodology-comparison/","w":"2026-07-16"},{"b":"Сравнение всех редакторов и IDE: критерии, таблица, сценарии выбора Девять статей трека мы разбирали инструменты по одному: как устроена модальность Vim, что происходит внутри индексатора IntelliJ, почему VS Code разнесё…","c":"post","d":"editors","g":["редакторы","ide","инструменты разработчика","vim","vscode"],"h":"Три группы критериев: возможности, издержки, риски · Что действительно можно измерить и как · Профили вместо рейтингов · Взвешенная оценка: ","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Воспроизводимая методика сравнения редакторов: что можно измерить и как, большая честная матрица инструментов, стоимость…","t":"Сравнение всех редакторов и IDE: критерии, таблица, сценарии выбора","u":"/post/editors/10-comparison/","w":"2026-07-16"},{"b":"Сравнение фреймворков: React, Vue, Svelte, Angular, Solid — что выбрать Мы прошли трек почти целиком: от устройства браузера до тестирования. Теперь можно ответить на вопрос, с которого обычно начинают, — «на чём писать?…","c":"post","d":"frontend","g":["frontend","react","vue","svelte","angular"],"h":"Один вопрос: «что изменилось?» · Граница между компилятором и рантаймом · Одна задача — пять реализаций · React 19 · Vue 3 · Svelte 5 · Angu","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Честное сравнение React, Vue, Svelte, Angular и Solid: три модели обновления DOM, одна задача на пяти фреймворках, где п…","t":"Сравнение фреймворков: React, Vue, Svelte, Angular, Solid — что выбрать","u":"/post/frontend/16-frameworks-comparison/","w":"2026-07-16"},{"b":"Стандартная библиотека вглубь «Батарейки в комплекте» — обещание из обзора, которое в Go выполняется буквально: типичный продакшн-сервис тянет три-четыре внешние зависимости, а всё остальное берёт из стандартной библиоте…","c":"post","d":"golang","g":["go","стандартная библиотека","ввод-вывод","json","шаблоны"],"h":"io.Reader и io.Writer — два метода, на которых держится всё · Контракт Read, который читают невнимательно · Композиция: сила маленьких интер","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Два интерфейса, на которых держится весь ввод-вывод в Go, буферизация и сканирование, потоковый JSON, ловушки времени, з…","t":"Стандартная библиотека вглубь: io, bufio, encoding/json, time, exec, embed и шаблоны","u":"/post/golang/11-stdlib-deep-dive/","w":"2026-07-16"},{"b":"Стандартная библиотека: что в ней есть и почему это стоит знать Есть характерный симптом: разработчик пишет функцию chunked(items, n) на восемь строк, потом group_by, потом свой класс для путей и наконец retry-декоратор.…","c":"post","d":"python","g":["python","стандартная библиотека","logging","сериализация","инструменты"],"h":"Как устроена stdlib · Данные и алгоритмы: где перестать писать свои циклы · heapq и bisect: две библиотеки вместо сортировки · itertools: ле","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Карта стандартной библиотеки Python по задачам: collections и itertools, pathlib и слои I/O, datetime и zoneinfo, json и…","t":"Стандартная библиотека: что в ней есть и почему это стоит знать","u":"/post/python/10-stdlib/","w":"2026-07-16"},{"b":"Стандарты и RFC: язык нормативных документов Типичная сцена. В pull request спорят двое. Один: «в RFC сказано SHOULD, значит рекомендация, можно не делать». Второй: «SHOULD — это “следует”, то есть надо». Через сорок мин…","c":"post","d":"engineering-english","g":["английский","документация","стандарты","коммуникация"],"h":"Нормативный текст не объясняет, а обязывает · BCP 14: одиннадцать слов, на которых держится половина интернета · Как читать требование · Что","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Как читать нормативный английский стандартов и RFC: ключевые слова BCP 14, разница между MUST, SHOULD и MAY, анатомия до…","t":"Стандарты и RFC: язык нормативных документов","u":"/post/engineering-english/02-specs-and-rfc/","w":"2026-07-16"},{"b":"Стартап изнутри: скорость, хаос, риск, опционы, плюсы и минусы В предыдущей статье трека — энтерпрайз изнутри — мы разбирали мир, где решение проходит через четыре согласования, а релиз готовится месяц. Стартап часто опи…","c":"post","d":"sdlc-and-career","g":["карьера","стартап","sdlc","опционы","вознаграждение"],"h":"Что делает стартап стартапом · Деньги: механика, которая определяет вашу работу · Стадии: одна и та же вакансия означает пять разных работ ·","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Стартап — это не офис с самокатами, а компания с ограниченным запасом денег, которая ищет работающую бизнес-модель. Разб…","t":"Стартап изнутри: скорость, хаос, риск, опционы, плюсы и минусы","u":"/post/sdlc-and-career/11-startup/","w":"2026-07-16"},{"b":"Стейкхолдеры, влияние без полномочий и операционка продакта Двенадцать предыдущих статей трека описывали, как принимать правильные продуктовые решения. Эта — про то, почему правильные решения регулярно не доживают до реа…","c":"post","d":"product-management","g":["продукт","стейкхолдеры","коммуникация","процессы","принятие решений"],"h":"1. Влияние без полномочий · 1.1. Почему у продакта нет власти — и почему это разумно · 1.2. Шесть источников влияния · 1.3. Формула доверия ","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Как продакт добивается решений, не имея власти: источники влияния и формула доверия, карта стейкхолдеров и режимы вовлеч…","t":"Стейкхолдеры, влияние без полномочий и операционка продакта","u":"/post/product-management/13-stakeholders-and-influence/","w":"2026-07-16"},{"b":"Стеки, очереди и деки Массив умеет всё: читать по индексу, вставлять в середину, искать. Стек умеет ровно две вещи: положить на верх и снять с верха. Казалось бы, это регресс — мы намеренно отбираем у себя возможности. Н…","c":"post","d":"data-structures","g":["структуры данных","стек","очередь","дек","кольцевой буфер","конкурентность"],"h":"1. Три дисциплины доступа · 2. Стек · 2.1 Инвариант и реализация на массиве · 2.2 Стек на связном списке · 2.3 Стек вызовов: почему рекурсия","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Как дисциплина доступа LIFO/FIFO превращается в кольцевые буферы, монотонные стеки, work-stealing деки и продакшн-очеред…","t":"Стеки, очереди и деки","u":"/post/data-structures/04-stacks-queues-deques/","w":"2026-07-16"},{"b":"Стили API: REST, GraphQL, gRPC, вебхуки и версионирование API — это единственная часть системы, которую вы не можете отрефакторить в одиночку. Внутренний код принадлежит вам: переименовали класс, прогнали тесты, поехали.…","c":"post","d":"architecture-patterns","g":["архитектура","api","rest","grpc","graphql","версионирование"],"h":"1. Оси выбора: чем стили реально отличаются · 2. REST: не «HTTP с JSON», а ресурсная модель · Семантика методов: таблица, которую стоит помн","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Как выбирать между ресурсным REST, RPC-стилем gRPC, графовым GraphQL и push-моделью вебхуков, что на самом деле означает…","t":"Стили API: REST, GraphQL, gRPC, вебхуки и версионирование","u":"/post/architecture-patterns/07-api-styles/","w":"2026-07-16"},{"b":"Стоимость инфраструктуры: облако против своего железа, FinOps, реальные расчёты Предыдущие четыре статьи трека разбирали площадки: https://courses.digitable.life/post/devops/11-aws/, https://courses.digitable.life/post/d…","c":"post","d":"devops","g":["devops","финансы","облака","инфраструктура","стоимость"],"h":"Первый принцип: за что вообще берут деньги · Считаем TCO своего железа честно · Главная переменная: коэффициент загрузки · Скрипт, который с","n":"CI/CD, инфраструктура и облака","p":"Инфраструктура, инструменты и качество","q":"06","r":"Jenkins, GitHub Actions, Docker, Kubernetes, Terraform, AWS/Azure/GCP, VPS, наблюдаемость.","s":"Как честно посчитать стоимость инфраструктуры: TCO своего железа против облачного счёта, коэффициент загрузки как главны…","t":"Стоимость инфраструктуры: облако против своего железа, FinOps, реальные расчёты","u":"/post/devops/15-cloud-cost-and-tradeoffs/","w":"2026-07-16"},{"b":"Стоимость: учёт расходов, лимиты и разговор с командами о деньгах В марте счёт за облако был 186 000 USD. В октябре — 264 000 USD. Выручка за это время выросла на 9 %. Финансовый директор приходит к директору по инженери…","c":"post","d":"platform-engineering","g":["платформа","стоимость","finops","облако","метрики"],"h":"Три счёта, которые обычно путают · Почему анонимный расход всегда растёт · Учёт: как из счёта провайдера сделать адресный счёт · Разметка — ","n":"Платформенная инженерия","p":"Инфраструктура, инструменты и качество","q":"06","r":"Внутренняя платформа как продукт: золотой путь, самообслуживание, опыт разработчика, стоимость владения и принятие командами.","s":"Как платформа делает расход адресным: разметка и разнесение общих затрат, юнит-экономика вместо абсолютного счёта, квоты…","t":"Стоимость: учёт расходов, лимиты и разговор с командами о деньгах","u":"/post/platform-engineering/11-cost/","w":"2026-07-16"},{"b":"Стратегии ветвления: trunk-based, GitFlow, GitHub Flow — что когда Спор о стратегиях ветвления — один из немногих технических споров, где обе стороны обычно правы и обе говорят не о том. «GitFlow — это оверинжиниринг» и …","c":"post","d":"git","g":["git","ветвление","code review","ci-cd","процессы"],"h":"Ветка — это указатель, а не копия · Настоящая единица измерения: расхождение, а не количество веток · Три топологии на одной шкале · GitHub ","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Ветка — это 41 байт, поэтому платите вы не за ветки, а за расхождение: разбираем trunk-based, GitHub Flow, GitFlow и rel…","t":"Стратегии ветвления: trunk-based, GitFlow, GitHub Flow — что когда","u":"/post/git/03-branching-strategies/","w":"2026-07-16"},{"b":"Стратегии вычисления: нормальный порядок, аппликативный, ленивость К этому моменту у нас есть всё, чтобы считать: правила редукции (https://courses.digitable.life/post/lambda-calculus/03-reductions/), числа (https://cour…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","функциональное программирование","ленивые вычисления","интерпретаторы"],"h":"Зачем это программисту: три знакомые ситуации · Где вообще есть выбор: редексы · Полная раскрутка: один пример, два пути · Аппликативный пор","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Почему одно и то же лямбда-выражение может завершиться или зациклиться в зависимости от того, какой редекс вы сократили …","t":"Стратегии вычисления: нормальный порядок, аппликативный, ленивость","u":"/post/lambda-calculus/08-evaluation-strategies/","w":"2026-07-16"},{"b":"Стратегический DDD: домен, поддомены, единый язык Есть проекты, где каждая новая фича даётся всё тяжелее, хотя команда растёт. Код формально чистый: слои разделены, тесты зелёные, линтер молчит. Но разговор с бизнесом ка…","c":"post","d":"ddd","g":["ddd","архитектура","моделирование","единый язык"],"h":"Интуиция: DDD как картография, а не как архитектура · Словарь: домен, поддомен, модель, пространство задач и решений · Поддомены: как их нах","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Как разобрать бизнес на поддомены, отличить ядро от инфраструктурного шума и построить единый язык, который живёт одновр…","t":"Стратегический DDD: домен, поддомены, единый язык","u":"/post/ddd/01-strategic-design/","w":"2026-07-16"},{"b":"Стратегия автоматизации: пирамида, ROI, что автоматизировать не надо Почти в каждой команде рано или поздно происходит один и тот же разговор. Регресс занимает три дня, релизы задерживаются, кто-то произносит: «нам нужна…","c":"post","d":"testing","g":["тестирование","автоматизация","пирамида тестирования","стратегия","ci"],"h":"Что вы на самом деле покупаете · Где расходятся взгляды разработчика и тестировщика · Пирамида: что она на самом деле утверждает · Пирамида ","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Как решать, какие проверки автоматизировать, а какие нет: что на самом деле утверждает пирамида тестирования, как считат…","t":"Стратегия автоматизации: пирамида, ROI, что автоматизировать не надо","u":"/post/testing/12-automation-strategy/","w":"2026-07-16"},{"b":"Строковые алгоритмы: KMP, Z-функция, Ахо–Корасик, хеширование Строки — это единственная структура данных, с которой вы гарантированно работаете каждый день: логи, HTTP-заголовки, ДНК, исходный код, тексты сообщений, сигн…","c":"post","d":"algorithms","g":["алгоритмы","строки","хеширование","автоматы","поиск"],"h":"Карта области · Почему наивный поиск плох и когда он всё-таки хорош · Бордеры: центральное понятие · Префикс-функция · Вычисление за O(n) · ","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Как перестать сравнивать строки наивно: префикс-функция и KMP, Z-функция, автомат Ахо–Корасика для множества образцов, п…","t":"Строковые алгоритмы: KMP, Z-функция, Ахо–Корасик, хеширование","u":"/post/algorithms/11-string-algorithms/","w":"2026-07-16"},{"b":"Структура: как расположить материал, чтобы его прочли Три часа ночи, алерт payments_5xx_rate. Дежурный открывает раннбук и видит: «Введение», «Архитектура сервиса», «Используемые технологии», «Мониторинг», «Типовые пробл…","c":"post","d":"technical-writing","g":["техническое письмо","документация","структура текста","инженерная культура"],"h":"Порядок автора против порядка читателя · Первый экран: три вопроса за пять секунд · Слои: документ читают на четырёх глубинах · Заголовки — ","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Порядок доступа вместо порядка изложения: инвертированная пирамида, первый экран, слои детализации, заголовки-утверждени…","t":"Структура: как расположить материал, чтобы его прочли","u":"/post/technical-writing/02-structure/","w":"2026-07-16"},{"b":"Структурированный вывод: JSON-схемы, function calling, валидация и восстановление Модель генерирует текст. Ваш код работает с типами. Между ними — граница, на которой ломается больше LLM-приложений, чем на любой другой: …","c":"post","d":"ai-engineering","g":["ии-инженерия","структурированный вывод","json schema","function calling","валидация"],"h":"1. Четыре уровня гарантий · 2. Почему это работает: маска логитов · На своих весах · 3. JSON Schema в API провайдера · Что реально поддержив","n":"ИИ-агенты и prompt engineering","p":"Данные, ML и ИИ","q":"05","r":"Промптинг, CoT/ToT, RAG, ReAct, MCP, бенчмарки, локальные модели, prompt injection.","s":"Как превратить текстовый выход модели в типизированные данные: ограниченное декодирование, JSON Schema, strict tool use,…","t":"Структурированный вывод: JSON-схемы, function calling, валидация и восстановление","u":"/post/ai-engineering/04-structured-output/","w":"2026-07-16"},{"b":"Структурные паттерны: Adapter, Decorator, Facade, Proxy, Composite Порождающие паттерны (см. Порождающие паттерны) отвечали на вопрос «откуда взялся объект». Структурные отвечают на следующий: «как объекты соединены межд…","c":"post","d":"design-patterns","g":["паттерны проектирования","ооп","композиция","рефакторинг","архитектура"],"h":"Карта раздела · Adapter: разъём не подходит · Интуиция · Строго · Код · Типичные ошибки · В проде · Decorator: то же самое, но ещё и…","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Как из мелких объектов собирают большие структуры: обёртки, деревья и мосты — с рабочим кодом, разбором стоимости косвен…","t":"Структурные паттерны: Adapter, Decorator, Facade, Proxy, Composite","u":"/post/design-patterns/02-structural/","w":"2026-07-16"},{"b":"Структуры данных: карта трека и как выбирать структуру под задачу Есть распространённое заблуждение, что структуры данных — это школьная тема «для собеседований»: выучил, что у хеш-таблицы вставка O(1), а у списка поиск …","c":"post","d":"data-structures","g":["структуры данных","алгоритмы","производительность","модель памяти"],"h":"Часть 1. Что такое структура данных на самом деле · Абстрактный тип данных ≠ структура данных · Структура данных — это способ заранее заплат","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Обзорная статья трека: что такое структура данных как инженерный выбор, по каким осям структуры различаются, как выбират…","t":"Структуры данных: карта трека и как выбирать структуру под задачу","u":"/post/data-structures/00-overview/","w":"2026-07-16"},{"b":"Суперскалярность и внеочередное исполнение Простой конвейер из предыдущей главы упирается в потолок, который виден прямо из его устройства: одна инструкция за такт, и ни одной больше. Любая зависимость по данным, любой п…","c":"post","d":"hardware","g":["железо","микроархитектура","процессор","внеочередное исполнение","производительность"],"h":"Две независимые идеи, которые постоянно путают · Терминология, без которой дальше будет путаница · Потолок in-order: почему ширина сама по с","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Как ядро выдаёт несколько операций за такт и исполняет их в порядке готовности данных: переименование регистров, окно ин…","t":"Суперскалярность и внеочередное исполнение","u":"/post/hardware/07-superscalar-and-ooo/","w":"2026-07-16"},{"b":"Схемы в документах: когда рисовать и что именно 03:40, деградация оплаты. Дежурный открывает страницу вики «Архитектура биллинга»: двадцать три прямоугольника, тридцать одна стрелка, нарисовано в draw.io полтора года наз…","c":"post","d":"technical-writing","g":["техническое письмо","документация","диаграммы","архитектура","визуализация"],"h":"Схема отвечает на вопрос, а не «показывает систему» · Что глаз делает лучше текста, а что заметно хуже · Три разбора: плохая версия и перепи","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Схема — такое же утверждение с адресатом и решением, как абзац: она отвечает на один вопрос одного читателя или не нужна…","t":"Схемы в документах: когда рисовать и что именно","u":"/post/technical-writing/10-diagrams/","w":"2026-07-16"},{"b":"Тайм-менеджмент для инженера: карта курса и почему «просто соберись» не работает Этот трек — не про «успех», не про вставание в 5 утра и не про то, как впихнуть в день 14 часов работы. Он про одну конкретную профессионал…","c":"post","d":"time-management","g":["тайм-менеджмент","продуктивность","фокус","выгорание"],"h":"Почему «просто соберись» не работает · 1. Проблема в топологии дня, а не в объёме усилий · 2. Среда съедает дисциплину на завтрак · 3. Сила ","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Обзорная статья трека: почему личная продуктивность разработчика — инженерная задача о потоках и очередях, а не о силе в…","t":"Тайм-менеджмент для инженера: карта курса и почему «просто соберись» не работает","u":"/post/time-management/00-overview/","w":"2026-07-16"},{"b":"Тактические блоки: сущности, объекты-значения, агрегаты, сервисы В стратегическом DDD мы решали, какие модели вообще нужно строить, а в ограниченных контекстах — где проходят их границы. Теперь мы внутри одного контекста…","c":"post","d":"ddd","g":["ddd","архитектура","моделирование","агрегаты","объекты-значения"],"h":"1. Карта блоков: кто кому подчиняется · 2. Value Object: самый недооценённый блок · 2.1. Интуиция · 2.2. Три обязательных свойства · 2.3. Ко","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Строительные элементы доменной модели изнутри: чем сущность отличается от значения, зачем агрегату граница, где живёт ло…","t":"Тактические блоки: сущности, объекты-значения, агрегаты, сервисы","u":"/post/ddd/03-tactical-building-blocks/","w":"2026-07-16"},{"b":"Текст в интерфейсе: формулировки, сообщения об ошибках, тон Откройте любой экран своего продукта и мысленно удалите с него весь текст. Останутся прямоугольники, иконки и отступы — и ни одного способа понять, что здесь пр…","c":"post","d":"ux-design","g":["дизайн","ux","микрокопия","формы","тексты"],"h":"Первый принцип: текст отвечает на вопрос, который у человека уже есть · Карта слотов: где именно живёт текст · Разбор №1: почему пользовател","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как писать интерфейсные тексты как часть конструкции продукта: слоты микрокопии, разбор неудобных форм и ненайденных кно…","t":"Текст в интерфейсе: формулировки, сообщения об ошибках, тон","u":"/post/ux-design/09-microcopy/","w":"2026-07-16"},{"b":"Текстовые альтернативы: alt, сложная графика, SVG и таблицы данных До сих пор трек был про устройство интерфейса: семантику, ARIA, фокус, визуальные параметры. Эта статья — про его содержание: про всё, что вы нарисовали,…","c":"post","d":"accessibility","g":["доступность","a11y","wcag","html","изображения"],"h":"Что такое текстовая альтернатива · Дерево решений: какой alt нужен этой картинке · Каталог случаев с кодом · Как вычисляется имя изображения","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Как превратить в текст то, что нарисовано: дерево решений для alt, каталог случаев с кодом, длинные описания для графико…","t":"Текстовые альтернативы: alt, сложная графика, SVG и таблицы данных","u":"/post/accessibility/10-text-alternatives/","w":"2026-07-16"},{"b":"Теория вероятностей и статистика для инженера Предыдущие статьи трека были про мир, в котором всё определено: множество либо содержит элемент, либо нет; программа либо останавливается, либо нет; язык либо регулярен, либо…","c":"post","d":"mathematics","g":["математика","вероятность","статистика","a/b-тесты","numpy"],"h":"Карта статьи · Часть 1. Вероятностное пространство · Интуиция: мера на множестве исходов · Строгое определение (Колмогоров, 1933) · Зачем ну","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"От аксиом Колмогорова и формулы Байеса до доверительных интервалов, A/B-тестов, концентрационных неравенств и перцентиле…","t":"Теория вероятностей и статистика для инженера","u":"/post/mathematics/14-probability-and-statistics/","w":"2026-07-16"},{"b":"Теория вычислений для всех: автоматы, машина Тьюринга и что нельзя вычислить В статье https://courses.digitable.life/post/computer-science/01-what-is-computation/ мы выяснили, что вообще значит «вычислить»: механически п…","c":"post","d":"computer-science","g":["computer science","теория вычислений","автоматы","машина тьюринга","вычислимость"],"h":"Задача как язык: почему теоретики говорят про множества строк · Ступень 1. Конечный автомат: машина вообще без памяти · Регулярные языки = р","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Лестница абстрактных машин от конечного автомата до машины Тьюринга, иерархия языков Хомского, разница между «разрешимо»…","t":"Теория вычислений для всех: автоматы, машина Тьюринга и что нельзя вычислить","u":"/post/computer-science/15-theory-of-computation/","w":"2026-07-16"},{"b":"Теория вычислимости: машина Тьюринга, лямбда-исчисление, проблема остановки Каждый инженер рано или поздно упирается в стену, которая выглядит как баг, но багом не является. Линтер не ловит очевидную бесконечную петлю. К…","c":"post","d":"mathematics","g":["математика","вычислимость","машина тьюринга","лямбда-исчисление","неразрешимость"],"h":"Зачем это программисту: четыре сцены · Что вообще значит «вычислимо» · Машина Тьюринга: строгое определение · Разбираем машину руками · Симу","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Что значит «вычислимо»: машина Тьюринга со строгим определением и работающим симулятором, лямбда-исчисление с нумералами…","t":"Теория вычислимости: машина Тьюринга, лямбда-исчисление, проблема остановки","u":"/post/mathematics/11-computability/","w":"2026-07-16"},{"b":"Теория графов: структуры, свойства и теоремы Граф — пожалуй, самая полезная математическая абстракция для программиста. Не потому, что «на собеседовании спрашивают BFS», а потому что граф — это минимальный язык, на котор…","c":"post","d":"mathematics","g":["математика","графы","дискретная математика","алгоритмы","линейная алгебра"],"h":"Карта территории · 1. Строгие определения · 2. Как граф лежит в памяти · Матрица смежности как линейный оператор · 3. Связность, обходы и кл","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"От строгого определения графа до теорем Эйлера, Куратовского, Кёнига и Кирхгофа — с интуицией, ручными разборами и работ…","t":"Теория графов: структуры, свойства и теоремы","u":"/post/mathematics/04-graph-theory/","w":"2026-07-16"},{"b":"Теория игр: равновесия, механизмы, приложения в распределённых системах Почти вся математика в этом треке описывает мир, который не сопротивляется. Матрица не пытается вас обмануть, граф не меняет рёбра, когда вы запуска…","c":"post","d":"mathematics","g":["математика","теория игр","оптимизация","распределённые системы","алгоритмы"],"h":"Что такое игра: минимальный строгий каркас · Нормальная (стратегическая) форма · Матрица выплат: читать глазами · Доминирование: самый сильн","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Строгая математика стратегического взаимодействия: нормальная форма, доминирование, равновесие Нэша и теорема о его суще…","t":"Теория игр: равновесия, механизмы, приложения в распределённых системах","u":"/post/mathematics/16-game-theory/","w":"2026-07-16"},{"b":"Теория категорий в программировании: функторы, монады, F-алгебры, линзы В предыдущей статье трека — Теория категорий: объекты, морфизмы, функторы, естественные преобразования — мы построили аппарат: категория, функтор, е…","c":"post","d":"mathematics","g":["математика","теория категорий","функциональное программирование","монады","python"],"h":"Категория типов: где именно мы работаем · Функтор: не «контейнер», а сохраняющее структуру отображение · Лестница абстракций: Functor -\u003e App","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Как абстрактная чепуха превращается в рабочий инструмент: категория типов, законы функтора и монады, аппликативная валид…","t":"Теория категорий в программировании: функторы, монады, F-алгебры, линзы","u":"/post/mathematics/10-category-theory-in-programming/","w":"2026-07-16"},{"b":"Теория категорий: объекты, морфизмы, функторы, естественные преобразования Теория категорий заслужила две противоположные репутации. С одной стороны — «абстрактная чушь» (термин, кстати, придуман самими категорщиками — a…","c":"post","d":"mathematics","g":["математика","теория категорий","функторы","абстрактная алгебра","типы"],"h":"Три сцены, где вы уже трогали категории руками · Определение категории · Что здесь важно понять сразу · Восемь категорий, из которых надо со","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Строгое введение в теорию категорий для инженера: определение категории и законы композиции, изоморфизмы и двойственност…","t":"Теория категорий: объекты, морфизмы, функторы, естественные преобразования","u":"/post/mathematics/09-category-theory-basics/","w":"2026-07-16"},{"b":"Теория множеств: от наивной к аксиоматической Теория множеств — это ассемблер математики. Почти всё остальное (числа, функции, отношения, графы, вероятностные пространства, векторные пространства) в итоге собирается из о…","c":"post","d":"mathematics","g":["математика","теория множеств","основания математики","дискретная математика"],"h":"Карта территории · Часть 1. Наивная теория множеств · Определение «по Кантору» · Способы задать множество · Базовые операции · Булеан и поче","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"От интуитивного «множество — это коробка с элементами» до аксиом ZFC: операции, отношения, мощности, диагональ Кантора, …","t":"Теория множеств: от наивной к аксиоматической","u":"/post/mathematics/01-set-theory/","w":"2026-07-16"},{"b":"Теория сложности: классы P, NP, PSPACE, редукции и полнота Есть задачи, которые компьютер решить не может в принципе — про них говорит теория вычислимости. А есть задачи, которые он решить может, но за время, превышающее…","c":"post","d":"mathematics","g":["математика","теория сложности","np-полнота","алгоритмы","вычислимость"],"h":"Четыре сцены из жизни · Что именно мы измеряем · Задача, экземпляр, кодировка · Модель вычисления и почему она почти не важна · Худший случа","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Что значит «эффективно вычислимо»: классы P, NP, co-NP, L, NL, PSPACE, сведения по Карпу, теорема Кука–Левина, теоремы и…","t":"Теория сложности: классы P, NP, PSPACE, редукции и полнота","u":"/post/mathematics/12-complexity-theory/","w":"2026-07-16"},{"b":"Теория хаоса и динамические системы: аттракторы, фракталы, чувствительность В 1961 году Эдвард Лоренц гонял на ламповой машине LGP-30 упрощённую модель конвекции в атмосфере. Захотев повторить кусок прогона, он не стал н…","c":"post","d":"mathematics","g":["математика","динамические системы","хаос","фракталы","устойчивость"],"h":"Карта статьи · 1. Что такое динамическая система: строгое определение · Неподвижные точки и устойчивость · 2. Логистическое отображение: мин","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Детерминированные системы, которые невозможно предсказать: неподвижные точки и устойчивость, каскад Фейгенбаума, показат…","t":"Теория хаоса и динамические системы: аттракторы, фракталы, чувствительность","u":"/post/mathematics/17-chaos-and-dynamical-systems/","w":"2026-07-16"},{"b":"Теория чисел и математика для алгоритмов и криптографии Теория чисел долго была витриной «бесполезной» математики. Годфри Харди в 1940 году в «Апологии математика» с гордостью писал, что теория чисел не имеет и не будет …","c":"post","d":"algorithms","g":["алгоритмы","теория чисел","криптография","модульная арифметика","простые числа"],"h":"1. Делимость и алгоритм Евклида · 1.1 Основная теорема арифметики · 1.2 Евклид · 1.3 Расширенный Евклид и соотношение Безу · 2. Модульная ар","n":"Алгоритмы","p":"Фундамент","q":"02","r":"Сортировки, ДП, графы, строки, геометрия, NP-полнота и практическая оптимизация.","s":"Делимость, модульная арифметика, решёта, тесты простоты и факторизация, китайская теорема об остатках, дискретный логари…","t":"Теория чисел и математика для алгоритмов и криптографии","u":"/post/algorithms/13-number-theory/","w":"2026-07-16"},{"b":"Терминальный рабочий процесс: tmux, оболочка, dotfiles, синхронизация окружения Редактор — это одно окно. Работа программиста — это цикл: прочитать код, изменить, собрать, запустить, посмотреть логи, залезть в базу, пере…","c":"post","d":"editors","g":["редакторы","терминал","tmux","dotfiles","shell"],"h":"1. Четыре слоя, которые все путают · 2. Терминал — это протокол, а не приложение · terminfo и переменная TERM · Выбор эмулятора: что реально","n":"Редакторы и IDE","p":"Инфраструктура, инструменты и качество","q":"06","r":"vi/Vim и Neovim, Emacs, VS Code, JetBrains, Zed — и честное сравнение всех.","s":"Терминал как протокол, оболочка как программа с бюджетом запуска, tmux как сервер состояния, dotfiles как воспроизводимы…","t":"Терминальный рабочий процесс: tmux, оболочка, dotfiles, синхронизация окружения","u":"/post/editors/09-terminal-and-workflow/","w":"2026-07-16"},{"b":"Тест-дизайн: классы эквивалентности, границы, попарное тестирование, таблицы решений Тест-дизайн — это не «придумывание проверок». Это инженерная задача сжатия: у функции бесконечное (или практически бесконечное) множест…","c":"post","d":"testing","g":["тестирование","тест-дизайн","качество","автоматизация тестирования"],"h":"Модель входного пространства · Эквивалентное разбиение · Граничные значения · Таблицы решений · Состояния и переходы · Попарное тестирование","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Как из бесконечного пространства входов выбрать десяток проверок, которые действительно находят дефекты: эквивалентные к…","t":"Тест-дизайн: классы эквивалентности, границы, попарное тестирование, таблицы решений","u":"/post/testing/02-test-design/","w":"2026-07-16"},{"b":"Тест-кейсы, чек-листы, тест-план и как писать баг-репорт, который починят Тестовая документация — самая нелюбимая часть профессии и самая недооценённая. Нелюбимая, потому что её пишут «для отчётности» и никто не читает. …","c":"post","d":"testing","g":["тестирование","тест-дизайн","документация","баг-репорт","qa"],"h":"Зачем вообще писать, если можно просто протестировать · Спектр формализации: от «в голове» до сертифицируемого кейса · Чек-лист: минимальная","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Практическое руководство по тестовой документации: когда нужен чек-лист, а когда тест-кейс, как устроен живой тест-план,…","t":"Тест-кейсы, чек-листы, тест-план и как писать баг-репорт, который починят","u":"/post/testing/03-documentation/","w":"2026-07-16"},{"b":"Тестирование API: REST, GraphQL, gRPC, схемы и инструменты API-тесты — самый выгодный уровень автоматизации в типичном веб-проекте. Они на порядок быстрее и стабильнее E2E, потому что не зависят от вёрстки, анимаций и то…","c":"post","d":"testing","g":["тестирование","api","rest","graphql","grpc"],"h":"Что вообще тестируем, когда «тестируем API» · Шесть слоёв проверки одного ответа · REST: что проверять, кроме «200 OK» · Тест на Python: htt","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Как тестировать программные интерфейсы: что реально проверять в ответе REST, чем принципиально отличается GraphQL и gRPC…","t":"Тестирование API: REST, GraphQL, gRPC, схемы и инструменты","u":"/post/testing/08-api-testing/","w":"2026-07-16"},{"b":"Тестирование ПО: карта курса, зачем оно нужно и сколько стоит его отсутствие Это вход в трек о профессии тестировщика и об инженерной дисциплине качества. Дальше будет много конкретики: классы эквивалентности, Playwright…","c":"post","d":"testing","g":["тестирование","качество","риск-менеджмент","автоматизация","ci/cd"],"h":"1. Что такое тестирование, если убрать ритуал · 2. Почему полное тестирование невозможно в принципе · 3. Сколько стоит отсутствие тестирован","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Вход в трек по тестированию: что такое тестирование с точки зрения теории информации и риска, почему полное тестирование…","t":"Тестирование ПО: карта курса, зачем оно нужно и сколько стоит его отсутствие","u":"/post/testing/00-overview/","w":"2026-07-16"},{"b":"Тестирование безопасности: OWASP Top 10, SAST, DAST, фаззинг Функциональный тест проверяет, что система делает то, что должна. Тест безопасности проверяет, что система не делает того, чего не должна — и в этом вся разниц…","c":"post","d":"testing","g":["тестирование","безопасность","owasp","sast","фаззинг"],"h":"Как решать, что тестировать: модель угроз вместо списка сканеров · OWASP Top 10: что это и чем не является · A01: контроль доступа — то, что","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Как тестировать то, чего в требованиях нет: модель угроз вместо чек-листа сканеров, разбор OWASP Top 10 с рабочими теста…","t":"Тестирование безопасности: OWASP Top 10, SAST, DAST, фаззинг","u":"/post/testing/10-security-testing/","w":"2026-07-16"},{"b":"Тестирование в .NET Тесты — это не «дополнительная работа», а то, что позволяет менять код без страха. В этой статье соберём практичную стратегию: от быстрых юнит-тестов до интеграционных с реальной базой в контейнере, и…","c":"post","d":"csharp","g":["csharp","тестирование","моки","testcontainers","ci/cd"],"h":"Тест-пирамида · xUnit — фреймворк по умолчанию · FluentAssertions · Моки: изоляция зависимостей · Property-based тестирование · Интеграционн","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Полный цикл тестирования на .NET: юнит-тесты на xUnit с FluentAssertions, моки, property-based, интеграционные тесты чер…","t":"Тестирование в .NET: xUnit, моки, property-based, Testcontainers и CI","u":"/post/csharp/05-testing/","w":"2026-07-16"},{"b":"Тестирование в Elixir Тестирование в Elixir — часть языка, а не сторонняя надстройка: ExUnit входит в поставку, тесты пишутся с первой минуты (mix new уже создаёт test/). Более того, конкурентная природа BEAM позволяет з…","c":"post","d":"elixir","g":["elixir","тестирование","моки","документация","ci/cd"],"h":"ExUnit — встроенный фреймворк · Асинхронные тесты — скорость благодаря BEAM · Фикстуры и setup · Doctests — документация как тест · Тестовая","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"ExUnit и асинхронные тесты, doctests из документации, моки через Mox и поведения, property-based тестирование со StreamD…","t":"Тестирование в Elixir: ExUnit, async, doctests, Mox и property-based со StreamData","u":"/post/elixir/05-testing/","w":"2026-07-16"},{"b":"Тестирование в Go Тестирование в Go — часть языка, а не сторонняя библиотека. Пакет testing, команда go test, покрытие, бенчмарки, race-детектор и fuzzing идут из коробки. Это отражает философию Go: тесты — не роскошь, а…","c":"post","d":"golang","g":["go","тестирование","моки","бенчмаркинг","ci/cd"],"h":"Первый тест · Табличные тесты — идиома номер один · testify — популярная библиотека ассертов · Моки и интерфейсы · Ручной мок (часто этого д","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Встроенный testing, табличные тесты, testify, gomock/mockery, интеграционные тесты с testcontainers, покрытие, бенчмарки…","t":"Тестирование в Go: табличные тесты, моки, интеграция и CI","u":"/post/golang/05-testing/","w":"2026-07-16"},{"b":"Тестирование в TypeScript: пирамида, Vitest, моки и CI Типы ловят целый класс ошибок ещё до запуска — но они доказывают только согласованность форм, а не корректность поведения. «Функция принимает число и возвращает числ…","c":"post","d":"typescript","g":["typescript","тестирование","моки","качество кода","ci/cd"],"h":"Тест-пирамида · Раннер: Vitest или Jest · Асинхронные тесты · Моки, стабы и подмена зависимостей · Интеграционные тесты с реальной БД · Prop","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Юнит, интеграционные и e2e тесты, моки и стабы, property-based, тестирование типов, покрытие и встраивание в CI.…","t":"Тестирование в TypeScript: пирамида, Vitest, моки и CI","u":"/post/typescript/05-testing/","w":"2026-07-16"},{"b":"Тестирование и CI/CD дата-пайплайнов: среды, unit-тесты SQL, data diff и релиз моделей В обычном сервисе цена ошибки ограничена: выкатили баг, увидели рост 5xx, откатили за три минуты, пользователи потеряли пару запросов…","c":"post","d":"data-engineering","g":["данные","тестирование","ci/cd","dbt","разработка"],"h":"1. Две оси, четыре квадранта · 2. Что вообще тестировать в SQL-модели · 3. Unit-тесты трансформаций: фикстуры вместо продовых данных · 4. Те","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как менять SQL-модели и пайплайны без страха: пирамида тестов для трансформаций, unit-тесты на фикстурах, среды поверх х…","t":"Тестирование и CI/CD дата-пайплайнов: среды, unit-тесты SQL, data diff и релиз моделей","u":"/post/data-engineering/10-testing-and-cicd/","w":"2026-07-16"},{"b":"Тестирование и документация: тесты, doc-тесты, бенчмарки, property-based В предыдущей статье мы вышли за границу, где компилятор перестаёт что-либо гарантировать. Теперь вернёмся и зададим главный вопрос этой главы: что …","c":"post","d":"rust","g":["rust","тестирование","бенчмаркинг","документация","инструменты"],"h":"Что доказывает компилятор и что остаётся вам · Модель исполнения: что реально делает cargo test · Первый тест и чтение вывода · Сообщения ко","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Как устроен cargo test изнутри, чем unit-тесты отличаются от интеграционных, почему doc-тесты в Rust — часть контракта, …","t":"Тестирование и документация: тесты, doc-тесты, бенчмарки, property-based","u":"/post/rust/11-testing/","w":"2026-07-16"},{"b":"Тестирование и приёмка глазами разработчика В предыдущей статье — https://courses.digitable.life/post/sdlc-and-career/04-development/ — мы дошли до момента, когда код написан, отревьюен и слит в основную ветку. Дальше в …","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","тестирование","процессы разработки","качество"],"h":"Зачем на самом деле нужны тесты · Кто отвечает за качество: три модели · Модель A: выделенный отдел тестирования · Модель B: QA внутри коман","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Что на самом деле делает разработчик с качеством: уровни тестов и форма набора, моки и покрытие, флаки, тестовые стенды …","t":"Тестирование и приёмка глазами разработчика","u":"/post/sdlc-and-career/05-testing/","w":"2026-07-16"},{"b":"Тестирование и процесс: автопроверки, ручной аудит, доступность в команде Восемь предыдущих статей трека — про то, как сделать интерфейс доступным. Эта — про то, как узнать, что вы это сделали, и как не потерять результа…","c":"post","d":"accessibility","g":["доступность","a11y","тестирование","процесс","wcag"],"h":"Что вообще значит «протестировать доступность» · Что автоматика ловит, а что нет · Пирамида проверок: шесть слоёв · Слой 0: линтер, который ","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Как проверять доступность на всех слоях — от линтера до людей, которые пользуются скринридером, — и как встроить это в п…","t":"Тестирование и процесс: автопроверки, ручной аудит, доступность в команде","u":"/post/accessibility/09-testing-and-process/","w":"2026-07-16"},{"b":"Тестирование мобильного: юнит, UI, устройства, фермы, бета-каналы На бэкенде сломанный релиз живёт до следующего деплоя — минуты. На вебе — до следующего Ctrl+F5 пользователя. На мобильном сломанный релиз живёт месяцами,…","c":"post","d":"mobile","g":["мобильная разработка","тестирование","ci","автоматизация","качество"],"h":"Что именно ломается на мобильном · Пирамида, деформированная мобильным контекстом · Уровень 1: юнит-тесты, и что на мобильном значит «изолир","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Почему на мобильном пирамида тестов деформируется, как тестировать смерть процесса, отозванные разрешения и сеть с прова…","t":"Тестирование мобильного: юнит, UI, устройства, фермы, бета-каналы","u":"/post/mobile/11-testing/","w":"2026-07-16"},{"b":"Тестирование прошивки: хост, симулятор, стенд и статический анализ Вопрос «как вы тестируете прошивку?» на собеседовании во встраиваемую команду выдаёт зрелость проекта быстрее любого другого. Три типичных ответа: «рукам…","c":"post","d":"embedded","g":["встраиваемые системы","тестирование","ci","отладка","микроконтроллеры"],"h":"Три уровня, три разные цены · Шов: почему это разговор про архитектуру · Юнит-тесты на хосте: две тысячи прогонов в секунду · Фаззинг: единс","n":"Встраиваемые системы и робототехника","p":"Инфраструктура, инструменты и качество","q":"06","r":"Микроконтроллеры, периферия, прерывания, RTOS, IoT, датчики, роботы.","s":"Как проверять код, у которого нет ни стенда разработки, ни воспроизводимого окружения: шов между логикой и железом, юнит…","t":"Тестирование прошивки: хост, симулятор, стенд и статический анализ","u":"/post/embedded/13-testing-firmware/","w":"2026-07-16"},{"b":"Тестирование распределённых систем: chaos engineering, Jepsen, симуляция Есть тест, который проходит зелёным четыре тысячи раз подряд, а на четыре тысячи первый падает — и больше никогда не падает. Есть баг, который восп…","c":"post","d":"distributed-systems","g":["распределённые системы","тестирование","chaos engineering","jepsen","надёжность"],"h":"Почему обычные тесты здесь бессильны · Что вообще считать багом · Карта методов: реалистичность против воспроизводимости · Что можно ломать:","n":"Распределённые системы","p":"Проектирование систем","q":"04","r":"Отказы, время и часы, CAP, консенсус, репликация, идемпотентность.","s":"Как проверять систему, у которой нет одного правильного ответа: детерминированная симуляция с одним seed, проверка истор…","t":"Тестирование распределённых систем: chaos engineering, Jepsen, симуляция","u":"/post/distributed-systems/13-testing-distributed/","w":"2026-07-16"},{"b":"Тестирование фронтенда: юнит, компонентные, E2E, визуальная регрессия В предыдущей статье мы разбирались, как измерять скорость интерфейса. Теперь — вопрос, который задают позже и гораздо болезненнее: он вообще работает …","c":"post","d":"frontend","g":["frontend","тестирование","playwright","react","ci"],"h":"Четыре класса ошибок и четыре инструмента · Пирамида, трофей и правило самого низкого уровня · Граница теста — самое важное решение · Инстру","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Как собрать набор тестов фронтенда, который ловит настоящие регрессии: Vitest и Testing Library, перехват сети через MSW…","t":"Тестирование фронтенда: юнит, компонентные, E2E, визуальная регрессия","u":"/post/frontend/15-frontend-testing/","w":"2026-07-16"},{"b":"Тестирование: JUnit 5, Mockito, Testcontainers, интеграционные тесты Компилятор Java уже проверил многое: типы сошлись, метод существует, null не подставится вместо int. Тесты нужны для того, что типы выразить не могут —…","c":"post","d":"java","g":["java","тестирование","junit","mockito","testcontainers"],"h":"Модель исполнения: что такое JUnit 5 · Минимальная настройка Maven · Жизненный цикл теста и почему он именно такой · Расширения вместо насле","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как устроен JUnit Platform, где проходит граница юнит-теста, когда мок вреден, как поднять настоящий PostgreSQL в Docker…","t":"Тестирование: JUnit 5, Mockito, Testcontainers, интеграционные тесты","u":"/post/java/09-testing/","w":"2026-07-16"},{"b":"Тестирование: pytest, фикстуры, моки, property-based, покрытие В компилируемом языке значительная часть ошибок отсеивается до запуска: несуществующий метод, перепутанный тип аргумента, забытая ветка в match — всё это лов…","c":"post","d":"python","g":["python","тестирование","pytest","качество кода","инструменты"],"h":"Карта экосистемы: что вообще ставят в проект · Почему индустрия выбрала pytest: assert rewriting · Жизненный цикл теста и что такое «фаза» ·","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Как устроен прогон pytest, зачем фикстуры вместо setUp, чем autospec отличается от MagicMock, как Hypothesis находит кра…","t":"Тестирование: pytest, фикстуры, моки, property-based, покрытие","u":"/post/python/12-testing/","w":"2026-07-16"},{"b":"Тесты в CI: quality gates, параллелизация, флаки-тесты, покрытие Тест, который запускается только на ноутбуке автора, — не тест, а личная привычка. Он не защищает продукт: как только автор уйдёт в отпуск или уволится, пр…","c":"post","d":"testing","g":["тестирование","ci-cd","автоматизация","покрытие","флаки-тесты"],"h":"Что вообще делает CI с тестами · Где расходятся разработчик и тестировщик · Quality gates: что именно блокирует слияние · Рабочий пример: Gi","n":"Тестирование ПО","p":"Инфраструктура, инструменты и качество","q":"06","r":"Тест-дизайн, ручное, юнит, интеграционное, E2E, API, нагрузка, безопасность, автоматизация.","s":"Как превратить набор тестов в работающий конвейер: где ставить quality gates, как параллелить прогон и держать обратную …","t":"Тесты в CI: quality gates, параллелизация, флаки-тесты, покрытие","u":"/post/testing/13-tests-in-ci/","w":"2026-07-16"},{"b":"Техническая стратегия команды: во что вкладывать инженерное время Понедельник. Продакт принёс три фичи на квартал и говорит, что все три обещаны. Сеньор второй месяц просит разрешения вынести биллинг из монолита. Платфор…","c":"post","d":"engineering-leadership","g":["лидерство","техническая стратегия","приоритизация","управление командой","технический долг"],"h":"Оговорка про доказательства · Что такое стратегия и что ею не является · Единственный бюджет, которым вы правда распоряжаетесь · Как замерит","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Как руководителю решать, куда уходит инженерное время команды: замерить фактическое распределение, сформулировать диагно…","t":"Техническая стратегия команды: во что вкладывать инженерное время","u":"/post/engineering-leadership/09-technical-strategy/","w":"2026-07-16"},{"b":"Технический долг как управленческая задача Разговор обычно выглядит так. Инженер говорит: «В биллинге всё сгнило, надо переписывать». Продакт слышит: «Команда хочет три месяца ничего не поставлять». Вы, стоя между ними, …","c":"post","d":"engineering-leadership","g":["лидерство","технический долг","техническая стратегия","метрики","приоритизация"],"h":"Сразу о качестве доказательств · Определение, которое работает у руководителя · Три теста «это долг или вкусовщина» · Долг — портфель рисков","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Как руководителю превратить разговоры про «плохой код» в решения: чем долг отличается от вкусовщины, как его измерять бе…","t":"Технический долг как управленческая задача","u":"/post/engineering-leadership/10-tech-debt/","w":"2026-07-16"},{"b":"Техническое письмо: карта трека и зачем инженеру писать Третий раз за год команда обсуждает, почему платёжный сервис ходит в чужую базу напрямую. Первые два раза обсуждение кончалось словами «ну там были причины». Причин…","c":"post","d":"technical-writing","g":["техническое письмо","документация","коммуникация","инженерная культура","adr"],"h":"Читатель и решение: тест на пустоту · Почему инженер пишет больше, чем рассчитывал · Карта жанров: что вообще пишет инженер · Решение «писат","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Почему инженерный документ существует только ради решения, которое он должен изменить, и читателя, который это решение п…","t":"Техническое письмо: карта трека и зачем инженеру писать","u":"/post/technical-writing/00-overview/","w":"2026-07-16"},{"b":"Тимлид: карта трека и что на самом деле меняется в работе Вчера вы закрыли задачу и увидели зелёный пайплайн. Сегодня вы отвечаете за то, чтобы задачи закрывали пять человек, и не видите почти ничего. Это не метафора. Эт…","c":"post","d":"engineering-leadership","g":["лидерство","тимлид","управление командой","менеджмент","карьера"],"h":"Что технически изменилось: сломанный контур обратной связи · Три разных работы под одним словом «тимлид» · Чего у вас нет: границы полномочи","n":"Тимлид и инженерное лидерство","p":"Продукт, процесс и люди","q":"07","r":"Работа руководителя команды: один на один, обратная связь, найм, рост, делегирование, техдолг и дежурства.","s":"Что происходит с работой инженера, когда он становится руководителем: какой контур обратной связи ломается, какие полном…","t":"Тимлид: карта трека и что на самом деле меняется в работе","u":"/post/engineering-leadership/00-overview/","w":"2026-07-16"},{"b":"Типизированное лямбда-исчисление и соответствие Карри-Ховарда К этому моменту трека у нас на руках полноценный язык программирования, собранный из трёх конструкций. В нём есть логика, арифметика, структуры данных, рекурс…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","типы","функциональное программирование","теория типов"],"h":"Мир, в котором можно всё · Типы: всего два правила · Три правила типизации — и больше ничего · Полный вывод типа, шаг за шагом · Тайпчекер н","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Что происходит, когда к лямбда-исчислению приделывают типы: часть программ перестаёт компилироваться, зато оставшиеся га…","t":"Типизированное лямбда-исчисление и соответствие Карри-Ховарда","u":"/post/lambda-calculus/09-typed-lambda/","w":"2026-07-16"},{"b":"Типичные ошибки внедрения DDD Восемь статей назад мы начали с вопроса «где в коде живёт знание о бизнесе». К этому моменту у вас есть весь инструментарий: стратегия, контексты, тактические блоки, персистентность, события…","c":"post","d":"ddd","g":["ddd","архитектура","рефакторинг","антипаттерны","python"],"h":"1. Карта ловушек · 2. Уровень решения: DDD там, где домена нет · 2.1. Признак · 2.2. Механика · 2.3. Выход · 3. Уровень модели: папки вместо","n":"Domain-Driven Design","p":"Проектирование систем","q":"04","r":"Стратегический и тактический DDD, event storming, DDD в коде.","s":"Каталог провалов DDD-внедрений — от папок вместо модели и контекстов по таблицам до агрегатов-гигантов и организационных…","t":"Типичные ошибки внедрения DDD","u":"/post/ddd/08-ddd-pitfalls/","w":"2026-07-16"},{"b":"Типичные ошибки русскоязычных инженеров Это не работа над ошибками из школьной тетради. Там ошибка — нарушение правила. В работе ошибка — только то, что меняет смысл, меняет впечатление о вас или заставляет читателя пере…","c":"post","d":"engineering-english","g":["английский","коммуникация","терминология","самообучение"],"h":"Что здесь считается ошибкой · Откуда берутся ошибки: пять источников · Что чинить первым · Класс первый: ошибки, которые меняют смысл · Вид ","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Разбор ошибок, которые русскоязычные инженеры делают в рабочем английском: каталог по механизму возникновения, оценка це…","t":"Типичные ошибки русскоязычных инженеров","u":"/post/engineering-english/12-common-mistakes/","w":"2026-07-16"},{"b":"Типобезопасные API-контракты: tRPC, OpenAPI, GraphQL и кодогенерация Внутри одного процесса TypeScript почти безупречен: переименовали поле — компилятор показал все 40 мест. Но ровно на границе процесса эта сеть обрывает…","c":"post","d":"typescript","g":["typescript","api","контракты","кодогенерация","валидация"],"h":"Три способа иметь один контракт · Type-first: tRPC · Schema-first: OpenAPI · Code-first: схема как единственный источник · GraphQL и gRPC — ","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Как не дать типам клиента и сервера разъехаться: три подхода к контракту, кодогенерация в CI и правила эволюции API.…","t":"Типобезопасные API-контракты: tRPC, OpenAPI, GraphQL и кодогенерация","u":"/post/typescript/11-typed-api-contracts/","w":"2026-07-16"},{"b":"Типы и абстракции C#: от наследования до дженериков В статье «Основы C#» мы разбирали типы как контейнеры данных: где они лежат и как копируются. Эта статья — про типы как абстракции: как из классов, интерфейсов, дженери…","c":"post","d":"csharp","g":["csharp","ооп","дженерики","делегаты","типы"],"h":"Три способа переиспользовать поведение · Классы: наследование и полиморфизм · Ловушка: виртуальный вызов в конструкторе · Иерархия глазами д","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Как в C# строят абстракции: наследование против композиции, интерфейсы и явная реализация, дженерики с ограничениями и в…","t":"Типы и абстракции C#: наследование, интерфейсы, дженерики, делегаты и события","u":"/post/csharp/09-types-and-abstractions/","w":"2026-07-16"},{"b":"Типы и трейты: обобщения, диспетчеризация, типажи стандартной библиотеки Мы разобрали, как долго живут значения (владение и времена жизни). Теперь вопрос другой: что значения умеют и как написать один алгоритм, работающи…","c":"post","d":"rust","g":["rust","типы","трейты","обобщения","компилятор"],"h":"Задача: одна логика, много типов · Модель: трейт — это набор требований к типу · Мономорфизация: что реально попадает в бинарник · Три спосо","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Трейт как контракт на тип, а не как интерфейс из ООП: обобщения и мономорфизация, объекты-типажи и vtable, dyn-совместим…","t":"Типы и трейты: обобщения, диспетчеризация, типажи стандартной библиотеки","u":"/post/rust/05-types-and-traits/","w":"2026-07-16"},{"b":"Токены и стандарты: ERC-20, ERC-721, ERC-1155 и что за ними стоит Самое вредное словосочетание в теме — «токены в кошельке». Оно рисует сейф с монетками, и из этой картинки следуют неверные выводы: что кошелёк можно «взл…","c":"post","d":"web3","g":["web3","solidity","смарт-контракты","ethereum","стандарты"],"h":"1. Что такое токен технически · 2. Зачем нужен стандарт · 3. ERC-20: взаимозаменяемые токены · 3.1. Модель allowance: почему перевод в два ш","n":"Web3 и блокчейн","p":"Данные, ML и ИИ","q":"05","r":"Блокчейн, консенсусы, EVM, смарт-контракты, кошельки, децентрализованные хранилища.","s":"Токен — это строка в mapping внутри одного контракта, а стандарт ERC — минимальный контракт совместимости между незнаком…","t":"Токены и стандарты: ERC-20, ERC-721, ERC-1155 и что за ними стоит","u":"/post/web3/08-tokens-and-standards/","w":"2026-07-16"},{"b":"Токены, контекстное окно и память диалога Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 38:04 — отсюда взято содержание этой главы. В предыдущей главе мы дошли до того, что языковая модель предсказывает следую…","c":"post","d":"ai-basics","g":["основы ии","токены","контекстное окно","стоимость","llm"],"h":"Токен: не буква и не слово · Почему один и тот же смысл стоит по-разному · У каждого провайдера свой токенизатор · Из чего на самом деле соб","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Токен как единица счёта и почему русский текст дороже английского, из чего на самом деле собирается запрос к модели, что…","t":"Токены, контекстное окно и память диалога","u":"/post/ai-basics/07-tokens-and-context/","w":"2026-07-16"},{"b":"Точки воздействия: где вмешательство даёт результат Постмортем закрыт, в нём четырнадцать action items. Поднять таймаут до 5 секунд. Добавить две реплики. Понизить порог алерта. Добавить дашборд. Написать ранбук. Все чет…","c":"post","d":"systems-thinking","g":["системное мышление","точки воздействия","системная динамика","надёжность","метрики"],"h":"Что такое рычаг и чем он не является · Почему параметры почти не работают · Двенадцать точек Медоуз в инженерном переводе · Рабочая шкала ры","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Почему четырнадцать пунктов постмортема не меняют ничего, а один — меняет всё: рабочая шкала рычагов от параметра до цел…","t":"Точки воздействия: где вмешательство даёт результат","u":"/post/systems-thinking/11-leverage-points/","w":"2026-07-16"},{"b":"Точки расширения: реестр, SPI, хуки и плагины В предыдущей главе правила переехали из кода в данные, чтобы меняться без релиза. Это частный случай большой задачи: дать поведению системы меняться без пересборки — и, в пре…","c":"post","d":"design-patterns","g":["паттерны проектирования","архитектура","python","go"],"h":"Шкала расширяемости: не всё сразу · Уровень 2: реестр реализаций · Уровень 3: контракт расширения (SPI) · Что входит в контракт, кроме метод","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Как дать чужому коду встроиться в ваш: шкала расширяемости от конфига до плагинов в отдельном процессе, реестр реализаци…","t":"Точки расширения: реестр, SPI, хуки и плагины","u":"/post/design-patterns/11-plugins-and-extensibility/","w":"2026-07-16"},{"b":"Транзакции, уровни изоляции, блокировки и аномалии Транзакция — самая недооценённая абстракция в инженерии данных. Её обычно объясняют через банковский перевод («списали у Алисы, зачислили Бобу — либо оба, либо ничего»),…","c":"post","d":"databases","g":["базы данных","транзакции","изоляция","блокировки","конкурентность"],"h":"ACID: что из этих букв настоящая гарантия · Жизненный цикл транзакции · Аномалии: строгие определения · Уровни изоляции: стандарт против реа","n":"Базы данных","p":"Данные, ML и ИИ","q":"05","r":"SQL и NoSQL: Postgres, MySQL, ClickHouse, Redis, Cassandra, Mongo, векторные, S3 — и как выбирать.","s":"Что на самом деле обещает ACID, какие аномалии живут на каждом уровне изоляции, как устроены 2PL, MVCC и SSI — и почему …","t":"Транзакции, уровни изоляции, блокировки и аномалии","u":"/post/databases/07-transactions-and-isolation/","w":"2026-07-16"},{"b":"Транзистор и вентиль: что происходит под булевой логикой В треке «Компьютерные науки» статья «Булева логика и логические вентили» показывает, что из NAND собирается что угодно: сумматор, мультиплексор, защёлка, в пределе…","c":"post","d":"hardware","g":["железо","транзисторы","цифровая логика","кмоп","энергопотребление"],"h":"Цифровая абстракция — это дисциплина, а не природа · Что такое МОП-транзистор на самом деле · КМОП: почему логику строят именно так · Задерж","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Что на самом деле происходит под нулями и единицами: физика МОП-транзистора, КМОП-сети, откуда берутся пикосекунды задер…","t":"Транзистор и вентиль: что происходит под булевой логикой","u":"/post/hardware/02-transistors-and-logic/","w":"2026-07-16"},{"b":"Транспортная безопасность: TLS, сертификаты, mTLS, пиннинг Между вашим кодом и кодом собеседника лежит сеть, и это самая враждебная часть системы: вы не владеете ни одним её метром. Wi-Fi в кофейне, домашний роутер с про…","c":"post","d":"security","g":["безопасность","tls","сертификаты","криптография","сеть"],"h":"Правила игры · Как транспорт учился на поломках · Что TLS даёт и чего не даёт · Рукопожатие TLS 1.3: что и когда становится тайной · Конфигу","n":"Безопасность приложений","p":"Инфраструктура, инструменты и качество","q":"06","r":"OWASP, аутентификация, OAuth/OIDC, JWT, криптография, секреты, приватность.","s":"Как TLS 1.3 договаривается о ключах и почему подпись идёт по транскрипту, что на самом деле проверяет клиент в сертифика…","t":"Транспортная безопасность: TLS, сертификаты, mTLS, пиннинг","u":"/post/security/10-transport-security/","w":"2026-07-16"},{"b":"Требования и аналитика: откуда вообще берутся задачи в трекере Первое, что удивляет человека на первой работе: задачи не появляются из воздуха и не сочиняются техлидом по вдохновению. У каждого тикета есть происхождение …","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","требования","аналитика","командная работа"],"h":"Откуда реально берутся задачи · Кто этим занимается и почему аналитика может не быть · Уровни требований: почему нельзя писать код по фразе ","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Как смутное желание бизнеса превращается в тикет с критериями приёмки, кто это делает, что ломается по дороге и что долж…","t":"Требования и аналитика: откуда вообще берутся задачи в трекере","u":"/post/sdlc-and-career/02-requirements/","w":"2026-07-16"},{"b":"Три ответственности: Product Owner, Scrum Master, Developers В предыдущей статье — https://courses.digitable.life/post/scrum-master/02-scrum-guide/ — мы прочитали Scrum Guide построчно. Теперь возьмём самую конфликтную е…","c":"post","d":"scrum-master","g":["scrum","psm","роли","product owner","команда"],"h":"Проблема, которую решают три ответственности · Accountability, а не role: почему это не придирка к словам · Scrum Team как целое: рамка, в к","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Что Scrum Guide на самом деле говорит про Product Owner, Scrum Master и Developers, чем accountability отличается от дол…","t":"Три ответственности: Product Owner, Scrum Master, Developers","u":"/post/scrum-master/03-accountabilities/","w":"2026-07-16"},{"b":"Удалённая и гибридная работа: границы, режим, самоорганизация Почему это не «та же работа, только дома» Самая распространённая ошибка в разговоре об удалёнке — считать её изменением местоположения. Место действительно по…","c":"post","d":"time-management","g":["тайм-менеджмент","удалённая работа","распределённые команды","границы","режим дня"],"h":"Почему это не «та же работа, только дома» · Короткая история: как мы сюда попали · Что говорят исследования — и где они друг другу противоре","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Честный разбор исследований об удалённой работе, механика того, что именно ломается без офиса, теория границ работа-дом …","t":"Удалённая и гибридная работа: границы, режим, самоорганизация","u":"/post/time-management/14-remote-work/","w":"2026-07-16"},{"b":"Удалённые репозитории и протокол: refspec, fetch, push, транспорт Одиннадцать статей трека мы работали внутри одного репозитория. Между тем половина ежедневных страданий с Git происходит ровно на границе: push отклонён с…","c":"post","d":"git","g":["git","сети","протоколы","инструменты"],"h":"Remote — это две строчки в конфиге · Refspec: грамматика, из которой выводится всё · Что fetch делает и чего он не делает · Что происходит н","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Remote — это не сервер, а две строчки в .git/config: URL и refspec. Разбираем грамматику refspec и то, как из неё выводя…","t":"Удалённые репозитории и протокол: refspec, fetch, push, транспорт","u":"/post/git/12-remotes-and-protocol/","w":"2026-07-16"},{"b":"Упаковка и установка: пакеты, контейнеры, инсталляторы, подпись Между «код работает у нас» и «код работает у клиента» лежит слой, который почти никто не проектирует специально. Он появляется сам: кто-то однажды написал с…","c":"post","d":"software-distribution","g":["поставка софта","упаковка","подпись","релизы","инсталляторы"],"h":"Пакет — это не архив, а обещание · Метаданные: минимальный честный набор · Форматы: за что вы платите в каждом · Нативные пакеты Linux: репо","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Пакет — это не архив, а обещание: метаданные, зависимости, скрипты и подпись, по которым чужая машина решает, можно ли п…","t":"Упаковка и установка: пакеты, контейнеры, инсталляторы, подпись","u":"/post/software-distribution/12-packaging/","w":"2026-07-16"},{"b":"Управление памятью: виртуальная память, страницы, TLB, swap, аллокаторы Прикладной программист живёт в удобной иллюзии: у него есть непрерывный кусок адресов от нуля до огромного числа, malloc() всегда возвращает валидны…","c":"post","d":"operating-systems","g":["операционные системы","память","виртуальная память","аллокаторы","производительность"],"h":"Зачем вообще виртуальная память · Единица учёта — страница · Трансляция адреса: обход таблиц страниц · TLB: почему кэш трансляций решает всё","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как ядро превращает виртуальные адреса в физические, зачем нужны TLB и huge pages, как работают page fault, reclaim, swa…","t":"Управление памятью: виртуальная память, страницы, TLB, swap, аллокаторы","u":"/post/operating-systems/04-memory-management/","w":"2026-07-16"},{"b":"Управление проектами в IT: карта трека и связь с материалами портала Проектный менеджер — не «человек, который двигает карточки в Jira», и не «тот, кто спрашивает статус». Роль существует ради одного: сделать так, чтобы …","c":"post","d":"project-management","g":["управление проектами","менеджмент","планирование","метрики","риски"],"h":"1. Проблема: почему проекты расходятся с планом · 1.1. Что реально известно из данных · 1.2. Три причины · 1.3. Конус неопределённости · 2. ","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Зачем нужна проектная функция в разработке, почему тройное ограничение врёт, как считать критический путь, поток и деньг…","t":"Управление проектами в IT: карта трека и связь с материалами портала","u":"/post/project-management/00-overview/","w":"2026-07-16"},{"b":"Управление разработкой: карта трека, три контура и зачем инженеру классика Инженер, которому впервые показали PMBOK, обычно реагирует одинаково: «пятьсот страниц про то, как заполнять документы, которые никто не читает».…","c":"post","d":"management","g":["менеджмент","управление проектами","процессы","стандарты"],"h":"1. Зачем инженеру классика, если вокруг Agile · 2. Три контура управления · 2.1. Пять типовых подмен · 3. Карта трека: четырнадцать глав · 4","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Классический управленческий аппарат разработки: три контура управления — продукт, проект, процесс, — карта четырнадцати …","t":"Управление разработкой: карта трека, три контура и зачем инженеру классика","u":"/post/management/00-overview/","w":"2026-07-16"},{"b":"Управление рисками в IT-проектах Почти каждый провалившийся проект провалился предсказуемо. Не в смысле «мы точно знали дату катастрофы», а в смысле: за месяцы до финала кто-то в команде уже произносил вслух ту самую фра…","c":"post","d":"project-management","g":["управление проектами","риски","оценка","принятие решений"],"h":"1. Что такое риск: строгое определение · RAID: не путайте четыре разные сущности · Формулировка риска, которую не стыдно принести на ревью ·","n":"Project Management","p":"Продукт, процесс и люди","q":"07","r":"Agile, Kanban, Lean, Scrumban, оценка, риски, DORA, масштабирование, сравнение методологий.","s":"Как перестать вести декоративный риск-реестр и научиться считать экспозицию, выбирать митигации по ROI и встраивать упра…","t":"Управление рисками в IT-проектах","u":"/post/project-management/04-risk-management/","w":"2026-07-16"},{"b":"Управление состоянием: локальное, контекст, Redux, Zustand, сигналы В предыдущей статье мы разобрали хуки: useState даёт компоненту память, useEffect синхронизирует его с внешним миром. Пока состояние живёт внутри одного…","c":"post","d":"frontend","g":["frontend","react","состояние","redux","производительность"],"h":"Состояние — это не одна вещь · Уровень 0: локальное состояние · Не храните то, что можно вычислить · Подъём состояния и его цена · useReduce","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Виды состояния и где им место: useState и useReducer, честная модель React Context, внешние сторы на useSyncExternalStor…","t":"Управление состоянием: локальное, контекст, Redux, Zustand, сигналы","u":"/post/frontend/10-state-management/","w":"2026-07-16"},{"b":"Ускорение без правки кода: флаги сборки, инлайнинг, PGO, LTO и JIT Двенадцать предыдущих статей учили находить узкие места и чинить их. У всех этих починок общее свойство: они меняли код. Вы переставляли поля структуры, …","c":"post","d":"performance","g":["производительность","компиляторы","оптимизация","jit","рантайм"],"h":"1. Три слоя между исходником и инструкциями · 2. Прибор первый: посмотреть, что получилось · 3. Уровни оптимизации: почему -O3 бывает медлен","n":"Производительность систем","p":"Инфраструктура, инструменты и качество","q":"06","r":"Измерение, профилирование, память, кэши, БД, нагрузочное тестирование.","s":"Последний рычаг, который не оплачивается сложностью кода: что на самом деле делает -O2 и почему -O3 бывает медленнее, ка…","t":"Ускорение без правки кода: флаги сборки, инлайнинг, PGO, LTO и JIT","u":"/post/performance/13-compiler-and-runtime/","w":"2026-07-16"},{"b":"Ускорители: GPU, NPU, FPGA, ASIC и когда они оправданы Универсальное ядро — инженерное чудо, которое умеет исполнить любую программу и ничего не знает заранее о том, какую именно. За эту неосведомлённость оно платит кажд…","c":"post","d":"hardware","g":["железо","ускорители","gpu","fpga","энергоэффективность"],"h":"Где мы находимся · Первопринцип: считать дёшево, двигать дорого · Ось «универсальность против эффективности» · GPU: пропускная способность в","n":"Железо и архитектуры","p":"Фундамент","q":"02","r":"Вглубь железа: системы команд и RISC-V, конвейеры и внеочередное исполнение, кэши, SIMD, ускорители, производство кристаллов.","s":"Почему специализированное железо выигрывает не арифметикой, а движением данных: модель исполнения GPU, систолические мас…","t":"Ускорители: GPU, NPU, FPGA, ASIC и когда они оправданы","u":"/post/hardware/12-accelerators/","w":"2026-07-16"},{"b":"Условия: как программа принимает решения До сих пор наши программы были похожи на список поручений: сделай раз, сделай два, сделай три — и всегда одинаково. Такая программа полезна, но она не умеет главного: реагировать.…","c":"post","d":"intro","g":["с нуля","python","основы программирования","условия"],"h":"Аналогия: развилка на дороге · «Да» и «нет» на языке программы: тип bool · Откуда берутся True и False: операторы сравнения · Первое настоящ","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Разбираем if, elif и else: как научить программу выбирать разные действия в зависимости от данных — с нуля, с разбором о…","t":"Условия: как программа принимает решения","u":"/post/intro/05-conditions/","w":"2026-07-16"},{"b":"Устав, содержание и WBS: три базовых документа проекта и контроль изменений PMBOK описывает три основных документа проекта, у каждого своё назначение: устав проекта — официальная авторизация; описание содержания проекта …","c":"post","d":"management","g":["менеджмент","управление проектами","документация","планирование","процессы"],"h":"1. Устав проекта · Шаблон на одну страницу · 2. Содержание проекта · «Вне объёма» — самый ценный раздел · Критерии приёмки и связь с DoD · 3","n":"Управление: базовые материалы","p":"Продукт, процесс и люди","q":"07","r":"Жизненный цикл ПО, модели разработки, PMBoK, PRINCE2, делегирование.","s":"Устав как зафиксированное решение и адрес ответственности, описание содержания с самым ценным разделом «вне объёма», WBS…","t":"Устав, содержание и WBS: три базовых документа проекта и контроль изменений","u":"/post/management/07-charter-and-scope/","w":"2026-07-16"},{"b":"Установка Go и рабочее окружение Одно из главных обещаний Go — «инструменты в комплекте». Вам не нужно собирать зоопарк из менеджера версий, сборщика, форматтера, тест-раннера и линтера от разных вендоров, как в некоторы…","c":"post","d":"golang","g":["go","инструменты","сборка","линтеры","окружение"],"h":"Установка тулчейна · Управление версиями Go · GOPATH ушёл, пришли модули · go.mod и go.sum — сердце проекта · Прокси, приватные модули и без","n":"Go","p":"Языки и парадигмы","q":"03","r":"Горутины, каналы, context, прод-архитектура и статические бинарники.","s":"Ставим Go, разбираемся с go.mod/go.sum, gofmt, go vet, golangci-lint, LSP и правильной раскладкой проекта.…","t":"Установка Go и инструментарий: тулчейн, модули, линтеры, layout","u":"/post/golang/01-setup-tooling/","w":"2026-07-16"},{"b":"Установка и инструментарий Elixir Хороший инструментарий в Elixir — это не «дополнительная опция», а часть культуры. mix собирает и тестирует, hex тянет зависимости, mix format устраняет споры о стиле, Credo ловит запахи…","c":"post","d":"elixir","g":["elixir","инструменты","сборка","линтеры","статический анализ"],"h":"Что именно вы ставите · Установка через asdf (рекомендуемый путь) · IEx — интерактивная оболочка · Mix — сборка, задачи, окружения · Hex — м","n":"Elixir","p":"Языки и парадигмы","q":"03","r":"BEAM, OTP, супервизия, Ecto, Phoenix и отказоустойчивость по умолчанию.","s":"Ставим Erlang/Elixir через менеджер версий, разбираем Mix и Hex, настраиваем форматтер, линтер Credo, статический анализ…","t":"Установка и инструментарий Elixir: asdf, Mix, Hex, форматтер, Credo, Dialyzer","u":"/post/elixir/01-setup-tooling/","w":"2026-07-16"},{"b":"Установка и инструментарий: JDK, Maven, Gradle, структура проекта В большинстве языков «установка» — это скучный первый шаг, который можно пролистать. В Java пролистывать нельзя: половина проблем, с которыми новичок сиди…","c":"post","d":"java","g":["java","jdk","maven","gradle","инструменты"],"h":"Модель, из которой всё следует · Что лежит в JDK · Какую версию и какой дистрибутив ставить · Установка и переключение версий · Первый запус","n":"Java","p":"Языки и парадигмы","q":"03","r":"ООП, коллекции, стримы, JVM и память, Spring, персистентность, деплой.","s":"Как устроена платформа Java на диске: выбрать дистрибутив и версию JDK, освоить javac/java/jshell/javap, собрать проект …","t":"Установка и инструментарий: JDK, Maven, Gradle, структура проекта","u":"/post/java/01-setup-tooling/","w":"2026-07-16"},{"b":"Установка и инструментарий: rustup, cargo, clippy, rustfmt В обзоре трека мы говорили, зачем язык устроен так, как устроен. Теперь практика — и начать надо с честного признания: в Rust инструментарий не «вспомогательный»…","c":"post","d":"rust","g":["rust","инструменты","cargo","сборка"],"h":"Что вообще значит «установить Rust» · rustup: не «менеджер версий», а диспетчер · Каналы и релизный поезд · Cargo: модель сборки, а не набор","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Как устроена среда Rust: rustup как диспетчер тулчейнов, cargo как модель сборки, clippy и rustfmt как встроенное код-ре…","t":"Установка и инструментарий: rustup, cargo, clippy, rustfmt","u":"/post/rust/01-setup-tooling/","w":"2026-07-16"},{"b":"Установка и инструментарий: версии, venv, pip, uv, poetry, линтеры Первая глава любого курса по языку обычно выглядит как список команд: скачай, установи, проверь версию. С Python так не работает, и это не придирка — это…","c":"post","d":"python","g":["python","инструменты","пакетные менеджеры","линтеры","окружение"],"h":"Модель: окружение — это sys.path · Какую версию Python ставить · Откуда брать интерпретатор · Чего нельзя делать: ставить пакеты в системный","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Разбираем окружение Python как исполняемую модель: интерпретатор, sys.path, venv, слои упаковки от pyproject.toml до whe…","t":"Установка и инструментарий: версии, venv, pip, uv, poetry, линтеры","u":"/post/python/01-setup-tooling/","w":"2026-07-16"},{"b":"Установка и тулчейн .NET Прежде чем писать код, нужно собрать окружение, которое будет работать одинаково на вашей машине, у коллеги и на CI. В мире .NET это на удивление просто: почти всё, что нужно, лежит внутри одного…","c":"post","d":"csharp","g":["csharp","инструменты","сборка","пакетные менеджеры","линтеры"],"h":"SDK vs Runtime · global.json — фиксируем версию SDK · dotnet CLI: команды, которые вы будете использовать каждый день · Анатомия проекта: .c","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Как поставить .NET SDK, освоить dotnet CLI, организовать решение с Central Package Management и подключить форматтер, ан…","t":"Установка и тулчейн .NET: SDK, dotnet CLI, NuGet и структура проекта","u":"/post/csharp/01-setup-tooling/","w":"2026-07-16"},{"b":"Установка и тулчейн TypeScript: от Node до tsconfig Прежде чем писать типы, нужно собрать окружение, которое будет их проверять и превращать .ts в исполняемый код. В отличие от многих языков, у TypeScript нет единого «оф…","c":"post","d":"typescript","g":["typescript","инструменты","сборка","линтеры","пакетные менеджеры"],"h":"Рантайм и менеджер версий · Менеджер пакетов и lock-файлы · Установка TypeScript и первая проверка · Сердце проекта: tsconfig.json · strict ","n":"TypeScript","p":"Языки и парадигмы","q":"03","r":"Система типов, event loop, валидация, тестирование и деплой сервисов.","s":"Полная настройка окружения: менеджеры пакетов и lock-файлы, tsconfig со strict, ESLint, Prettier, сборщики и структура п…","t":"Установка и тулчейн TypeScript: от Node до tsconfig","u":"/post/typescript/01-setup-tooling/","w":"2026-07-16"},{"b":"Устойчивость: circuit breaker, retry, bulkhead, backpressure, деградация Есть простая мысль, которую большинство систем узнаёт слишком поздно: отказ зависимости — это не исключительная ситуация, это штатный режим работы.…","c":"post","d":"architecture-patterns","g":["архитектура","устойчивость","отказоустойчивость","распределённые системы","sre"],"h":"1. Почему распределённые системы падают целиком · 2. Таймаут — фундамент, без которого не работает ничего · 3. Ретраи: как повторить и не ус","n":"Архитектурные паттерны","p":"Проектирование систем","q":"04","r":"Слои, микросервисы, event-driven, CQRS, saga, устойчивость, system design.","s":"Как проектировать систему, которая переживает отказ своих зависимостей: таймауты и бюджеты дедлайнов, ретраи без лавины,…","t":"Устойчивость: circuit breaker, retry, bulkhead, backpressure, деградация","u":"/post/architecture-patterns/09-resilience-patterns/","w":"2026-07-16"},{"b":"Учиться на чужом коде и внутри рабочих задач Предыдущие главы разбирали приёмы, которые можно применить к любому материалу: извлечение, интервалы, желательные трудности, перемежение, обратную связь, перенос. Эта глава — …","c":"post","d":"learning","g":["обучение","чтение кода","код-ревью","практика"],"h":"Почему «работа сама научит» не работает по умолчанию · Миф первый: 70-20-10 · Миф второй: опыт равен экспертизе · Что при этом измерено · Чт","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Что известно про понимание чужого кода из исследований, почему «работа сама научит» и правило 70-20-10 не выдерживают пр…","t":"Учиться на чужом коде и внутри рабочих задач","u":"/post/learning/12-learning-from-code/","w":"2026-07-16"},{"b":"Учиться с ИИ: где он ускоряет, а где отнимает обучение Предыдущий вопрос — стоит ли вообще учиться, когда есть модель, — разобран в главе Зачем учиться, когда есть ИИ. Ответ там получился двусторонний: часть знания дейст…","c":"post","d":"learning","g":["обучение","ии","инструменты","когнитивная психология","доказательность"],"h":"Один инструмент, два несовместимых режима · Почему режим по умолчанию не обучающий · Что известно из исследований · Прямые эксперименты: рез","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Разбор того, что происходит с обучением инженера, когда рядом языковая модель: какие обучающие события она перехватывает…","t":"Учиться с ИИ: где он ускоряет, а где отнимает обучение","u":"/post/learning/14-learning-with-ai/","w":"2026-07-16"},{"b":"ФП в обычных языках: JavaScript, TypeScript, Python, Java, C#, Kotlin Весь предыдущий трек мы разбирали идеи ФП там, где они живут в своей естественной среде: чистые функции, персистентные структуры, типизированные эффек…","c":"post","d":"functional-programming","g":["функциональное программирование","typescript","python","java","kotlin","csharp"],"h":"Как ФП просачивалось в мейнстрим · Матрица: что есть в языке, а что нет · Универсальные препятствия · JavaScript: всё разрешено, ничего не г","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Как применять функциональные идеи в языках, которые не задумывались функциональными: что каждый из шести языков даёт из …","t":"ФП в обычных языках: JavaScript, TypeScript, Python, Java, C#, Kotlin","u":"/post/functional-programming/15-fp-in-mainstream-languages/","w":"2026-07-16"},{"b":"Файловые системы: VFS, ext4, XFS, btrfs, ZFS, журналирование Диск не знает ни о файлах, ни о каталогах, ни об именах. Он умеет ровно две вещи: «прочитай сектор номер N» и «запиши сектор номер N». Всё остальное — иерархия…","c":"post","d":"operating-systems","g":["операционные системы","файловые системы","ext4","zfs","хранение данных"],"h":"Зачем нужен слой абстракции: VFS · Кэш имён и почему stat бывает бесплатным · Путь одного read() сверху вниз · Как хранить карту блоков: от ","n":"Операционные системы","p":"Фундамент","q":"02","r":"От Unix и BSD до Linux: ядра, память, ФС, загрузка, init, WM, контейнеры.","s":"Как ядро превращает плоский массив блоков в дерево имён: слой VFS, inode и dentry, экстенты ext4, B+ деревья XFS, copy-o…","t":"Файловые системы: VFS, ext4, XFS, btrfs, ZFS, журналирование","u":"/post/operating-systems/05-filesystems/","w":"2026-07-16"},{"b":"Файлы и форматы данных: текст, CSV, JSON У всех наших программ до сих пор была одна общая беда: они забывали всё. Вы запускали программу, она считала список покупок, красиво выводила его на экран — а потом завершалась, и…","c":"post","d":"intro","g":["с нуля","python","основы программирования","файлы","json"],"h":"Что такое файл на самом деле · Текстовые и двоичные файлы · Читаем файл: open и with · Способ 1: всё целиком в одну строку · Способ 2: постр","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Учимся сохранять данные так, чтобы они пережили закрытие программы: читаем и пишем текстовые файлы, разбираемся с кодиро…","t":"Файлы и форматы данных: текст, CSV, JSON","u":"/post/intro/09-files-and-data/","w":"2026-07-16"},{"b":"Фасилитация: как вести встречи, чтобы они приносили пользу Посчитайте: команда из семи человек, двухнедельный спринт. Планирование — 4 часа, дейли — 15 минут × 10, обзор — 2 часа, ретроспектива — 1,5 часа, рефайнмент — е…","c":"post","d":"scrum-master","g":["scrum","psm-i","фасилитация","командная работа","встречи"],"h":"Что ломается без фасилитации · Что говорит Scrum Guide, а что нет · Фасилитация против четырёх похожих вещей · Анатомия встречи: пять вопрос","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Что такое фасилитация с точки зрения Scrum Guide и практики: структура встречи, ромб участия, лестница вмешательства, ка…","t":"Фасилитация: как вести встречи, чтобы они приносили пользу","u":"/post/scrum-master/07-facilitation/","w":"2026-07-16"},{"b":"Фокус: помодоро, deep work и защита от прерываний В предыдущей статье мы поставили в календарь блоки под сосредоточенную работу. Но блок в календаре — это только заявка на внимание. Между заявкой и реальной работой стоят…","c":"post","d":"time-management","g":["тайм-менеджмент","продуктивность","фокус","прерывания"],"h":"Почему у программиста фокус дороже, чем у большинства профессий · Краткая история идей о фокусе · Помодоро: честный разбор · Происхождение ·","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Что известно про концентрацию, цену прерываний и восстановление контекста у программистов, и как из помодоро, deep work …","t":"Фокус: помодоро, deep work и защита от прерываний","u":"/post/time-management/06-focus-and-pomodoro/","w":"2026-07-16"},{"b":"Фоновая обработка и Generic Host Не всякая работа помещается в HTTP-запрос. Отправка письма, пересчёт отчёта, импорт выгрузки на сто тысяч строк, разбор сообщения из брокера, ночная чистка — всё это должно происходить вн…","c":"post","d":"csharp","g":["csharp","фоновые задачи","очереди","надёжность","хостинг"],"h":"Generic Host: что на самом деле запускает приложение · BackgroundService и его ловушки · Периодические задачи · Одна задача на несколько реп","n":"C# / .NET","p":"Языки и парадигмы","q":"03","r":"async/await, Channels, EF Core, DI, Testcontainers и OpenTelemetry.","s":"Как выносить работу за пределы HTTP-запроса: устройство Generic Host, BackgroundService и его ловушки, периодические зад…","t":"Фоновая обработка в .NET: Generic Host, BackgroundService, очереди и graceful shutdown","u":"/post/csharp/12-background-and-hosting/","w":"2026-07-16"},{"b":"Фоновая работа и пуши: ограничения ОС, планировщики, уведомления Серверный разработчик, впервые попавший в мобильную разработку, ищет cron. Не находит, удивляется, находит WorkManager или BGTaskScheduler, пишет «раз в 15…","c":"post","d":"mobile","g":["мобильная разработка","фоновая работа","push-уведомления","батарея","жизненный цикл"],"h":"Откуда взялись ограничения · Таксономия: пять разных задач, которые называют «фоном» · Что вообще происходит с процессом: iOS · API-инструме","n":"Мобильная разработка","p":"Языки и парадигмы","q":"03","r":"iOS и Android, кроссплатформа, оффлайн, пуши, публикация в сторах.","s":"Почему на телефоне нет cron: модель фонового исполнения iOS и Android, BGTaskScheduler и WorkManager, Doze и App Standby…","t":"Фоновая работа и пуши: ограничения ОС, планировщики, уведомления","u":"/post/mobile/08-background-and-push/","w":"2026-07-16"},{"b":"Формы и валидация: контролируемые поля, схемы, UX ошибок В предыдущей статье мы разобрались, как данные приходят в приложение. Форма — обратное направление: данные уходят от пользователя к вам. И это то место, где интерф…","c":"post","d":"frontend","g":["frontend","react","формы","валидация","ux"],"h":"1. Почему формы — самая дорогая часть интерфейса · 2. Где живёт значение: три источника истины · Контролируемое поле · Неконтролируемое поле","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Где живёт значение поля, почему одна схема должна работать и в браузере, и на сервере, когда показывать ошибку, как форм…","t":"Формы и валидация: контролируемые поля, схемы, UX ошибок","u":"/post/frontend/12-forms-and-validation/","w":"2026-07-16"},{"b":"Фриланс с нуля: первые клиенты, портфолио, площадки, репутация Первый заказ — самая дорогая единица работы в карьере независимого инженера. Не технически: обычно первый платный проект проще того, что вы делали в найме. Д…","c":"post","d":"business","g":["бизнес","фриланс","клиенты","портфолио","репутация"],"h":"1. Холодный старт — задача про риск, а не про навык · 2. Позиционирование раньше каналов · 3. Карта каналов: откуда приходят первые клиенты ","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Как инженеру без имени и связей дойти до первых оплаченных проектов: позиционирование, каналы поиска, кейсы вместо списк…","t":"Фриланс с нуля: первые клиенты, портфолио, площадки, репутация","u":"/post/business/01-freelance-start/","w":"2026-07-16"},{"b":"Функторы и аппликативы: контейнеры, к которым применяют функции Код, который вы писали сто раз Начнём не с определений, а с боли. Вот три фрагмента из разных проектов, на разных языках, решающие разные задачи. # 1. Списо…","c":"post","d":"functional-programming","g":["функциональное программирование","функторы","аппликативы","обработка ошибок","типы"],"h":"Код, который вы писали сто раз · Первый шаг: map как единственная операция · Зоопарк: что вообще бывает функтором · Законы функтора: зачем ф","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Как из повторяющегося кода «распаковать — применить — запаковать» рождаются функтор и аппликатив, зачем нужны их законы …","t":"Функторы и аппликативы: контейнеры, к которым применяют функции","u":"/post/functional-programming/07-functors-and-applicatives/","w":"2026-07-16"},{"b":"Функции первого класса и высшего порядка, замыкания В предыдущих статьях трека мы разобрали чистые функции и неизменяемость — два свойства, которые делают код предсказуемым. Но предсказуемость сама по себе не даёт вырази…","c":"post","d":"functional-programming","g":["функциональное программирование","замыкания","higher-order functions","typescript","elixir"],"h":"Боль первая: два цикла, отличающиеся одной строкой · Каноническая тройка: map, filter, reduce · Почему reduce — главный из трёх · Боль втора","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Как превращение функции в обычное значение убирает дублирование кода, откуда берутся map/filter/reduce, что на самом дел…","t":"Функции первого класса и высшего порядка, замыкания","u":"/post/functional-programming/03-higher-order-functions/","w":"2026-07-16"},{"b":"Функции, области видимости, замыкания, декораторы Синтаксис def вы уже знаете — если нет, начните с курса «Программирование с нуля», там функции разобраны с азов. Эта глава про другое: что именно создаёт интерпретатор, к…","c":"post","d":"python","g":["python","функции","замыкания","декораторы"],"h":"Функция — объект, а не подпрограмма · Анатомия: function, code, cell, frame · Сигнатура как контракт вызова · Грабля №1: изменяемое значение","n":"Python","p":"Языки и парадигмы","q":"03","r":"Модель данных, идиомы, типизация, asyncio, тесты, данные, веб и продакшен.","s":"Функция как объект: анатомия, сигнатуры, LEGB глазами компилятора, ячейки замыканий, декораторы от сахара до продакшн-па…","t":"Функции, области видимости, замыкания, декораторы","u":"/post/python/04-functions-and-scopes/","w":"2026-07-16"},{"b":"Функции: как перестать повторять себя и навести порядок К этому моменту мы умеем хранить данные (переменные), выбирать между вариантами (условия) и повторять действия (циклы). Этого достаточно, чтобы написать работающую …","c":"post","d":"intro","g":["с нуля","python","основы программирования","функции"],"h":"Проблема, из которой всё выросло · Аналогия: рецепт · Первая функция · Параметры: как передать функции данные · Return: как получить результ","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Учимся заворачивать кусок кода в функцию: def, параметры, return, область видимости — и разбираем ошибки, на которых спо…","t":"Функции: как перестать повторять себя и навести порядок","u":"/post/intro/07-functions/","w":"2026-07-16"},{"b":"Функциональное программирование: карта курса, история и зачем это нужно Есть класс багов, который знает каждый, кто писал код дольше года. Тест зелёный локально и красный в CI. Функция работает, пока её вызывают в правил…","c":"post","d":"functional-programming","g":["функциональное программирование","парадигмы","чистые функции","неизменяемость"],"h":"Боль первая: изменяемое состояние делает код нелокальным · Что такое ФП на самом деле: ссылочная прозрачность · Короткая история: почему это","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Вводная статья курса по ФП: какую конкретную боль решает функциональный стиль, откуда он взялся, что даёт на практике, с…","t":"Функциональное программирование: карта курса, история и зачем это нужно","u":"/post/functional-programming/00-overview/","w":"2026-07-16"},{"b":"Функциональное программирование: чистота, неизменяемость, композиция Одна строчка, которая ломает рассуждение Посмотрите на выражение x = f(a) + f(a). Можно ли заменить его на x = 2 * f(a)? В школьной алгебре ответ «коне…","c":"post","d":"paradigms","g":["парадигмы","функциональное программирование","неизменяемость","композиция"],"h":"Одна строчка, которая ломает рассуждение · Немного истории: это не мода 2015 года · Чистота и ссылочная прозрачность · Неизменяемость и перс","n":"Парадигмы разработки","p":"Фундамент","q":"02","r":"ООП, ФП, логическая, реактивная, акторная — и как их смешивать.","s":"Как работает функциональная парадигма изнутри: ссылочная прозрачность, персистентные структуры данных, композиция, свёрт…","t":"Функциональное программирование: чистота, неизменяемость, композиция","u":"/post/paradigms/03-functional/","w":"2026-07-16"},{"b":"Функциональные паттерны: функторы, монады, линзы, комбинаторы Все предыдущие статьи трека — от обзора до порождающих, структурных, поведенческие и конкурентные паттерны — говорили на одном языке: есть объекты, у объектов…","c":"post","d":"design-patterns","g":["паттерны проектирования","функциональное программирование","монады","композиция","неизменяемость"],"h":"Смена системы координат · Паттерн ноль: функция как значение · Композиция и комбинаторы · Функтор: применить функцию внутри контекста · Зако","n":"Паттерны проектирования","p":"Проектирование систем","q":"04","r":"GoF, паттерны конкурентности, функциональные паттерны и антипаттерны.","s":"Как устроен второй словарь паттернов — функции как значения, функторы и монады с их законами, аппликативная валидация, п…","t":"Функциональные паттерны: функторы, монады, линзы, комбинаторы","u":"/post/design-patterns/05-functional-patterns/","w":"2026-07-16"},{"b":"Хеш-таблицы: хеш-функции, коллизии, открытая адресация Хеш-таблица — самая используемая нетривиальная структура данных в мире. dict в Python, map в Go, HashMap в Java, Map в JavaScript, индексы в базах, кеши, дедупликаци…","c":"post","d":"data-structures","g":["структуры данных","хеш-таблицы","хеширование","производительность"],"h":"Зачем нужна хеш-таблица · Хеш-функция: чего мы от неё хотим · Согласованность hash и equals · Как строят хеш-функции · Универсальное хеширов","n":"Структуры данных","p":"Фундамент","q":"02","r":"От массива и хеш-таблицы до вероятностных и персистентных структур.","s":"Как из массива и одной функции получается словарь с O(1) доступом: устройство хеш-функций, разрешение коллизий цепочками…","t":"Хеш-таблицы: хеш-функции, коллизии, открытая адресация","u":"/post/data-structures/05-hash-tables/","w":"2026-07-16"},{"b":"Хранилища и форматы: Parquet, колоночные БД, lakehouse Все предыдущие статьи трека говорили о движении данных: как их извлечь (https://courses.digitable.life/post/data-engineering/01-etl-vs-elt/), в какую форму привести …","c":"post","d":"data-engineering","g":["данные","parquet","lakehouse","iceberg","clickhouse","хранилища"],"h":"1. Первый принцип: почему раскладка байт решает всё · 2. Кодирование и сжатие — это разные вещи · 3. Parquet изнутри · Как выглядит pruning ","n":"Data Engineering и ETL","p":"Данные, ML и ИИ","q":"05","r":"ETL/ELT, моделирование, batch и streaming, оркестрация, качество данных.","s":"Как устроены колоночные форматы и хранилища данных: Parquet изнутри, кодирование и сжатие, pruning, ClickHouse и DuckDB,…","t":"Хранилища и форматы: Parquet, колоночные БД, lakehouse","u":"/post/data-engineering/06-storage-and-formats/","w":"2026-07-16"},{"b":"Хуки и автоматизация: pre-commit, CI-интеграция, подпись коммитов Разговор про хуки обычно начинается с «давайте повесим линтер на pre-commit», а через полгода заканчивается тем, что половина команды коммитит с --no-veri…","c":"post","d":"git","g":["git","автоматизация","ci-cd","хуки","безопасность"],"h":"Что такое хук физически · Карта хуков · Пишем правильный pre-commit руками · Что происходит при git commit по шагам · Фреймворки: почему не ","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Хук — это программа, которую Git запускает на переходе между состояниями модели данных: индекс → объект коммита → локаль…","t":"Хуки и автоматизация: pre-commit, CI-интеграция, подпись коммитов","u":"/post/git/08-hooks-and-automation/","w":"2026-07-16"},{"b":"Хуки и паттерны React: useState, useEffect, мемоизация, композиция В предыдущей статье мы разобрали, как React превращает JSX в дерево fiber и как реконсиляция решает, что менять в DOM. Там компонент был чистой функцией …","c":"post","d":"frontend","g":["frontend","react","хуки","производительность","паттерны"],"h":"Откуда взялись хуки · Ментальная модель: рендер — это снимок · Как React помнит состояние: слоты в fiber · Карта хуков · useState вглубь · u","n":"Frontend-разработка","p":"Языки и парадигмы","q":"03","r":"Браузер, HTML/CSS, React, состояние, сборка, производительность и тестирование.","s":"Как на самом деле работают хуки: слоты в fiber, снимки рендера, эффекты как синхронизация, честная цена мемоизации, каст…","t":"Хуки и паттерны React: useState, useEffect, мемоизация, композиция","u":"/post/frontend/09-react-hooks-and-patterns/","w":"2026-07-16"},{"b":"Цели: SMART, OKR, антицели и почему цели часто вредят В предыдущей статье — Горизонты планирования — мы построили каркас: день, неделя, квартал, год и обзор, который их связывает. Каркас пустой. Он отвечает на вопрос «ко…","c":"post","d":"time-management","g":["тайм-менеджмент","целеполагание","okr","метрики","продуктивность"],"h":"Что действительно доказано: теория целеполагания · Короткая история: от MBO до OKR · SMART: что написал Доран и что от этого осталось · Ориг","n":"Тайм-менеджмент для инженера","p":"Первые шаги","q":"01","r":"Внимание и энергия, GTD, календарь, помодоро, борьба с прокрастинацией и выгоранием.","s":"Разбор постановки целей для инженера: что действительно доказано в теории целеполагания, откуда взялись SMART и OKR, где…","t":"Цели: SMART, OKR, антицели и почему цели часто вредят","u":"/post/time-management/09-goals-and-okr/","w":"2026-07-16"},{"b":"Цена работы с агентом: токены, время и внимание человека Предыдущие главы разбирали, что агент делает и где он врёт. Эта — про то, во что вам обходится каждая попытка это выяснить. Тезис, вокруг которого построена глава:…","c":"post","d":"ai-agents","g":["ai-агенты","стоимость","токены","ревью"],"h":"Три валюты · Что именно оплачивается на одном ходу · Откуда берётся квадрат · Как посчитать свою цену, а не чужую · Поля usage — единственны","n":"Инженерия с ИИ-агентами","p":"Данные, ML и ИИ","q":"05","r":"Практика работы с агентом в реальной кодовой базе: контекст, инструменты, ревью, где агент врёт и сколько это стоит.","s":"Из чего складывается полная стоимость агентской сессии, почему счёт в токенах растёт квадратично, как посчитать свою цен…","t":"Цена работы с агентом: токены, время и внимание человека","u":"/post/ai-agents/12-cost/","w":"2026-07-16"},{"b":"Ценообразование, монетизация и рост Цена — единственное решение продакта, которое влияет на выручку напрямую, без задержки и без разработки. Всё остальное — фичи, дизайн, перформанс — влияет опосредованно: через поведени…","c":"post","d":"product-management","g":["продукт","монетизация","ценообразование","рост","unit-экономика"],"h":"1. Что такое цена по существу · 1.1. Value stick: цена не создаёт ценность, она её делит · 1.2. Три способа назначить цену и почему два из н","n":"Product Management","p":"Продукт, процесс и люди","q":"07","r":"Discovery, метрики, приоритизация, MVP, эксперименты, рост.","s":"Как устроена цена от первых принципов: value stick и готовность платить, value metric, измерение WTP (Van Westendorp, Ga…","t":"Ценообразование, монетизация и рост","u":"/post/product-management/07-pricing-and-growth/","w":"2026-07-16"},{"b":"Ценообразование: подписка, потребление, места, freemium На лендинге написано «990 рублей за пользователя в месяц». Одиннадцать символов. В системе за ними стоит ответ на четыре вопроса, которые кто-то должен решить до пе…","c":"post","d":"software-distribution","g":["поставка софта","ценообразование","биллинг","монетизация","unit-экономика"],"h":"Цена — это функция от того, что вы умеете измерить · Пять форм по цене владения · Подписка за период: дёшево в обслуживании, слепа к себесто","n":"Поставка софта","p":"Продукт, процесс и люди","q":"07","r":"Как продукт доезжает до пользователя и как за него платят: SaaS и облачные уровни, лицензии, цены, магазины, обновления.","s":"Форма цены — это не строчка на лендинге, а требование к схеме данных, к счётчикам и к точкам проверки прав: разбираем по…","t":"Ценообразование: подписка, потребление, места, freemium","u":"/post/software-distribution/06-pricing/","w":"2026-07-16"},{"b":"Ценообразование: почасовая, фикс, ценностная модель, как считать свою ставку Инженер, впервые называющий цену, берёт бывшую зарплату, делит на рабочие часы, добавляет «немного сверху, я же сам по себе» — и получает число…","c":"post","d":"business","g":["бизнес","фриланс","деньги","переговоры","риски"],"h":"1. Три числа, а не одно · 2. Пол: считаем снизу вверх · 2.1. Годовой бюджет — четыре ведра · 2.2. Оплачиваемое время: утилизация · 2.3. Каль","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Как считать пол своей ставки от затрат и утилизации, где находится потолок цены, чем различаются почасовая, фиксированна…","t":"Ценообразование: почасовая, фикс, ценностная модель, как считать свою ставку","u":"/post/business/02-pricing/","w":"2026-07-16"},{"b":"Цепи Маркова: предсказание без понимания Фрагмент лекции: «Все что нужно знать про ИИ айтишнику», 05:00 — отсюда взято содержание этой главы. В предыдущей главе мы дошли до неудобного места: детерминированная машина не у…","c":"post","d":"ai-basics","g":["основы ии","цепи маркова","вероятностные модели","n-граммы","pagerank"],"h":"От скороговорки к графу переходов · Конечный автомат и цепь Маркова: где проходит граница · Марковское свойство, сформулированное строго · Н","n":"ИИ для инженера: основы","p":"Данные, ML и ИИ","q":"05","r":"Как на самом деле работают LLM, нейросети и промптинг: от цепей Маркова до агентов и оркестрации.","s":"Как из скороговорки собирается вероятностный автомат, который дописывает текст, ничего не понимая: марковское свойство, …","t":"Цепи Маркова: предсказание без понимания","u":"/post/ai-basics/02-markov-chains/","w":"2026-07-16"},{"b":"Циклы: как заставить программу повторять действия Представьте, что вам нужно поздравить с праздником трёх коллег. Можно написать три строки — терпимо. А если коллег триста? А если список приходит из файла и вы заранее не…","c":"post","d":"intro","g":["с нуля","python","основы программирования","циклы"],"h":"Аналогия: стопка писем · Цикл for: «для каждого элемента» · Перебирать можно не только списки · range: когда нужно просто «повторить N раз» ","n":"Программирование с нуля","p":"Первые шаги","q":"01","r":"Для полных новичков: как работает компьютер, первая программа, переменные, циклы, первый проект.","s":"Разбираем циклы for и while с нуля: как повторять действия, копить результат, останавливаться вовремя и не попадать в бе…","t":"Циклы: как заставить программу повторять действия","u":"/post/intro/06-loops/","w":"2026-07-16"},{"b":"Числа Чёрча: арифметика без чисел В прошлой статье мы выяснили, что истина и ложь — это функции выбора. Теперь вопрос посерьёзнее: а числа? В лямбда-исчислении нет литерала 2. Нет типа int, нет цифр, нет +. Есть только п…","c":"post","d":"lambda-calculus","g":["лямбда-исчисление","кодирование Чёрча","функциональное программирование","рекурсия"],"h":"Определение: число — это счётчик повторений · Тот же код на JavaScript и Python · SUCC: следующее число · PLUS: сложение · MULT: умножение —","n":"Лямбда-исчисление Чёрча","p":"Фундамент","q":"02","r":"Понятным языком: нотация, редукции, числа Чёрча, комбинатор Y, соответствие Карри–Ховарда.","s":"Как из одних только функций получаются натуральные числа, сложение, умножение, степень и коварный предшественник — с пол…","t":"Числа Чёрча: арифметика без чисел","u":"/post/lambda-calculus/05-numerals/","w":"2026-07-16"},{"b":"Численные методы: точность, устойчивость, арифметика с плавающей точкой Вся математика предыдущих статей трека жила в идеальном мире. Вектор в линейной алгебре состоял из настоящих вещественных чисел. Определитель в стат…","c":"post","d":"mathematics","g":["математика","численные методы","плавающая точка","устойчивость","python"],"h":"Часть 0. Три сцены из обычной жизни разработчика · Часть 1. Что такое число с плавающей точкой · Интуиция: научная нотация в двоичной систем","n":"Математика для программиста","p":"Фундамент","q":"02","r":"Множества, логика, линейная алгебра, теория категорий, вычислимость, теория игр и хаоса.","s":"Как на самом деле устроен float, откуда берутся погрешности, чем обусловленность задачи отличается от устойчивости алгор…","t":"Численные методы: точность, устойчивость, арифметика с плавающей точкой","u":"/post/mathematics/15-numerical-methods/","w":"2026-07-16"},{"b":"Чистые функции, побочные эффекты и почему это меняет всё Если в обзорной статье трека парадигм (https://courses.digitable.life/post/paradigms/03-functional/) функциональное программирование было одной из точек на карте, …","c":"post","d":"functional-programming","g":["функциональное программирование","чистые функции","побочные эффекты","тестирование","рефакторинг"],"h":"Сначала боль: тест, который падает по вторникам · Определение: чистота — это два свойства · Таксономия побочных эффектов · Пограничные случа","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Что такое чистота на самом деле, какие бывают побочные эффекты, что чистота даёт (тесты, мемоизация, параллелизм, рефакт…","t":"Чистые функции, побочные эффекты и почему это меняет всё","u":"/post/functional-programming/01-pure-functions/","w":"2026-07-16"},{"b":"Чистый код: имена, функции, границы, комментарии Есть неудобный факт, вокруг которого крутится вся эта тема: код читают гораздо чаще, чем пишут. Оценки соотношения гуляют — от 10:1 у Роберта Мартина до более скромных циф…","c":"post","d":"principles","g":["принципы","чистый код","рефакторинг","читаемость","инженерная культура"],"h":"1. Имена · 1.1 Интуиция: имя — это сжатый контракт · 1.2 Длина имени пропорциональна размеру области видимости · 1.3 Каталог типовых ошибок ","n":"Принципы разработки","p":"Фундамент","q":"02","r":"SOLID, DRY/KISS/YAGNI, чистый код, рефакторинг, 12-factor, код-ревью.","s":"Что на самом деле означает «чистый код»: как называть сущности, какого размера делать функции, как изолировать чужой код…","t":"Чистый код: имена, функции, границы, комментарии","u":"/post/principles/04-clean-code/","w":"2026-07-16"},{"b":"Читатель и решение: зачем существует этот документ Инженер садится писать RFC. Через два часа готово восемь страниц: контекст, история вопроса, сравнение пяти библиотек, таблица бенчмарков, диаграмма компонентов. Докумен…","c":"post","d":"technical-writing","g":["техническое письмо","документация","коммуникация","инженерная культура"],"h":"Документ как звено в цепи, а не как результат · Три вопроса до первой строки · Читателей несколько, главный — один · Каталог решений: что во","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Технический документ существует ради решения, которое должен принять конкретный читатель: как найти адресата, сформулиро…","t":"Читатель и решение: зачем существует этот документ","u":"/post/technical-writing/01-reader-and-decision/","w":"2026-07-16"},{"b":"Чтение документации: как устроен технический английский Посчитайте честно, сколько английского текста вы прочитали за последнюю рабочую неделю. Страница документации библиотеки. Три ответа на Stack Overflow. Сообщение об…","c":"post","d":"engineering-english","g":["английский","документация","чтение","терминология"],"h":"Честно про порог входа · Почему технический английский проще разговорного · Жанр страницы предсказывает её грамматику · Как читать страницу ","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Почему документацию на английском можно читать быстро даже со средним языком: жанры страниц и их грамматика, цепочки сущ…","t":"Чтение документации: как устроен технический английский","u":"/post/engineering-english/01-reading-docs/","w":"2026-07-16"},{"b":"Чтение технических текстов: документация, статьи, книги Чтение — основной канал, по которому в голову инженера попадает новое. Не курсы, не конференции, не менторы: документация, исходники, RFC, статьи, треды в issue, кн…","c":"post","d":"learning","g":["обучение","чтение","документация","когнитивная психология"],"h":"Что здесь известно, а что нет · Чтение — это два разных действия · Что происходит при понимании текста · Предварительное знание решает больш","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Разные жанры технических текстов требуют разных режимов чтения: что известно про физиологию чтения и скорочтение, какие …","t":"Чтение технических текстов: документация, статьи, книги","u":"/post/learning/11-reading-technical-texts/","w":"2026-07-16"},{"b":"Что дальше: первые наёмные, агентство, продукт или возвращение в найм Вопрос «что дальше» приходит не от амбиции, а из трёх разных мест. От усталости: календарь забит, доход не растёт, свободного вечера нет третий месяц.…","c":"post","d":"business","g":["бизнес","карьера","команда","агентство","продукт"],"h":"1. Почему вопрос возникает: три потолка · 2. Пять траекторий, а не лестница · 3. Диагностика перед выбором · 4. Первые чужие руки · 4.1. Фор","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Пять траекторий после уверенного соло: осознанное одиночество, первые чужие руки, агентство, продукт и возвращение в най…","t":"Что дальше: первые наёмные, агентство, продукт или возвращение в найм","u":"/post/business/10-scaling/","w":"2026-07-16"},{"b":"Что делает операционная система: процессы, память, файлы — обзор В предыдущей статье трека мы проследили путь от исходного кода до потока машинных команд (От кода к исполнению). Но получить .exe или ELF-файл с командами …","c":"post","d":"computer-science","g":["computer science","операционные системы","процессы","виртуальная память","системные вызовы"],"h":"Зачем вообще нужна ОС: две роли · Ядро, режимы процессора и системные вызовы · Процессы: абстракция запущенной программы · Жизненный цикл пр","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Операционная система снизу вверх: зачем нужен слой между железом и программами, что такое процесс и виртуальная память, …","t":"Что делает операционная система: процессы, память, файлы — обзор","u":"/post/computer-science/08-operating-system-basics/","w":"2026-07-16"},{"b":"Что делать с найденным: воспроизводимый след Простая арифметика. Разведка под серьёзный вопрос стоит от получаса до дня. Через полгода вы столкнётесь с тем же вопросом — сами или в лице коллеги. Если следа не осталось, в…","c":"post","d":"research-skills","g":["поиск информации","документация","заметки","инженерная практика"],"h":"Что такое след · Пять форм следа · 1. Исполняемый след · 2. Комментарий в коде · 3. Проектный документ · 4. Карточка в общей базе · 5. Лична","n":"Как искать информацию","p":"Первые шаги","q":"01","r":"Поиск, когда вы что-то строите: от симптома к термину, первичные источники вместо пересказов, проверка достоверности, поиск по коду и истории, когда перестать искать и пойти проверять.","s":"Разведка, после которой ничего не осталось, будет повторена целиком. Разбираем пять форм следа от исполняемого теста до …","t":"Что делать с найденным: воспроизводимый след","u":"/post/research-skills/13-reproducible-trail/","w":"2026-07-16"},{"b":"Что значит понимать: узнавание, воспроизведение, перенос Вечером вы прочитали хорошую статью про consistent hashing. Всё сошлось: почему hash(key) % N разваливается при добавлении узла, почему кольцо решает проблему, зач…","c":"post","d":"learning","g":["обучение","память","перенос знания","метапознание","экспертиза"],"h":"Три вопроса, спрятанные в одном слове · Уровень 1. Узнавание · Уровень 2. Воспроизведение · Уровень 3. Перенос · Насколько далеко переноситс","n":"Как учиться","p":"Первые шаги","q":"01","r":"Зачем учиться в эпоху ИИ и как это делать: извлечение из памяти, интервальное повторение, перенос знания и разбор мифов.","s":"Слово «понимать» описывает три разных состояния с разной ценой и разной проверкой. Разбираем, что показали исследования …","t":"Что значит понимать: узнавание, воспроизведение, перенос","u":"/post/learning/02-what-is-understanding/","w":"2026-07-16"},{"b":"Что считать системой: элементы, связи, назначение Слово «система» в инженерной речи почти ничего не значит. Системой называют монолит и набор микросервисов, процесс код-ревью и таблицу в Confluence, компанию и очередь со…","c":"post","d":"systems-thinking","g":["системное мышление","системная динамика","моделирование","надёжность","инженерное мышление"],"h":"Определение: три составляющие · Тест на систему: три вопроса · Назначение: самое незаметное и самое сильное · Первый разбор: очередь, котора","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Рабочее определение системы через три составляющие, тест на отличие системы от кучи деталей, разница между декларируемым…","t":"Что считать системой: элементы, связи, назначение","u":"/post/systems-thinking/01-what-is-a-system/","w":"2026-07-16"},{"b":"Что такое SDLC: из чего состоит путь от идеи до работающего продукта Когда человек учится программировать, у него складывается модель работы примерно такая: приходит задача → пишешь код → код работает → готово. Эта модел…","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","процессы разработки","agile"],"h":"Зачем вообще нужна отдельная концепция · Фазы: универсальный скелет · Почему поздние ошибки такие дорогие · Модели: как одни и те же фазы ра","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Разбираем жизненный цикл разработки ПО как он есть на практике: фазы, модели, жизнь задачи в трекере, кто с кем взаимоде…","t":"Что такое SDLC: из чего состоит путь от идеи до работающего продукта","u":"/post/sdlc-and-career/01-what-is-sdlc/","w":"2026-07-16"},{"b":"Что такое алгоритм и сложность: интуиция Big-O для всех В прошлой статье трека мы разложили данные по полкам — увидели, что массивы, списки, деревья и хеш-таблицы существуют потому, что у каждой формы хранения своя цена …","c":"post","d":"computer-science","g":["computer science","алгоритмы","сложность","big-o","структуры данных"],"h":"Что такое алгоритм · Почему мы не меряем в секундах · Big-O простыми словами · Зоопарк сложностей · Худший, средний и лучший случай · Пример","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"Алгоритм как точный рецепт, а сложность как язык, на котором мы говорим о его цене: почему считают не секунды, а рост чи…","t":"Что такое алгоритм и сложность: интуиция Big-O для всех","u":"/post/computer-science/10-algorithms-and-complexity/","w":"2026-07-16"},{"b":"Что такое вычисление: от абака до Тьюринга и что значит «вычислимо» Прежде чем говорить о битах, процессорах и веб-приложениях, стоит задать вопрос, который кажется наивным, но на самом деле лежит в фундаменте всей инфор…","c":"post","d":"computer-science","g":["computer science","теория вычислений","машина тьюринга","вычислимость","алгоритмы"],"h":"Вычисление как механическое преодоление незнания · Три тысячи лет инструментов: от абака до Бэббиджа · Кризис оснований: почему математикам ","n":"Основы Computer Science","p":"Первые шаги","q":"01","r":"Большая картина: от транзистора и битов до сетей, веба и приложения.","s":"С первых принципов: что такое вычисление как механическое преобразование символов по правилам, откуда взялась машина Тью…","t":"Что такое вычисление: от абака до Тьюринга и что значит «вычислимо»","u":"/post/computer-science/01-what-is-computation/","w":"2026-07-16"},{"b":"Экзамен PSM I: формат, подготовка, разбор типичных вопросов Есть два способа провалить PSM I. Первый — не знать Scrum. Второй, гораздо более обидный и гораздо более частый: знать Scrum по опыту своей команды и не знать, …","c":"post","d":"scrum-master","g":["scrum","scrum-мастер","psm","сертификация"],"h":"Формат: сухие факты · Чем PSM I отличается от CSM · Что экзамен на самом деле проверяет · Источники подготовки: что читать и чего избегать ·","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Как устроен экзамен Professional Scrum Master I: формат и проходной балл, что реально проверяется, план подготовки на че…","t":"Экзамен PSM I: формат, подготовка, разбор типичных вопросов","u":"/post/scrum-master/12-psm-exam/","w":"2026-07-16"},{"b":"Экосистема и ресурсы: веб, встраиваемое, WASM, куда двигаться дальше Двенадцать предыдущих статей отвечали на вопрос «как устроен язык». Эта отвечает на вопрос «что я теперь могу на нём построить и чем за это заплачу». Р…","c":"post","d":"rust","g":["rust","экосистема","wasm","встраиваемые системы","ресурсы"],"h":"Как устроена экосистема: одна регистратура, тонкая стандартная библиотека · Экосистема во времени: что уже устоялось, а что ещё нет · Выбор ","n":"Rust","p":"Языки и парадигмы","q":"03","r":"Владение и заимствование, времена жизни, трейты, async, unsafe и FFI.","s":"Карта экосистемы Rust: как выбирать крейты и не собрать бомбу замедленного действия, веб-бэкенд на axum, два разных мира…","t":"Экосистема и ресурсы: веб, встраиваемое, WASM, куда двигаться дальше","u":"/post/rust/13-ecosystem-and-resources/","w":"2026-07-16"},{"b":"Эксплуатация и эволюция: жизнь системы после релиза Двенадцать предыдущих глав вели к моменту, когда код доезжает до пользователя. Кажется, что это финиш. На самом деле это стартовая черта самой длинной фазы: система, ко…","c":"post","d":"development","g":["development","наблюдаемость","инциденты","технический долг","легаси"],"h":"Стоимость владения: почему сопровождение — большая часть жизни системы · Наблюдаемость: как увидеть систему, которую нельзя остановить · Стр","n":"Инженерная практика","p":"Инфраструктура, инструменты и качество","q":"06","r":"Клиент и сервер, данные, интеграция, окружение, сборка, качество, CI/CD, масштабирование, эксплуатация.","s":"Что делает инженер с системой, которая уже два года в проде: как её видеть, как чинить инцидент, как считать технический…","t":"Эксплуатация и эволюция: жизнь системы после релиза","u":"/post/development/13-operations-and-evolution/","w":"2026-07-16"},{"b":"Эмбеддинги и обучение представлений В предыдущих статьях трека архитектуры отличались тем, какую структуру данных они предполагают: решётку у свёрточных сетей, последовательность у рекуррентных и трансформеров, произволь…","c":"post","d":"neural-networks","g":["нейросети","глубокое обучение","эмбеддинги","векторный поиск","self-supervised"],"h":"1. Зачем: от one-hot к плотному вектору · Скалярное произведение, косинус и длина · 2. Таксономия: чем вообще можно учить представление · 3.","n":"Нейронные сети","p":"Данные, ML и ИИ","q":"05","r":"Backprop, CNN, RNN, трансформеры, LLM, генеративные модели, инференс.","s":"Как сеть превращает объекты в векторы, на каких задачах учатся хорошие представления (word2vec, контрастное обучение, CL…","t":"Эмбеддинги и обучение представлений","u":"/post/neural-networks/09-embeddings-and-representation/","w":"2026-07-16"},{"b":"Эмерджентность: свойства целого, которых нет у частей Дежурного будят в 03:40. Он открывает дашборд и видит картину, которая встречается чаще, чем хотелось бы: все компоненты в норме, продукт не работает. Каждый из ста у…","c":"post","d":"systems-thinking","g":["системное мышление","эмерджентность","надёжность","системная динамика","моделирование"],"h":"Минимальное определение · Три теста: эмерджентность или просто сумма · Тест 1. Выразимо ли свойство для одной части · Тест 2. Переживает ли ","n":"Системное мышление","p":"Фундамент","q":"02","r":"Петли обратной связи, запасы и потоки, задержки и точки воздействия на инженерных примерах: очередь, кэш, техдолг, инцидент.","s":"Почему все узлы зелёные, а сервис лежит: как отличить настоящее эмерджентное свойство от суммы, посчитать его там, где э…","t":"Эмерджентность: свойства целого, которых нет у частей","u":"/post/systems-thinking/07-emergence/","w":"2026-07-16"},{"b":"Эмпиризм и метрики: velocity, burndown и как ими злоупотребляют Есть простой способ проверить, насколько организация понимает Scrum. Спросите: «Какая у вас velocity?» Если в ответ звучит одно число и лёгкая гордость — «с…","c":"post","d":"scrum-master","g":["scrum","psm-i","метрики","эмпиризм","agile"],"h":"Эмпиризм — это не философия, это теория управления · Зачем вообще измерять · Чего в Scrum Guide нет — и почему это важно для экзамена · Velo","n":"Scrum-мастер (PSM I)","p":"Продукт, процесс и люди","q":"07","r":"Scrum Guide построчно, события, артефакты, фасилитация, антипаттерны, подготовка к экзамену.","s":"Почему в Scrum Guide нет ни velocity, ни burndown, зачем командам всё-таки нужны измерения, как метрика превращается в о…","t":"Эмпиризм и метрики: velocity, burndown и как ими злоупотребляют","u":"/post/scrum-master/09-empiricism-and-metrics/","w":"2026-07-16"},{"b":"Энтерпрайз изнутри: процессы, согласования, масштаб, плюсы и минусы Первое впечатление джуна, попавшего в большую компанию, обычно звучит так: «я написал фикс на двадцать строк за два часа, и он выехал в прод через месяц…","c":"post","d":"sdlc-and-career","g":["карьера","sdlc","энтерпрайз","процессы","команда"],"h":"Что такое энтерпрайз на самом деле · Разные виды энтерпрайза · Почему процессы появились: короткая экономика · Путь одной задачи: полная кар","n":"Как делают софт и карьера","p":"Первые шаги","q":"01","r":"Из чего состоит работа в IT: SDLC, роли, энтерпрайз и стартап, грейды, зарплаты, собеседования.","s":"Как устроена разработка в большой компании: откуда берутся согласования и почему они не бессмысленны, что такое CAB, рел…","t":"Энтерпрайз изнутри: процессы, согласования, масштаб, плюсы и минусы","u":"/post/sdlc-and-career/10-enterprise/","w":"2026-07-16"},{"b":"Эффекты и ввод-вывод: как чистый код общается с грязным миром Есть старая шутка: единственная по-настоящему чистая программа — та, которая нагревает процессор и ничего больше. Всё полезное, что делает софт, — это эффекты…","c":"post","d":"functional-programming","g":["функциональное программирование","эффекты","ввод-вывод","тестирование","архитектура"],"h":"Боль нулевая: что вообще считать эффектом · Ступень 1: не устранять эффекты, а выселять их на края · Где этот приём ломается · Ступень 2: эф","n":"Функциональное программирование","p":"Языки и парадигмы","q":"03","r":"Чистота, неизменяемость, композиция, монады, карта функторов, эффекты и архитектура.","s":"Программа без эффектов бесполезна. Разбираем, как ФП решает эту проблему: от разделения на ядро и оболочку до эффекта-ка…","t":"Эффекты и ввод-вывод: как чистый код общается с грязным миром","u":"/post/functional-programming/13-effects-and-io/","w":"2026-07-16"},{"b":"Юзабилити-тестирование: как проверить макет на людях и не обмануть себя Есть момент, который переживал каждый, кто делал продукт. Макет согласован. Команда довольна: сетка ровная (https://courses.digitable.life/post/ux-d…","c":"post","d":"ux-design","g":["дизайн","ux","исследования","тестирование","интерфейсы"],"h":"1. Что тест проверяет, а что не проверяет · 2. Почему без теста мы систематически ошибаемся · 3. Виды тестов: четыре оси выбора · 4. Сколько","n":"UX и проектирование интерфейсов","p":"Продукт, процесс и люди","q":"07","r":"Исследования, персоны и JTBD, информационная архитектура, прототипы, дизайн-системы, юзабилити-тесты.","s":"Как спланировать и провести юзабилити-тест, сформулировать задания, вести сессию нейтрально, отличить факт от интерпрета…","t":"Юзабилити-тестирование: как проверить макет на людях и не обмануть себя","u":"/post/ux-design/11-usability-testing/","w":"2026-07-16"},{"b":"Юнит-экономика для инженера: выручка, затраты, окупаемость, точка безубыточности Есть разговор, который случается с самостоятельным инженером на второй год. «Оборот вырос в полтора раза». — «А денег стало больше?» — «Стр…","c":"post","d":"business","g":["бизнес","деньги","юнит-экономика","метрики","риски"],"h":"1. Юнит: выбор единицы — половина ответа · 2. Выручка: три разных числа, которые все зовут одним словом · 3. Затраты: переменные, постоянные","n":"Бизнес для инженера","p":"Продукт, процесс и люди","q":"07","r":"Фриланс, ценообразование, договоры, свой продукт, юнит-экономика, риски.","s":"Как разложить своё дело на одну повторяемую сделку и проверить, зарабатывает ли она: выбор юнита, честная выручка, скрыт…","t":"Юнит-экономика для инженера: выручка, затраты, окупаемость, точка безубыточности","u":"/post/business/07-unit-economics/","w":"2026-07-16"},{"b":"Ясность: почему инженерный английский проще разговорного Предыдущие главы разбирали жанры: коммит и PR, баг-репорт, комментарий на ревью, письмо и статус. Под правилами жанров лежит общий слой, который и решает, поймут в…","c":"post","d":"engineering-english","g":["английский","коммуникация","техническое письмо","редактирование"],"h":"Что здесь считается ясностью · Почему потолок здесь ниже, чем в разговорном · Четыре уровня, на которых текст бывает неясным · Уровень предл","n":"Инженерный английский","p":"Инфраструктура, инструменты и качество","q":"06","r":"Английский в рабочих ситуациях: документация и RFC, коммиты и pull request, ревью, переписка, созвоны, собеседования.","s":"Ясность как инженерная дисциплина, а не как уровень языка: почему потолок мастерства здесь измерим, какие операции правк…","t":"Ясность: почему инженерный английский проще разговорного","u":"/post/engineering-english/11-writing-clearly/","w":"2026-07-16"},{"b":"Ясность: предложения, термины, двусмысленности В документации платёжного API десять месяцев жила фраза: Повторный запрос с тем же ключом идемпотентности вернёт исходный ответ. Партнёрская команда прочитала её как «всегда…","c":"post","d":"technical-writing","g":["техническое письмо","документация","ясность","терминология","редактура"],"h":"Что такое ясность и чем она не является · Как одна фраза становится инцидентом · Предложение: кто что делает · Номинализация: действие, спря","n":"Техническое письмо","p":"Инфраструктура, инструменты и качество","q":"06","r":"Документы, которые инженер пишет по работе: ADR, RFC, постмортем, README, документация API и ревью текста.","s":"Как устроена ясная фраза в инженерном документе: деятель и действие, известное в начале и новое в конце, каталог двусмыс…","t":"Ясность: предложения, термины, двусмысленности","u":"/post/technical-writing/03-clarity/","w":"2026-07-16"},{"b":"Фундамент программиста: system design, SOLID, GoF, функциональные паттерны и структуры данных Этот материал — не конспект “для собеседования на два вечера”. Это карта фундамента, который помогает программисту проектирова…","c":"post","g":["programming","systemdesign","architecture","solid","gof","patterns","functionalprogramming","datastructures","immutability","backend","frontend"],"h":"Как пользоваться этим материалом · 1. Что такое system design · Главная ошибка новичка · System design как цикл · 2. Требования: функциональ","s":"Фундамент программиста: system design, SOLID, GoF, функциональные паттерны и структуры данных…","t":"Фундамент программиста: system design, SOLID, GoF, функциональные паттерны и структуры данных","u":"/post/blog/fundamentals-system-design-patterns-data-structures/","w":"2026-07-03"},{"b":"152-ФЗ для разработчиков: как внедрять персональные данные в сайты, React-приложения, backend и базы данных Это инженерный разбор, а не юридическое заключение. Для спорных кейсов, медицины, финансов, детей, биометрии, ск…","c":"post","g":["152фз","персональныеданные","privacy","security","frontend","backend","gdpr","architecture","documentation"],"h":"Содержание · 1. Что такое персональные данные · 2. Зачем это нужно · 3. Базовая схема обработки · 4. Кто есть кто: оператор, обработчик, суб","s":"152-ФЗ для разработчиков: как внедрять персональные данные в сайты, React-приложения, backend и базы данных…","t":"152-ФЗ для разработчиков: как внедрять персональные данные в сайты, React-приложения, backend и базы данных","u":"/post/blog/152fz-privacyengineering/","w":"2026-06-30"},{"b":"🧠 Многие думают, что нейросеть “рисует картинку с нуля”. На самом деле это не совсем так. Большинство современных моделей (FLUX, Stable Diffusion, SDXL и многие другие) работают по принципу диффузии — они постепенно убир…","c":"post","g":["нейросети","ai","audio","images","diffusionmodels","diffusion","documentatio"],"h":"Также сейчас активно веду разработку новеллы, скоро будет в Стиме, а про недавно вышедший музыкальный альбом с реизданием расскажу на одном ","s":"Диффузионные модели и как они работают","t":"Диффузионные модели и как они работают","u":"/post/blog/diffusions/","w":"2026-06-27"},{"b":"Большинство людей работают с ИИ так: “Сделай мне сайт” или “Помоги похудеть” После чего начинают 30 сообщений уточнять детали. SDD (Spec-Driven Development) предлагает другой подход: IDEA → SPECIFY → PLAN → TASKS → IMPLE…","c":"post","g":["нейросети","ai","sdd","advancedprompting","specdrivendevelopment","documentation"],"h":"","s":"SDD","t":"SDD","u":"/post/blog/advancedprompting-sdd/","w":"2026-05-31"},{"b":"В этом видео: как работают LLM, нейросети и алгоритмы машинного обучения на базе SBSE почему нейросети не “думают” что такое токены и контекстное окно как устроен профессиональный промптинг: ZS, FS, RCTF, ToT, CoT что та…","c":"video","g":["искусственный интеллект","нейросети","llm","chatgpt","deepseek","gigachat","rag","mcp","prompt engineering","prompting","ai agents","машинное обучение","как работает ии","нейросети простыми словами","ai для программистов","programming","openai","anthropic","claude ai","diffusion models","stable diffusion","chain of thought","tree of thoughts"],"h":"Текстовая версия · Таймкоды","s":"В этом видео:","t":"Все что нужно знать про ИИ айтишнику алгоритмы, промптинг и мышление","u":"/video/ai-basics/","w":"2026-05-31"},{"b":"Сделал шпаргалку по промптингу для начинающих Большинство людей используют LLM примерно так: *“Напиши мне текст.” *И получают средний результат. Но качество ответа зависит не только от модели. Очень многое зависит от тог…","c":"post","g":["нейросети","llm","advancedprompting","профессиональныйпромптинг","промптинг"],"h":"","s":"Здесь кратко описывается основная мысль","t":"Здесь кратко описывается основная мысль","u":"/post/blog/advancedprompting/","w":"2026-05-31"},{"b":"Сделал шпаргалку по промптингу для начинающих Большинство людей используют LLM примерно так: “Напиши мне текст.” И получают средний результат. Но качество ответа зависит не только от модели. Очень многое зависит от того,…","c":"post","g":["нейросети","llm","advancedprompting","профессиональныйпромптинг","промптинг"],"h":"Цифровизируйтесь!","s":"Сделал шпаргалку по промптингу для начинающих Большинство людей используют LLM примерно так: \"Напиши мне текст.\" И получ…","t":"Сделал шпаргалку по промптингу для начинающих","u":"/post/blog/tg-275/","w":"2026-05-30"},{"b":"Это перевод и адаптация видео с канала Fireship с помощью ИИ. ▶ Источник: https://www.youtube.com/watch?v=R7t7zca8SyM | @fireship Elixir — это динамический, функциональный язык программирования. Он работает на виртуально…","c":"video","g":["video","rutube","digitable","programming","translation"],"h":"","s":"Это перевод и адаптация видео с канала Fireship с помощью ИИ. ▶ Источник: https://www.youtube.com/watch?v=R7t7zca8SyM | …","t":"Коротко про язык программирования Elixir [Fireship]","u":"/video/rutube-c388fda86bbafb642ec04ec51610bd98/","w":"2026-05-25"},{"b":"Это перевод и адаптация видео с канала Fireship с помощью ИИ. ▶ Источник: https://www.youtube.com/watch?v=vd14EElCRvs | @fireship Чэн Лоу, бывший член команды React Core и инженер компании Midjourney, говорит, что ему пр…","c":"video","g":["video","rutube","digitable","translation"],"h":"","s":"Это перевод и адаптация видео с канала Fireship с помощью ИИ. ▶ Источник: https://www.youtube.com/watch?v=vd14EElCRvs | …","t":"Он только что прошел через ад, чтобы исправить браузер… [Fireship]","u":"/video/rutube-210fedbc83656186828526e7c5f585cb/","w":"2026-05-25"},{"b":"Вы уже пробовали «Openclaw»? Блогер с канала Fireship, похоже, попробовал и решил сделать на эту тему ролик. Посмотрите, и если понравится, можете взяться и за эксперимент сами =) Перевод, редактура и озвучка: Марат Зимн…","c":"video","g":["video","rutube","digitable","ai","translation"],"h":"","s":"Вы уже пробовали «Openclaw»? Блогер с канала Fireship, похоже, попробовал и решил сделать на эту тему ролик. Посмотрите,…","t":"Стремительный взлет OpenClaw [Fireship]","u":"/video/rutube-562ae1b4da2413b1028e424ba4627fcb/","w":"2026-05-25"},{"b":"Это перевод и адаптация видео с канала Fireship. ▶ Источник: https://www.youtube.com/watch?v=mBHRPeg8zPU | @fireship В этом видео разбираем: — Утечка кода Claude — Содержимое утечки — Неизвестные функции Перевод, редакту…","c":"video","g":["video","rutube","digitable","ai","translation"],"h":"","s":"Это перевод и адаптация видео с канала Fireship. ▶ Источник: https://www.youtube.com/watch?v=mBHRPeg8zPU | @fireship В э…","t":"Утечка кода Claude: трагическая ошибка Anthropic [Fireship]","u":"/video/rutube-6b73e724892af5acfea51b9573b033d8/","w":"2026-05-25"},{"b":"Это перевод и адаптация видео с канала bigboxSWE с помощью ИИ. ▶ Источник: https://www.youtube.com/watch?v=Oh96LTqhWqg | @bigboxSWE Музыка: @massobeats Охватываемые темы Неплохой видос для тех, кто потерялся и чуть больш…","c":"video","g":["video","rutube","digitable","translation"],"h":"","s":"Это перевод и адаптация видео с канала bigboxSWE с помощью ИИ. ▶ Источник: https://www.youtube.com/watch?v=Oh96LTqhWqg |…","t":"Как стать программистом высшего уровня [bigboxSWE]","u":"/video/rutube-c6750a9e226ab6946cd5b12f4919c21f/","w":"2026-05-25"},{"b":"Это перевод и адаптация видео с канала Domain of Science с помощью ИИ. ▶ Источник: https://youtu.be/SzJ46YA_RaA | @ScienceMaps Охватываемые темы Информатика — это наука о компьютерах. Она изучает их возможности и ищет лу…","c":"video","g":["video","rutube","digitable","ai","programming","translation"],"h":"","s":"Это перевод и адаптация видео с канала Domain of Science с помощью ИИ. ▶ Источник: https://youtu.be/SzJ46YA_RaA | @Scien…","t":"Карта информатики [Domain of Science]","u":"/video/rutube-dc3d103b8336e4f42525bc4b91d1dc57/","w":"2026-05-25"},{"b":"В этом видео я экспериментирую с клонированием голоса и пробую понять, можно ли: — создать цифрового заместителя — генерировать ответы HR-у моим голосом — и вообще понять, где проходит граница этики — привожу пример с мо…","c":"video","g":["video","rutube","digitable","ai"],"h":"","s":"В этом видео я экспериментирую с клонированием голоса и пробую понять, можно ли: — создать цифрового заместителя — генер…","t":"Клонирование голоса, RAG и цифровые портреты — реальный эксперимент","u":"/video/rutube-42489a46a3416720a21d02c883508f6c/","w":"2026-05-25"},{"b":"На тему лока гитхаба кстати, просто увидел видос о новых релизах в мобилке и решил поделиться Я регнулся на гитхабе в 2017-ом, потому что сидеть на гитлабе было не модно, но гитлаб тогда имел лучшие лимиты по количеству …","c":"post","g":["github","microsoft","мысли"],"h":"https://youtube.com/shorts/HyOWj3ldwFY?si=nVfmJvqBFVGvaXAp","s":"На тему лока гитхаба кстати, просто увидел видос о новых релизах в мобилке и решил поделиться Я регнулся на гитхабе в 20…","t":"На тему лока гитхаба кстати, просто увидел видос о новых релизах в мобилке и …","u":"/post/blog/tg-273/","w":"2026-05-19"},{"b":"На сайте https://digitable.ru/lms/books сделал раздел с рекомендованной литературой для чтения Так как я периодически рекомендую прочитанную литературу, то понял, что лучше её складывать в одном виде, категории тоже буду…","c":"post","g":["книги","литература","рекомендации","менеджмент","софтскиллы","портал","digitable","timemanagement"],"h":"• Закончи то, что начал. Как доводить дела до конца | Эйкафф Джон • Ружья, микробы и сталь | Джаред Даймонд • 21 урок для XXI века, Краткая ","s":"На сайте https://digitable.ru/lms/books сделал раздел с рекомендованной литературой для чтения Так как я периодически ре…","t":"На сайте https://digitable.ru/lms/books сделал раздел с рекомендованной литер…","u":"/post/blog/tg-257/","w":"2026-04-23"},{"b":"• А системный аналитик нам зачем? • Claude Code слил 512 000 строк кода. Никто не разобрался в архитектуре. Утечка показала, что это не обёртка, а ОС • Навыки в OpenClaw: установка, создание и защита от вредоносных набор…","c":"post","g":["дайджест","daily","reading","top5"],"h":"• Почему ротация руководителей часто ломает систему там, где бизнес хотел ее усилить","s":"• А системный аналитик нам зачем? • Claude Code слил 512 000 строк кода. Никто не разобрался в архитектуре. Утечка показ…","t":"• А системный аналитик нам зачем?","u":"/post/blog/tg-231/","w":"2026-04-11"},{"b":"Итак, в это раз клонирование голосов улучшено, акцент минимизирован, есть мелочи в интонациях (напоминаю что все делается автоматически, я только корректирую пайплайн локальных моделей, как закончу тоже на хабр дропну не…","c":"post","g":["youtube","видосики","переозвучка","переводы","pretext","web","fireship"],"h":"Приятного просмотра, пойду дальше экспериментировать)","s":"Итак, в это раз клонирование голосов улучшено, акцент минимизирован, есть мелочи в интонациях (напоминаю что все делаетс…","t":"Итак, в это раз клонирование голосов улучшено, акцент минимизирован, есть мел…","u":"/post/blog/tg-230/","w":"2026-04-10"},{"b":"Итак, в этот раз я дописывал voicer, который дропнул на хабр и опенсорс, в итоге перевел полностью с помощью локальных моделей видос, клонируя оригинальный голос, вышло забавно с оригинальным акцентным голосом) https://w…","c":"post","g":["youtube","видосики","переозвучка","переводы","anthropic","claudecode","fireship"],"h":"Приятного просмотра, а я продолжу донастраивать пайплайн, чтобы дойти до перевода анимешек)","s":"Итак, в этот раз я дописывал voicer, который дропнул на хабр и опенсорс, в итоге перевел полностью с помощью локальных м…","t":"Итак, в этот раз я дописывал voicer, который дропнул на хабр и опенсорс, в ит…","u":"/post/blog/tg-229/","w":"2026-04-02"},{"b":"• Микросервисы: как выбрать между синхронной блокировкой и событийной архитектурой? • Тоталитарный Golang • Почему 80% автотестов в итоге не окупаются • Попытка внедрить изменения снизу: мысленный эксперимент, который сл…","c":"post","g":["дайджест","daily","reading","top5"],"h":"• AI-ассистент для алертов: как n8n + LLM","s":"• Микросервисы: как выбрать между синхронной блокировкой и событийной архитектурой? • Тоталитарный Golang • Почему 80% а…","t":"• Микросервисы: как выбрать между синхронной блокировкой и событийной архитек…","u":"/post/blog/tg-221/","w":"2026-03-26"},{"b":"• 8 уровней агентной инженерии (источник изображения) • Топ 12 агентов для генерации кода: Cursor, Copilot, Claude Code… • OpenCode — open-source coding agent с 126k звездами. Что это, и почему все обсуждают • Opensophy …","c":"post","g":["дайджест","daily","reading","top5"],"h":"• Новые пути наверх","s":"• 8 уровней агентной инженерии (источник изображения) • Топ 12 агентов для генерации кода: Cursor, Copilot, Claude Code……","t":"• 8 уровней агентной инженерии (источник изображения)","u":"/post/blog/tg-215/","w":"2026-03-23"},{"b":"По мотивам одного из стримов, я решил тулу для клонирования войса + перевода текста собрать в cli и desktop приложение Написал статейку на хабре на 16 минут чтения (или по-диагонали просто картинки смотреть) Habr: https:…","c":"post","g":["articles","habr","apps","software","llm","ai"],"h":"Скрины приложения и пара войс-клонов прилагаются, код на гитхабе)","s":"По мотивам одного из стримов, я решил тулу для клонирования войса + перевода текста собрать в cli и desktop приложение Н…","t":"По мотивам одного из стримов, я решил тулу для клонирования войса + перевода …","u":"/post/blog/tg-213/","w":"2026-03-17"},{"b":"Пришла литература из издательства Питер, преимущественно взял менеджерские книжки, но есть несколько по хардам, так как часто спрашивают “а что почитать?”, то вот из актуальных книжек на этот год, если перечитали всё что…","c":"post","g":["дайджест","reading","books","2026","management","strategy","programming","others","piter"],"h":"• Зима Владимир Владимирович – Инструменты руководителя. Понимай людей, управляй людьми. 3-е издание • Омельченко Марина Петровна – Набирая ","s":"Пришла литература из издательства Питер, преимущественно взял менеджерские книжки, но есть несколько по хардам, так как …","t":"Пришла литература из издательства Питер, преимущественно взял менеджерские кн…","u":"/post/blog/tg-173/","w":"2026-03-03"},{"b":"Как понять какая LLM лучше и почему? MMLU (аббревиатура от Measuring Massive Multitask Language Understanding) — это эталонный набор задач (бенчмарк), предназначенный для оценки способностей больших языковых моделей (LLM…","c":"post","g":["современныезнания","benchmarks","llm","ai"],"h":"• Источник: https://systems-analysis.ru/wiki/MMLU_benchmark • GitHub: https://github.com/hendrycks/test • Публикация: https://arxiv.org/abs/","s":"Как понять какая LLM лучше и почему? MMLU (аббревиатура от Measuring Massive Multitask Language Understanding) — это эта…","t":"Как понять какая LLM лучше и почему?","u":"/post/blog/tg-147/","w":"2026-02-19"},{"b":"Нашел хороший видос-озвучка публикации Effective Go, быстренько позволит узнать основные приколдесы вокруг языка а-ля встроенного форматировщика, скобок, комментариев, нейминг Подойдет для свитчеров с жаб, шарпов и жабас…","c":"post","g":["golang","programming","effectivego","youtube","learning"],"h":"Ссылка на плейлист","s":"Нашел хороший видос-озвучка публикации Effective Go, быстренько позволит узнать основные приколдесы вокруг языка а-ля вс…","t":"Нашел хороший видос-озвучка публикации Effective Go, быстренько позволит узна…","u":"/post/blog/tg-150/","w":"2026-02-19"},{"b":"В этом выпуске я начинаю с Elixir и BEAM, а заканчиваю теорией категорий, логикой, множествами и Гёделем. Это не академическая лекция и не «популярная математика», а попытка объяснить, как всё это связано с реальной разр…","c":"video","g":["video","rutube","digitable","programming"],"h":"","s":"В этом выпуске я начинаю с Elixir и BEAM, а заканчиваю теорией категорий, логикой, множествами и Гёделем. Это не академи…","t":"Elixir, BEAM и теория категорий — зачем программисту вся эта математика?","u":"/video/rutube-a7bca2492f879465fa7b8ce034dd6790/","w":"2026-02-12"},{"b":"Минимальный набор практико-ориентированных публикаций по внедрению RAG/LLM на работе и/или в своих проектах Подпишись, чтобы не потерять 📚 перешли коллегам, чтобы созидать вместе и подписаться сюды) 😎 Semantic RAG – как …","c":"post","g":["дайджест","ии","rag","education","programming","база"],"h":"","s":"Минимальный набор практико-ориентированных публикаций по внедрению RAG/LLM на работе и/или в своих проектах Подпишись, ч…","t":"Минимальный набор практико-ориентированных публикаций по внедрению RAG/LLM на…","u":"/post/blog/tg-116/","w":"2026-02-04"},{"b":"0:00 - Интро 0:09 - О себе 0:25 - Общие причины по созданию канала 1:02 - Личные причины по созданию канала 1:40 - Основная идея канала 2:18 - Что получает подписчик 2:35 - Формат публикации видео на канале 3:48 - Призыв…","c":"video","g":["video","rutube","digitable"],"h":"","s":"0:00 - Интро 0:09 - О себе 0:25 - Общие причины по созданию канала 1:02 - Личные причины по созданию канала 1:40 - Основ…","t":"#0 - Вступление","u":"/video/rutube-c3d419bc2ac92450202e7e8e6e1c5c85/","w":"2026-01-31"},{"b":"0:00 - Начало 0:13 - Вступление 0:22 - Интро 0:45 - Что такое информация 1:10 - Что такое знание 1:36 - Что такое абстракция 1:42 - Виды абстракции 1:42 - Что такое моделирование 2:05 - Что такое инкапсуляция 2:29 - Закр…","c":"video","g":["video","rutube","digitable","programming"],"h":"","s":"0:00 - Начало 0:13 - Вступление 0:22 - Интро 0:45 - Что такое информация 1:10 - Что такое знание 1:36 - Что такое абстра…","t":"#1 - Информация, Знание, Абстракция","u":"/video/rutube-a3f491a064a9a88df2be3949f8f8594e/","w":"2026-01-31"},{"b":"Давно хотели начать программировать или уже программируете, но боитесь, что что-то не знаете? Хотите укрепить навыки в разработке? Хотите увидеть как рождается настоящий IT-проект? Подписывайтесь! В данном видеоролике, м…","c":"video","g":["video","rutube","digitable","management"],"h":"","s":"Давно хотели начать программировать или уже программируете, но боитесь, что что-то не знаете? Хотите укрепить навыки в р…","t":"#2 - Самый простой способ начать проект/Описание проекта","u":"/video/rutube-056163346dd71a8f441610fe3f6cf3cf/","w":"2026-01-31"},{"b":"Статья на хабре: https://habr.com/ru/articles/818513/ Давно хотели начать программировать или уже программируете, но боитесь, что что-то не знаете? Хотите укрепить навыки в разработке? Хотите увидеть как рождается настоя…","c":"video","g":["video","rutube","digitable","ai","audio"],"h":"","s":"Статья на хабре: https://habr.com/ru/articles/818513/ Давно хотели начать программировать или уже программируете, но бои…","t":"Как заставить говорить по-русски World Of Warcraft с помощью AI","u":"/video/rutube-648a43b4202288d86e97f04c70a5873e/","w":"2026-01-31"},{"b":"Давно хотели начать программировать или уже программируете, но боитесь, что что-то не знаете? Хотите укрепить навыки в разработке? Хотите увидеть как рождается настоящий IT-проект? Подписывайтесь! В данном видеоролике, м…","c":"video","g":["video","rutube","digitable","ai","management"],"h":"","s":"Давно хотели начать программировать или уже программируете, но боитесь, что что-то не знаете? Хотите укрепить навыки в р…","t":"#3 - Методологии разработки / Готовим project-management с product-management","u":"/video/rutube-eb91bfb1cf9cff489a588400bf3f98c2/","w":"2026-01-31"},{"b":"00:00:00 – Про проект с цветом и Иттена 00:01:24 — Что тут вообще происходит и почему всё такое цветастое 00:09:32 — Нужна ли математика программисту? 00:12:00 — Автостопом по галактике и Вавилонская библиотека 00:13:36 …","c":"video","g":["video","rutube","digitable","programming"],"h":"","s":"00:00:00 – Про проект с цветом и Иттена 00:01:24 — Что тут вообще происходит и почему всё такое цветастое 00:09:32 — Нуж…","t":"Про стримы, логику и нужна ли математика программисту","u":"/video/rutube-3169bf0ccc0f66eb2dc54023b97123db/","w":"2026-01-31"},{"b":"Давно хотели начать программировать или уже программируете, но боитесь, что что-то не знаете? Хотите укрепить навыки в разработке? Хотите увидеть как рождается настоящий IT-проект? Подписывайтесь! В этом видео представле…","c":"video","g":["video","rutube","digitable","ai","management"],"h":"","s":"Давно хотели начать программировать или уже программируете, но боитесь, что что-то не знаете? Хотите укрепить навыки в р…","t":"#1 - Гибкие методологии","u":"/video/rutube-588760da173340237322d05988439f63/","w":"2026-01-31"},{"b":"Статья на хабре: https://habr.com/ru/articles/818513/ Давно хотели начать программировать или уже программируете, но боитесь, что что-то не знаете? Хотите укрепить навыки в разработке? Хотите увидеть как рождается настоя…","c":"video","g":["video","rutube","digitable","ai","audio"],"h":"","s":"Статья на хабре: https://habr.com/ru/articles/818513/ Давно хотели начать программировать или уже программируете, но бои…","t":"Как заставить говорить по-русски World Of Warcraft с помощью AI","u":"/video/rutube-f0e4c6e642dc147ca56b11a8a272b632/","w":"2026-01-31"},{"b":"Неплохой топ 10 вопросов с собесов по архитектурной секции, но и не очень хороший, автор, действительно, прав, что это чеклист https://habr.com/ru/articles/966822/ В целом, для опытного разработчика — вода или способ что…","c":"post","g":["interview","архитектура"],"h":"Можно пробежать по-диагонали, когда-нибудь выпущу свою публикацию на тему интервью, слишком громоздкая выйдет, ну да ладно, займусь в нового","s":"Неплохой топ 10 вопросов с собесов по архитектурной секции, но и не очень хороший, автор, действительно, прав, что это ч…","t":"Неплохой топ 10 вопросов с собесов по архитектурной секции, но и не очень хор…","u":"/post/blog/tg-95/","w":"2025-12-04"},{"b":"Приятная публикация про устройство кафки https://habr.com/ru/articles/972788/ Из плюсов: практико-ориентированная статья, с которой будете знать больше как ладить с горизонтально масштабируемой платформой для обработки д…","c":"post","g":["архитектура","deepdive"],"h":"Иногда строю из них решения по типу e2ee + message broker, но пока не всем удается понять. Как-нибудь опубликую статейку про файловые хранил","s":"Приятная публикация про устройство кафки https://habr.com/ru/articles/972788/ Из плюсов: практико-ориентированная статья…","t":"Приятная публикация про устройство кафки","u":"/post/blog/tg-97/","w":"2025-12-04"},{"b":"Тоже такой же гайдлайн для новичков вкатиться или освежить в памяти устройство комбинаторики https://habr.com/ru/articles/972344/ По сути речь про: Простая комбинаторика — сложение Сложная комбинаторика — умножение (преи…","c":"post","g":["математика","датасатанизм","теорвер"],"h":"Из прикольного — неплохо разбираются перестановки с блок-схемой","s":"Тоже такой же гайдлайн для новичков вкатиться или освежить в памяти устройство комбинаторики https://habr.com/ru/article…","t":"Тоже такой же гайдлайн для новичков вкатиться или освежить в памяти устройств…","u":"/post/blog/tg-96/","w":"2025-12-04"},{"b":"Есть популярная штука с Fizz Buzz, которая популярна проверить «а не умеете ли вы кодить?», ну так вот есть упоротые ребята, которые когда-нибудь приведут вас к лямбда-исчислению и карандашно-бумажным методам пост про то…","c":"post","g":["математика","разт","алгоритмы","типизация","слишкомсложнооновамненеадо"],"h":"","s":"Есть популярная штука с Fizz Buzz, которая популярна проверить «а не умеете ли вы кодить?», ну так вот есть упоротые реб…","t":"Есть популярная штука с Fizz Buzz, которая популярна проверить «а не умеете л…","u":"/post/blog/tg-94/","w":"2025-11-30"},{"b":"Недавно на жабе разобрали пару кейсов как в «сишарп для маленьких и тупых» только про многопоточность и в жабе (эх когда-то начинал с нее свой путь, так любил JavaFX и Java SE, но апплеты не вернуть, хотя wasmожно) пост …","c":"post","g":["многопоточность","жаба","компьютерсаенс"],"h":"Для ребяток, которые вообще этот бамбук не вкуривают и с трудом усвоили материал про событийный цикл — это намного проще. Почему? Я когда пе","s":"Недавно на жабе разобрали пару кейсов как в «сишарп для маленьких и тупых» только про многопоточность и в жабе (эх когда…","t":"Недавно на жабе разобрали пару кейсов как в «сишарп для маленьких и тупых» то…","u":"/post/blog/tg-93/","w":"2025-11-30"},{"b":"Неплохая статья про либу для суслика, примечательна тем, что даст хоть какое-то представление ребятам из джаваскриптиза по пониманию одного из самых сложных архитектурных паттернов — сага. По сути, это когда вы бизнес пр…","c":"post","g":["архитектура","го"],"h":"https://habr.com/ru/articles/970732/","s":"Неплохая статья про либу для суслика, примечательна тем, что даст хоть какое-то представление ребятам из джаваскриптиза …","t":"Неплохая статья про либу для суслика, примечательна тем, что даст хоть какое-…","u":"/post/blog/tg-91/","w":"2025-11-30"},{"b":"Про reasoning и в целом быстрый экскурс базу по устройству современных моделей неплохая паста, пусть и транскрибация, но вот картиночки годные Можно понять как устроены рассуждения в ллм-ках. Алярма или ахтунг: там много…","c":"post","g":["ллм","ии","алгоритмы"],"h":"https://habr.com/ru/articles/971700/","s":"Про reasoning и в целом быстрый экскурс базу по устройству современных моделей неплохая паста, пусть и транскрибация, но…","t":"Про reasoning и в целом быстрый экскурс базу по устройству современных моделе…","u":"/post/blog/tg-92/","w":"2025-11-30"},{"b":"Если прошло мимо, а вы тратите на литкоде часы чтобы вдуплить задачку уровня easy / medium, то стоит понимать, что все они там «по паттернам» написаны, и в основном как в шахматных задачках, нужно просто выбирать верный,…","c":"post","g":["leetcode","interview"],"h":"Статейка клон какой-то англоязычной, сам читал оригинал, но линк где-то протерян; btw про префиксы, указатели, sliding и монотонный стек там","s":"Если прошло мимо, а вы тратите на литкоде часы чтобы вдуплить задачку уровня easy / medium, то стоит понимать, что все о…","t":"Если прошло мимо, а вы тратите на литкоде часы чтобы вдуплить задачку уровня …","u":"/post/blog/tg-88/","w":"2025-11-29"},{"b":"Уже несколько лет доношу окружению о том, что более менее адекватных взглядов на мир три: философия (любовь к мудрости) как форма познания и ее форм там целое множество от солипсизма до разумеется иррационализма Шопенгау…","c":"post","g":["информатика","слишкомсложнооновамненеадо"],"h":"Люди — темпоральные существа, «вот-бытие» Хайдеггера актуально как никогда","s":"Уже несколько лет доношу окружению о том, что более менее адекватных взглядов на мир три: - философия (любовь к мудрости…","t":"Уже несколько лет доношу окружению о том, что более менее адекватных взглядов…","u":"/post/blog/tg-90/","w":"2025-11-29"},{"b":"Наткнулся в сообществе DeFrens на интересную коммуникацию на тему новых зловредов https://semgrep.dev/blog/2025/security-alert-nx-compromised-to-steal-wallets-and-credentials/ По сути, цитата: Вместо того чтобы писать сл…","c":"post","g":["security","ai"],"h":"Закиньте Касперскому 😅","s":"Наткнулся в сообществе DeFrens на интересную коммуникацию на тему новых зловредов https://semgrep.dev/blog/2025/security…","t":"Наткнулся в сообществе DeFrens на интересную коммуникацию на тему новых зловр…","u":"/post/blog/tg-82/","w":"2025-08-29"},{"b":"Захостил на базе проекта (https://github.com/CorentinTh/it-tools) портал https://tools.digitable.life/ Можно тыкать, использовать и делиться ОС Что на нем есть и почему он нужнее чем LLM/GPT? Во-первых, он бесплатный Во-…","c":"post","g":["digitable","opensource","tools","it"],"h":"В общем, пользуйтесь, и друзьям покажите, постепенно буду публиковать в том числе и ссылки на основном портале с услугами (digitable.ru), а ","s":"Захостил на базе проекта (https://github.com/CorentinTh/it-tools) портал https://tools.digitable.life/ Можно тыкать, исп…","t":"Захостил на базе проекта (https://github.com/CorentinTh/it-tools) портал http…","u":"/post/blog/tg-77/","w":"2025-08-14"},{"b":"Наткнулся на новый браузер Zen, который типа должен сделать дзен, IDK Шустрый, глянцевый, современный Особенности: Минималистичный дизайн (можно выключить всё ненужное вплоть до стрелок back и forward в history, унесли с…","c":"post","g":["opensource","browser","development"],"h":"GitHub: https://github.com/zen-browser","s":"Наткнулся на новый браузер Zen, который типа должен сделать дзен, IDK Шустрый, глянцевый, современный Особенности: - Мин…","t":"Наткнулся на новый браузер Zen, который типа должен сделать дзен, IDK","u":"/post/blog/tg-76/","w":"2025-08-08"},{"b":"На Хабр опубликовали статью, по сути пересказ доклада с Holy.js по функциональному программированию Гугл, конечно же, сразу понял, что ее нужно закинуть мне в реки, не понимая, что я ее и писал https://habr.com/ru/compan…","c":"post","g":["articles","habr","functionalprogramming"],"h":"https://habr.com/ru/companies/avito/articles/926544/ От Аристотеля до Тьюринга: что такое функциональное программирование и как оно облегчае","s":"На Хабр опубликовали статью, по сути пересказ доклада с Holy.js по функциональному программированию Гугл, конечно же, ср…","t":"На Хабр опубликовали статью, по сути пересказ доклада с Holy.js по функционал…","u":"/post/blog/tg-75/","w":"2025-07-11"},{"b":"Список рекомендуемых книг к прочтению из академической или so close среды для self-learning Аристотель – Риторика – база логики, 2к лет прошло, особо ничего не менялось Челпанов – Логика – если не потянули предыдущий тру…","c":"post","g":["books","education","programming","base"],"h":"В остальном, всё часто является частным случаем и предметом изучения в рамках монографий или огромных академических трудов развивается с тру","s":"Список рекомендуемых книг к прочтению из академической или so close среды для self-learning - Аристотель – Риторика – ба…","t":"Список рекомендуемых книг к прочтению из академической или so close среды для…","u":"/post/blog/tg-69/","w":"2025-05-26"},{"b":"Немножко доделал плагин авто-линковки для локальной базы данных / системы ведения заметок Logseq (а-ля Obsidian только open source) #logseq #plugin #opensource #productivity #notes #i18n #russian #chinese #japanese #kore…","c":"post","g":["logseq","plugin","opensource","productivity","notes","i18n","russian","chinese","japanese","korean","weekenddevelopment","nightdevelopment"],"h":"Также починил пачку багов и ускорил загрузку","s":"Немножко доделал плагин авто-линковки для локальной базы данных / системы ведения заметок Logseq (а-ля Obsidian только o…","t":"Немножко доделал плагин авто-линковки для локальной базы данных / системы вед…","u":"/post/blog/tg-64/","w":"2025-03-09"},{"b":"Сделал Chrome-расширение, которое помогает быстрее читать код и документацию. Биологический хак для чтения кода: Bionic Reader для программистов TL;DR для занятых: Расширение для Chrome, которое делает чтение кода и доку…","c":"post","g":["browser","extension","opensource","speedread","bionicreader","bionicreading","programming","productivity","reading"],"h":"","s":"Chrome-расширение для ускоренного чтения кода и документации на русском и английском языках.…","t":"Bionic Reader для программистов","u":"/post/blog/tg-60/","w":"2025-03-07"},{"b":"Часто наблюдаю потребность людей решить всё через чат (речь не про “зуммеров”, что боятся поговорить 1:1, а вообще в целом нежелание посещать встречи для проговаривания) Но такие переписки превращаются в long-read-ы, кот…","c":"post","g":["softskills","management","исскуствообщениявсети","книги","искусствообщения","тимлидинг","random","тема"],"h":"","s":"Часто наблюдаю потребность людей решить всё через чат (речь не про \"зуммеров\", что боятся поговорить 1:1, а вообще в цел…","t":"Часто наблюдаю потребность людей решить всё через чат (речь не про \"зуммеров\"…","u":"/post/blog/tg-57/","w":"2025-02-11"},{"b":"Полезный тулинг-лист для управления системой из-под терминала (всё как всегда, долой стандартный gui поверх х-ов или wayland) Самое простое это питонвский bpytop (на скриншоте 1) Работает как ресурс мониторинг а-ля top -…","c":"post","g":["opensource","tty","terminal","monitoring"],"h":"Установка обоих в комментах в закрепе","s":"Полезный тулинг-лист для управления системой из-под терминала (всё как всегда, долой стандартный gui поверх х-ов или way…","t":"Полезный тулинг-лист для управления системой из-под терминала (всё как всегда…","u":"/post/blog/tg-51/","w":"2024-12-03"},{"b":"Yandex Music в вашем терминале :3 Инструкция: brew install go go install github.com/dece2183/yamusic-tui@latest cd ~/go/pkg/ ./yamusic-tui На этом этапе у Вас спросит токен, топаем сюды https://yandex.cloud/ru/docs/iam/c…","c":"post","g":["music","tty","terminal","yandexmusic","opensource"],"h":"GitHub Repository: https://github.com/DECE2183/yamusic-tui","s":"Yandex Music в вашем терминале :3 Инструкция: brew install go go install github.com/dece2183/yamusic-tui@latest cd ~/go/…","t":"Yandex Music в вашем терминале :3","u":"/post/blog/tg-50/","w":"2024-11-11"},{"b":"Спите? А я Вам опенсорса несу (большей частью сам пользуюсь и Вам рекомендую) Darkreader - превращает почти любой вебсайт в темный, можно поднастроить для каждого свои настройки https://github.com/darkreader/darkreader h…","c":"post","g":["extensions","email","chrome","browsers","web","desktop","mobile","2fa","rust","habbittracker","work_life_balance","opensource"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Спите? А я Вам опенсорса несу (большей частью сам пользуюсь и Вам рекомендую) - Darkreader - превращает почти любой вебс…","t":"Спите? А я Вам опенсорса несу (большей частью сам пользуюсь и Вам рекомендую)","u":"/post/blog/tg-43/","w":"2024-08-17"},{"b":"Так как Figma - это proprietary software, то нужен альтернативный инструмент, что позволяет делать тоже самое, но без танцев с бубнами. И такой существует: Link: https://penpot.app GitHub: https://github.com/penpot/penpo…","c":"post","g":["drawing","opensource","figma","penpot","selfhosting","docker","podman","uiux"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Так как Figma - это proprietary software, то нужен альтернативный инструмент, что позволяет делать тоже самое, но без та…","t":"Так как Figma - это proprietary software, то нужен альтернативный инструмент,…","u":"/post/blog/tg-42/","w":"2024-08-11"},{"b":"А существует ли бесплатный инструмент для работы с изображениями и 2D анимацией над ними? 🤔 Конечно! https://krita.org В чем преимущество? Krita is free software under the GNU Public License, Version 3. • You are free to…","c":"post","g":["drawing","opensource","ui","2danimation","png","paint","layers","masks","adobe","krita"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"А существует ли бесплатный инструмент для работы с изображениями и 2D анимацией над ними? 🤔 Конечно! https://krita.org В…","t":"А существует ли бесплатный инструмент для работы с изображениями и 2D анимаци…","u":"/post/blog/tg-41/","w":"2024-07-28"},{"b":"Каким образом запускать виндовое ПО или играть на вашем macbook (будь-то Intel или M1+) в старые игры или даже игры со Steam и любых других лаунчеров? Решений тьма: Из проприетарных: CrossOver и Parallels (просто позволя…","c":"post","g":["games","development","osx","macos","emulators","steam","wine","whisky","unix","linux","utm","qemu"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Каким образом запускать виндовое ПО или играть на вашем macbook (будь-то Intel или M1+) в старые игры или даже игры со S…","t":"Каким образом запускать виндовое ПО или играть на вашем macbook (будь-то Inte…","u":"/post/blog/tg-38/","w":"2024-07-19"},{"b":"Сколько разных офисных решений вы знаете? Самые известные из них: Microsoft Office (proprietary) Libre Office (open source) Google Мой Офис И так далее Но после закрытия opensource проекта Luckysheet на сцену вышел Unive…","c":"post","g":["management","development","office","luckysheet","sheets","docs","excel","presentations","notes","365","libreoffice","opensource"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Сколько разных офисных решений вы знаете? Самые известные из них: * Microsoft Office (proprietary) * Libre Office (open …","t":"Сколько разных офисных решений вы знаете?","u":"/post/blog/tg-36/","w":"2024-07-10"},{"b":"Каким образом заставить класс расширить поведение обобщенного класса? Или как сделать “наследование налету”? Например у нас есть вот такой код class Dog { private name = ‘dog’; public getName() { console.info(this.name);…","c":"post","g":["development","typescript","patterns","classes","inheritance","fp","oop"],"h":"https://github.com/microsoft/TypeScript/issues/4890","s":"Каким образом заставить класс расширить поведение обобщенного класса? Или как сделать \"наследование налету\"? Например у …","t":"Каким образом заставить класс расширить поведение обобщенного класса? Или как…","u":"/post/blog/tg-32/","w":"2024-07-02"},{"b":"Для того, чтобы заливать ваши образы систем на флешки у вас есть один путь: использовать dd Берете ваш образ, сигнатура следующая: dd if=ЧТО of=КУДА bs=РАЗМЕР_БЛОКА Например так dd if=ubuntu.iso of=/dev/sda bs=1M Подробн…","c":"post","g":["tools","vm","dd","etcher","unix","posix","typescript"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Для того, чтобы заливать ваши образы систем на флешки у вас есть один путь: использовать dd Берете ваш образ, сигнатура …","t":"Для того, чтобы заливать ваши образы систем на флешки у вас есть один путь: и…","u":"/post/blog/tg-31/","w":"2024-06-21"},{"b":"Работа с цветовой палитрой - одна из важнейших частей при разработке клиентских приложений. Лет 8 назад, я хотел как-то избавиться от дизайнеров, изучив, каким образом, они подбирают согласованность в цветах. Репозиторий…","c":"post","g":["development","design","uiux","itten","colors","theory","web","mobile","colortheory","csharp"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Работа с цветовой палитрой - одна из важнейших частей при разработке клиентских приложений. Лет 8 назад, я хотел как-то …","t":"Работа с цветовой палитрой - одна из важнейших частей при разработке клиентск…","u":"/post/blog/tg-30/","w":"2024-06-16"},{"b":"Лекториум на тему “Фронтенд разработка приложений” Что такое фронтенд и почему он устроен именно так как устроен? Как в это вписывается React и его основные идеи? https://vk.com/video-35647046_456239152 (в скором времени…","c":"post","g":["all","development","lectures","frontend","videos","web"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Лекториум на тему \"Фронтенд разработка приложений\" Что такое фронтенд и почему он устроен именно так как устроен? Как в …","t":"Лекториум на тему \"Фронтенд разработка приложений\"","u":"/post/blog/tg-28/","w":"2024-06-05"},{"b":"Лекция про то, что такое фронтенд и почему он устроен именно так: браузер, интерфейс, состояние, React и практическая разработка приложений. Материал пришел из Digitable-публикации и подходит как входная точка для тех, к…","c":"video","g":["frontend","web","react","lectures","videos","programming"],"h":"","s":"Лекция про устройство фронтенда, роль браузера, React и основные идеи разработки интерфейсов.…","t":"Лекториум: фронтенд-разработка приложений","u":"/video/frontend-apps-lecture/","w":"2024-06-05"},{"b":"Парижский проект Mistral AI представил Codestral — модель искусственного интеллекта для генерации кода. Нейросеть обучили на наборе данных из более чем 80 языков программирования, включая популярные (Python, Java, C, C++…","c":"post","g":["all","development","ai","llm","localllm","chatgpt","news"],"h":"О том, как подключить и сделать себе свой клиент/REST API, мы писали в отдельной публикации: https://t.me/c/2056433705/20","s":"Парижский проект Mistral AI представил Codestral — модель искусственного интеллекта для генерации кода. Нейросеть обучил…","t":"Парижский проект Mistral AI представил Codestral — модель искусственного инте…","u":"/post/blog/tg-27/","w":"2024-06-03"},{"b":"#all #development #python #packages #environment #dependencies #pip #pipx #conda #poetry #pyflow #pdm #venv Какие способы работы с пакетами в Python вы знаете? Да и вообще зачем всё это надо? Смысл в том, что проекты ред…","c":"post","g":["all","development","python","packages","environment","dependencies","pip","pipx","conda","poetry","pyflow","pdm","venv"],"h":"Либо через файл с указанием версий.","s":"Зачем вообще нужны менеджеры зависимостей и какие они бывают в Python: pip и его основные команды, а также pipx, conda, …","t":"Управление пакетами в Python: pip, pipx, conda, poetry и другие","u":"/post/blog/tg-25/","w":"2024-06-02"},{"b":"На хабре новую статью написал, можно почитать, о том как я World Of Warcraft по-русски заставлял говорить https://habr.com/ru/articles/818513/ Здравствуйте-здравствуйте, играю я значит в классический World of Warcraft и …","c":"post","g":["advanced","development","warcraft","ai","voiceover","addons","habr","articles","python","games","tts","pytorch"],"h":"В общем, заваривайте чай, как и все мои предыдущие публикации, эта статья в формате (б|в)лога.","s":"На хабре новую статью написал, можно почитать, о том как я World Of Warcraft по-русски заставлял говорить https://habr.c…","t":"На хабре новую статью написал, можно почитать, о том как я World Of Warcraft …","u":"/post/blog/tg-24/","w":"2024-05-30"},{"b":"Нашел интересный плагин для PHP (twig), который впервую очередь создан для сахара разметки в PHP по подобию Pug (HTML), Django (Python), Blazor/Razor (C# ASP.NET) и так далее. Одна из особенных фич - это sandboxing. Вы б…","c":"post","g":["advanced","development","php","microfrontends","sandbox","composer","plugins","templates","javascript","hosting","twig"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше! Have a fun!","s":"Нашел интересный плагин для PHP (twig), который впервую очередь создан для сахара разметки в PHP по подобию Pug (HTML), …","t":"Нашел интересный плагин для PHP (twig), который впервую очередь создан для са…","u":"/post/blog/tg-23/","w":"2024-05-24"},{"b":"Лекториум на тему “Построение REST Api” + построение баз данных и СУБД Полная архитектура современного архитектурного стиля REST в беглом лекториуме на доступном языке Ассоциативные массивы Что такое REST CAP теорема (бе…","c":"post","g":["all","development","lectures","typescript","videos"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Лекториум на тему \"Построение REST Api\" + построение баз данных и СУБД Полная архитектура современного архитектурного ст…","t":"Лекториум на тему \"Построение REST Api\" + построение баз данных и СУБД","u":"/post/blog/tg-22/","w":"2024-05-22"},{"b":"В нашем магазине (https://digitable.ru) появилась новая опция “Поднять сервер с большой языковой моделью (как chatGPT)”, расскажу только про устройство самого сервера что и к чему, в закрепленном комментарии найдете поша…","c":"post","g":["all","development","ai","llm","localllm","chatgpt","advice"],"h":"Have a fun!","s":"В нашем магазине (https://digitable.ru) появилась новая опция \"Поднять сервер с большой языковой моделью (как chatGPT)\",…","t":"В нашем магазине (https://digitable.ru) появилась новая опция \"Поднять сервер…","u":"/post/blog/tg-20/","w":"2024-05-21"},{"b":"Небольшая вводная по типизации в typescript За кадром севший голос и температура, но лейт-мотив по типизации должен быть полезным https://vk.com/video-35647046_456239144 А если хочешь чаще читать наши публикации и быть в…","c":"post","g":["all","development","lectures","typescript","videos"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Небольшая вводная по типизации в typescript За кадром севший голос и температура, но лейт-мотив по типизации должен быть…","t":"Небольшая вводная по типизации в typescript","u":"/post/blog/tg-21/","w":"2024-05-21"},{"b":"Декоратор. Что-то декорирует. А зачем-почему? По своей сути обычный структурный шаблон проектирования, целью которого является просто обогащение объекта чем-либо. Typescript, к примеру, вы можете достигнуть это следующим…","c":"post","g":["middle","development","typescript","patterns","decorators","fp","oop","chain_of_responsibility","pipe","unit_testing","modularity","fp","типизация","generics","middleware","decorator","nodejs","constructor","prototype","class","наследование","inheritance"],"h":"Have a fun!","s":"Декоратор. Что-то декорирует. А зачем-почему? По своей сути обычный структурный шаблон проектирования, целью которого яв…","t":"Декоратор. Что-то декорирует. А зачем-почему?","u":"/post/blog/tg-18/","w":"2024-05-20"},{"b":"Как развернуть свой email-server и поднять hosting panel? (часть вторая с графическим интерфейсом) Сегодня разберём использование https://github.com/aaPanel/aaPanel - open-source с китайской лицензией. Это очередная пане…","c":"post","g":["medium","development","emails","dovecot","postfix","nginx","unix","linux","ubuntu","roundcube","spf","dkim","dmarc","dns","administration","devops","aapanel"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше!","s":"Как развернуть свой email-server и поднять hosting panel? (часть вторая с графическим интерфейсом) Сегодня разберём испо…","t":"Как развернуть свой email-server и поднять hosting panel? (часть вторая с гра…","u":"/post/blog/tg-17/","w":"2024-05-12"},{"b":"Как развернуть свой email-server? А зачем вообще нужно поднимать свой собственный? Всё просто - не нужно платить за то, что вы можете настроить сами и пользоваться на том же уровне, что вам и предлагают за услугу. К прим…","c":"post","g":["advanced","development","emails","dovecot","postfix","nginx","unix","linux","ubuntu","roundcube","spf","dkim","dmarc","dns","administration","devops","digitalocean","cloudpit","google","postfix","ibmpubliclicense","opensource","dovecot","mit","lgplv2","opensource","imap","pop3","unixlike","roundcube","gpl3","opensource","spamassassin","apache","apachelicense2"],"h":"Have a fun!","s":"Как развернуть свой email-server? А зачем вообще нужно поднимать свой собственный? Всё просто - не нужно платить за то, …","t":"Как развернуть свой email-server?","u":"/post/blog/tg-15/","w":"2024-05-11"},{"b":"Чтобы написать вашу первую программу (а именно операционную систему, но на уровне bootloader) вы можете воспользоваться NASM (Netwide Assembler) под архитектуру x86 Мне, к примеру, нравится больше переписанная реализация…","c":"post","g":["medium","development","os","nasm","yasm","qemu","virutal","x86","assembly","brew"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше! 👇","s":"Чтобы написать вашу первую программу (а именно операционную систему, но на уровне bootloader) вы можете воспользоваться …","t":"Чтобы написать вашу первую программу (а именно операционную систему, но на ур…","u":"/post/blog/tg-14/","w":"2024-05-09"},{"b":"Крайне часто нам приходится сталкиваться с тем, чтобы открывать Pull Requests / Merge Requests и прочее, Однако мысль разработчика “моя работа заканчивается после того как я сделал пуш” в корне ошибочна, Представьте себя…","c":"post","g":["all","development","git","svc","pullrequests","documentation","decomposition","taskbehaviour","selfmanagement","selforganisation","problemsolving","transperancy","roadtosenior"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше! 🙂","s":"Крайне часто нам приходится сталкиваться с тем, чтобы открывать Pull Requests / Merge Requests и прочее, Однако мысль ра…","t":"Крайне часто нам приходится сталкиваться с тем, чтобы открывать Pull Requests…","u":"/post/blog/tg-13/","w":"2024-05-08"},{"b":"Сегодня короткий пост на тему реализации модальных окон без Javascript, на чистом HTML + CSS. Раньше приходилось писать ужасный обвяз вокруг перекрытий, а теперь больше не нужно Пример кода Toggle PopoverПравила использо…","c":"post","g":["medium","development","web","html","javascript","browsers","news"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше! 🙂","s":"Сегодня короткий пост на тему реализации модальных окон без Javascript, на чистом HTML + CSS. Раньше приходилось писать …","t":"Сегодня короткий пост на тему реализации модальных окон без Javascript, на чи…","u":"/post/blog/tg-12/","w":"2024-05-07"},{"b":"Каждый раз при разработке с Reference-ом мы пытаемся мысленно разбить веб-сайт на слои, но что, если эта утилита всегда была под рукой? Лет 6 назад в DevTools можно было увидеть интересную утилиту - Layers (Слои) Открыва…","c":"post","g":["medium","development","web","css","javascript","devtools","chromium","browsers"],"h":"Ставьте Ваши реакции и задавайте вопросы в комментариях, они помогают стать нам лучше! 🙂","s":"Каждый раз при разработке с Reference-ом мы пытаемся мысленно разбить веб-сайт на слои, но что, если эта утилита всегда …","t":"Каждый раз при разработке с Reference-ом мы пытаемся мысленно разбить веб-сай…","u":"/post/blog/tg-11/","w":"2024-05-06"},{"b":"Продолжаем публиковать полезные development-инструменты, На этот раз список утилит для вашего терминала в паре с brew (https://brew.sh/), Все команды в списке можно установить, используя brew install alacritty - gui под …","c":"post","g":["all","development","brew","osx","macos","environment","tty","terminal"],"h":"","s":"Продолжаем публиковать полезные development-инструменты, На этот раз список утилит для вашего терминала в паре с brew (h…","t":"Продолжаем публиковать полезные development-инструменты,","u":"/post/blog/tg-10/","w":"2024-05-05"},{"b":"Есть ряд приложений подлежащих установке на Ваш десктоп Insomnia - это своего рода postman, только бесплатный; своего рода curl только с gui; своего рода тула для написания автоматических тестов; также имеет встроенную п…","c":"post","g":["all","qa","development","environment","applications","chromeextensions"],"h":"Что понравилось больше всего из списка и что поставил? Напиши в комментарий 👇🏻 Что-то хочешь порекомендовать? В комментарии! 👇🏻","s":"Есть ряд приложений подлежащих установке на Ваш десктоп - Insomnia - это своего рода postman, только бесплатный; своего …","t":"Есть ряд приложений подлежащих установке на Ваш десктоп","u":"/post/blog/tg-9/","w":"2024-05-04"},{"b":"Введение Для чего нужен git, как работать с состоянием файлом разобрались из части Архитектурного курса Development. Маленькая справка о том, что такое pull request. Pull Request (далее PR)— это запрос на включение сдела…","c":"post","d":"git","g":["git","код-ревью","командная работа","процессы","рабочий процесс"],"h":"Введение · Правило 1. Хорошее название PR · Правило 2. Подробное описание PR · Правило 3. Правильные коммиты отразят изменения даже лучше, ч","n":"Git и командная работа","p":"Инфраструктура, инструменты и качество","q":"06","r":"Модель данных, ветвление, rebase, восстановление, монорепо, ревью.","s":"Оформление хорошего pull request","t":"Pull Request","u":"/post/git/13-pull-request/","w":"2022-07-12"},{"b":"Роботизированные системы. Результаты работы Оглавление Введение Результаты Где развернуто Анализ производительности Масштабирование Заключение Список литературы Результаты В прошлых работах мы познакомились с историей по…","c":"post","g":["робототехника","исследования","производительность","масштабирование","распределённые системы"],"h":"Оглавление · Результаты · Где развернуто 1 · Анализ производительности 2 3 · Масштабирование 4 · Заключение · Список литературы","s":"Результаты работы по проектированию и реализации роботизированной системы…","t":"Роботизированные системы. Результаты работы.","u":"/post/nir/siw-final/","w":"2022-06-01"},{"b":"Программная реализация некоторых сервисов в рамках создания роботизированной системы Содержание Введение Сбор функциональных требований Реализация системы 3.1. Абстракция Постановка задачи Соотнесение задачи с абстракцие…","c":"post","g":["робототехника","исследования","микросервисы","ci/cd","kubernetes","требования"],"h":"Содержание · Введение · Сбор функциональных требований · Реализация системы 1 · Абстракция 2 3 · Производительность и развёртывание · Непрер","s":"Демонстрация создания необходимых сервисов для роборитизированных систем на практике…","t":"Программная реализация некоторых сервисов в рамках создания роботизированной системы","u":"/post/nir/services-realization/","w":"2022-05-21"},{"b":"Определение роботизированных систем, классификация и применение Содержание Что такое роботы, их классификация История создания Основные принципы и законы робототехники Классификация роботов Роботы в образовании Робот-пре…","c":"post","g":["робототехника","исследования","встраиваемые системы","требования","обучение"],"h":"Содержание · Введение · Что такое роботы, их классификация · 1.1 История создания · 1.2 Основные принципы и законы робототехники · 1.3 Класс","s":"Что такое роботы, их классификация и технические требования","t":"Определение роботизированных систем, классификация и применение","u":"/post/nir/robotic-systems-definition/","w":"2022-05-01"},{"b":"Руководство по доступности - Accessibility Guide Введение Особое внимание Рекомендации для менеджеров Для дизайнераов для дизайнераов и web-разработчиков Введение До недавнего времени версии сайтов для людей с ограниченн…","c":"post","d":"accessibility","g":["доступность","a11y","wcag","aria","формы","дизайн"],"h":"Введение · Особое внимание · Рекомендации · Для менеджеров · Для дизайнераов · Для дизайнераов и web-разработчиков · Для web-разработчика","n":"Доступность (a11y)","p":"Инфраструктура, инструменты и качество","q":"06","r":"WCAG, семантика, ARIA, клавиатура, скринридеры, тестирование доступности.","s":"Рекомендации для Web-разработки","t":"Гайд по Accessibility","u":"/post/accessibility/13-accessibility-guide/","w":"2022-04-12"},{"b":"К вопросу о роботизированных системах В своём стремлении облегчить жизнь люди в разные времена изобретали актуальные средства оптимизации повседневной деятельности. В зависимости от технологического этапа оптимизация дос…","c":"post","g":["робототехника","исследования","микросервисы","масштабирование","отказоустойчивость"],"h":"","s":"Тезисы к научной работе про роботизированные системы","t":"К вопросу о роботизированных системах","u":"/post/theses/robotic-systems/","w":"2022-03-31"},{"b":"Теоретические обоснования использования микросервисной архитектуры для роботизированных систем Содержание Введение Общий концепт архитектуры Распространенные архитектурные проблемы и их решение (архитектура приложения) М…","c":"post","g":["робототехника","исследования","микросервисы","архитектура","распределённые системы","api"],"h":"Содержание · Введение · Общий концепт архитектуры 1 2 3 · Сингулярность любого сервиса 7 · Устройство базового микросервиса 8 · API · Auth ·","s":"Аргументы в пользу реализации микросервисной архитектуры для распределенных роботизированных систем…","t":"Теоретические обоснования использования микросервисной архитектуры для роботизированных систем","u":"/post/nir/theory-for-robotic-systems/","w":"2022-03-31"},{"b":"Пример: бот для учебного расписания Введение В данной статье описано, как правильно подходить к разработке IT проектов, их оценке и сопровождению. Давайте рассмотрим на примере простого проекта для университета, как реал…","c":"post","g":["управление проектами","оценка","планирование","git","kanban","scrum"],"h":"Введение · Выбор идеи · Предварительная оценка · Разработка","s":"Применим некоторые знания для создания проекта","t":"Пример: бот для учебного расписания","u":"/post/courseexamples/schedule-bot-for-university/","w":"2022-03-09"},{"b":"Contents С чего начать Роадмап портала: как учиться по курсам Каталог курсов Resolution Введение Требования Project/product management Управление разработкой: карта трека, три контура и зачем инженеру классика Этапы жизн…","c":"post","g":["роадмап","навигация","обучение","карьера","языки программирования"],"h":"С чего начать · Resolution · Project/product management · Development · Языки программирования · Go · Elixir · TypeScript","s":"Все материалы в одном месте","t":"Архитектура","u":"/post/architecture/","w":"2022-02-28"},{"b":"Введение Данный курс написал на основе статей из общедоступных ресурсов, которые читателю не составит труда найти самостоятельно. Ресурс рассчитан на начинающих энтузиастов-айтишников, но, возможно, будет полезен и более…","c":"post","g":["обучение","роадмап","навигация","с нуля"],"h":"Введение","t":"Введение","u":"/post/architecture/introduction/","w":"2022-02-28"},{"b":"Требования Сроки проведения Не менее 1 семестра Итерации длинной в 2 недели 1 лекционное занятие 2 практических занятия Нефункциональные требования Модифицируемость Производительность Ученики должны обосновать выбор реше…","c":"post","g":["обучение","требования","команда","планирование","оценка"],"h":"Сроки проведения · Нефункциональные требования · Команды · Группы · Решение","s":"Сроки. Команды. Группы. Решения. Требования.","t":"Требования","u":"/post/architecture/requirements/","w":"2022-02-28"},{"b":"Рассчитать скидку корзины Ритейл Retail deterministic calculation Сумма корзины, сегмент и промокод Сложить применимые проценты и проверить верхний предел Числовая скидка без скрытых веток FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Ритейл"],"h":"Сумма корзины, сегмент и промокод · Сложить применимые проценты и проверить верхний предел · Числовая скидка без скрытых веток","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Числовая скидка без скрытых веток","t":"Рассчитать скидку корзины","u":"/fts/#case-retail-calculation","w":"2026-08-02"},{"b":"Разрешить возврат товара Ритейл Retail command eligibility Покупка, срок и состояние товара Вывести право на возврат из проверяемых фактов Команда «Оформить возврат» разрешена или отклонена command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Ритейл"],"h":"Покупка, срок и состояние товара · Вывести право на возврат из проверяемых фактов · Команда «Оформить возврат» разрешена или отклонена","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Команда «Оформить возврат» разрешена или отклонена","t":"Разрешить возврат товара","u":"/fts/#case-retail-eligibility","w":"2026-08-02"},{"b":"Проверить бесплатную доставку Ритейл Retail executable examples Сумма, регион и вес Выполнить примеры на границах тарифа Регрессия тарифа блокирует сборку fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Ритейл"],"h":"Сумма, регион и вес · Выполнить примеры на границах тарифа · Регрессия тарифа блокирует сборку","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Регрессия тарифа блокирует сборку","t":"Проверить бесплатную доставку","u":"/fts/#case-retail-validation","w":"2026-08-02"},{"b":"Собрать форму товарной карточки Ритейл Retail generated form Структура товара и обязательность полей Скомпилировать поля в каноническую модель Описание React-формы canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Ритейл"],"h":"Структура товара и обязательность полей · Скомпилировать поля в каноническую модель · Описание React-формы","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Описание React-формы","t":"Собрать форму товарной карточки","u":"/fts/#case-retail-form","w":"2026-08-02"},{"b":"Собрать таблицу остатков Ритейл Retail generated table SKU, склад, остаток и резерв Превратить типы полей в колонки Конфигурация таблицы без ручного дублирования canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Ритейл"],"h":"SKU, склад, остаток и резерв · Превратить типы полей в колонки · Конфигурация таблицы без ручного дублирования","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Конфигурация таблицы без ручного дублирования","t":"Собрать таблицу остатков","u":"/fts/#case-retail-table","w":"2026-08-02"},{"b":"Доказать готовность заказа к выдаче Ритейл Retail verified transition Оплата и факт комплектации Скомпозировать состояния в разрешение выдачи Проверяемый сертификат перехода morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Ритейл"],"h":"Оплата и факт комплектации · Скомпозировать состояния в разрешение выдачи · Проверяемый сертификат перехода","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Проверяемый сертификат перехода","t":"Доказать готовность заказа к выдаче","u":"/fts/#case-retail-transition","w":"2026-08-02"},{"b":"Дать агенту расчёт цены Ритейл Retail agent tool Запрос покупателя и снимок корзины Вызвать детерминированную FTS-утилиту через MCP Структурированный ответ с диагностикой MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Ритейл"],"h":"Запрос покупателя и снимок корзины · Вызвать детерминированную FTS-утилиту через MCP · Структурированный ответ с диагностикой","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Структурированный ответ с диагностикой","t":"Дать агенту расчёт цены","u":"/fts/#case-retail-agent","w":"2026-08-02"},{"b":"Защитить правила промокодов Ритейл Retail regression gate Набор граничных примеров Запустить примеры и свойства в CI Ненулевой exit code при расхождении generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Ритейл"],"h":"Набор граничных примеров · Запустить примеры и свойства в CI · Ненулевой exit code при расхождении","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Ненулевой exit code при расхождении","t":"Защитить правила промокодов","u":"/fts/#case-retail-ci","w":"2026-08-02"},{"b":"Рассчитать комиссию продавца Маркетплейсы Marketplaces deterministic calculation Категория, оборот и тариф Применить последовательность комиссионных правил Сумма комиссии и сгенерированный тест FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Маркетплейсы"],"h":"Категория, оборот и тариф · Применить последовательность комиссионных правил · Сумма комиссии и сгенерированный тест","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сумма комиссии и сгенерированный тест","t":"Рассчитать комиссию продавца","u":"/fts/#case-marketplace-calculation","w":"2026-08-02"},{"b":"Разрешить публикацию товара Маркетплейсы Marketplaces command eligibility Карточка, документы и ограничения Проверить свидетельства допуска Команда публикации с объяснимым guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Маркетплейсы"],"h":"Карточка, документы и ограничения · Проверить свидетельства допуска · Команда публикации с объяснимым guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Команда публикации с объяснимым guard","t":"Разрешить публикацию товара","u":"/fts/#case-marketplace-eligibility","w":"2026-08-02"},{"b":"Проверить SLA отгрузки Маркетплейсы Marketplaces executable examples Дедлайн, статус и схема FBO/FBS Зафиксировать примеры нарушения SLA Воспроизводимый тест бизнес-сроков fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Маркетплейсы"],"h":"Дедлайн, статус и схема FBO/FBS · Зафиксировать примеры нарушения SLA · Воспроизводимый тест бизнес-сроков","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Воспроизводимый тест бизнес-сроков","t":"Проверить SLA отгрузки","u":"/fts/#case-marketplace-validation","w":"2026-08-02"},{"b":"Собрать форму нового SKU Маркетплейсы Marketplaces generated form Атрибуты категории товара Получить поля из одной структуры FTS Динамическая форма кабинета canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Маркетплейсы"],"h":"Атрибуты категории товара · Получить поля из одной структуры FTS · Динамическая форма кабинета","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Динамическая форма кабинета","t":"Собрать форму нового SKU","u":"/fts/#case-marketplace-form","w":"2026-08-02"},{"b":"Собрать таблицу выплат Маркетплейсы Marketplaces generated table Период, продажи, удержания, итог Сопоставить типы с форматтерами колонок Таблица сверки выплат canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Маркетплейсы"],"h":"Период, продажи, удержания, итог · Сопоставить типы с форматтерами колонок · Таблица сверки выплат","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Таблица сверки выплат","t":"Собрать таблицу выплат","u":"/fts/#case-marketplace-table","w":"2026-08-02"},{"b":"Доказать право на выплату Маркетплейсы Marketplaces verified transition Доставка, период спора и KYC Связать факты морфизмами допуска Сертификат разрешения выплаты morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Маркетплейсы"],"h":"Доставка, период спора и KYC · Связать факты морфизмами допуска · Сертификат разрешения выплаты","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат разрешения выплаты","t":"Доказать право на выплату","u":"/fts/#case-marketplace-transition","w":"2026-08-02"},{"b":"Дать агенту проверку листинга Маркетплейсы Marketplaces agent tool Текст карточки и факты продавца Передать исходник в fts_check и fts_execute Решение агента, ограниченное валидатором MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Маркетплейсы"],"h":"Текст карточки и факты продавца · Передать исходник в fts_check и fts_execute · Решение агента, ограниченное валидатором","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Решение агента, ограниченное валидатором","t":"Дать агенту проверку листинга","u":"/fts/#case-marketplace-agent","w":"2026-08-02"},{"b":"Защитить сетку комиссий Маркетплейсы Marketplaces regression gate Примеры по категориям и порогам Генерировать node:test из FTS Стабильный релиз тарификации generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Маркетплейсы"],"h":"Примеры по категориям и порогам · Генерировать node:test из FTS · Стабильный релиз тарификации","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Стабильный релиз тарификации","t":"Защитить сетку комиссий","u":"/fts/#case-marketplace-ci","w":"2026-08-02"},{"b":"Рассчитать кредитный лимит Банкинг Banking deterministic calculation Доход, нагрузка и риск-класс Вычислить лимит и проверить максимум Детерминированный лимит FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Банкинг"],"h":"Доход, нагрузка и риск-класс · Вычислить лимит и проверить максимум · Детерминированный лимит","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Детерминированный лимит","t":"Рассчитать кредитный лимит","u":"/fts/#case-banking-calculation","w":"2026-08-02"},{"b":"Разрешить выдачу кредита Банкинг Banking command eligibility KYC, скоринг и риск-проверка Скомпозировать свидетельства допуска Guard команды выдачи command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Банкинг"],"h":"KYC, скоринг и риск-проверка · Скомпозировать свидетельства допуска · Guard команды выдачи","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Guard команды выдачи","t":"Разрешить выдачу кредита","u":"/fts/#case-banking-eligibility","w":"2026-08-02"},{"b":"Проверить пороги скоринга Банкинг Banking executable examples Граничные баллы и ожидаемые классы Исполнить предметные примеры Тесты скоринговой политики fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Банкинг"],"h":"Граничные баллы и ожидаемые классы · Исполнить предметные примеры · Тесты скоринговой политики","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тесты скоринговой политики","t":"Проверить пороги скоринга","u":"/fts/#case-banking-validation","w":"2026-08-02"},{"b":"Собрать форму заявки Банкинг Banking generated form Поля клиента и финансов Скомпилировать структуру заявки React-форма с типами canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Банкинг"],"h":"Поля клиента и финансов · Скомпилировать структуру заявки · React-форма с типами","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"React-форма с типами","t":"Собрать форму заявки","u":"/fts/#case-banking-form","w":"2026-08-02"},{"b":"Собрать таблицу просрочек Банкинг Banking generated table Договор, DPD и остаток долга Получить колонки из структуры Операционная таблица коллекшна canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Банкинг"],"h":"Договор, DPD и остаток долга · Получить колонки из структуры · Операционная таблица коллекшна","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Операционная таблица коллекшна","t":"Собрать таблицу просрочек","u":"/fts/#case-banking-table","w":"2026-08-02"},{"b":"Доказать допустимость операции Банкинг Banking verified transition Лимит, санкционный контроль и MFA Провести типизированную цепочку морфизмов Проверяемый сертификат операции morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Банкинг"],"h":"Лимит, санкционный контроль и MFA · Провести типизированную цепочку морфизмов · Проверяемый сертификат операции","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Проверяемый сертификат операции","t":"Доказать допустимость операции","u":"/fts/#case-banking-transition","w":"2026-08-02"},{"b":"Дать агенту pre-check заявки Банкинг Banking agent tool Анкета без сетевых секретов Вызвать read-only MCP-инструменты FTS Структурированный pre-check MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Банкинг"],"h":"Анкета без сетевых секретов · Вызвать read-only MCP-инструменты FTS · Структурированный pre-check","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Структурированный pre-check","t":"Дать агенту pre-check заявки","u":"/fts/#case-banking-agent","w":"2026-08-02"},{"b":"Защитить риск-политику Банкинг Banking regression gate Набор одобренных и отказных заявок Проверить свойства и примеры в CI Запрет мержа при изменении решения generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Банкинг"],"h":"Набор одобренных и отказных заявок · Проверить свойства и примеры в CI · Запрет мержа при изменении решения","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Запрет мержа при изменении решения","t":"Защитить риск-политику","u":"/fts/#case-banking-ci","w":"2026-08-02"},{"b":"Рассчитать комиссию платежа Платежи Payments deterministic calculation Метод, валюта и сумма Применить тарифные правила по порядку Комиссия для checkout FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Платежи"],"h":"Метод, валюта и сумма · Применить тарифные правила по порядку · Комиссия для checkout","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Комиссия для checkout","t":"Рассчитать комиссию платежа","u":"/fts/#case-payments-calculation","w":"2026-08-02"},{"b":"Разрешить списание Платежи Payments command eligibility 3DS, лимит и статус получателя Проверить необходимые свидетельства Guard команды debit command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Платежи"],"h":"3DS, лимит и статус получателя · Проверить необходимые свидетельства · Guard команды debit","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Guard команды debit","t":"Разрешить списание","u":"/fts/#case-payments-eligibility","w":"2026-08-02"},{"b":"Проверить округление валют Платежи Payments executable examples Суммы на границах minor units Исполнить точные числовые примеры Регресс-тест округления fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Платежи"],"h":"Суммы на границах minor units · Исполнить точные числовые примеры · Регресс-тест округления","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Регресс-тест округления","t":"Проверить округление валют","u":"/fts/#case-payments-validation","w":"2026-08-02"},{"b":"Собрать форму возврата Платежи Payments generated form Платёж, причина и сумма Преобразовать структуру в descriptor Форма refund в React canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Платежи"],"h":"Платёж, причина и сумма · Преобразовать структуру в descriptor · Форма refund в React","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Форма refund в React","t":"Собрать форму возврата","u":"/fts/#case-payments-form","w":"2026-08-02"},{"b":"Собрать таблицу сверки Платежи Payments generated table Транзакция, провайдер и расхождение Вывести колонки и формат денег Таблица reconciliation canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Платежи"],"h":"Транзакция, провайдер и расхождение · Вывести колонки и формат денег · Таблица reconciliation","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Таблица reconciliation","t":"Собрать таблицу сверки","u":"/fts/#case-payments-table","w":"2026-08-02"},{"b":"Доказать право на capture Платежи Payments verified transition Авторизация, срок и антифрод Скомпозировать факты в разрешение Сертификат capture morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Платежи"],"h":"Авторизация, срок и антифрод · Скомпозировать факты в разрешение · Сертификат capture","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат capture","t":"Доказать право на capture","u":"/fts/#case-payments-transition","w":"2026-08-02"},{"b":"Дать агенту расчёт refund Платежи Payments agent tool Снимок платежа и политика Исполнить FTS без доступа к платёжному API Безопасная рекомендация до эффекта MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Платежи"],"h":"Снимок платежа и политика · Исполнить FTS без доступа к платёжному API · Безопасная рекомендация до эффекта","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Безопасная рекомендация до эффекта","t":"Дать агенту расчёт refund","u":"/fts/#case-payments-agent","w":"2026-08-02"},{"b":"Защитить антифрод-порог Платежи Payments regression gate Положительные и отрицательные примеры Запустить fts test перед деплоем CI-блокировка рискованного изменения generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Платежи"],"h":"Положительные и отрицательные примеры · Запустить fts test перед деплоем · CI-блокировка рискованного изменения","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-блокировка рискованного изменения","t":"Защитить антифрод-порог","u":"/fts/#case-payments-ci","w":"2026-08-02"},{"b":"Рассчитать страховую премию Страхование Insurance deterministic calculation Объект, риск и франшиза Сложить коэффициенты и проверить предел Премия полиса FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Страхование"],"h":"Объект, риск и франшиза · Сложить коэффициенты и проверить предел · Премия полиса","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Премия полиса","t":"Рассчитать страховую премию","u":"/fts/#case-insurance-calculation","w":"2026-08-02"},{"b":"Разрешить страховую выплату Страхование Insurance command eligibility Покрытие, событие и документы Вывести право выплаты из фактов Guard команды payout command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Страхование"],"h":"Покрытие, событие и документы · Вывести право выплаты из фактов · Guard команды payout","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Guard команды payout","t":"Разрешить страховую выплату","u":"/fts/#case-insurance-eligibility","w":"2026-08-02"},{"b":"Проверить исключения покрытия Страхование Insurance executable examples Набор событий и условий Исполнить примеры полиса Тесты исключений fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Страхование"],"h":"Набор событий и условий · Исполнить примеры полиса · Тесты исключений","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тесты исключений","t":"Проверить исключения покрытия","u":"/fts/#case-insurance-validation","w":"2026-08-02"},{"b":"Собрать форму заявления Страхование Insurance generated form Структура страхового случая Сгенерировать поля из FTS Форма FNOL canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Страхование"],"h":"Структура страхового случая · Сгенерировать поля из FTS · Форма FNOL","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Форма FNOL","t":"Собрать форму заявления","u":"/fts/#case-insurance-form","w":"2026-08-02"},{"b":"Собрать таблицу убытков Страхование Insurance generated table Полис, резерв и статус Преобразовать типы в колонки Claims dashboard table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Страхование"],"h":"Полис, резерв и статус · Преобразовать типы в колонки · Claims dashboard table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Claims dashboard table","t":"Собрать таблицу убытков","u":"/fts/#case-insurance-table","w":"2026-08-02"},{"b":"Доказать завершение урегулирования Страхование Insurance verified transition Экспертиза, согласование и платёж Скомпозировать переходы статуса Сертификат закрытия кейса morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Страхование"],"h":"Экспертиза, согласование и платёж · Скомпозировать переходы статуса · Сертификат закрытия кейса","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат закрытия кейса","t":"Доказать завершение урегулирования","u":"/fts/#case-insurance-transition","w":"2026-08-02"},{"b":"Дать агенту проверку покрытия Страхование Insurance agent tool Условия полиса и событие Вызвать FTS через MCP Объяснимый результат без галлюцинации правила MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Страхование"],"h":"Условия полиса и событие · Вызвать FTS через MCP · Объяснимый результат без галлюцинации правила","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Объяснимый результат без галлюцинации правила","t":"Дать агенту проверку покрытия","u":"/fts/#case-insurance-agent","w":"2026-08-02"},{"b":"Защитить тарифную модель Страхование Insurance regression gate Эталонные профили риска Сгенерировать тесты и запустить свойства Контроль изменения премий generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Страхование"],"h":"Эталонные профили риска · Сгенерировать тесты и запустить свойства · Контроль изменения премий","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Контроль изменения премий","t":"Защитить тарифную модель","u":"/fts/#case-insurance-ci","w":"2026-08-02"},{"b":"Рассчитать стоимость доставки Логистика Logistics deterministic calculation Маршрут, вес и сервис Применить тарифы и надбавки Цена перевозки FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Логистика"],"h":"Маршрут, вес и сервис · Применить тарифы и надбавки · Цена перевозки","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Цена перевозки","t":"Рассчитать стоимость доставки","u":"/fts/#case-logistics-calculation","w":"2026-08-02"},{"b":"Разрешить отгрузку заказа Логистика Logistics command eligibility Комплектация, оплата и маркировка Вывести разрешение команды Shipping command guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Логистика"],"h":"Комплектация, оплата и маркировка · Вывести разрешение команды · Shipping command guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Shipping command guard","t":"Разрешить отгрузку заказа","u":"/fts/#case-logistics-eligibility","w":"2026-08-02"},{"b":"Проверить сроки доставки Логистика Logistics executable examples Зоны, cut-off и календарные примеры Исполнить SLA-сценарии Тест обещанной даты fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Логистика"],"h":"Зоны, cut-off и календарные примеры · Исполнить SLA-сценарии · Тест обещанной даты","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест обещанной даты","t":"Проверить сроки доставки","u":"/fts/#case-logistics-validation","w":"2026-08-02"},{"b":"Собрать форму отправления Логистика Logistics generated form Адрес, места и опасный груз Скомпилировать структуру Форма создания shipment canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Логистика"],"h":"Адрес, места и опасный груз · Скомпилировать структуру · Форма создания shipment","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Форма создания shipment","t":"Собрать форму отправления","u":"/fts/#case-logistics-form","w":"2026-08-02"},{"b":"Собрать таблицу рейсов Логистика Logistics generated table Рейс, окно и загрузка Получить колонки из типов Dispatch table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Логистика"],"h":"Рейс, окно и загрузка · Получить колонки из типов · Dispatch table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Dispatch table","t":"Собрать таблицу рейсов","u":"/fts/#case-logistics-table","w":"2026-08-02"},{"b":"Доказать готовность груза Логистика Logistics verified transition Документы, упаковка и слот Скомпозировать состояния Сертификат допуска на погрузку morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Логистика"],"h":"Документы, упаковка и слот · Скомпозировать состояния · Сертификат допуска на погрузку","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат допуска на погрузку","t":"Доказать готовность груза","u":"/fts/#case-logistics-transition","w":"2026-08-02"},{"b":"Дать агенту выбор тарифа Логистика Logistics agent tool Параметры посылки Исполнить утилиту через MCP Структурированный тарифный ответ MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Логистика"],"h":"Параметры посылки · Исполнить утилиту через MCP · Структурированный тарифный ответ","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Структурированный тарифный ответ","t":"Дать агенту выбор тарифа","u":"/fts/#case-logistics-agent","w":"2026-08-02"},{"b":"Защитить правила зон Логистика Logistics regression gate Эталонные адреса и веса Прогнать примеры в CI Контроль тарифных регрессий generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Логистика"],"h":"Эталонные адреса и веса · Прогнать примеры в CI · Контроль тарифных регрессий","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Контроль тарифных регрессий","t":"Защитить правила зон","u":"/fts/#case-logistics-ci","w":"2026-08-02"},{"b":"Рассчитать приоритет записи Здравоохранение Healthcare deterministic calculation Симптомы, возраст и срочность Применить утверждённые правила приоритета Категория очереди, не диагноз FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Здравоохранение"],"h":"Симптомы, возраст и срочность · Применить утверждённые правила приоритета · Категория очереди, не диагноз","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Категория очереди, не диагноз","t":"Рассчитать приоритет записи","u":"/fts/#case-healthcare-calculation","w":"2026-08-02"},{"b":"Разрешить доступ к карте Здравоохранение Healthcare command eligibility Роль, согласие и цель Проверить факты доступа Guard чтения медицинских данных command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Здравоохранение"],"h":"Роль, согласие и цель · Проверить факты доступа · Guard чтения медицинских данных","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Guard чтения медицинских данных","t":"Разрешить доступ к карте","u":"/fts/#case-healthcare-eligibility","w":"2026-08-02"},{"b":"Проверить расписание приёма Здравоохранение Healthcare executable examples Длительность и ограничения слотов Исполнить примеры календаря Тест конфликтов записи fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Здравоохранение"],"h":"Длительность и ограничения слотов · Исполнить примеры календаря · Тест конфликтов записи","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест конфликтов записи","t":"Проверить расписание приёма","u":"/fts/#case-healthcare-validation","w":"2026-08-02"},{"b":"Собрать форму анамнеза Здравоохранение Healthcare generated form Структура анкеты пациента Скомпилировать обязательные поля Доступная React-форма canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Здравоохранение"],"h":"Структура анкеты пациента · Скомпилировать обязательные поля · Доступная React-форма","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Доступная React-форма","t":"Собрать форму анамнеза","u":"/fts/#case-healthcare-form","w":"2026-08-02"},{"b":"Собрать таблицу назначений Здравоохранение Healthcare generated table Препарат, доза и период Получить безопасные колонки Таблица назначений canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Здравоохранение"],"h":"Препарат, доза и период · Получить безопасные колонки · Таблица назначений","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Таблица назначений","t":"Собрать таблицу назначений","u":"/fts/#case-healthcare-table","w":"2026-08-02"},{"b":"Доказать наличие согласия Здравоохранение Healthcare verified transition Версия согласия, подпись и срок Связать свидетельства морфизмами Сертификат правового основания morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Здравоохранение"],"h":"Версия согласия, подпись и срок · Связать свидетельства морфизмами · Сертификат правового основания","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат правового основания","t":"Доказать наличие согласия","u":"/fts/#case-healthcare-transition","w":"2026-08-02"},{"b":"Дать агенту проверку анкеты Здравоохранение Healthcare agent tool Заполненные поля без постановки диагноза Вызвать fts_check и fts_test Диагностика структуры данных MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Здравоохранение"],"h":"Заполненные поля без постановки диагноза · Вызвать fts_check и fts_test · Диагностика структуры данных","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Диагностика структуры данных","t":"Дать агенту проверку анкеты","u":"/fts/#case-healthcare-agent","w":"2026-08-02"},{"b":"Защитить правила доступа Здравоохранение Healthcare regression gate Матрица ролей и согласий Запускать примеры в CI Регресс-гейт приватности generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Здравоохранение"],"h":"Матрица ролей и согласий · Запускать примеры в CI · Регресс-гейт приватности","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Регресс-гейт приватности","t":"Защитить правила доступа","u":"/fts/#case-healthcare-ci","w":"2026-08-02"},{"b":"Рассчитать запас упаковок Фармацевтика Pharmaceuticals deterministic calculation Назначение, дозировка и длительность Вычислить количество по утверждённой формуле Число упаковок FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Фармацевтика"],"h":"Назначение, дозировка и длительность · Вычислить количество по утверждённой формуле · Число упаковок","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Число упаковок","t":"Рассчитать запас упаковок","u":"/fts/#case-pharma-calculation","w":"2026-08-02"},{"b":"Разрешить отпуск препарата Фармацевтика Pharmaceuticals command eligibility Рецепт, срок и ограничения Проверить свидетельства допуска Guard команды отпуска command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Фармацевтика"],"h":"Рецепт, срок и ограничения · Проверить свидетельства допуска · Guard команды отпуска","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Guard команды отпуска","t":"Разрешить отпуск препарата","u":"/fts/#case-pharma-eligibility","w":"2026-08-02"},{"b":"Проверить температурный режим Фармацевтика Pharmaceuticals executable examples Диапазон и измеренные значения Исполнить граничные примеры Тест cold chain fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Фармацевтика"],"h":"Диапазон и измеренные значения · Исполнить граничные примеры · Тест cold chain","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест cold chain","t":"Проверить температурный режим","u":"/fts/#case-pharma-validation","w":"2026-08-02"},{"b":"Собрать форму партии Фармацевтика Pharmaceuticals generated form Серия, срок и производитель Скомпилировать структуру партии Форма приёмки canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Фармацевтика"],"h":"Серия, срок и производитель · Скомпилировать структуру партии · Форма приёмки","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Форма приёмки","t":"Собрать форму партии","u":"/fts/#case-pharma-form","w":"2026-08-02"},{"b":"Собрать таблицу карантина Фармацевтика Pharmaceuticals generated table Партия, причина и статус Сгенерировать колонки QA quarantine table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Фармацевтика"],"h":"Партия, причина и статус · Сгенерировать колонки · QA quarantine table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"QA quarantine table","t":"Собрать таблицу карантина","u":"/fts/#case-pharma-table","w":"2026-08-02"},{"b":"Доказать выпуск серии Фармацевтика Pharmaceuticals verified transition Протоколы, отклонения и подписи Скомпозировать состояния качества Сертификат release decision morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Фармацевтика"],"h":"Протоколы, отклонения и подписи · Скомпозировать состояния качества · Сертификат release decision","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат release decision","t":"Доказать выпуск серии","u":"/fts/#case-pharma-transition","w":"2026-08-02"},{"b":"Дать агенту проверку серии Фармацевтика Pharmaceuticals agent tool Структурированные QC-факты Ограничить решение FTS-инструментом Диагностика без изменения записей MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Фармацевтика"],"h":"Структурированные QC-факты · Ограничить решение FTS-инструментом · Диагностика без изменения записей","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Диагностика без изменения записей","t":"Дать агенту проверку серии","u":"/fts/#case-pharma-agent","w":"2026-08-02"},{"b":"Защитить спецификацию качества Фармацевтика Pharmaceuticals regression gate Эталонные измерения Запустить свойства и примеры CI-гейт изменения пределов generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Фармацевтика"],"h":"Эталонные измерения · Запустить свойства и примеры · CI-гейт изменения пределов","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт изменения пределов","t":"Защитить спецификацию качества","u":"/fts/#case-pharma-ci","w":"2026-08-02"},{"b":"Рассчитать вилку оффера HR и найм HR and hiring deterministic calculation Грейд, регион и коэффициенты Применить прозрачные правила диапазона Предлагаемая вилка FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","HR и найм"],"h":"Грейд, регион и коэффициенты · Применить прозрачные правила диапазона · Предлагаемая вилка","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Предлагаемая вилка","t":"Рассчитать вилку оффера","u":"/fts/#case-hr-calculation","w":"2026-08-02"},{"b":"Разрешить перевод сотрудника HR и найм HR and hiring command eligibility Согласования и срок в роли Проверить условия команды Transfer command guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","HR и найм"],"h":"Согласования и срок в роли · Проверить условия команды · Transfer command guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Transfer command guard","t":"Разрешить перевод сотрудника","u":"/fts/#case-hr-eligibility","w":"2026-08-02"},{"b":"Проверить отпускной баланс HR и найм HR and hiring executable examples Начисления, списания и даты Исполнить граничные примеры Тест HR-политики fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","HR и найм"],"h":"Начисления, списания и даты · Исполнить граничные примеры · Тест HR-политики","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест HR-политики","t":"Проверить отпускной баланс","u":"/fts/#case-hr-validation","w":"2026-08-02"},{"b":"Собрать форму вакансии HR и найм HR and hiring generated form Роль, уровень и требования Получить поля из структуры Форма публикации вакансии canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","HR и найм"],"h":"Роль, уровень и требования · Получить поля из структуры · Форма публикации вакансии","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Форма публикации вакансии","t":"Собрать форму вакансии","u":"/fts/#case-hr-form","w":"2026-08-02"},{"b":"Собрать таблицу кандидатов HR и найм HR and hiring generated table Этап, оценка и ответственный Сгенерировать колонки ATS Recruiting pipeline table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","HR и найм"],"h":"Этап, оценка и ответственный · Сгенерировать колонки ATS · Recruiting pipeline table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Recruiting pipeline table","t":"Собрать таблицу кандидатов","u":"/fts/#case-hr-table","w":"2026-08-02"},{"b":"Доказать готовность оффера HR и найм HR and hiring verified transition Интервью, бюджет и approvals Скомпозировать свидетельства Сертификат допуска оффера morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","HR и найм"],"h":"Интервью, бюджет и approvals · Скомпозировать свидетельства · Сертификат допуска оффера","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат допуска оффера","t":"Доказать готовность оффера","u":"/fts/#case-hr-transition","w":"2026-08-02"},{"b":"Дать агенту проверку процесса HR и найм HR and hiring agent tool Обезличенные факты кандидата Вызвать read-only FTS tools Объяснимое состояние процесса MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","HR и найм"],"h":"Обезличенные факты кандидата · Вызвать read-only FTS tools · Объяснимое состояние процесса","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Объяснимое состояние процесса","t":"Дать агенту проверку процесса","u":"/fts/#case-hr-agent","w":"2026-08-02"},{"b":"Защитить грейдовую матрицу HR и найм HR and hiring regression gate Эталонные профили уровней Генерировать тесты из примеров Контроль случайного сдвига вилок generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","HR и найм"],"h":"Эталонные профили уровней · Генерировать тесты из примеров · Контроль случайного сдвига вилок","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Контроль случайного сдвига вилок","t":"Защитить грейдовую матрицу","u":"/fts/#case-hr-ci","w":"2026-08-02"},{"b":"Рассчитать счёт подписки SaaS и подписки SaaS deterministic calculation План, seats и usage Сложить базу и потребление Invoice subtotal FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","SaaS и подписки"],"h":"План, seats и usage · Сложить базу и потребление · Invoice subtotal","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Invoice subtotal","t":"Рассчитать счёт подписки","u":"/fts/#case-saas-calculation","w":"2026-08-02"},{"b":"Разрешить смену тарифа SaaS и подписки SaaS command eligibility Оплата, лимиты и статус аккаунта Вывести право на upgrade Plan change guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","SaaS и подписки"],"h":"Оплата, лимиты и статус аккаунта · Вывести право на upgrade · Plan change guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Plan change guard","t":"Разрешить смену тарифа","u":"/fts/#case-saas-eligibility","w":"2026-08-02"},{"b":"Проверить prorating SaaS и подписки SaaS executable examples Даты смены и расчётный период Исполнить примеры частичного месяца Тест prorated amount fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","SaaS и подписки"],"h":"Даты смены и расчётный период · Исполнить примеры частичного месяца · Тест prorated amount","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест prorated amount","t":"Проверить prorating","u":"/fts/#case-saas-validation","w":"2026-08-02"},{"b":"Собрать форму workspace SaaS и подписки SaaS generated form Название, регион и владелец Скомпилировать структуру Onboarding form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","SaaS и подписки"],"h":"Название, регион и владелец · Скомпилировать структуру · Onboarding form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Onboarding form","t":"Собрать форму workspace","u":"/fts/#case-saas-form","w":"2026-08-02"},{"b":"Собрать таблицу usage SaaS и подписки SaaS generated table Метрика, квота и фактическое значение Получить колонки и формат чисел Usage table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","SaaS и подписки"],"h":"Метрика, квота и фактическое значение · Получить колонки и формат чисел · Usage table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Usage table","t":"Собрать таблицу usage","u":"/fts/#case-saas-table","w":"2026-08-02"},{"b":"Доказать право на feature SaaS и подписки SaaS verified transition План, entitlement и rollout Скомпозировать типизированные переходы Сертификат feature access morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","SaaS и подписки"],"h":"План, entitlement и rollout · Скомпозировать типизированные переходы · Сертификат feature access","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат feature access","t":"Доказать право на feature","u":"/fts/#case-saas-transition","w":"2026-08-02"},{"b":"Дать агенту расчёт апгрейда SaaS и подписки SaaS agent tool Текущая подписка и новый план Исполнить FTS-утилиту через MCP Точная оценка без вызова billing API MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","SaaS и подписки"],"h":"Текущая подписка и новый план · Исполнить FTS-утилиту через MCP · Точная оценка без вызова billing API","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Точная оценка без вызова billing API","t":"Дать агенту расчёт апгрейда","u":"/fts/#case-saas-agent","w":"2026-08-02"},{"b":"Защитить биллинг SaaS и подписки SaaS regression gate Эталонные аккаунты и периоды Запускать fts test в CI Регресс-гейт счетов generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","SaaS и подписки"],"h":"Эталонные аккаунты и периоды · Запускать fts test в CI · Регресс-гейт счетов","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Регресс-гейт счетов","t":"Защитить биллинг","u":"/fts/#case-saas-ci","w":"2026-08-02"},{"b":"Рассчитать приоритет тикета Поддержка клиентов Customer support deterministic calculation Клиент, влияние и срочность Применить SLA-правила Priority score FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Поддержка клиентов"],"h":"Клиент, влияние и срочность · Применить SLA-правила · Priority score","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Priority score","t":"Рассчитать приоритет тикета","u":"/fts/#case-support-calculation","w":"2026-08-02"},{"b":"Разрешить компенсацию Поддержка клиентов Customer support command eligibility Причина, сумма и история Проверить полномочия и факты Compensation guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Поддержка клиентов"],"h":"Причина, сумма и история · Проверить полномочия и факты · Compensation guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Compensation guard","t":"Разрешить компенсацию","u":"/fts/#case-support-eligibility","w":"2026-08-02"},{"b":"Проверить эскалацию Поддержка клиентов Customer support executable examples Возраст тикета и число ответов Исполнить сценарии SLA Тест маршрутизации fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Поддержка клиентов"],"h":"Возраст тикета и число ответов · Исполнить сценарии SLA · Тест маршрутизации","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест маршрутизации","t":"Проверить эскалацию","u":"/fts/#case-support-validation","w":"2026-08-02"},{"b":"Собрать форму обращения Поддержка клиентов Customer support generated form Тема, канал и вложения Скомпилировать структуру тикета Support form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Поддержка клиентов"],"h":"Тема, канал и вложения · Скомпилировать структуру тикета · Support form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Support form","t":"Собрать форму обращения","u":"/fts/#case-support-form","w":"2026-08-02"},{"b":"Собрать таблицу очереди Поддержка клиентов Customer support generated table Приоритет, владелец и таймер Сгенерировать колонки Agent queue table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Поддержка клиентов"],"h":"Приоритет, владелец и таймер · Сгенерировать колонки · Agent queue table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Agent queue table","t":"Собрать таблицу очереди","u":"/fts/#case-support-table","w":"2026-08-02"},{"b":"Доказать готовность закрытия Поддержка клиентов Customer support verified transition Ответ, подтверждение и отсутствие блокеров Скомпозировать состояния Сертификат закрытия morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Поддержка клиентов"],"h":"Ответ, подтверждение и отсутствие блокеров · Скомпозировать состояния · Сертификат закрытия","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат закрытия","t":"Доказать готовность закрытия","u":"/fts/#case-support-transition","w":"2026-08-02"},{"b":"Дать агенту классификацию Поддержка клиентов Customer support agent tool Текст и структурированные признаки Проверить предложенную категорию утилитой Класс с FTS-диагностикой MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Поддержка клиентов"],"h":"Текст и структурированные признаки · Проверить предложенную категорию утилитой · Класс с FTS-диагностикой","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Класс с FTS-диагностикой","t":"Дать агенту классификацию","u":"/fts/#case-support-agent","w":"2026-08-02"},{"b":"Защитить SLA-матрицу Поддержка клиентов Customer support regression gate Примеры по сегментам Запустить generated node:test CI-гейт приоритетов generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Поддержка клиентов"],"h":"Примеры по сегментам · Запустить generated node:test · CI-гейт приоритетов","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт приоритетов","t":"Защитить SLA-матрицу","u":"/fts/#case-support-ci","w":"2026-08-02"},{"b":"Рассчитать итог курса Образование Education deterministic calculation Работы, веса и посещаемость Вычислить результат и проверить диапазон Итоговый балл FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Образование"],"h":"Работы, веса и посещаемость · Вычислить результат и проверить диапазон · Итоговый балл","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Итоговый балл","t":"Рассчитать итог курса","u":"/fts/#case-education-calculation","w":"2026-08-02"},{"b":"Разрешить переход к экзамену Образование Education command eligibility Модули, практики и дедлайны Вывести допуск из фактов Exam command guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Образование"],"h":"Модули, практики и дедлайны · Вывести допуск из фактов · Exam command guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Exam command guard","t":"Разрешить переход к экзамену","u":"/fts/#case-education-eligibility","w":"2026-08-02"},{"b":"Проверить рубрику оценки Образование Education executable examples Эталонные ответы и баллы Исполнить предметные примеры Тест grading rubric fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Образование"],"h":"Эталонные ответы и баллы · Исполнить предметные примеры · Тест grading rubric","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест grading rubric","t":"Проверить рубрику оценки","u":"/fts/#case-education-validation","w":"2026-08-02"},{"b":"Собрать форму задания Образование Education generated form Условие, критерии и срок Скомпилировать структуру Authoring form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Образование"],"h":"Условие, критерии и срок · Скомпилировать структуру · Authoring form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Authoring form","t":"Собрать форму задания","u":"/fts/#case-education-form","w":"2026-08-02"},{"b":"Собрать таблицу прогресса Образование Education generated table Ученик, модуль и статус Получить колонки из модели Progress table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Образование"],"h":"Ученик, модуль и статус · Получить колонки из модели · Progress table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Progress table","t":"Собрать таблицу прогресса","u":"/fts/#case-education-table","w":"2026-08-02"},{"b":"Доказать завершение программы Образование Education verified transition Пройденные модули и проект Скомпозировать свидетельства Сертификат completion morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Образование"],"h":"Пройденные модули и проект · Скомпозировать свидетельства · Сертификат completion","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат completion","t":"Доказать завершение программы","u":"/fts/#case-education-transition","w":"2026-08-02"},{"b":"Дать агенту проверку ответа Образование Education agent tool Ответ и формальные критерии Передать проверяемую часть в FTS Результат с отделённым объяснением LLM MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Образование"],"h":"Ответ и формальные критерии · Передать проверяемую часть в FTS · Результат с отделённым объяснением LLM","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Результат с отделённым объяснением LLM","t":"Дать агенту проверку ответа","u":"/fts/#case-education-agent","w":"2026-08-02"},{"b":"Защитить правила оценивания Образование Education regression gate Набор контрольных работ Запустить примеры в CI Регресс-гейт оценок generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Образование"],"h":"Набор контрольных работ · Запустить примеры в CI · Регресс-гейт оценок","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Регресс-гейт оценок","t":"Защитить правила оценивания","u":"/fts/#case-education-ci","w":"2026-08-02"},{"b":"Рассчитать цену билета Путешествия Travel deterministic calculation Тариф, багаж и сборы Сложить детерминированные надбавки Final fare FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Путешествия"],"h":"Тариф, багаж и сборы · Сложить детерминированные надбавки · Final fare","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Final fare","t":"Рассчитать цену билета","u":"/fts/#case-travel-calculation","w":"2026-08-02"},{"b":"Разрешить обмен билета Путешествия Travel command eligibility Fare rules, время и сегменты Проверить свидетельства права Exchange guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Путешествия"],"h":"Fare rules, время и сегменты · Проверить свидетельства права · Exchange guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Exchange guard","t":"Разрешить обмен билета","u":"/fts/#case-travel-eligibility","w":"2026-08-02"},{"b":"Проверить нормы багажа Путешествия Travel executable examples Класс, маршрут и вес Исполнить граничные примеры Тест baggage policy fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Путешествия"],"h":"Класс, маршрут и вес · Исполнить граничные примеры · Тест baggage policy","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест baggage policy","t":"Проверить нормы багажа","u":"/fts/#case-travel-validation","w":"2026-08-02"},{"b":"Собрать форму пассажира Путешествия Travel generated form Документ, контакты и preferences Скомпилировать поля Booking form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Путешествия"],"h":"Документ, контакты и preferences · Скомпилировать поля · Booking form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Booking form","t":"Собрать форму пассажира","u":"/fts/#case-travel-form","w":"2026-08-02"},{"b":"Собрать таблицу сегментов Путешествия Travel generated table Рейс, время и статус Сгенерировать колонки itinerary Trip table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Путешествия"],"h":"Рейс, время и статус · Сгенерировать колонки itinerary · Trip table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Trip table","t":"Собрать таблицу сегментов","u":"/fts/#case-travel-table","w":"2026-08-02"},{"b":"Доказать готовность к check-in Путешествия Travel verified transition Документы, оплата и открытое окно Скомпозировать состояния Сертификат check-in morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Путешествия"],"h":"Документы, оплата и открытое окно · Скомпозировать состояния · Сертификат check-in","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат check-in","t":"Доказать готовность к check-in","u":"/fts/#case-travel-transition","w":"2026-08-02"},{"b":"Дать агенту расчёт обмена Путешествия Travel agent tool Снимок билета и политика Исполнить FTS без брони Предварительная сумма и причины MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Путешествия"],"h":"Снимок билета и политика · Исполнить FTS без брони · Предварительная сумма и причины","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Предварительная сумма и причины","t":"Дать агенту расчёт обмена","u":"/fts/#case-travel-agent","w":"2026-08-02"},{"b":"Защитить тарифные правила Путешествия Travel regression gate Эталонные маршруты Генерировать тесты из FTS CI-гейт fare rules generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Путешествия"],"h":"Эталонные маршруты · Генерировать тесты из FTS · CI-гейт fare rules","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт fare rules","t":"Защитить тарифные правила","u":"/fts/#case-travel-ci","w":"2026-08-02"},{"b":"Рассчитать стоимость проживания Отели Hospitality deterministic calculation Ночи, тариф и услуги Применить rate rules Stay total FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Отели"],"h":"Ночи, тариф и услуги · Применить rate rules · Stay total","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Stay total","t":"Рассчитать стоимость проживания","u":"/fts/#case-hospitality-calculation","w":"2026-08-02"},{"b":"Разрешить ранний заезд Отели Hospitality command eligibility Готовность номера и тариф Проверить условия команды Early check-in guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Отели"],"h":"Готовность номера и тариф · Проверить условия команды · Early check-in guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Early check-in guard","t":"Разрешить ранний заезд","u":"/fts/#case-hospitality-eligibility","w":"2026-08-02"},{"b":"Проверить отмену брони Отели Hospitality executable examples Тариф и время до заезда Исполнить сценарии штрафов Тест cancellation policy fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Отели"],"h":"Тариф и время до заезда · Исполнить сценарии штрафов · Тест cancellation policy","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест cancellation policy","t":"Проверить отмену брони","u":"/fts/#case-hospitality-validation","w":"2026-08-02"},{"b":"Собрать форму бронирования Отели Hospitality generated form Гость, даты и номер Скомпилировать структуру брони Booking form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Отели"],"h":"Гость, даты и номер · Скомпилировать структуру брони · Booking form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Booking form","t":"Собрать форму бронирования","u":"/fts/#case-hospitality-form","w":"2026-08-02"},{"b":"Собрать таблицу номерного фонда Отели Hospitality generated table Номер, уборка и occupancy Получить колонки Front desk table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Отели"],"h":"Номер, уборка и occupancy · Получить колонки · Front desk table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Front desk table","t":"Собрать таблицу номерного фонда","u":"/fts/#case-hospitality-table","w":"2026-08-02"},{"b":"Доказать готовность номера Отели Hospitality verified transition Уборка, инспекция и блокировки Скомпозировать состояния Сертификат ready room morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Отели"],"h":"Уборка, инспекция и блокировки · Скомпозировать состояния · Сертификат ready room","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат ready room","t":"Доказать готовность номера","u":"/fts/#case-hospitality-transition","w":"2026-08-02"},{"b":"Дать агенту проверку брони Отели Hospitality agent tool Даты и тарифные факты Вызвать FTS через MCP Структурированная проверка MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Отели"],"h":"Даты и тарифные факты · Вызвать FTS через MCP · Структурированная проверка","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Структурированная проверка","t":"Дать агенту проверку брони","u":"/fts/#case-hospitality-agent","w":"2026-08-02"},{"b":"Защитить rate plan Отели Hospitality regression gate Примеры сезонов и дней Запустить fts test CI-гейт цен generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Отели"],"h":"Примеры сезонов и дней · Запустить fts test · CI-гейт цен","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт цен","t":"Защитить rate plan","u":"/fts/#case-hospitality-ci","w":"2026-08-02"},{"b":"Рассчитать арендный платёж Недвижимость Real estate deterministic calculation Ставка, площадь и индексация Вычислить сумму по договорным правилам Monthly rent FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Недвижимость"],"h":"Ставка, площадь и индексация · Вычислить сумму по договорным правилам · Monthly rent","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Monthly rent","t":"Рассчитать арендный платёж","u":"/fts/#case-real-estate-calculation","w":"2026-08-02"},{"b":"Разрешить публикацию объявления Недвижимость Real estate command eligibility Право, модерация и обязательные поля Проверить свидетельства Listing guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Недвижимость"],"h":"Право, модерация и обязательные поля · Проверить свидетельства · Listing guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Listing guard","t":"Разрешить публикацию объявления","u":"/fts/#case-real-estate-eligibility","w":"2026-08-02"},{"b":"Проверить ипотечный платёж Недвижимость Real estate executable examples Ставка, срок и сумма Исполнить контрольные примеры Тест калькулятора fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Недвижимость"],"h":"Ставка, срок и сумма · Исполнить контрольные примеры · Тест калькулятора","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест калькулятора","t":"Проверить ипотечный платёж","u":"/fts/#case-real-estate-validation","w":"2026-08-02"},{"b":"Собрать форму объекта Недвижимость Real estate generated form Адрес, площадь и характеристики Скомпилировать структуру Property form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Недвижимость"],"h":"Адрес, площадь и характеристики · Скомпилировать структуру · Property form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Property form","t":"Собрать форму объекта","u":"/fts/#case-real-estate-form","w":"2026-08-02"},{"b":"Собрать таблицу показов Недвижимость Real estate generated table Объект, клиент и слот Сгенерировать колонки Viewing schedule table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Недвижимость"],"h":"Объект, клиент и слот · Сгенерировать колонки · Viewing schedule table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Viewing schedule table","t":"Собрать таблицу показов","u":"/fts/#case-real-estate-table","w":"2026-08-02"},{"b":"Доказать готовность сделки Недвижимость Real estate verified transition Проверка титула, договор и оплата Скомпозировать этапы Сертификат closing readiness morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Недвижимость"],"h":"Проверка титула, договор и оплата · Скомпозировать этапы · Сертификат closing readiness","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Сертификат closing readiness","t":"Доказать готовность сделки","u":"/fts/#case-real-estate-transition","w":"2026-08-02"},{"b":"Дать агенту проверку объявления Недвижимость Real estate agent tool Факты объекта Ограничить вывод FTS-валидатором Список детерминированных нарушений MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Недвижимость"],"h":"Факты объекта · Ограничить вывод FTS-валидатором · Список детерминированных нарушений","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Список детерминированных нарушений","t":"Дать агенту проверку объявления","u":"/fts/#case-real-estate-agent","w":"2026-08-02"},{"b":"Защитить комиссионные правила Недвижимость Real estate regression gate Эталонные сделки Сгенерировать node:test CI-гейт комиссии generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Недвижимость"],"h":"Эталонные сделки · Сгенерировать node:test · CI-гейт комиссии","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт комиссии","t":"Защитить комиссионные правила","u":"/fts/#case-real-estate-ci","w":"2026-08-02"},{"b":"Рассчитать потребность в материале Производство Manufacturing deterministic calculation BOM, партия и отход Вычислить количество по правилам Material requirement FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Производство"],"h":"BOM, партия и отход · Вычислить количество по правилам · Material requirement","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Material requirement","t":"Рассчитать потребность в материале","u":"/fts/#case-manufacturing-calculation","w":"2026-08-02"},{"b":"Разрешить запуск партии Производство Manufacturing command eligibility Материал, оснастка и допуски Проверить факты готовности Production command guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Производство"],"h":"Материал, оснастка и допуски · Проверить факты готовности · Production command guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Production command guard","t":"Разрешить запуск партии","u":"/fts/#case-manufacturing-eligibility","w":"2026-08-02"},{"b":"Проверить контрольные пределы Производство Manufacturing executable examples Измерения и спецификация Исполнить граничные примеры Quality property tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Производство"],"h":"Измерения и спецификация · Исполнить граничные примеры · Quality property tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Quality property tests","t":"Проверить контрольные пределы","u":"/fts/#case-manufacturing-validation","w":"2026-08-02"},{"b":"Собрать форму техоперации Производство Manufacturing generated form Параметры процесса Скомпилировать структуру Operator form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Производство"],"h":"Параметры процесса · Скомпилировать структуру · Operator form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Operator form","t":"Собрать форму техоперации","u":"/fts/#case-manufacturing-form","w":"2026-08-02"},{"b":"Собрать таблицу OEE Производство Manufacturing generated table Линия, простой и выпуск Получить колонки Operations table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Производство"],"h":"Линия, простой и выпуск · Получить колонки · Operations table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Operations table","t":"Собрать таблицу OEE","u":"/fts/#case-manufacturing-table","w":"2026-08-02"},{"b":"Доказать выпуск партии Производство Manufacturing verified transition Контроль, отклонения и подписи Скомпозировать состояния Release certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Производство"],"h":"Контроль, отклонения и подписи · Скомпозировать состояния · Release certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Release certificate","t":"Доказать выпуск партии","u":"/fts/#case-manufacturing-transition","w":"2026-08-02"},{"b":"Дать агенту проверку запуска Производство Manufacturing agent tool Снимок производственных фактов Вызвать read-only FTS Диагностика готовности MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Производство"],"h":"Снимок производственных фактов · Вызвать read-only FTS · Диагностика готовности","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Диагностика готовности","t":"Дать агенту проверку запуска","u":"/fts/#case-manufacturing-agent","w":"2026-08-02"},{"b":"Защитить технологические правила Производство Manufacturing regression gate Golden batch примеры Запускать fts test в CI Гейт изменения процесса generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Производство"],"h":"Golden batch примеры · Запускать fts test в CI · Гейт изменения процесса","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Гейт изменения процесса","t":"Защитить технологические правила","u":"/fts/#case-manufacturing-ci","w":"2026-08-02"},{"b":"Рассчитать тариф потребления Энергетика Energy deterministic calculation Зона, период и объём Применить ступени тарифа Charge amount FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Энергетика"],"h":"Зона, период и объём · Применить ступени тарифа · Charge amount","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Charge amount","t":"Рассчитать тариф потребления","u":"/fts/#case-energy-calculation","w":"2026-08-02"},{"b":"Разрешить подключение объекта Энергетика Energy command eligibility Техусловия, договор и осмотр Проверить свидетельства Connection guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Энергетика"],"h":"Техусловия, договор и осмотр · Проверить свидетельства · Connection guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Connection guard","t":"Разрешить подключение объекта","u":"/fts/#case-energy-eligibility","w":"2026-08-02"},{"b":"Проверить пороги нагрузки Энергетика Energy executable examples Мощность и режим Исполнить граничные сценарии Тест защитных порогов fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Энергетика"],"h":"Мощность и режим · Исполнить граничные сценарии · Тест защитных порогов","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест защитных порогов","t":"Проверить пороги нагрузки","u":"/fts/#case-energy-validation","w":"2026-08-02"},{"b":"Собрать форму показаний Энергетика Energy generated form Счётчик, дата и значение Скомпилировать поля Meter reading form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Энергетика"],"h":"Счётчик, дата и значение · Скомпилировать поля · Meter reading form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Meter reading form","t":"Собрать форму показаний","u":"/fts/#case-energy-form","w":"2026-08-02"},{"b":"Собрать таблицу аварий Энергетика Energy generated table Узел, влияние и статус Сгенерировать колонки Incident table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Энергетика"],"h":"Узел, влияние и статус · Сгенерировать колонки · Incident table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Incident table","t":"Собрать таблицу аварий","u":"/fts/#case-energy-table","w":"2026-08-02"},{"b":"Доказать готовность включения Энергетика Energy verified transition Испытания, наряд и блокировки Скомпозировать состояния Switching certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Энергетика"],"h":"Испытания, наряд и блокировки · Скомпозировать состояния · Switching certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Switching certificate","t":"Доказать готовность включения","u":"/fts/#case-energy-transition","w":"2026-08-02"},{"b":"Дать агенту расчёт тарифа Энергетика Energy agent tool Потребление без управляющего доступа Исполнить FTS-утилиту Объяснимый расчёт MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Энергетика"],"h":"Потребление без управляющего доступа · Исполнить FTS-утилиту · Объяснимый расчёт","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Объяснимый расчёт","t":"Дать агенту расчёт тарифа","u":"/fts/#case-energy-agent","w":"2026-08-02"},{"b":"Защитить тарифные ступени Энергетика Energy regression gate Эталонные профили Генерировать тесты CI-гейт начислений generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Энергетика"],"h":"Эталонные профили · Генерировать тесты · CI-гейт начислений","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт начислений","t":"Защитить тарифные ступени","u":"/fts/#case-energy-ci","w":"2026-08-02"},{"b":"Рассчитать счёт абонента Телеком Telecom deterministic calculation План, минуты и трафик Применить квоты и overage Billing total FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Телеком"],"h":"План, минуты и трафик · Применить квоты и overage · Billing total","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Billing total","t":"Рассчитать счёт абонента","u":"/fts/#case-telecom-calculation","w":"2026-08-02"},{"b":"Разрешить перенос номера Телеком Telecom command eligibility Идентификация, долг и окно Проверить условия MNP Porting guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Телеком"],"h":"Идентификация, долг и окно · Проверить условия MNP · Porting guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Porting guard","t":"Разрешить перенос номера","u":"/fts/#case-telecom-eligibility","w":"2026-08-02"},{"b":"Проверить fair-use Телеком Telecom executable examples Потребление и пороги Исполнить сценарии ограничения Тест policy fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Телеком"],"h":"Потребление и пороги · Исполнить сценарии ограничения · Тест policy","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Тест policy","t":"Проверить fair-use","u":"/fts/#case-telecom-validation","w":"2026-08-02"},{"b":"Собрать форму подключения Телеком Telecom generated form Абонент, адрес и тариф Скомпилировать структуру Activation form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Телеком"],"h":"Абонент, адрес и тариф · Скомпилировать структуру · Activation form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Activation form","t":"Собрать форму подключения","u":"/fts/#case-telecom-form","w":"2026-08-02"},{"b":"Собрать таблицу сети Телеком Telecom generated table Узел, сигнал и статус Получить колонки NOC table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Телеком"],"h":"Узел, сигнал и статус · Получить колонки · NOC table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"NOC table","t":"Собрать таблицу сети","u":"/fts/#case-telecom-table","w":"2026-08-02"},{"b":"Доказать готовность активации Телеком Telecom verified transition SIM, договор и provisioning Скомпозировать этапы Activation certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Телеком"],"h":"SIM, договор и provisioning · Скомпозировать этапы · Activation certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Activation certificate","t":"Доказать готовность активации","u":"/fts/#case-telecom-transition","w":"2026-08-02"},{"b":"Дать агенту подбор тарифа Телеком Telecom agent tool Профиль потребления Исполнить детерминированную утилиту Структурированная рекомендация MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Телеком"],"h":"Профиль потребления · Исполнить детерминированную утилиту · Структурированная рекомендация","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Структурированная рекомендация","t":"Дать агенту подбор тарифа","u":"/fts/#case-telecom-agent","w":"2026-08-02"},{"b":"Защитить биллинговые квоты Телеком Telecom regression gate Эталонные CDR-наборы Запустить fts test CI-гейт начислений generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Телеком"],"h":"Эталонные CDR-наборы · Запустить fts test · CI-гейт начислений","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт начислений","t":"Защитить биллинговые квоты","u":"/fts/#case-telecom-ci","w":"2026-08-02"},{"b":"Рассчитать выплату автору Медиа и подписки Media deterministic calculation Просмотры, территория и ставка Применить royalty rules Royalty amount FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Медиа и подписки"],"h":"Просмотры, территория и ставка · Применить royalty rules · Royalty amount","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Royalty amount","t":"Рассчитать выплату автору","u":"/fts/#case-media-calculation","w":"2026-08-02"},{"b":"Разрешить показ контента Медиа и подписки Media command eligibility Лицензия, регион и возраст Проверить права доступа Playback guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Медиа и подписки"],"h":"Лицензия, регион и возраст · Проверить права доступа · Playback guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Playback guard","t":"Разрешить показ контента","u":"/fts/#case-media-eligibility","w":"2026-08-02"},{"b":"Проверить окна лицензии Медиа и подписки Media executable examples Начало, конец и территория Исполнить граничные даты Rights tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Медиа и подписки"],"h":"Начало, конец и территория · Исполнить граничные даты · Rights tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Rights tests","t":"Проверить окна лицензии","u":"/fts/#case-media-validation","w":"2026-08-02"},{"b":"Собрать форму публикации Медиа и подписки Media generated form Метаданные и права Скомпилировать структуру Editorial form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Медиа и подписки"],"h":"Метаданные и права · Скомпилировать структуру · Editorial form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Editorial form","t":"Собрать форму публикации","u":"/fts/#case-media-form","w":"2026-08-02"},{"b":"Собрать таблицу каталога Медиа и подписки Media generated table Тайтл, окно и статус Сгенерировать колонки Catalog table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Медиа и подписки"],"h":"Тайтл, окно и статус · Сгенерировать колонки · Catalog table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Catalog table","t":"Собрать таблицу каталога","u":"/fts/#case-media-table","w":"2026-08-02"},{"b":"Доказать готовность релиза Медиа и подписки Media verified transition QC, права и расписание Скомпозировать состояния Release certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Медиа и подписки"],"h":"QC, права и расписание · Скомпозировать состояния · Release certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Release certificate","t":"Доказать готовность релиза","u":"/fts/#case-media-transition","w":"2026-08-02"},{"b":"Дать агенту проверку прав Медиа и подписки Media agent tool Контент и контекст пользователя Вызвать FTS до playback API Детерминированное решение MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Медиа и подписки"],"h":"Контент и контекст пользователя · Вызвать FTS до playback API · Детерминированное решение","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Детерминированное решение","t":"Дать агенту проверку прав","u":"/fts/#case-media-agent","w":"2026-08-02"},{"b":"Защитить royalty rules Медиа и подписки Media regression gate Эталонные отчёты Сгенерировать тесты CI-гейт выплат generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Медиа и подписки"],"h":"Эталонные отчёты · Сгенерировать тесты · CI-гейт выплат","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт выплат","t":"Защитить royalty rules","u":"/fts/#case-media-ci","w":"2026-08-02"},{"b":"Рассчитать ставку кампании Рекламные платформы Advertising deterministic calculation Аукцион, сегмент и лимит Применить bidding rules Bid amount FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Рекламные платформы"],"h":"Аукцион, сегмент и лимит · Применить bidding rules · Bid amount","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Bid amount","t":"Рассчитать ставку кампании","u":"/fts/#case-advertising-calculation","w":"2026-08-02"},{"b":"Разрешить запуск креатива Рекламные платформы Advertising command eligibility Модерация, бюджет и права Проверить свидетельства Campaign guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Рекламные платформы"],"h":"Модерация, бюджет и права · Проверить свидетельства · Campaign guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Campaign guard","t":"Разрешить запуск креатива","u":"/fts/#case-advertising-eligibility","w":"2026-08-02"},{"b":"Проверить frequency cap Рекламные платформы Advertising executable examples Показы, окно и пользователь Исполнить граничные примеры Cap tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Рекламные платформы"],"h":"Показы, окно и пользователь · Исполнить граничные примеры · Cap tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Cap tests","t":"Проверить frequency cap","u":"/fts/#case-advertising-validation","w":"2026-08-02"},{"b":"Собрать форму кампании Рекламные платформы Advertising generated form Цель, аудитория и бюджет Скомпилировать структуру Campaign form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Рекламные платформы"],"h":"Цель, аудитория и бюджет · Скомпилировать структуру · Campaign form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Campaign form","t":"Собрать форму кампании","u":"/fts/#case-advertising-form","w":"2026-08-02"},{"b":"Собрать таблицу метрик Рекламные платформы Advertising generated table Показы, клики и стоимость Получить колонки Reporting table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Рекламные платформы"],"h":"Показы, клики и стоимость · Получить колонки · Reporting table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Reporting table","t":"Собрать таблицу метрик","u":"/fts/#case-advertising-table","w":"2026-08-02"},{"b":"Доказать готовность запуска Рекламные платформы Advertising verified transition Оплата, модерация и расписание Скомпозировать этапы Launch certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Рекламные платформы"],"h":"Оплата, модерация и расписание · Скомпозировать этапы · Launch certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Launch certificate","t":"Доказать готовность запуска","u":"/fts/#case-advertising-transition","w":"2026-08-02"},{"b":"Дать агенту preflight Рекламные платформы Advertising agent tool Настройки кампании Вызвать FTS MCP Структурированный список блокеров MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Рекламные платформы"],"h":"Настройки кампании · Вызвать FTS MCP · Структурированный список блокеров","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Структурированный список блокеров","t":"Дать агенту preflight","u":"/fts/#case-advertising-agent","w":"2026-08-02"},{"b":"Защитить правила бюджета Рекламные платформы Advertising regression gate Эталонные кампании Запустить properties в CI Spend regression gate generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Рекламные платформы"],"h":"Эталонные кампании · Запустить properties в CI · Spend regression gate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Spend regression gate","t":"Защитить правила бюджета","u":"/fts/#case-advertising-ci","w":"2026-08-02"},{"b":"Рассчитать размер пошлины Государственные услуги Public services deterministic calculation Услуга, льгота и канал Применить утверждённые ставки Fee amount FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Государственные услуги"],"h":"Услуга, льгота и канал · Применить утверждённые ставки · Fee amount","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Fee amount","t":"Рассчитать размер пошлины","u":"/fts/#case-public-services-calculation","w":"2026-08-02"},{"b":"Разрешить подачу заявления Государственные услуги Public services command eligibility Личность, документы и срок Проверить свидетельства Submission guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Государственные услуги"],"h":"Личность, документы и срок · Проверить свидетельства · Submission guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Submission guard","t":"Разрешить подачу заявления","u":"/fts/#case-public-services-eligibility","w":"2026-08-02"},{"b":"Проверить сроки услуги Государственные услуги Public services executable examples Тип заявления и календарь Исполнить SLA-примеры Deadline tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Государственные услуги"],"h":"Тип заявления и календарь · Исполнить SLA-примеры · Deadline tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Deadline tests","t":"Проверить сроки услуги","u":"/fts/#case-public-services-validation","w":"2026-08-02"},{"b":"Собрать форму заявления Государственные услуги Public services generated form Структура государственной услуги Скомпилировать поля Accessible service form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Государственные услуги"],"h":"Структура государственной услуги · Скомпилировать поля · Accessible service form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Accessible service form","t":"Собрать форму заявления","u":"/fts/#case-public-services-form","w":"2026-08-02"},{"b":"Собрать таблицу обращений Государственные услуги Public services generated table Номер, этап и исполнитель Сгенерировать колонки Back-office table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Государственные услуги"],"h":"Номер, этап и исполнитель · Сгенерировать колонки · Back-office table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Back-office table","t":"Собрать таблицу обращений","u":"/fts/#case-public-services-table","w":"2026-08-02"},{"b":"Доказать готовность результата Государственные услуги Public services verified transition Проверки, подпись и доставка Скомпозировать состояния Certificate of readiness morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Государственные услуги"],"h":"Проверки, подпись и доставка · Скомпозировать состояния · Certificate of readiness","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Certificate of readiness","t":"Доказать готовность результата","u":"/fts/#case-public-services-transition","w":"2026-08-02"},{"b":"Дать агенту проверку комплекта Государственные услуги Public services agent tool Перечень документов Ограничить ответ FTS-правилами Диагностика недостающих данных MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Государственные услуги"],"h":"Перечень документов · Ограничить ответ FTS-правилами · Диагностика недостающих данных","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Диагностика недостающих данных","t":"Дать агенту проверку комплекта","u":"/fts/#case-public-services-agent","w":"2026-08-02"},{"b":"Защитить льготные правила Государственные услуги Public services regression gate Эталонные заявители Запустить примеры в CI Policy regression gate generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Государственные услуги"],"h":"Эталонные заявители · Запустить примеры в CI · Policy regression gate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Policy regression gate","t":"Защитить льготные правила","u":"/fts/#case-public-services-ci","w":"2026-08-02"},{"b":"Рассчитать риск доступа Информационная безопасность Information security deterministic calculation Актив, роль и контекст Применить прозрачные коэффициенты Risk score FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Информационная безопасность"],"h":"Актив, роль и контекст · Применить прозрачные коэффициенты · Risk score","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Risk score","t":"Рассчитать риск доступа","u":"/fts/#case-security-calculation","w":"2026-08-02"},{"b":"Разрешить выдачу секрета Информационная безопасность Information security command eligibility MFA, устройство и approval Проверить свидетельства Secret access guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Информационная безопасность"],"h":"MFA, устройство и approval · Проверить свидетельства · Secret access guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Secret access guard","t":"Разрешить выдачу секрета","u":"/fts/#case-security-eligibility","w":"2026-08-02"},{"b":"Проверить политику пароля Информационная безопасность Information security executable examples Длина и признаки Исполнить positive/negative examples Policy tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Информационная безопасность"],"h":"Длина и признаки · Исполнить positive/negative examples · Policy tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Policy tests","t":"Проверить политику пароля","u":"/fts/#case-security-validation","w":"2026-08-02"},{"b":"Собрать форму исключения Информационная безопасность Information security generated form Риск, срок и владелец Скомпилировать структуру Exception form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Информационная безопасность"],"h":"Риск, срок и владелец · Скомпилировать структуру · Exception form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Exception form","t":"Собрать форму исключения","u":"/fts/#case-security-form","w":"2026-08-02"},{"b":"Собрать таблицу уязвимостей Информационная безопасность Information security generated table CVE, критичность и SLA Получить колонки Vulnerability table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Информационная безопасность"],"h":"CVE, критичность и SLA · Получить колонки · Vulnerability table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Vulnerability table","t":"Собрать таблицу уязвимостей","u":"/fts/#case-security-table","w":"2026-08-02"},{"b":"Доказать право privileged access Информационная безопасность Information security verified transition Запрос, согласования и окно Скомпозировать состояния Access certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Информационная безопасность"],"h":"Запрос, согласования и окно · Скомпозировать состояния · Access certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Access certificate","t":"Доказать право privileged access","u":"/fts/#case-security-transition","w":"2026-08-02"},{"b":"Дать агенту policy check Информационная безопасность Information security agent tool Предлагаемое действие и факты Вызвать fts_verify перед эффектом Проверяемое разрешение или отказ MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Информационная безопасность"],"h":"Предлагаемое действие и факты · Вызвать fts_verify перед эффектом · Проверяемое разрешение или отказ","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Проверяемое разрешение или отказ","t":"Дать агенту policy check","u":"/fts/#case-security-agent","w":"2026-08-02"},{"b":"Защитить access policy Информационная безопасность Information security regression gate Матрица ролей и контекстов Запускать FTS tests в CI Security regression gate generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Информационная безопасность"],"h":"Матрица ролей и контекстов · Запускать FTS tests в CI · Security regression gate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Security regression gate","t":"Защитить access policy","u":"/fts/#case-security-ci","w":"2026-08-02"},{"b":"Рассчитать бюджет ошибок DevOps и SRE DevOps and SRE deterministic calculation SLO, окно и неуспешные запросы Вычислить остаток бюджета Error budget FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","DevOps и SRE"],"h":"SLO, окно и неуспешные запросы · Вычислить остаток бюджета · Error budget","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Error budget","t":"Рассчитать бюджет ошибок","u":"/fts/#case-devops-calculation","w":"2026-08-02"},{"b":"Разрешить production deploy DevOps и SRE DevOps and SRE command eligibility Тесты, change window и approvals Проверить release evidence Deploy guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","DevOps и SRE"],"h":"Тесты, change window и approvals · Проверить release evidence · Deploy guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Deploy guard","t":"Разрешить production deploy","u":"/fts/#case-devops-eligibility","w":"2026-08-02"},{"b":"Проверить пороги алерта DevOps и SRE DevOps and SRE executable examples SLI и длительность окна Исполнить сценарии burn rate Alert policy tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","DevOps и SRE"],"h":"SLI и длительность окна · Исполнить сценарии burn rate · Alert policy tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Alert policy tests","t":"Проверить пороги алерта","u":"/fts/#case-devops-validation","w":"2026-08-02"},{"b":"Собрать форму change request DevOps и SRE DevOps and SRE generated form Сервис, риск и rollback Скомпилировать структуру Change form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","DevOps и SRE"],"h":"Сервис, риск и rollback · Скомпилировать структуру · Change form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Change form","t":"Собрать форму change request","u":"/fts/#case-devops-form","w":"2026-08-02"},{"b":"Собрать таблицу инцидентов DevOps и SRE DevOps and SRE generated table Severity, owner и время Сгенерировать колонки Incident table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","DevOps и SRE"],"h":"Severity, owner и время · Сгенерировать колонки · Incident table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Incident table","t":"Собрать таблицу инцидентов","u":"/fts/#case-devops-table","w":"2026-08-02"},{"b":"Доказать готовность релиза DevOps и SRE DevOps and SRE verified transition Артефакт, тесты и подписи Скомпозировать состояния Release certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","DevOps и SRE"],"h":"Артефакт, тесты и подписи · Скомпозировать состояния · Release certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Release certificate","t":"Доказать готовность релиза","u":"/fts/#case-devops-transition","w":"2026-08-02"},{"b":"Дать агенту pre-deploy check DevOps и SRE DevOps and SRE agent tool Снимок CI и окружения Потребовать fts_verify до команды Agent gate перед деплоем MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","DevOps и SRE"],"h":"Снимок CI и окружения · Потребовать fts_verify до команды · Agent gate перед деплоем","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Agent gate перед деплоем","t":"Дать агенту pre-deploy check","u":"/fts/#case-devops-agent","w":"2026-08-02"},{"b":"Защитить SLO-политику DevOps и SRE DevOps and SRE regression gate Эталонные временные окна Запускать generated tests CI-гейт observability rules generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","DevOps и SRE"],"h":"Эталонные временные окна · Запускать generated tests · CI-гейт observability rules","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт observability rules","t":"Защитить SLO-политику","u":"/fts/#case-devops-ci","w":"2026-08-02"},{"b":"Рассчитать норму полива Сельское хозяйство Agriculture deterministic calculation Культура, почва и влажность Применить агрономические правила Water amount FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Сельское хозяйство"],"h":"Культура, почва и влажность · Применить агрономические правила · Water amount","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Water amount","t":"Рассчитать норму полива","u":"/fts/#case-agriculture-calculation","w":"2026-08-02"},{"b":"Разрешить обработку поля Сельское хозяйство Agriculture command eligibility Погода, препарат и интервал Проверить свидетельства Treatment guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Сельское хозяйство"],"h":"Погода, препарат и интервал · Проверить свидетельства · Treatment guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Treatment guard","t":"Разрешить обработку поля","u":"/fts/#case-agriculture-eligibility","w":"2026-08-02"},{"b":"Проверить нормы внесения Сельское хозяйство Agriculture executable examples Площадь и дозировка Исполнить граничные примеры Application tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Сельское хозяйство"],"h":"Площадь и дозировка · Исполнить граничные примеры · Application tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Application tests","t":"Проверить нормы внесения","u":"/fts/#case-agriculture-validation","w":"2026-08-02"},{"b":"Собрать форму осмотра Сельское хозяйство Agriculture generated form Поле, культура и наблюдения Скомпилировать структуру Mobile inspection form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Сельское хозяйство"],"h":"Поле, культура и наблюдения · Скомпилировать структуру · Mobile inspection form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Mobile inspection form","t":"Собрать форму осмотра","u":"/fts/#case-agriculture-form","w":"2026-08-02"},{"b":"Собрать таблицу участков Сельское хозяйство Agriculture generated table Поле, фаза и влажность Получить колонки Agronomy table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Сельское хозяйство"],"h":"Поле, фаза и влажность · Получить колонки · Agronomy table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Agronomy table","t":"Собрать таблицу участков","u":"/fts/#case-agriculture-table","w":"2026-08-02"},{"b":"Доказать готовность уборки Сельское хозяйство Agriculture verified transition Влажность, зрелость и техника Скомпозировать состояния Harvest certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Сельское хозяйство"],"h":"Влажность, зрелость и техника · Скомпозировать состояния · Harvest certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Harvest certificate","t":"Доказать готовность уборки","u":"/fts/#case-agriculture-transition","w":"2026-08-02"},{"b":"Дать агенту расчёт нормы Сельское хозяйство Agriculture agent tool Измеренные факты Вызвать FTS-утилиту Объяснимый расчёт без управления техникой MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Сельское хозяйство"],"h":"Измеренные факты · Вызвать FTS-утилиту · Объяснимый расчёт без управления техникой","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Объяснимый расчёт без управления техникой","t":"Дать агенту расчёт нормы","u":"/fts/#case-agriculture-agent","w":"2026-08-02"},{"b":"Защитить агрономические правила Сельское хозяйство Agriculture regression gate Эталонные участки Запускать примеры в CI Policy regression gate generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Сельское хозяйство"],"h":"Эталонные участки · Запускать примеры в CI · Policy regression gate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Policy regression gate","t":"Защитить агрономические правила","u":"/fts/#case-agriculture-ci","w":"2026-08-02"},{"b":"Рассчитать срок хранения Legal и compliance Legal and compliance deterministic calculation Тип записи, юрисдикция и событие Применить retention rules Retention date FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Legal и compliance"],"h":"Тип записи, юрисдикция и событие · Применить retention rules · Retention date","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Retention date","t":"Рассчитать срок хранения","u":"/fts/#case-legal-calculation","w":"2026-08-02"},{"b":"Разрешить обработку данных Legal и compliance Legal and compliance command eligibility Цель, основание и согласие Проверить юридические свидетельства Processing guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Legal и compliance"],"h":"Цель, основание и согласие · Проверить юридические свидетельства · Processing guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Processing guard","t":"Разрешить обработку данных","u":"/fts/#case-legal-eligibility","w":"2026-08-02"},{"b":"Проверить договорный лимит Legal и compliance Legal and compliance executable examples Сумма и полномочия подписанта Исполнить граничные примеры Authority tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Legal и compliance"],"h":"Сумма и полномочия подписанта · Исполнить граничные примеры · Authority tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Authority tests","t":"Проверить договорный лимит","u":"/fts/#case-legal-validation","w":"2026-08-02"},{"b":"Собрать форму согласования Legal и compliance Legal and compliance generated form Контрагент, риск и условия Скомпилировать структуру Approval form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Legal и compliance"],"h":"Контрагент, риск и условия · Скомпилировать структуру · Approval form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Approval form","t":"Собрать форму согласования","u":"/fts/#case-legal-form","w":"2026-08-02"},{"b":"Собрать таблицу обязательств Legal и compliance Legal and compliance generated table Пункт, срок и владелец Сгенерировать колонки Obligations table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Legal и compliance"],"h":"Пункт, срок и владелец · Сгенерировать колонки · Obligations table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Obligations table","t":"Собрать таблицу обязательств","u":"/fts/#case-legal-table","w":"2026-08-02"},{"b":"Доказать готовность договора Legal и compliance Legal and compliance verified transition Review, approvals и подпись Скомпозировать состояния Contract readiness certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Legal и compliance"],"h":"Review, approvals и подпись · Скомпозировать состояния · Contract readiness certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Contract readiness certificate","t":"Доказать готовность договора","u":"/fts/#case-legal-transition","w":"2026-08-02"},{"b":"Дать агенту compliance check Legal и compliance Legal and compliance agent tool Структурированные факты операции Вызвать FTS MCP и сохранить diagnostics Проверяемый pre-check, не юридическое заключение MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Legal и compliance"],"h":"Структурированные факты операции · Вызвать FTS MCP и сохранить diagnostics · Проверяемый pre-check, не юридическое заключение","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Проверяемый pre-check, не юридическое заключение","t":"Дать агенту compliance check","u":"/fts/#case-legal-agent","w":"2026-08-02"},{"b":"Защитить retention policy Legal и compliance Legal and compliance regression gate Эталонные типы документов Запускать тесты в CI Policy regression gate generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Legal и compliance"],"h":"Эталонные типы документов · Запускать тесты в CI · Policy regression gate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Policy regression gate","t":"Защитить retention policy","u":"/fts/#case-legal-ci","w":"2026-08-02"},{"b":"Рассчитать резерв товара E-commerce operations E-commerce operations deterministic calculation Спрос, остаток и safety stock Вычислить доступное количество Available-to-promise FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","E-commerce operations"],"h":"Спрос, остаток и safety stock · Вычислить доступное количество · Available-to-promise","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Available-to-promise","t":"Рассчитать резерв товара","u":"/fts/#case-ecommerce-ops-calculation","w":"2026-08-02"},{"b":"Разрешить замену позиции E-commerce operations E-commerce operations command eligibility Наличие, цена и согласие Проверить условия замены Substitution guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","E-commerce operations"],"h":"Наличие, цена и согласие · Проверить условия замены · Substitution guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Substitution guard","t":"Разрешить замену позиции","u":"/fts/#case-ecommerce-ops-eligibility","w":"2026-08-02"},{"b":"Проверить минимальный заказ E-commerce operations E-commerce operations executable examples Корзина и зона Исполнить граничные примеры Minimum order tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","E-commerce operations"],"h":"Корзина и зона · Исполнить граничные примеры · Minimum order tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Minimum order tests","t":"Проверить минимальный заказ","u":"/fts/#case-ecommerce-ops-validation","w":"2026-08-02"},{"b":"Собрать форму комплектации E-commerce operations E-commerce operations generated form Заказ, ячейка и количество Скомпилировать структуру Picker form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","E-commerce operations"],"h":"Заказ, ячейка и количество · Скомпилировать структуру · Picker form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Picker form","t":"Собрать форму комплектации","u":"/fts/#case-ecommerce-ops-form","w":"2026-08-02"},{"b":"Собрать таблицу волн E-commerce operations E-commerce operations generated table Wave, заказы и прогресс Сгенерировать колонки Fulfillment table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","E-commerce operations"],"h":"Wave, заказы и прогресс · Сгенерировать колонки · Fulfillment table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Fulfillment table","t":"Собрать таблицу волн","u":"/fts/#case-ecommerce-ops-table","w":"2026-08-02"},{"b":"Доказать готовность волны E-commerce operations E-commerce operations verified transition Резерв, персонал и слот Скомпозировать состояния Wave release certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","E-commerce operations"],"h":"Резерв, персонал и слот · Скомпозировать состояния · Wave release certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Wave release certificate","t":"Доказать готовность волны","u":"/fts/#case-ecommerce-ops-transition","w":"2026-08-02"},{"b":"Дать агенту проверку резерва E-commerce operations E-commerce operations agent tool Снимок складских фактов Исполнить FTS без записи в WMS Детерминированный pre-check MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","E-commerce operations"],"h":"Снимок складских фактов · Исполнить FTS без записи в WMS · Детерминированный pre-check","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Детерминированный pre-check","t":"Дать агенту проверку резерва","u":"/fts/#case-ecommerce-ops-agent","w":"2026-08-02"},{"b":"Защитить правила substitution E-commerce operations E-commerce operations regression gate Эталонные заказы Генерировать node:test CI-гейт комплектации generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","E-commerce operations"],"h":"Эталонные заказы · Генерировать node:test · CI-гейт комплектации","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт комплектации","t":"Защитить правила substitution","u":"/fts/#case-ecommerce-ops-ci","w":"2026-08-02"},{"b":"Рассчитать налоговую сумму Бухгалтерия Accounting deterministic calculation База, ставка и льгота Применить правила расчёта Tax amount FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Бухгалтерия"],"h":"База, ставка и льгота · Применить правила расчёта · Tax amount","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Tax amount","t":"Рассчитать налоговую сумму","u":"/fts/#case-accounting-calculation","w":"2026-08-02"},{"b":"Разрешить проведение документа Бухгалтерия Accounting command eligibility Период, реквизиты и approvals Проверить условия проводки Posting guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Бухгалтерия"],"h":"Период, реквизиты и approvals · Проверить условия проводки · Posting guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Posting guard","t":"Разрешить проведение документа","u":"/fts/#case-accounting-eligibility","w":"2026-08-02"},{"b":"Проверить баланс документа Бухгалтерия Accounting executable examples Дебет и кредит Исполнить примеры равенства Accounting invariant tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Бухгалтерия"],"h":"Дебет и кредит · Исполнить примеры равенства · Accounting invariant tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Accounting invariant tests","t":"Проверить баланс документа","u":"/fts/#case-accounting-validation","w":"2026-08-02"},{"b":"Собрать форму счёта Бухгалтерия Accounting generated form Контрагент, позиции и НДС Скомпилировать структуру Invoice form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Бухгалтерия"],"h":"Контрагент, позиции и НДС · Скомпилировать структуру · Invoice form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Invoice form","t":"Собрать форму счёта","u":"/fts/#case-accounting-form","w":"2026-08-02"},{"b":"Собрать таблицу проводок Бухгалтерия Accounting generated table Счёт, сумма и аналитика Получить колонки Ledger table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Бухгалтерия"],"h":"Счёт, сумма и аналитика · Получить колонки · Ledger table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Ledger table","t":"Собрать таблицу проводок","u":"/fts/#case-accounting-table","w":"2026-08-02"},{"b":"Доказать готовность закрытия Бухгалтерия Accounting verified transition Сверки, периоды и approvals Скомпозировать состояния Period close certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Бухгалтерия"],"h":"Сверки, периоды и approvals · Скомпозировать состояния · Period close certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Period close certificate","t":"Доказать готовность закрытия","u":"/fts/#case-accounting-transition","w":"2026-08-02"},{"b":"Дать агенту проверку документа Бухгалтерия Accounting agent tool Структурированные реквизиты Вызвать fts_check и fts_execute Диагностика до записи в ERP MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Бухгалтерия"],"h":"Структурированные реквизиты · Вызвать fts_check и fts_execute · Диагностика до записи в ERP","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Диагностика до записи в ERP","t":"Дать агенту проверку документа","u":"/fts/#case-accounting-agent","w":"2026-08-02"},{"b":"Защитить налоговые правила Бухгалтерия Accounting regression gate Эталонные документы Запускать примеры в CI Calculation regression gate generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Бухгалтерия"],"h":"Эталонные документы · Запускать примеры в CI · Calculation regression gate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Calculation regression gate","t":"Защитить налоговые правила","u":"/fts/#case-accounting-ci","w":"2026-08-02"},{"b":"Рассчитать оценку предложения Закупки Procurement deterministic calculation Цена, срок и качество Применить весовые правила Bid score FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Закупки"],"h":"Цена, срок и качество · Применить весовые правила · Bid score","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Bid score","t":"Рассчитать оценку предложения","u":"/fts/#case-procurement-calculation","w":"2026-08-02"},{"b":"Разрешить заказ поставщику Закупки Procurement command eligibility Бюджет, vendor check и approvals Проверить свидетельства Purchase order guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Закупки"],"h":"Бюджет, vendor check и approvals · Проверить свидетельства · Purchase order guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Purchase order guard","t":"Разрешить заказ поставщику","u":"/fts/#case-procurement-eligibility","w":"2026-08-02"},{"b":"Проверить лимиты согласования Закупки Procurement executable examples Сумма и роль Исполнить граничные примеры Approval matrix tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Закупки"],"h":"Сумма и роль · Исполнить граничные примеры · Approval matrix tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Approval matrix tests","t":"Проверить лимиты согласования","u":"/fts/#case-procurement-validation","w":"2026-08-02"},{"b":"Собрать форму заявки Закупки Procurement generated form Позиции, центр затрат и обоснование Скомпилировать структуру Requisition form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Закупки"],"h":"Позиции, центр затрат и обоснование · Скомпилировать структуру · Requisition form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Requisition form","t":"Собрать форму заявки","u":"/fts/#case-procurement-form","w":"2026-08-02"},{"b":"Собрать таблицу тендеров Закупки Procurement generated table Этап, участники и дедлайн Сгенерировать колонки Sourcing table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Закупки"],"h":"Этап, участники и дедлайн · Сгенерировать колонки · Sourcing table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Sourcing table","t":"Собрать таблицу тендеров","u":"/fts/#case-procurement-table","w":"2026-08-02"},{"b":"Доказать готовность PO Закупки Procurement verified transition Выбор, договор и бюджет Скомпозировать состояния PO readiness certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Закупки"],"h":"Выбор, договор и бюджет · Скомпозировать состояния · PO readiness certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"PO readiness certificate","t":"Доказать готовность PO","u":"/fts/#case-procurement-transition","w":"2026-08-02"},{"b":"Дать агенту pre-check закупки Закупки Procurement agent tool Факты заявки Вызвать FTS без вызова ERP Структурированный список блокеров MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Закупки"],"h":"Факты заявки · Вызвать FTS без вызова ERP · Структурированный список блокеров","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Структурированный список блокеров","t":"Дать агенту pre-check закупки","u":"/fts/#case-procurement-agent","w":"2026-08-02"},{"b":"Защитить approval matrix Закупки Procurement regression gate Эталонные суммы и роли Генерировать тесты CI-гейт полномочий generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Закупки"],"h":"Эталонные суммы и роли · Генерировать тесты · CI-гейт полномочий","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"CI-гейт полномочий","t":"Защитить approval matrix","u":"/fts/#case-procurement-ci","w":"2026-08-02"},{"b":"Рассчитать уровень доверия Identity и доступ Identity and access deterministic calculation MFA, устройство и сессия Применить risk rules Assurance level FTS runtime TypeScript node:test","c":"fts","d":"fts","g":["FTS runtime","TypeScript","node:test","Identity и доступ"],"h":"MFA, устройство и сессия · Применить risk rules · Assurance level","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Assurance level","t":"Рассчитать уровень доверия","u":"/fts/#case-identity-calculation","w":"2026-08-02"},{"b":"Разрешить повышение роли Identity и доступ Identity and access command eligibility Запрос, approvals и separation of duties Проверить свидетельства Role elevation guard command guard certificate JSON","c":"fts","d":"fts","g":["command guard","certificate","JSON","Identity и доступ"],"h":"Запрос, approvals и separation of duties · Проверить свидетельства · Role elevation guard","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Role elevation guard","t":"Разрешить повышение роли","u":"/fts/#case-identity-eligibility","w":"2026-08-02"},{"b":"Проверить session policy Identity и доступ Identity and access executable examples Возраст, idle и риск Исполнить граничные сценарии Session tests fts test property CI gate","c":"fts","d":"fts","g":["fts test","property","CI gate","Identity и доступ"],"h":"Возраст, idle и риск · Исполнить граничные сценарии · Session tests","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Session tests","t":"Проверить session policy","u":"/fts/#case-identity-validation","w":"2026-08-02"},{"b":"Собрать форму запроса доступа Identity и доступ Identity and access generated form Ресурс, роль и срок Скомпилировать структуру Access request form canonical JSON form descriptor React","c":"fts","d":"fts","g":["canonical JSON","form descriptor","React","Identity и доступ"],"h":"Ресурс, роль и срок · Скомпилировать структуру · Access request form","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Access request form","t":"Собрать форму запроса доступа","u":"/fts/#case-identity-form","w":"2026-08-02"},{"b":"Собрать таблицу прав Identity и доступ Identity and access generated table Субъект, ресурс и grant Получить колонки Entitlements table canonical JSON table columns frontend","c":"fts","d":"fts","g":["canonical JSON","table columns","frontend","Identity и доступ"],"h":"Субъект, ресурс и grant · Получить колонки · Entitlements table","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Entitlements table","t":"Собрать таблицу прав","u":"/fts/#case-identity-table","w":"2026-08-02"},{"b":"Доказать право администратора Identity и доступ Identity and access verified transition MFA, approval и active window Скомпозировать состояния Privileged access certificate morphism certificate Mermaid","c":"fts","d":"fts","g":["morphism","certificate","Mermaid","Identity и доступ"],"h":"MFA, approval и active window · Скомпозировать состояния · Privileged access certificate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Privileged access certificate","t":"Доказать право администратора","u":"/fts/#case-identity-transition","w":"2026-08-02"},{"b":"Дать агенту authorization check Identity и доступ Identity and access agent tool Действие и snapshot identity Потребовать fts_verify Машинно-проверяемый допуск MCP structured result diagnostics","c":"fts","d":"fts","g":["MCP","structured result","diagnostics","Identity и доступ"],"h":"Действие и snapshot identity · Потребовать fts_verify · Машинно-проверяемый допуск","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Машинно-проверяемый допуск","t":"Дать агенту authorization check","u":"/fts/#case-identity-agent","w":"2026-08-02"},{"b":"Защитить RBAC-политику Identity и доступ Identity and access regression gate Матрица субъектов и ресурсов Запустить FTS tests Authorization regression gate generated tests exit code build gate","c":"fts","d":"fts","g":["generated tests","exit code","build gate","Identity и доступ"],"h":"Матрица субъектов и ресурсов · Запустить FTS tests · Authorization regression gate","n":"FTS — исполняемые спецификации","p":"Языки и парадигмы","q":"03","r":"Русские и английские бизнес-правила без скобок: исполнение, тесты, TypeScript, React, DDD, AI/MCP и проверяемые сертификаты.","s":"Authorization regression gate","t":"Защитить RBAC-политику","u":"/fts/#case-identity-ci","w":"2026-08-02"}]