ivan zakutni
583 subscribers
160 photos
3 videos
1 file
193 links
Авторский канал про инженерию умных систем.
SDD, AI/Human collaboration, инженерное мышление.
Связь: @m0n0x41d
Download Telegram
Вы вот вроде работаете над своим проектом, а пощупать его, показать кому-то всё никак не получается?

Эмммм-вэээ-пэээ, ауууу, где же ты?

За последний ~месяц ко мне обратилось три разных человека, из трёх разных стран, с разными проектами. На установочном звонке истории были такие:

- «полгода делаем, но продавать и рынку показать ещё нечего»

- «запустили AI-пайплайн, но слишком много "человеков-в-цикле", хочется постабильнее»

- «команда погибает под текучкой, 4 месяца назад наняли ещё 3 разработчиков – заонбордились, а ситуация качественно не поменялась»


И знаете что?
В каждом проекте, докопавшись до сути, оказалась одна и та же проблема – люди тратили ресурсы (время и экспертизу) не туда.

Кто-то вместо продуктовой системы забуксовал на разработке AI вайбкод пайплайна – и забуксовал на несколько месяцев.
Кто-то не имел элементарного процесса приоритезации задач – боялись даже формировать бэклог.
А кто-то просто боялся признать, что построили не то, что нужно, и теперь надо либо переделывать, либо как-то натягивать цифры.

Причины везде одни – мало внимания и собранности на системе, которую мы строим, и на работе, которая происходит вот «прямо сейчас».
При этом в своих прикладных областях все эти люди – сильные специалисты, вопросов нет.

Серебряной пули-пиллюли тут нет.

Но если попытаться её отлить – я как попугай повторю три слова:

внимание, собранность, экзокортекс.

И да – первые два слова по сути про одно и то же. Это действительно ТАК важно.

***

А что с экзокортексом?

Даже если вы в моменте начинаете замечать проблемы, «отклонения от курса» – вам это мало поможет, если вы это никуда не фиксируете.

Буквально – никуда. Не записал => не подумал => не вспомнишь.

Начните записывать куда угодно – в Obsidian, в description карточки в JIRA / Linear, в Apple Notes, в промпт форму Claude Code, черт возьми, вариантов слишком много!

Ибо если не фиксируете – вы каждый раз думаете одни и те же мысли заново. Зачем? Надо нарабатывать решения проблем)))

---

Если совсем упростить:

нет фиксации – нет накопления понимания
нет накопления – нет нормального развития проекта

(и вы крутитесь на месте.)

***

В случае, когда вы не готовы писать/думать – хотя бы наговаривайте.
Есть можество text-to-speech платных и бесплатных приложений, например Superwhisper.

Главное – чтобы это осталось где-то вне вашей головы.

***

Вашу личную и профессиональную деятельность этот метод изменит драматически.

Проверено неоднократно и не одним человеком! :)

***

А если у вас прямо сейчас что-то горит (или догорает) – пишите в форму или в мне личку.

@m0n0x41d 🌟
Please open Telegram to view this post
VIEW IN TELEGRAM
1159🌭7
дистилляция промптов? Нет, дистилляция скиллов! Это что то новенькое...

Мелкийсофт выкатили пейпер SkillOpt – штуковину, где обучают не модель, а skill-файл агента.

Ну конечно это не дистилляция, а optimization loop вокруг markdown-инструкций. Но направление интересное, я даже глаза не закатывал))))

Элементарное просто – берем замороженного агента, даем ему skill, гоняем на задачах и сохраняем весь роллаут: какие тулзы дергал, где поехал, какой ответ выдал, и тд.

Потом внешняя сильная модель-оптимизатор читает эти следы и предлагает патч (выборочный, весь скилл в кашу переписывать нельзя) к skill-файлу: добавить правило, выкинуть вредную инструкцию, заменить кривой кусок.

такие предложения принимаются и сразу проверяются – если справилось лучше то… применяем изменение в описание скилла.

