Лаборатория Математики и Программирования Сергея Бобровского – Telegram
Лаборатория Математики и Программирования Сергея Бобровского
1.32K subscribers
1.26K photos
27 videos
971 links
ЛаМПовое с Бобровским
Download Telegram
10 подсистем - 300 тысяч токенов, 50 - ну 2-3 миллиона.

Как, Карл??

По заветам Гротендика и Алана Кэя, метапрограммирование, DSL и тысячекратная компактность кода, с которой экспериментировал ещё лет 20 назад (OMeta), и вот наконец час пробил :)

Ты говоришь агенту "клиент может создать заказ, добавить товары, оплатить, отменить до отправки...."

Но мы не одинаковы.

1000 классов - это 15-20 функторов между 5-7 категориями.
Я пишу категорную спецификацию, и говорю агенту
"вот категория C с 5 объектами и функтор F: C -> Код".
Ну не буквально, а на особом DSL, понятном жпт, или например в Lean4.
0 токенов :)

Забрасываю это в какую-нибудь дешёвую жпт4 "превратить спеку в шаблон-генератор на F#" (ну 1000 токенов).

Гружу этот генератор в уже совсем бесплатную ллм-ку типа дипсика. Магия -- и на выходе нужные мне 200 классов, которые идеально работают.

Надо добавить 201-й класс? Он в категории C3, и может взаимодействовать только через функтор F: C3 -> C1 (за O(1), ну в крайнем за O(k), где k - число морфизмов).
Нужно проверить только интерфейс функтора, а не 200 классов! Пишем "реализуй тип T, совместимый с интерфейсом I" (сотня токенов!).

Твои 10 подсистем - полмиллиарда токенов и хрупкость 70%.
Мои 10 подсистем - 1 млн токенов и хрупкость 10%.
Интеграция подсистем: один функтор, 0 конфликтов.

Начинаем с композиционной корректности (сеньор конечно формализует по одному инварианту через пред- пост-условия, а когда их сотни и они все склеены?). Для этого учимся видеть в бизнес-домене категории и морфизмы. Это самый первый шаг, а всего будет 7 базовых, но с пропуском даже одного топологическая цепочка порвётся, и агент бросится лепить баги и безумно сжигать токены :)
11496😇4👍2🥰1
...Да и F# я конечно рановато списал, для него же есть F#+ с тайпклассом Functor, и Active Patterns, и Type Providers, и всякие крутые фишки обещают в F# 11 (хотя так-то есть
Myriad -- это прям наша темка для метапрограммирования)... Да и C# по большому счёту близится по потенциалу к этому всему (Source Generators).

Есть и зависимые типы для F# (заброшенный, но допилить при желании несложно). Между прочим, завтипчики сами по себе вполне могут дать категорную интуицию, и тут я пока не решил, идти ли от теорката (это скорее путь для классических математиков), или всё же от теории типов (это куда ближе программистам).

И в целом, я так подумал... Зачем мне эту методику вообще кому-то отдавать? Всё равно в ней без поллитра PhD не разобраться.

Учить этим темкам буду индивидуально только лучших ментатов, а реализую эту концепцию например как условный SaaS (внутри работают тысячи индусов и пакистанцев мои специально обученные агенты). Закидываете своё ТЗ, и получаете на выходе систему произвольной сложности по большому счёту, которая ну не формально верифицирована, но близко, и как минимум концептуально описана математически, а стоить это будет в сотни-тысячи раз дешевле, и делаться быстрее, чем если отдавать команде белковых с жпт200.
27👍3295😁3❤‍🔥1
Вайб-кодинг -- быстрый недисциплинированный подход, при котором разработчик отправляет запросы жпт, принимает его вывод без ревью кода, тестирует вживую и исправляет ошибки по мере их появления. Приводит к созданию непонятного, неподдерживаемого и хрупкого кода. Скрипты, прототипы, небольшие программы и игры, для которых можно украсть код с гитхаба -- норм.

