Небольшой инсайт про разработку - две фишки Недавно я, наконец, дорос до структурирования документации проектов так, как это делает OpenAI в Engineering Harness - дерево MD документов в папке `/docs`, которое живет рядом с кодом. Плюс в коде раскиданы AGENTS.MD по папкам. Этот подход работает очень хорошо, вместе с использованием RFCs для планирования. Агенты находят быстро документацию, быстро решают задачи и быстро плодят технический долг (если за ними не присматривать). Но у структуры есть две неявных фишки. Расскажу на примерах. Перетаскивание фич. Сейчас два основных проекта у меня - это платформа BitGN для соревнования агентов и новая версия Abdullin Labs, куда я выложу английскую версию курса. Проекты развиваются с разной скоростью, стэк там может немного различаться, но их объединяет одно - они оба оптимизированы под мой процесс разработки с Codex/Claude. И периодически в одном из проектов появляется фича, которую хочу натянуть на другой проект. Например, в BitGN платформе у меня есть режим апдейта без даунтайма. Он появился из-за того, что во время активного использования платформы людям заметен даже даунтайм на секунду. Поэтому я собрал механизм на базе SystemD Socket Activation, который: (1) мягко выключает старую версию приложения (дает возможность текущей логике закончить работу) (2) продолжает принимать новые подключения на уровне OS (3) делает бэкапы, запускает новую версию приложения, обновляет при необходимости БД на новую версию (4) подключает приложение к сокету, который продолжала держать операционка Все круто и работает, как надо. Я теперь могу деплоить хоть двадцать раз в день (обычно не более десяти раз в день), в любое время, и никто ничего не заметит. Но это слегка запутанная фича, которая требует и изменений в приложении, и специальной конфигурации сервера (регистрации сокета в SystemD и подключения сервиса к нему) и строгой последовательности действий в deploy. Поэтому, когда я захотел быстро перенести эту фичу в проект Labs, то сделал это через документы: (1) В существующем проекте - Codex, задокументируй фичу в `/docs`. Сначала опиши общие принципы на всех уровнях, потом докинь деталей этого проекта (2) В новом проекте - Codex, вот тебе новая фича из другого проекта. Адаптируй проект так, чтобы доки оказались в доках, весь код и конфиги обновились, а `make install && make deploy` - выкатили новую конфигурацию сервера и версию приложения. А вторая фича растет из первой - быстрый старт новых проектов. Сейчас я хочу поиграть со своим MCP сервером, который бы давал возможность агентам работать с общей картой контекстов (shared memory bank), с возможностью контроллировать изменения, откатывать их (event sourcing). Плюс сразу встроить в него оптимизированные графы контекстов из проекта про написание своего reasoning. И чтобы не городить актуальный стек ручками, то в одном из проектов попросил написать мне RFC, который может помочь агенту завести такой же проект, но пустой с нуля. А в другом проекте - просто создал пустую папку и попросил Codex развернуть. Потом просто зашел в нее, активировал Nix environment и запустил уже полный stack. И там все настроено точно так, как мне сейчас удобно (__Пару скриншотов кину в обсуждения__) А если потом захочется перетащить новую фичу, то см Перетаскивание фич Забавно, что в прошлом во время запуска Data Science отдела в международной логистической компании мы (целой командой) для подобного городили кучу процессов и хитрых cookiecutter шаблонов, да и то были проблемы с перетаскиванием фич. А сейчас - достаточно просто попросить Codex. Ваш, @llm_under_hood 🤗
Небольшой инсайт про разработку - две фишки Недавно я, наконец, дорос до…
Из этого канала
- #764"Насколько ускоряется динамика разработки продуктов с LLM под капотом Я с…
"Насколько ускоряется динамика разработки продуктов с LLM под капотом Я с прошлой недели несколько дней вымучивал дизайн MCP сервера, который бы дал разным…
- #765В BitGN официально добавились инженеры из Африки! Из крупных континентов без…
В BitGN официально добавились инженеры из Африки! Из крупных континентов без покрытия осталась только Австралия. Работаем над устранением этого недостатка.
- #766Как тестировать AI агентов? (1) Заводим виртуальную среду, в которой мы…
Как тестировать AI агентов? (1) Заводим виртуальную среду, в которой мы контроллируем абсолютно все (deterministic simulation) (2) Добавляем энтропии…
- #762"У меня есть определённый вкус по поводу того, как должны строиться системы -…
"У меня есть определённый вкус по поводу того, как должны строиться системы - как они должны работать, масштабироваться и взаимодействовать с людьми, которые…
- #761351 инженер и 68 городов уже с нами! Upd: 382 инженера и 69 городов Это…
351 инженер и 68 городов уже с нами! Upd: 382 инженера и 69 городов Это новости про соревнование по построению агентов в апреле.