Цифры бодрые, обещают десятки и десятки процентов улучшения… работы на бенчмарках

Это все дикая молотилка токенов, но кажется что в вертикальных кейсах должно работать норм. сложные системы скиллов (вроде haft) тренировать такой машинкой врядли получится.

Все таки сложные сценарии, измерить результат еще сложнее.

Но если у вас есть понятный AI процесс, который держится на файлике с инструкциями, и результат можно измерить и оценить в табличке – поздравляю, у вас уже есть тренируемая поверхность)))

Если у вас скиллы в проде… я не знаю что сказать 🫪
Скорее это про улучшение всякой harness прикладной истории.
176🌭1
Я первый раз попробовал v0.dev и лучше бы не пробовал.
Название, вообще, очень точное – на выходе у меня получился именно v0 фронтенд, настолько кривой, что отвратительный!
с ним ничего нельзя сделать кроме как выкинуть к чертовой слопобабушке!

Возможно... v0 работает хорошо/лучше с react. Ну мб, но зачем мне реакт? Мне надо vue.
Возможно, подумаете вы, я скормил ему плохой промпт? Но нет, я скормил ему specs из haft которые, на минуточку, формировались почти полторы недели, плюс DESIGN.md и PRODUCT.md выведенные из этих самых specs с помощью impeccable

Да, я редко пишу про прикладные штуки.
Но сейчас я все таки пишу, потому что impaccable это мощь! Сила! Класс! Срочно пробуйте!

В сетапе где у вас есть уже отличные спеки, объясняющие что вы строите (ждите, 8.2.0 haft скоро будет, и я все расскажу, что оно и как и какие спеки вам помогает писать. Да, это байт на лайки), и хороший агент который умеет генерировать изображения и ходить в браузер, смотреть и мучать что он там наделал... получится хорошо.

В моем случае "хороший агент", это codex, в частности – codex app.
Я не знаю насколько хороша интеграция с браузером в codex cli, но апп прямо из коробки хорошо молотит с playwright.
Вообще какое-то время я уже почти не пользуюсь cli агентами как основной средой, все headless и one-shot комманды.
Но об этом тоже в другой раз)))

Итак, ваша формула успеха в agentic фронтенде:

0) крутой агент и крутое окружение (читай Codex App, вам там и терминал, и worktrees, и браузер, и ничего не тормозит давно), impeccable, и shadcn (для vue или реакта, если любите пожирнее). Ставити все это в своей проект и сражаетесь.
1) Думаю что можно начать с голого поля, и собирать design и product "спеки" прямо с impeccable, но я рекомендую подойти серьезнее))
2) Все! Сверху можно добавить для ускорения и мега красоты сниппеты с каких нубудь сайтов вроде vue-bits (для реакта такого добра еще больше), ибо с shadcn не всегда вывозит с первого раза.

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


Ставь:
огонек – если не понял почему я топлю за Codex App и хочешь пояснений
хотдог – если имеешь претензии по поводу отсутствия haft 8.2.0 в релизах
желтый морда с вопросом – если я пишу в блог слишком редко, а надо чаще.
12421🌭11
Привет! В ответ на реакции к посту выше поясняю свою позицию за Codex App 😈

TL;DR: я сфокусировал работу в Codex App, потому что для меня он оказался лучшей – да и вообще наиболее цельной – средой агентской разработки. Я меньше отвлекаюсь/переключаю контекст, лучше контролирую параллельную работу и, что особенно важно, я снова стал гораздо чаще читать (и писать) код, тесты и диффы.

А GPT-модели начиная с 5.5 оказались для меня намного более лучшими инженерными друзьями, чем опус и сказочка.

С месяц назад я выбирал на чем остаться Claude vs ChatGPT (200$). Выбор был сделан в пользу второго. В том числе потому, что FPF последних версий уже не влезает в Claude Desktop.

