Лаборатория Математики и Программирования Сергея Бобровского – Telegram
Лаборатория Математики и Программирования Сергея Бобровского
1.31K subscribers
1.26K photos
27 videos
971 links
ЛаМПовое с Бобровским
Download Telegram
Люди учатся больше, быстрее и качественнее, когда они учатся у кого-то, с кем они могут регулярно общаться тет-а-тет и у кого есть кнут. Сегодня любой человек может следить за 5-7 топовыми экспертами в своей теме, задавая им вопросы в соцсетях (твиттер тут пока идеальный вариант для этого), и тоже стать экспертом в этой области гораздо - в разы/на порядки - быстрее, чем если бы он изучал её в официальном формате.

Под "официальным" я имею прежде всего массовость: чем больше народу занимается в некоторой структуре, чем больше в ней "потоков", тем менее квалифицирован средний уровень преподавателя/ментора (потому что тем меньше его зарплата -- это база масштабирования любого бизнеса, да и орг.структур в целом), и тем более "официальный" формат.
Собственно, всегда полезно поинтересоваться у ментора, назначенного вам в крупной онлайн-школе, его зарплатой. Он же вас учит тому, как войти в айти и зарабатывать 200т. Почему бы ему самому тогда не уйти в айти, если ему платят 50т.
2🤔378👍7😁5😎4
С некоторым удивлением узнал, что японские кроссворды (нонограммы) -- NP-полная задача (японские учоные доказали!). Однако есть мощные эвристики, часто ускоряющие процесс до P.
(так-то я всегда был убеждён, что NP = P, а скоро и вся мировая криптография прочувствует :)
🤔417😁1
.

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

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

Я отказываюсь использовать AI в качестве основного инструмента написания кода. Мне не нужно их пробовать, чтобы понимать, что он бесполезен. У меня есть инстинкт.
(это сарказм)

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


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

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

Чем хорошо сильное окружение, или строгий ментор (как я:) -- мы не вдохновляем и не мотивируем в вакууме...

Комфортному окружению удобно, когда ты не растёшь. Но стоит тебе начать думать о своём развитии, как ...

"Вера в себя" - красивая ложь для молодёжи. Что вокруг тебя считается нормой, тем ты и становишься...

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

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

Золотые правила программиста N 4.
Ты всё потеряешь, когда найдёшь хорошую работу :) сразу увязнешь надолго в болоте.
...

Если вы засиделись без повышения зарплаты, выбросьте наконец розовые очки и перестаньте ждать чуда.
Никто не следит за вашей карьерой — всем на неё плевать...

Будь осторожен с кэшированием в базах данных! Вот какие тут засады, и как правильно.

Позвольте мне рассказать вам кое-что о том, что произойдет после того, как вы поддадитесь на льстивые речи своих начальников, и согласитесь сменить сеньорство на тимлидство, станете ИТ-менеджером: вы всё испортите :) Много...
Как зарабатывать больше, не переходя в менеджеры.

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

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

=

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

=

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

В раздел "Элитный программист" добавлен материал
87) Математика высокой продуктивности-4

💪🏻

Мы здесь, потому что это трудно.
it's a privilege to do things that are hard.

=

"ЛаМПовое": база математики, arch linux на rust, трейты в сишечке

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

Лаборатория идёт со скоростью самых лучших ментатов.

=

"Зависимость и ключевые элементы. Чувство ментата подсказывало Теду очертания какого-то гигантского паттерна, суть которого была ему недоступна из-за недостатка данных."
"Еретики Дюны"
397🏆3🫡1
Компания Anthropic стала новым партнёром команды Williams F1.
🏆33🤔973
Вам придется научиться продуктивно использовать AI.

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

Но есть нюанс... Сегодня в карьерный гайд добавил базу по использованию AI в разработке.

"...Когда вы используете искусственный интеллект, чтобы обойти "трудности" своего обучения, вы лишаете себя ментальных моделей, необходимых для того, чтобы быть разработчиком высокого уровня. По сути, вы меняете свой многолетний опыт на краткосрочное повышение скорости разработки, и то исключительно в интересах вашего работодателя, который не добавит вам за трёхкратную скорость даже 2% к зарплате."
236🏆107👍3💯2
This media is not supported in your browser
VIEW IN TELEGRAM
Когда используешь синхронный фреймворк, и никак не можешь понять, а что собственно происходит...
😁452
Смотрю, взлетает новый тренд "свой roblox". Классная темка для распила, потому что со стороны смотрится проэкт эпическим, думаю что не менее миллиарда озвучат :) При том, что вкладываться надо прежде всего в наукоёмкие направления -- например "свой теорем-прувер", сегодня абсолютный топ в формализации математики, филдсовский Теренс Тао не даст соврать, с ним вся европейская computer science. А у России в этом плане (пока ещё) одни из лучших интеллектуальных ресурсов.

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

