ivan zakutni
585 subscribers
167 photos
3 videos
1 file
198 links
Авторский канал про инженерию умных систем.
SDD, AI/Human collaboration, инженерное мышление.
Связь: @m0n0x41d
Download Telegram
Сейчас есть мало более хреновых решений, чем сесть гонять /goal loop как он есть "из коробка".

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

Всем хорошей пятницы завтра, не забудьте навернуть прод да посильнее.
2117🌭1
Haft с самого начала был полностью завайбкожен.

Был буквально сжигалкой лишних токенов, практически «эй, вот тут FPF - это как кости Дзен, давай наполним мясом»)))

Это мой первый и последний продукт, где 100% кода выдал Ии, а я вообще не открывал исходники.

При этом спеки то были довольно формальными. Но эксперимент провалился. Ну или все таки удался?)))

За историю Haft я сам два раза переставал им пользоваться в пользу чистого FPF. Первый раз, когда это был еще Quint Code из-за слишком угловатого процесса.

Второй когда разработка пошла вообще не туда: мы с агентами начали городить фичи многие из которых быстро комодитизировались параллельными улучшениями самого FPF.

Я не знаю можно ли этот эксперимент назвать дешёвым.

Наверное можно, ведь ошибки ведь это самое ценное на любом пути, когда ты их замечаешь))))

И дело не только в том, что я не читал код. Читать диффы, рефакторить – там ещё… много будет)))

А скорее в том, сколько slow thinking и внимания вообще я тратил на Haft. Если бы было выделено побольше, этих ошибок не было. Никакой тул, никакая методология, система типов, мета-мета-мета…мета подходы не будут работать, если не проинвестировать в них мозг и время.

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

Ничего САМ собой наш родненький ИИ сделать не может нормально.
Так было два года назад было, и сейчас качественного ничего не поменялось: быстрее/лучше/умнее решаются правильно поставленные задачи, «средняя температура правдоподобности» сильно повысилась, высшие приматы радостно генерируют картинки, видео, игры… паршивого качества :)

Важнее всего РЕАЛЬНЫЕ задачи, за которыми стоят РЕАЛЬНЫЕ проблемы.

Ведь параллельно с существованием haft я дофига работал, для ВСЕХ проектов использовал и сам haft разных версий, и «чистый FPF», и бОльшая часть из них заработала и… в примерно половину (если не больше) из них, в смысле в сгенеренный код, я тоже не то чтобы сильно смотрел.

но на думки по каждому тратил много мнооооого часов.

Поэтому главное для меня в haft v10 это снова выкидывание экспериментального мусора. Ранее в мажорных релизах я уже вырезал начинания вроде standalone-агента и оболочки для десктопа.

Из нового рантайма уходят FPF-компилятор/сайдкар с эмбеддингами и еще ряд велосипедов.

Вместо этой машинерии мы сфокусируемся на проектных спеках, читаемых файлах которые теперь рекомендуется коммитить, связи спек с кодом и тестами, и туда же попробуем привязывать результаты запусков тестов по главным инвариантам из спек.
Из приятных мелочей - haft теперь будет сам тащить FPF и следить за его обновлениями :)

Короче - FPF плюс немного скиллов и память для этого FPF 🤷‍♀️

Alpha v10 уже вышла⁠, но если вы вдруг этим пользуетесь - подождите еще пару дней до стабильного релиза.
А велосипеды… у велосипедов есть прямое назначение - на них надо кататься, а не городить в софте)))
Please open Telegram to view this post
VIEW IN TELEGRAM
21211🌭3221
Please open Telegram to view this post
VIEW IN TELEGRAM
206🌭1
Ну вот в общем то - да. 🙂‍↕️
🌭1
Современные разработчики практически больше не имеют возможности получить следующий профессиональный опыт:

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

Особенно печально, что некоторым разработчикам уже никогда не выпадет удовольствия быть разнесёнными в пух и прах во время ревью их кода сеньором.

Помните, когда для решения сложных задачек или проблем с багами требовалось думать? Хорошие были времена.
94🌭1
Please open Telegram to view this post
VIEW IN TELEGRAM
10🌭2
Вот вы смеетесь, а мы живем буквально во времени когда люди разучились удерживать внимание дольше 30 секунд на любой минимально «тяжелой задаче».

Самое жуткое что «тяжелой задачей» стало чтение даже низкоформального текста, длинной в несколько тысяч знаков.

У меня нет замеров, но кажется что уже 2000 знаков повергают людей в ужас смерти подобный.

Что с этим делать? Ну, походу завлекать внимание разделением экрана и стримом на второй половине subway surfers 💀

Кроме шуток в коллективной работе, похоже, остается только дробить задачи настолько мелко, насколько возможно, и созваниваться по видеосвязи в шапке с колокольчиками (ну или все таки surfrs?)

Вот бы ИИ уже всех заменил, все никак не дождусь 😁

***

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

Если наберется 10-20 сосисок, рассмотрим проблему глубже, есть пара идей :)
Please open Telegram to view this post
VIEW IN TELEGRAM
🌭555
Please open Telegram to view this post
VIEW IN TELEGRAM
126🌭32
Please open Telegram to view this post
VIEW IN TELEGRAM
313🌭2
Please open Telegram to view this post
VIEW IN TELEGRAM
7🌭2
Розетта стоун (слева.)
943🌭1