Кстати, история с Fable случилась буквально в последние дни моей активной подписки на Claude, бгг.

Скажу так – я по CC я не скучаю вообще, вот ни чуточки)

Codex App стал сейчас прям хорош. Работает шустро, GPT-модели не так прожорливы на токены, а компакт контекста просто великолепный!

В нём удобно читать код, комментировать диффы и открывать файлы во внешнем редакторе (у меня это Zed.)
это особенно актуально, потому что сложность моих последних проектов такая, что вообще не читать код, тесты и диффы абсолютно непозволительно.

ремоут сессии были последней фичей что держала меня в CC – я прям много работаю с телефона.

я не знаю что тут еще добавиь, разве этого мало?

Worktrees в один клик?  
сommit-and-push и address comments в гитхабе в пару кликов?  
Пет, который не навязчиво привлекает внимание, когда оно требуется? (open peon в CC меня задрочил до нервного тика)

Терминал под рукой?

Пока писал этот пост, увидел, что ещё и просмотр PR'ов привезли в сайдбар)

По отдельности всё это кажется набором мелких фич, но в том то и прикол, что вместе они убирают огромный слой ручной и полуручной диспетчерезации, как бы не было удобненько в tmux вкладках, но в единой среде с хорошим интерфейсом работать приятнее и проще.

Я долго был под чарами Антропик, но теперь они похоже совсем развеялись.
Антропиковские модели хороши. Особенно хороши они в прозе)

Мне не нужна проза! с прозой мне нравится разбираться самому!!!

Мне нужен peer engineer и удобная среда, в которой я могу думать, пока плюю в потолок, и в которой мне не приходится переключаться по вкладкам как амфетаминовая белка, и тратить столь много человеческой оперативки (которой так мало) на удержание в голове всего этого безобразия

Мне нужна среда в которой можно не терять активные треды и быстро понимать статус каждой активной работы.
Мне нужна среда, в которой релизы не ломают базовый функционал (че там как дела с глитчами сс?), а приносят новые полезные фичи!

вот Codex App всё это даёт.

И ещё кучу приятных вещей: быстрые скриншоты экрана, которые сразу влетают в активный тред, интеграцию с playwright из коробки и браузер с аннотациями, чтобы при разработке фронтендов лучше тягать агента за уши)))

Claude Code многое из этого нормально не даёт, а чего-то из этого в нём вообще не будет в виду ограничений среды.

Конечно, это совсем разные продукты. Я не утверждаю, что GUI в принципе лучше терминала. 

Но для управления несколькими долгоживущими агентскими задачами CLI лично для меня перестал быть самым удобным и эффективным интерфейсом.

Еще мне нравится OpenAI не стремится запирать пользователей внутри одного интерфейса. Лимиты кодекса всё ещё можно использовать через разные другие инструменты – OpenCode, Zed, name your thing – да хоть в собственных не коммерческих ИИ-приложухах, смотришь как авторизация в codex cli работает и делаешь так же)))

Сколько такая политика проживёт – посмотрим, но прямо сейчас это топ.

В конце концов, все сейчас говорят про harness, и вот harness это не про то насколько эффектно агент генерирует код, и не только про автономную молотилку goal десятки часов, но еще и про то, насколько хорошо _человек_ может управлять несколькими потоками работы и при этом сам оставаться внутри инженерного процесса.

И вот это, имхо, Codex App сейчас делает лучше всех остальных тулов.

Ставь огонь если Codex App топ, и желтый морда с вопросом, если не понимаешь зачем читать код.
Please open Telegram to view this post
VIEW IN TELEGRAM
1201010🌭44
5 вещей, которые я хотел бы осознать раньше на пути из эникейщика в инженера

Читайте весь текст => тут <=

1. Проблема, которая кажется технической, часто находится в договорённостях между людьми
2. Архитектуру нельзя выбирать лишь потому, что она стильная-модная или интеллектуально привлекательная
3. Коллекция фреймворков не заменяет развитого мышления
4. Сильные специалисты не компенсируют плохо спроектированную коллективную работу
5. Я слишком поздно научился проверять, существует ли вообще задача, которую собрались решать