Честно, вот прям очень жалко, такой шанс сделать русской всю мировую математику, по заветам Воеводского, редко когда бывает, а мы уже почти упустили...
🤔3795🙏3🏆2
Нашёл в файлах Эпштейна (искал по слову "haskell") классный гайд

https://www.justice.gov/epstein/files/DataSet%209/EFTA00624128.pdf

Ben Goertzel with Cassio Pennachin & Nil Geisweiller & the OpenCog Team
Engineering General Intelligence,
Part 2: The CogPrime Architecture for Integrative, Embodied AGI
September 19, 2013


Забавно почитать, как до явления нейросетей обсуждали AGI.
😁4443
Forwarded from ivan zakutni
Запустил автономного AI-агента на VPS.

Да, тот самый дырявый openclaw, игнорировать его не удалось 🤔

Он работает 24/7, и интерфейс связи со мной – телеграм бот (удобно!)

Имя Ku и аватарку бот себе придумал сам (ну или почти сам.)

Впрочем возможно это КУ и такое 🔔

Если попытаться выделить основную его задачу... Сейчас ее можно назвать, например – "Knowledge management automation".

Ужасное имя, ничего не понятно, лучше – “AI based Exocortex”!
Но этого тоже мало, поэтому расскажу немного деталей!

Из какого функционала состоит система:

- Индексирует документы из моего Obsidian с синхронизацией каждые 15 мин (их там счет на сотни, тысячи еще вроде бы нет).
- Ещё через тот же Obsidian на сервер попадает выжимка по моей работе, собираемая с лаптопа Claude Code агентом с MCP Pieces.
- Туда же, отдельной под-директорией попадает журнал из LogSeq (я начал его использовать недавно для быстрых записей, мышления письмом по книгам и руководствам которые я изучаю. Удобнее чем raycast notes или мобильный обсидиан)
- В довесок он собирает дайджесты с arXiv, почтовых рассылок, и блогов разнообразных и уважаемых учёных – утром и вечером.
- Из всей этой красоты агент извлекает концепты и некоторым образом строит связи
- А еще – генерирует flashcards и с нормальным spaced repetition (FSRS) дважды в день проводит мне quiz-сессии, отмечая что и насколько хорошо я вспоминаю.
- Ну и наконец – Ku публикует инсайты в собственный телеграм канал @ku_notes

Инсайты тоже можно назвать "собственными", потому что у агента есть отдельные кроны/задачи для исследований/размышлений/"самопознаний", результаты которых он отслеживает и собирает в отдельной директории. Конечно не теряя доступ к моему хранилищу, и тому что он высосал из почты и блогов, но тут нет жестких ограничений – темы для исследований он выбирает сам, хотя я и могу подкидывать идейки.

Между “собственными” инсайтами бота и моей личной базой знаний есть жесткая граница. “Свои” инсайты Ku не может просто так добавлять в Obsidian – это read-only копия, и единый источник истины все еще в моем локальном репозитории.

Этот банк пополняется мной, моим мышлением письмом. На случай если Ku вдруг совершит какое-то чудо открытие и поделится им со мной, способ попасть в банк концептов / flashcard's есть лишь один – через мои мозги, через то самое мышление письмом.

***

Ещё несколько интересных решений которые вокруг/внутри этой истории работают:

