Статьи

Пишу об AI-инжиниринге, архитектуре программных систем, инженерных практиках и техническом лидерстве.

По темам

Последние материалы

  • 04.09.2026 · 18 мин чтения

    Что такое MCP (Model Context Protocol) и как он работает

    MCP не делает модели умнее. Он стандартизирует, как AI-приложения подключаются к файлам, базам данных, API и другим внешним системам.

  • 04.09.2026 · 17 мин чтения

    Context Engineering: что это и как управлять контекстом LLM

    Context Engineering — это проектирование рабочей памяти LLM: что положить туда сейчас, что оставить снаружи и в какой момент это сделать.

  • 04.09.2026 · 15 мин чтения

    Векторный поиск и embeddings: как работает поиск по смыслу

    Обычный поиск сравнивает слова. Vector search сравнивает embeddings: похожие объекты оказываются рядом в пространстве, даже если формулировки почти не совпадают.

  • 04.09.2026 · 17 мин чтения

    Code review с AI: что проверять, когда код стало слишком легко писать

    AI удешевил написание кода, но не понимание. Review смещается с синтаксиса на intent, scope, архитектуру и вопрос, должен ли этот код вообще существовать.

  • 04.09.2026 · 15 мин чтения

    Как внедрить AI в legacy-систему без переписывания проекта

    Legacy остаётся system of record, а AI появляется рядом как новый слой: adapters, read-only сценарии, shadow mode и постепенное расширение возможностей.

  • 04.09.2026 · 12 мин чтения

    Кто отвечает за код, написанный AI

    AI поменял, кто производит текст, но не то, кто решает оставить его в системе. Ownership остаётся у человека, который понимает изменение и принимает merge.

  • 03.09.2026 · 17 мин чтения

    MCP для Obsidian: как подключить заметки к ChatGPT, Claude и Cursor

    Obsidian и LLM долго жили отдельно: заметки копировались в чат руками. MCP-сервер даёт модели доступ к vault — искать, читать и при необходимости изменять заметки.

  • 11.01.2026 · 8 мин чтения

    AI ускоряет внесение изменений быстрее, чем мы успеваем их осмыслить

    ACDD, атомарное мышление и контроль ответственности в эпоху AI. Как история коммитов отражает инженерное мышление и почему атомарные изменения особенно важны при работе с AI-кодингом.

  • 01.01.2026 · 3 мин чтения

    Системные языки

    Системными языками программирования обычно называют такие, на которых создают низкоуровневые ПО вроде операционных систем, драйверов или новые языки программирования.

  • 26.01.2024 · 6 мин чтения

    Как компилируется Rust

    Компилятор Rust, известный как rustc, проходит через несколько стадий, чтобы преобразовать исходный код на языке Rust в исполняемый файл.

  • 19.01.2024 · 4 мин чтения

    Немного про Rust

    Язык программирования Rust был создан для разработки безопасного и эффективного ПО, позволяя контролировать низкоуровневые детали, при этом обеспечивая безопасность и предотвращение ошибок.

  • 16.01.2024 · 4 мин чтения

    Хвостовая рекурсия

    Хвостовая рекурсия — это форма рекурсии, в которой рекурсивный вызов становится последней операцией в функции. Хвостовая рекурсия быстрее за счет оптимизации компилятором.

  • 15.01.2024 · 3 мин чтения

    Ранний возврат ошибок

    Ранний возврат ошибок — это подход, при котором функция возвращает ошибку как можно раньше, если ее можно определить. Это облегчает чтение и понимание кода.

  • 14.01.2024 · 3 мин чтения

    Garbage Collector

    Сборщик мусора (Garbage Collector, GC) — это автоматическое управление памятью, которое избавляет разработчиков от ручного выделения и освобождения памяти, предотвращая ошибки и сбои программы.

  • 14.01.2024 · 3 мин чтения

    Зачем изучать СИКП

    СИКП (Структура и интерпретация компьютерных программ) является одним из наиболее известных учебников по программированию. Изучение СИКП полезно по нескольким причинам.

  • 14.01.2024 · 2 мин чтения

    Zero Cost Abstractions

    Благодаря отсутствию GC в Rust мы получаем нулевую стоимость абстракций (zero cost abstractions). Дело в том, что абстракции обычно не даются нам бесплатно.

  • 16.11.2023 · 4 мин чтения

    TOML

    TOML (Tom's Obvious, Minimal Language) — это простой язык конфигурации, разработанный Томом Престон-Вернером. Активно используется в Rust для указания зависимостей библиотек Cargo.

  • 02.11.2023 · 5 мин чтения

    Стек и куча

    В большинстве языков разработчик не думает о том, как данные хранятся в памяти. Но в языках системного программирования, одним из которых является Rust, то, какое значение находится в стеке или в куче, влияет на поведение языка.