***

Перешли коллеге или другу, которому это будет полезно 🙂
2139🌭4
Please open Telegram to view this post
VIEW IN TELEGRAM
355🌭11
Please open Telegram to view this post
VIEW IN TELEGRAM
5873🌭11
да, кстати, там наконец-то вышел Haft v9.

точнее он уже v9.0.2)) Дока тут. В течении какого то времени в доке еще добавится что то вроде work/cool-books для самых маленьких. Но вы можете это не ждать, ставь да пользуйся блин)

История с v9 была примерно такая:

Прямо перед моим закрытым стримом в AI подлодке несколько недель назад в FPF произошла куча изменений.

А до этих изменений я параллельно городил в Haft костыли для pattern retrieval, и вот раз и Анатолий Игоревич Левенчук взял и сделал этот условный базовый retrieval уже внутри самого FPF.

Одновременно оказалось, что извлечение карточек можно имплементировать проще, без псевдо-умных роутеров, которые якобы знают FPF лучше самого FPF))))

Туда же добавляется тот факто, что за последние полтора месяца прошло пять семинаров по FPF. Из них стало понятно много новых ходов, как улучшить Haft – в частности с самых первых семинаров пришел сильный ход на улучшение именно как проектнрй памяти

Теперь Haft стремится помнить не только отдельные решения и заметки, но держит связанный граф проекта: сущности, проблемы, варианты, наши решения, spec sections, evidence, код и отношения между ними.

Это нужно чтобы агент мог зайти через вопрос, файл или символ из кода и поднять нужный кусок этого графа))))

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

В итоге в v9.0.0 появились:

– source-native FPF Query: concern retrieval, exact lookup и inspect прямо по запеченному в релиз FPF-Spec.md (с этого дня оставание от FPF будет меньше и релизить будем чаще!)

– typed project memory с entities, aliases, relations, provenance и bounded neighborhood вокруг предмета работы (та самая проектная память, но ее надо тестить, welcome!)

– fused graph памяти о проекте, коде и reasoning-артефактах;

– улучшил онбординг и spec sections. Target System и Software System спеки это на самом деле тоже новая фича, в 8 версии они были жутко недоделанные, но сейчас кажется можно пользоваться! В старый или новый проект заходите через скиллы h-onboard / h-spec и haft сам должен проести вас по системному моделированию)

– Haft толстоват в плане интерфейса – в нем 12 независимых скиллов и 12 MCP тулов, но совсем нет никаких обязательных, детерминированных последовательностей как это было когда то дваным давно. На самом деле почти для любого вопроса можно использовать просто зонтичный скилл – h-reason. Если проблема ещё не сформулирована – h-frame. Если есть конкретный сбой и непонятна причина – h-diagnose. Но все скиллы теперь ваш агент может вызывать сам, он разберется)))) короче говоря, я думаю что порог вхождения в haft стал все таки много меньше!

При этом Haft стал потоньше на лишние штуки, полностью выпилены экспериментальные haft run, haft harness (Open-Sleigh и весь Elixir/OTP/BEAM runtime – ничего из этого не надо, полное комодити. Хост агенты прекрасно вызывают суб-агентов и они так же хорошо сами используют haft скилы и тулы).

Haft больше не пытается (и не будет пытаться) быть ещё одним агентом рядом с вашим основным.

Пусть Codex, Claude Code или еще кто нибудь выполняет работу!

Задача Haft – помнить, почему эта работа вообще делается, что было решено раньше, где это живёт в коде и на каких уликах оно держится.

***

Я не удивлюсь если там есть баги, ибо я с haft имею ноль шекелей, делалось там дофига, тестить там тоже дофига,
Тем не менее догфуддинг и еще N больших и средних проектов новая версия пережила, в том числе greenfield, поэтому релиз больше откладывать смысла нет.