Agentic engineering -- профессиональная инженерная методология, где человек берёт на себя прежде всего темы планирования, ревью кода, тестирования и оркестрации. Фундаментальные знания в архитектурах, system/software design, качестве и безопасности, становятся критически важными.
Спецификацию и этапы работ готовим до начала кодинга. Строгий ревью всего сгенерированного кода. Всеобъемлющее тестирование как база качества и успешных итераций агентов. Полная ответственность человека за архитектуру, код, документацию, CI/CD и мониторинг.
Так-то классический техлид и есть. Растите скорее в него!

Agentic mathematics -- существенно более формальная темка, куда двигаюсь я :)

Вот как сегодня работает agentic engineering: "Building a C compiler with a team of parallel Claudes", 16 агентов нафигачили на Rust компилятор Си под линукс на 100 тысяч строк кода за две недели.

При том что темка написания компиляторов -- это по сути академическая алгоритмическая задачка, она очень хорошо изучена и формализована десятки лет назад, сегодня по сути курсовая студенческая работа. Вот например компилятор сишечки, написанный на ассемблере, который уместился в 512 БАЙТОВ.

В данном случае ещё большой вопрос, как вообще эти 100.000 строк кода работают? Понятно что прогнали через стандартный набор тестов, ну ок. Но в продакшене я бы его использовать не стал :)

Собственно что хочу сказать -- работа этих агентов обошлась в 20.000 долларов! Ну, за 10 месяцев в принципе любой крепкий миддл с университетским образованием сделает даже несколько таких компиляторов.
7397🔥41👍1
Первый спутник, Гагарин, астронавты - дали бум по всему миру инженерным темкам, включая первые компьютеры.

В 1970-е появился Кобол, который создавался с целью "бизнесмены будут писать свои собственные программы".

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

Реальность: 98% бизнесменов тех лет не могли запрограммировать на околоестественном языке нахождение наибольшего значения из трёх чисел :) А сегодня, думаю, и 99,9% не напишут.

Но в целом на Коболе было написано просто огромное количество строк кода, и к программированию реально подключилось множество не только математиков и физиков которые использовали фортран, но и обычных инженеров.

1980-е: CASE-инструменты будут генерировать всё.
Реальность: эти инструменты так и остались уделом единичных проектов и академического изучения. Но при этом к программированию было привлечено большое количество постановщиков и аналитиков, подчас вообще без инженерного образования, которые начинали с рисования диаграммок, и попадали в промышленную разработку.

1990-е: Visual Basic и Delphi: пресловутое рисование мышкой, формошлёпство, что невероятно бесило хардкорных плюсистов, но к прикладному программированию оказалось привлечено просто огромное количество людей, начиная со студентов.

2000-е: Бум IDE, первые веб-фреймворки, где вся техническая начинка глубоко скрыта, и достаточно просто понимать реляционные отношения на уровне моделей и делать крупные проекты небольшим количеством кода, что привлекло множество людей уже в профессиональную разработку.
Сколько же я тогда книг, самоучителей написал на эти темки... :)

2010-е: Развитие тенденций lowcode/nocode, бессерверные/облачные технологии, появление различных конструкторов и библиотек компонентов, которые позволяли буквально "рисовать" стандартные бизнес-приложения.
Программирование переживает очередной бум, в айтишку входит всё больше и больше "гуманитариев".

2020-е: Искусственный интеллект: последняя глава в долгой истории?
Да нет же! До сих пор каждое усовершенствование программирования не уменьшало потребность в разработчиках, а увеличивало её! Ну или как минимум привлекало к программированию существенно - в разы, а то и на порядки - больше людей. Сейчас например в геймдеве, смотрю, массовый тренд - ребята бросаются изучать программирование. С помощью нейронки они создали прототип своей игры-мечты, да ещё и с кооперативом, но её дальнейшее развитие, да и просто доведение до первой рабочей версии, требует сперва базовых знаний сисадминства, затем devops/сборка/деплой, затем умения писать простые скрипты на lua python js...

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

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

Мы просто каждый раз обнаруживаем, что ограничением становится не инструмент, а сложность проблем, которые мы пытаемся решить.
🤓30💯1594🤔3
Надо признать, что AI-агенты -- это качественный шаг (куда-то туда:).

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

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