1. Конечно же я сразу набил ему "голову" минимальным [FPF](https://github.com/ailev/FPF) 🙂 Ku, кстати, дистиллировал спецификацию FPF сам себе в skill-pack. Возможно я этот скилл рассмотрю ближе, и потихоньку доделаю под универсальное использование с другими агентами.

2. MemSkill-inspired память – навыки извлечения эволюционируют через фидбек. Да, это очень свежая папира, и Ku после своей сессии размышлений по FPF предложил внедрить – я помучал вопросами и одобрил! Круть!

3. Есть механизм "Состязательной рефлексии" – один процесс генерит тезисы/идеи, другой ищет контр-доказательства и критикует.

4. Pieces интеграцию стоит упомянуть еще раз (никто же поссылкам не жмет!). Pieces это local-first (с оговоркой) комбайн с визуальными модельками, который смотрит на все что вы делаете и записывает себе в память. Там есть дескопный интерфейс, и MCP – собирает вполне себе глубокий рабочий контекст. В дизайн Ku очень хорошо зашло. Ух, теперь не только для демо митов буду использоваться с запросом "Аааэээ чо я делал весь спринт кроме xyz?", теперь Ku смотрит что я делал, находит связи с кусками из дайджестов, или моими мыслями/записями/постами из Обсидиан и говорит – "Смари чо нашел, это возможно интересным образом вязано!"

Почему все это не такой уж и rocket science:

- OpenClaw даёт солидную базу автономности из коробки, не смотря на всего его несовершенства.
- Opus достаточно умён, а все процессы достаточно просты, сегрегированны и чётко описаны чтобы эффективно им следовать
- Хватает дешёвого VPS — 2cpu/4gb
- Obsidian vault = просто файловая система, а rsync, fswatch и прочие микро-автоматизации на сервере и вашем компе делаются элементарно.
Please open Telegram to view this post
VIEW IN TELEGRAM
252818🤯8❤‍🔥3👍3
↑↑↑ Продолжаю работу с ментатами 🤓 ↓↓↓

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

...Стало заметно, что самые полезные 30–50 минут работы проходят вне IDE. Когда я формулирую словами шаги алгоритма или правила системы, структура кода затем выстраивается почти автоматически. Если я не могу описать словами, что делает фрагмент логики, значит, я всё ещё думаю на уровне «как выполняется», а не «что означает».
Теперь главный вопрос перед любым фрагментом логики для меня звучит так: «Какая сущность или правило системы здесь реализуется, а не какой именно код здесь написан?»

...Мне кажется работа над "запахом кода" может вестись непрерывно. Особенно когда у тебя не так много опыта и ты создаешь много "запаха" во время реализации первого релиза. Тебя подгоняют сроки. Регулярно я выполняю очередной коммит с мыслью, что после того, как выпустим проект в прод и пустим первых пользователей, то я обязательно вернусь и поработаю над этим "запахом". Мне практически ежедневно хочется вернуться и внести очередные изменения, которые устранят этот "запах".
...Да, LLM уже делают свою работу гораздо лучше, чем было еще год назад. И если такой код получается рабочим, но "запаха" у такого кода достаточно много. В принципе как и у людей когда мало опыта и подгоняют по срокам.

[...] Отменили интервью, сказали, что нужна релокация (Азербайджан). Возможно, причина выдумана)

[...] Не решил за час алгоритмическую задачку по нахождению самой длинной строго монотонной последовательности. Алгоритм написал, но с ошибками. Кстати в этот раз решал на Python. Буду дальше практиковаться в написании алгоритмов на вашем курсе.

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

...Благодаря последним заданиям HW, начал примерно понимать как архитектурно смотреть на проект и как можно его менять. Часто ловил себя на том, что читаю задание по изменению архитектуры и совсем не понимаю, а как это сделать у себя, особенно так, чтобы стало лучше. И вот наконец набралось то количество информации из ваших материалов, которое начинает превращаться в единую картину. И я начал ощущать, будто стал понимать как следует смотреть на проект. Раньше я вроде делал что-то в плане архитектуры, и возможно далеко не худшим образом, но всё это было будто на автомате, без осознания, а почему именно я делаю так. И вот при выполнении очередного задания HW, я ощутил, что начинаю понимать, а как вообще можно выразить архитектуру, чувствовать какие-то границы и т.д. И хоть это понимание ещё довольно примитивно и мне предстоит ещё расти и расти, но я рад, что ощутил прогресс...

...Закончил знакомство с блоком материалов по экстремальной ответственности. Пока изучал, казалось, что вроде бы проникся общей идеей, осознал пользу принятия ответственности, но тут вышел тимлид, стало психологически легче, и сразу появился соблазн сбросить с себя всю ответственность за решения в том числе по своим работам.
Отдельно отмечу, что эти материалы (в основном 40 - как не выгореть…) помогают не только в рабочем процессе, а в том числе и в общежитейском-семейном :)