В случае нахождения любых ошибок, пожеланий и предложений, вы знаете куда они идти – принимаются в порядке записи по талонам в github issue.

Всем добра ☺️
Please open Telegram to view this post
VIEW IN TELEGRAM
2154🌭1
Лучший harness — это вы и ваши AI-агенты

harness – еще одно новояз словечко которое полностью вошло в ментальность и звучит из каждого утюга.

Первоклассный зонтичный термин с эталонным фан аутом – вот говорит кто-то harness, и черт его знает что там – набор скиллов? Мега AGENTS.md? RFC? Кастомный Pi? Или другой OpenCode на стероидах? MCP сервер? Все вместе?
Каждый раз как в первый раз в первый класс))

Приглашаю вас со мной сделать zoom-out за чашкой кофе и вспомнить арку про Augmented Intelligence в свежем письме.

Прошло уже больше года с той заметки, и imho – в этом мета-моменте не поменялось вообще ничего, хотя AI и стал намного умнее.

Почитал сам – дай почитать другому :)
213🌭221
Сейчас есть мало более хреновых решений, чем сесть гонять /goal loop как он есть "из коробка".

"сырой" goal-loop – это рак ai assisted разработки.

я искренне считаю что никакие spec тулы/языки/решения тут не помогут, если вы в итоге заканчивается одним мега-планом который суете в ralf-like loop.

Это просто не работает, каким бы прекрасным не был ваш план, какими бы формальными не были ваши спецификации – с идеальной семиотической архитектурой, нулевым количеством противоречий и разночтений (fan-out).

И даже если в вашем мега-плане перечислены лучшие практики программной инженерии – это все еще не гарантирует что ваш любимый агент сделает все правильно.

Скорее всего он будет следовать вашим инструкциям, но в какой то момент свернет не туда, и вопрос только в том как быстро вы это заметите.

Почему так? Да потому что контекст пухнет, ничего нового!

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

Вот что то такое, наверное, и есть сейчас "настоящий" baseline нормального харнесса.

goal loop это инструмент, который можно хорошо точечно использовать в разных тредах – и в том самом overseer задача которого спаунить рабочие среды с задачами, проверять по hearbeat крону, и мержить решая конфликты, отправлять на доделку/исправление, и в самих рабочих "тредах" – пусть будут goal, но задача изолированная, понятная, и проверяемая.

Тяжелее ли за этим всем приглядывать?
Ну удивительно, но не намного!

Намного тяжелее находить себя в ситуации когда четыре раза могнул и вообще не понимаешь что в мега-yoba goal лупе происходит.

Так или иначе но часто даже с нормальным харнессом ai assisted разработка все равно напоминает скульптурную лепку – шмяк и формуем, шмяк и отсекаем, формуем.

Вот надо туда "шмяки" весом/объемом поменьше)))
3134🌭1
Приветствую.

С момента последнего письма, к моему удивлению, слишком много людей написали мне с вопросами вроде “а как и что вы изучали по основам программирования, какую математику, за что хвататься?”

Я думал, что публично написать по этому поводу (в личку я старался давать какие то списки книжек и полезные гайды, ноо...), а потом решил все рассказать просто как есть, поделиться тем, что (кмк) действительно оказало самый большой эффект на моём пути освоения программно-инженерного мастерства.

Да и не только :)

TL;DR – обучение у ментора, который по-настоящему живёт всеми этими темами и вечно ими горит. Всё, никакого иного секрета нет, расходитесь. А тем, кому интересно, – дальше история в чуть больших деталях и мои размышления.


p.s. Я тут камеру купил и стабильно-периодически фотографирую стрит. Так что больше никаких долбаных ИИ картинок в публикациях. Кому интересно все фотки можно поглядеть в инсте

Всем хорошей пятницы завтра, не забудьте навернуть прод да посильнее.
285🌭1