Что интересно, и люди программирует очень похоже. Смотрю по многим десяткам ребят (и девчат), кто у меня изучал программирование с полного нуля: нарешиваем сперва сотни простых задачек постепенно растущей сложности, чтобы когда человек прочитал условие новой задачи такой же сложности, нейросетка в его голове сразу выдала бы приблизительное решение. Собственно сеньоры отличаются от начинающих только тем, сколько примерно похожего на решение кода они могут сгенерировать с ходу. Начинающий - от силы десяток строк, профи быстро напечатает несколько сотен. Тут кстати полезная отдельная связь, дабы осознать свою скорость и рейт ошибок, у меня это курс по Personal Software Process Карнеги Меллона. Но это один микро-скилл, и его недостаточно.

Требуется также и агентское мышление, второй микро-скилл: прежде всего, метод пристального взгляда, когда мы пошагово прокручиваем работу кода (или как минимум его критические моменты) в голове. Тут у людей разные квалификации тоже различия, но скорее в уровне компетенции: начинающий (сознательная некомпетентность) будет долго и мучительно моделировать работу каждой строчки кода и путаться в трёх соснах, а профи (бессознательная компетентность) моделирует работу длинных простынь кода подсознательно; на уровне сознания это будут инсайты или смутное чувство "где-то что-то тут не так" (или "вроде норм" :). Тогда уже пускаем в ход отладчик и логи.

Я по этой причине начинающим с нуля с самого первого занятия даю рекомендации и разбор задачек в режиме пошагового выполнения, чтобы эти два базовых микро-скилла склеивались у них в уме как можно быстрее и прочнее.
(правда, набора на занятия у меня не было уже год, и не знаю, когда снова возобновлю :)
53522🏆5
Пятница 13е, нужен же позитив? :)

Ну, например я убеждён, что телеграмм уже в этом году полностью забанят, причём капитально, затем гугл, затем любые впн, затем оставят только белый список, цифровой рубль и персональный эйай вместо живого куратора за сорм-ом, а затем, согласно пророчеств, под предлогом заботы о безопасности граждан, заключительное: цифровая печать 666 на длань и чело. Думаю, что уже в этом десятилетии всё закончится.

"В сансаре абсолютно всё и всегда связано с дукха — страданием, неудовлетворённостью. В сансаре не может быть никакой справедливости, здравого смысла и т. д.
И наша миссия здесь -- не установить высший справедливый гуманный мировой порядок, а успеть за свою жизнь освободить из этого концлагеря как можно больше живых существ."
(с)
214612🤔11💯4👍1
Этот ваш клод4.5 даже не владеет коммутативностью арифметический операций (5й класс). А ведь иксперты нам говорят, что ещё совсем немного осталось, и жпт начнёт писать супер-код с наноскоростью, только чуть-чуть подправить. Штош...
😁51
"Гум-Гам" кстати очень рекомендую, прочитайте сами и своим детишкам эту светлую фантастическую повесть из 1970-го, святого советского писателя Евгения Велтистова (сперва книга, потом фильм): пророческое, как AI АВТУК, знавший ответы на все вопросы, порабощал людей (и там даже петля времени есть).
544👍13
С Днём Влюблённых в математику! Любимая математика, мы всегда будем вдвоём! ❤️❤️❤️
36🥰10💯5
Продолжаю работу с ментатами 🤓

Курс очень понравился, как и анти-AI правила лаборатории с 2026. Вы совершенно верно написали, что это наркотик: сначала ты валидируешь через AI свои решения, потом идешь за советом, когда сам не знаешь, потом уже ты валидируешь решения AI, а потом сам не заметил как начинаешь проскроливать решение AI -тесты прошло, ииии так сойдет.
Я почувствовал себя прям алкоголиком, который при каждом удобном случае за бутылку (зачеркнуто) Cursor хватается. Но и "опохмел" жесткий, конечно....

Правило "10 строк и 2 условия" сначала показалось мне каким-то странным. "Как можно создать задачу в 10 строк?!" Но посмотрев на release_event, я увидел, что мы тратим 20 строк просто на перекладывание данных из одного кармана в другой.
Упражнение научило меня "видеть" сложность там, где я раньше видел "просто рабочий код". Теперь я буду каждый раз спрашивать себя: "Смогу ли я объяснить это за 5 секунд?" и "Не слишком ли много 'если' в этом коде?"...