...Нашёл для себя полезность такого "умничания" в том, что можно использовать заведомо неуспешное с точки зрения прохождения собеседование превратить в полезный инженерный спор, при условии, что интервьюер действительно разбирается в том, о чем спрашивает (хотя вряд ли).
По моему опыту таких интервьюеров, которые намеренно сливали, не было. Но были такие, которые не принимали ответ, так как ожидали "типичной" формулировки ответа, как в моем случае при собеседовании в [...]. К таким отношение не лучше, ибо они не видят глубины собственного вопроса и весьма ограничены в понимании вопроса.
1🏆25👍1442❤‍🔥1
Потестил последние модельки, вокруг которых сегодня хайп - опус4.6 кодекс5.3

"когда две комплексные групповые алгебры над конечными абелевыми группами изоморфны?"

Заразы, все справились :)

Когда |A| = |B|

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

Это кстати довольно важный момент в кампутер сайнсе, например type erasure. Как стирается структура группы до размерности, так и Java стирает List<Int> и List<String> до одного List в рантайме.
Разные типы, но одно представление.
1🤯34157👍2
Прекрасное: ASML (голландский лидер рынка литографического оборудования EUV - самое важное для мирового рынка чипов, считается едва ли ни самой сложной инженерной конструкцией в человеческой истории)

уволила 1700 (!) менеджеров, при этом расширив айтишные и инженерные позиции.

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

Дико уважаю.
46💯20👏127❤‍🔥2
...Но всё же я этих ваших искусственных болванов захейтил :)

опус4.6

4.6: функтор C[−] не верен на абелевых группах

разве??

4.6: Функтор верен (не склеивает стрелки), но склеивает объекты с точностью до изоморфизма. Спасибо за вопрос — формулировка «не верен» была ошибкой.


жпт5.3

функтор C[−] не верен на абелевых группах?

5.3: Не верен (не faithful).

разве??

5.3: Ты прав: на категории групп функтор C[-] верен (faithful).

💪🏻👊🏆
377🏆3👍1🫡1
Ну, с Днём Науки!!1

Так-то вчерашняя победа над очередными "топовыми" версиями нейронок возникла вот из этих размышлений =>

У нас есть структурно разные реализации стека -- с помощью динамического массива, и с помощью связного списка. Но после того, как мы их "компилируем" в общую алгебру C[G] - интерфейс/абстрактный класс - они становятся неразличимы (изоморфны как алгебры), хотя и имеют разные вычислительные свойства.
Об этом же говорит и унивалентность в HoTT: критичным будет выбор эквивалентности типов. Если она будет слишком грубой, то у нас склеятся типы, которые склеивать не нужно.

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

...Да, но как формализовать важность доменных различий?

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

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

Но ведь все эти моменты мы вполне можем формализовать!

...Думаю вот, а не сделать ли такой мета-фреймворк для AI, который вообще уничтожит всё человеческое программирование? :)

Или всё же лучше подготовить условный "гайд", который сделает только его владельца x100..x1000...x1000000 -кратным эксклюзивным программистом? А саму мета-методику хранить в тайне, и доверять лишь избранным ментатам, как Бене Гессерит :)

А то вы так и будете бесконечно "прописывать скиллы для агентов" с кучей топологических дыр.

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

Impossible? Like that would stop me.
2🥰32134👍4
...И у меня сильное подозрение, что конкретно для уничтожения мэйнстрима с помощью агентов смитов подойдёт только Haskell (Хиндли-Милнер на стероидах), потому что F# не умеет автоматически выводить функторы. Можно помучиться с помощью free monad, но всё равно в нём нету ни тайп-классов, ни deriving, ни GADTs, ни HKTs...

Haskell зараза, довольно кривой сам по себе, награбастал себе кучу крутых абстракций :)

Хорошая кстати идея: начинаем проект с подбора максимально сильных абстракций, с которыми знаком, хотя бы на пару уровней выше классических паттернов GoF.
👍3313❤‍🔥1
То есть как минимум чистое ядро бэка, бизнес-логику, смиты пилят на хаске,
а фронт (или под ноду) на purenoscript -- он концептуально ближе всего к хаскелю, есть вывод функторов, тайп-классы с higher-kinded types (но нету deriving via)...

В качестве модной альтернативы на фронтенд можно взять совсем молодой Roc
(автоматический вывод тайпкласс-подобных интерфейсов), который умеет компилировать например в wasm, и в целом весьма прагматичный.

Как альтернатива хаскелю вполне можно посмотреть скаловский dotty, по возможностям практически как ps. Конкретно под суровый прод я бы даже наверное со скалы3 и начал.
31👍116
.

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