Сначала я поставил последнюю стабильную (как написано) версию spring, в итоге при прохождении по часовому видео у меня начали возникать всякого рода ошибки. При вопросе к AI он мне предложил в последствии переписать половину pom файла, в итоге все зашло вообще в дебри, я просто переустановил с прошлой версией Spring...

[У меня и по этой причине никаких видео-уроков нету и не будет в принципе, только текст; то, что надо вдумчиво смотреть час, текстом можно легко и просто познать за 15 минут]

Прочитав материалы, испытывал странное ощущение. Это именно о том, что меня внутри и задевало. Границы, определения, чёткости уровней. Сама концепция подхода. Даже сейчас я не смогу системно выразить свою мысль об этом и уж наверняка ошибусь при построении кода. Но всё же. Они стали более чётскими. Я уже знакомился с материалом "Три уровня рассуждений о программной системе", но в связке с практическим заданием он воспринимается ещё более серьёзнее. И мне кажется там много моментов, которые можно отдельно "пожевать"....

Когда я только пришёл на работу и, по-сути, начал свою карьеру, мне коллеги-разработчики сказали, что содержимое локального yml-конфига вообще не важно, так как на стенде всё равно будет использоваться конфиг из consul. Меня обманули:) Оказалось, что у Spring есть приоритет источников конфигурации...

В общем, очень здорово, жалею, что в ВУЗе на 1 курсе, делая программы на Pascal с процедурами и глобальными переменными - нам объясняли как это делать и отлаживаться (прикладные умения), но не объясняли чем такой подход хорош или плох (фундаментальные)...

Согласно ТЗ мне необходимо сделать такую-то игру. Признаться, пока (надеюсь, что именно пока) какая-то каша в голове вместо хотя бы минимально ясной картины…

Самый главный инсайт: ослабление предусловия и при этом усиление постусловия -- тот случай, когда можно побороть Open-Closed Principle, изменив исходный код!
Это высший пилотаж, который мне в полной мере не поддался: ни в одном моем примере одновременно это сделать не получилось.

[в СИ скоро будет разбор SOLID новая, уже четвёртая итерация!!1
и начнём как раз с OCP]

невозможно найти хороших разрабочиков сейчас, даже по 3-4к долларов, просто не получается, поэтому план уволить совсем неадекватных, а тех кто. может ctrl-c ctrl-v усилить спецификациями и AI надсмортщиками..
5407👍4
Первое поколение AI было основано на больших моделях, когда мы узнали, что с их помощью можно сделать многое человеческое.

Второе поколение ориентировано на снижение затрат и экономию времени: замена работников или сильное повышение их эффективности.

Третье поколение AI будет построено на простой предпосылке, которую Сеть доказывает снова и снова:

Ценность заключается в объединении людей.

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

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

Множество сообществ, от формальных до анархистских (существующие, и те, которые должны существовать) просто ждут решения своих проблем.

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

Пока что большинство проектов в области AI игнорируют те самые сетевые эффекты, на основе которых был создан Интернет. Это наверняка изменится.

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

У AI нет проблем с переключением контекста, но это связано с людьми, и затраты на это огромны, и будут особо расти по мере того, как всё большие части проектов будут создаваться в одиночку и автономно.

Те программисты, которых я знаю, и которые добиваются наибольших успехов в использовании AI, в первую очередь хорошие менеджеры самих себя. И большинство из них, кстати, используют CLI, потому он избавляет от когнитивной нагрузки, связанной с самим кодом. Вы по-прежнему можете переключаться на свою IDE когда вам это нужно, но работа в терминале по-прежнему сосредоточена на последовательностях действий и текстовых инструкциях.

Другими словами, в CLI по умолчанию используется режим менеджера, в то время как в IDE по умолчанию используется режим кодера.

p.s. ну и также vim + far/mc хорошо подойдёт :)
39👍201
.

Облако драгоценностей за неделю.

Приватный клуб.

8 базовых фактов о рынке ИТ-труда в 2026-м, и что из этого следует.
Если подводить итог ситуации в айтишке одним коротким предложением, то оно звучит так:
"миддл"-овщина умирает.
В 2021-м году практически любой сообразительный человек мог бы стать "среднестатистическим" разработчиком. Вы могли немного разбираться в Django или Spring, копипастить из Stack Overflow, иметь приличную должность и получать 150-200 тыс. рублей.
Этого мира больше нет.