Сегодня будет важная информация для ментатов, посмотрите вечером наши новости - новый вид скидок 💰 (кто хорошо занимается, последние материалы могут быть вообще бесплатны!)

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

Сейчас повсеместное распространение получил вайб-кодинг, и на первый взгляд это действительно выглядит впечатляюще. Вы можете превратить идею в работающее приложение за считанные минуты, просто описав, чего вы хотите, и предоставив AI выполнять 98% работы.
Многие новички создают таким образом MVP, игры и небольшие продукты. Некоторые из них даже внедряют эти приложения, привлекают пользователей и зарабатывают деньги, несмотря на то, что у них очень мало опыта в программировании.
И, честно говоря, эта часть реальна.
Проблема проявляется только после того, как вы переходите к первой рабочей версии...

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


Что делать, если трудно заниматься даже на курсе программирования с нуля?..

Вот неприятная правда: тебе не нужны люди, которые "верят в тебя". Вот кто тебе нужен...

Изучение программирования в 2026-м году выглядит совсем иначе, чем два года или даже год назад (лонгрид, выложу также на бусти)...

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

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

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

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

Продолжаю выкладывать для донов материалы СильныхИдей — доступны моим курсантам, но тут расширенные и дополненные версии.
74. Не путаем DI и ADT
"Начала выстраиваться наконец-то модель ООП,которая изначально выстроена,к сожалению,с помощью Dependency Injection - как и везде сейчас,и слабого курса в универе,где мы просто С++ учили."

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

=

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

=

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

В раздел "Элитный программист" добавлен материал
88) Математика высокой продуктивности-5

В курс карьеры добавлен 125-й материал "База по использованию AI в разработке".
По сути, вы меняете свой многолетний опыт на краткосрочное повышение скорости разработки, и то исключительно в интересах вашего работодателя, который не добавит вам за трёхкратную скорость даже 2% к зарплате...


💪🏻

Мы здесь, потому что это трудно.
it's a privilege to do things that are hard.

=

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

Лаборатория идёт со скоростью самых лучших ментатов.

=

"Любая дорога, если дойти до её конца, ведёт прямо в никуда. Если держите путь на гору, поднимитесь чуть-чуть по склону, чтобы убедиться, что это действительно гора (Фрэнк Герберт знал про градиентный спуск уже тогда:). С вершины вы этого не увидите."
притча Бене Гессерит
"Дюна"
13010👍2
Последнее время многие ребята мне радостно пишут, что им на работе дали бесплатный аккаунт к условному жпт, причём немало и таких, у кого безлимитка за 200 долларов.

Дорогие, следите за руками :)

Вы получаете 2000 долларов и выполняете некий объём работ. Работы много и желательно её делать побыстрее.

Но если взять к вам ещё одного двухтысячника, то работа ускорится ну в лучшем случае раза в полтора, да и то не сразу. И тут внезапно оказывается, что если платить не 2000 зарплату белковому, а 200 за токены, то человек в паре с жпт начинает работать в два-три раза быстрее (а может и ещё продуктивнее). Ничего личного, просто капитализм.

Так-то и пофиг, но таким образом уничтожаются ваши собственные скиллы, и жпт200 приносит только выученную беспомощность...
🤔27💯1783😁1
В развитие темки.
Ты говоришь агенту "Мне нужна подсистема управления заказами: клиент может создать заказ, добавить товары, оплатить, отменить до отправки....".
Агент бодро берётся за работу, и где-то на пятидесятой итерации, потратив миллион токенов, выдаёт нечто вроде бы минимально работающее.

Допустим, 50 классов, которые можно комбинировать 2500 разными способами. И через полгода, после новых хотелок до 200 классов, жпт как сгенерит новый код, так сломает старый, и 80% токенов уходит на "поправь тут", "сломалось это", "не то имел в виду". А вскоре и контекст всех классов не будет влазить в окно, и на этом всё :) в таком случае принципиально невозможно добавить новый класс не поломав что-то в уже существующем.

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

5 таких подсистем - миллионы токенов, 20 - сотни миллионов, 50 - просто нереально. Каждая починка ломает что-то другое, откаты копятся, и начинается экспоненциальное блуждание в пространстве решений.

На практике-то и 100 млн токенов легко может улететь и на одну подсистему, если допустил топологическую дыру в спеке.

И вот что с этим мы будем делать :) =>
11👍3286🐳3
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