Для донов-начинающих:


Знакомый купил в крупной известной онлайн-школе дорогущий курс по программированию "за полгода в айти на зп 160k гарантия трудоустройства 100500%".
Он реально попадал на интервью, но это вызывало у него такое напряжение, что он не продолжал собесы, и даже не принимал офферы, которые получал!..

Как найти свою специализацию в ИТ? Надо ли быть специалистом или универсалом?

База по карьере, серия 23:
Полезно остановиться на пару минут и поразмышлять об огромном объеме вашей потенциальной реальности — просто осознавая, сколько вариантов действительно открыты для вас и могут настроить на правильный лад...

Для донов-неначинающих:

Продолжаю выкладывать для донов материалы СильныхИдей — доступны моим ментатам, но тут расширенные и дополненные версии.
75. Анти-Visitor
Visitor — это паттерн-"тяжеловес". Когда он нужен, альтернатив почти нет; когда не нужен, его внедрение убивает простоту.
Я вам даю секретные техники :) потому что данный подход формально не входит в классические 23 GoF паттерна: это осознанная адаптация принципов проектирования...

7 основных принципов анти-оверинжиниринга...

Медленно, но верно вы переместились в «зону безопасности». Получив стабильную должность в крупной компании, вы переключились на пониженную передачу. Я не настаиваю, что вам нужно проводить больше времени за работой, но вам следует заметно повысить планку!

Продолжение трека "Элитный программист":
36) Как получить повышение через экстремальную ответственность.
Итак, вместо того чтобы обижаться на то, что вас не замечают, в то время как тех, кто обладает более слабыми техническими навыками, регулярно повышают, почему бы вам не принять тот факт, что это находится под вашим контролем?

(все старые материалы для донов постепенно сгорают)

=

Первые сериалы из существенно переработанных и улучшенных материалов СильныхИдей (по сути четыре книги) доступны на бусти:
1. БАЗА программной инженерии
2. Software Design с акцентом на Programming in Small
3. SOLID-25
4. Software Design с акцентом на Programming in Large

=

Новые материалы для ментатов Лаборатории.

В курс карьеры добавлен 127-й материал "База по профессиональным достижениям".
Ричард Кох, популяризировавший принцип 80/20, изучил закономерности достижения результатов в тысячах профессий, и обнаружил нечто поразительное!..

В СильныеИдеи добавлен материал "134) SOLID26: OCP".
Если из 2026-го посмотреть на примеры кода, которые Роберт Мартин некогда отобрал для своей концепции SOLID, ну... они выглядят откровенно дерьмово :)
Одних этих примеров сегодня должно было быть достаточно, чтобы любой компетентный программист скептически отнёсся вообще ко всему, что Мартин говорит о программировании. К сожалению, мэйнстрим дядю Боба любит -- во многом потому, что он сам в некотором смысле инфоцыган -- отлично работает с аудиторией и с критикой, у него прекрасная риторика, и он хороший, классический американский бизнесмен.
Я подробно разбирал в СИ принципы SOLID -- и их сильные стороны, и их восприятие в функциональном программировании. Сейчас в силу однако остающийся высокой актуальности темы сделаю ещё одну итерацию с новыми акцентами...

💪🏻

Мы здесь, потому что это трудно.

=

Гайд про функциональные архитектуры, 53 топика (+0), как наберётся 64, дам ментатам доступ.

=

"Теперь ты увидел каменный кулак Бене Гессерит в мягкой перчатке, немногие остаются в живых после этого. Такая штука для нас не сложна, и со всем нашим арсеналом ты не знаком, учти. Но мы не хотим погубить себя сами. В действительности мы существуем только для того, чтобы служить."
"Дюна"
138👍73
"Не надо молиться о чём-то таком, что просто неправильно исполнить: увеличь зарплату, помоги стать начальником, помоги купить дом, машину, съездить в отпуск. Не получится. А вот то, что самое главное, что касается жизни, веры, отношения с близкими, с родными, с детьми, с родителями."
Патриарх всегда прав 💯

И что там вякают всякие марамойки и рептилии, плюйте на них с высокой вышки без передышки 16 раз.

"Удивительная болезнь явилась нынче – это страсть к развлечениям. Никогда не было такой потребности к развлечениям, как нынче. Это – прямой показатель того, что людям нечем стало жить, что они разучились жить серьезной жизнью – трудом на пользу нуждающихся и внутренней духовной жизнью. И начали скучать! И меняют глубину и содержание духовной жизни на развлечения! Какое безумие! Точно дети, лишенныя разума!"
Святой праведный Иоанн Кронштадтский 🙏
👍50🙏9❤‍🔥5
Вот два возможных результата, когда все будут использовать AI в программировании:

1. Все становятся чрезвычайно компетентными.

2. Никто не имеет ни малейшего понятия, как что-либо работает.

С нетерпением жду, к какому из них мы в конечном итоге (и достаточно быстро) придём.
👍3515💯65
Вы сеньор архитект тим/тех лид. Требуется ли вам понимать, как *внутри* устроены проекты, сгенерённые AI-агентами?
Anonymous Poll
5%
Пофиг, главное чтобы работало по тестам и спекам
51%
Важно, по разным причинам
4%
Ещё не определились
41%
Я пока не этот
👍26🤔116❤‍🔥3
Вы сеньор архитект тим/тех лид. Делаете ли вы ревью кода/архитектуры, сгенерённых AI-агентами?
Anonymous Poll
30%
Регулярно ревьюим всё
15%
Ревьюим разумно
1%
Изредка, случайно/нерегулярно
3%
Почти никогда
52%
Я пока не этот
👍36
Вы сеньор архитект тим/тех лид. Выполняете ли вы *вручную* рефакторинг кода/архитектуры, сгенерённых AI-агентами?
Anonymous Poll
11%
Регулярно рефакторим всё
23%
Рефакторим разумно
7%
Изредка, случайно/нерегулярно
4%
Почти никогда
55%
Я пока не этот
👍32
РКН, пощади!

YouTube наблюдает, как вся их инфраструктура взрывается из-за того, что 32 128 512 concurrent viewers не удалось развернуть.

Навайбкодили.
😁44🐳7🏆4
Ставь китика, если не знаешь, что это за логотип.
😁90🐳39🤓122🤔2
Делаю для ментатов "свой ai-агент", будет код ревью, рефакторинг и обучалка в одном. Сперва для учебных решений, потом можно будет и ваш рабочий код проверять, а потом и архитектуру.

Сам движок, альфа-версию, собственно, я сделал (handmade 100%), на F#, модельку любую вообще можно выбрать (но хочу, чтобы работало в итоге вообще на любых дешёвых бесплатных нейронках).

Главное -- далее грамотно наполнять его базу, хочу загнать все знания программной инженерии за последние 60 лет, но главный акцент на формальных методах, математике, теории типов, текоркате... Всё планирую готовить вручную, так-то обычного поисковика более чем достаточно. Нейронки тут совсем шлак выдают.

Конечно, говорить агенту "сделай code review, вот тебе шаблонные skiils", это детский сад. Я сделал для начала базовый пайп 5-7 шагов, с разбором кода до AST, рефакторинг чистой семантики, program synthesis, вся база computer science. Вытаскиваем самые глубины смысла :)

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

Поэтому крайне важна соответствующая интуиция. Ну примерно как покермэны, получив десятку и туз, могут только по двум картам весьма точно оценить вероятность выигрыша :) Они тренируются специальным софтом, на рынке немало equity/odds trainers, покерных калькуляторов солверов, exploits, apd gto-комбы... При том, что тут есть глубокие инсайты из теории групп (вы же смотрели "Поедем с тобой в Макао"?).
Вот делаю примерно такое, только для программистов, с учётом, что человеческие скиллы стремительно сдвигаются именно в этом направлении (системные/архитектурные инсайты).


...Ну а пока добавьте в ваши агентские skills самую малышовую базу =>

1) Extract pure functions (separate effects)
2) Replace loops with map/filter + fold(reduce)
3) Reduce mutation / prefer immutability
4) Replace null/exceptions with Option/Result-style explicit handling
5) Function composition / pipelines
5🔥47❤‍🔥85