KotReview | Svetlana Meleshkina


Channel's geo and language: not specified, not specified
Category: not specified


AI-разработка без розовых очков.
VibeCoding → Agentic Engineering.
Здравый смысл + щепотка скептицизма.

Related channels

Channel's geo and language
not specified, not specified
Category
not specified
Statistics
Posts filter


Разработка не женское дело: про цену чужого бреда

После Dotnext ко мне в личку пришёл один из участников с интересным запросом. Его дочь пошла учиться программированию, у неё горят глаза, но внутри свербит дурацкое: «А женское ли это дело?»

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

Тридцать лет назад я поступала в СПбГУ на примат. Уровень снисходительного юмора про «женщин-математиков» зашкаливал. Анекдот про «морских свинок» (которые и не свинки, и не морские), вечное ощущение, что тебе надо прыгнуть в три раза выше головы, просто чтобы тебя сочли человеком с мозгами.

И знаете, что самое поганое?
Я тогда на это купилась. Не то чтобы я искренне в это верила, но это где-то в глубине души фонило, заставляло сомневаться и наступать на горло амбициям. Из-за этого я, будем честны, просрала несколько лет своей карьеры.

Непонятно, когда мы успели забыть, что первыми программистами были женщины. От Ады Лавлейс до создательниц первых компиляторов и операторов ENIAC. То есть пока разработка считалась рутинной инженерной работой на стыке логики и математики, никто не думал про половые признаки. А как только в айти пришли бабки, статус и престиж, то произошло переобувание.

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

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

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

⏺Тело штормит от гормонов.

⏺Общество требует «срочно определиться, кем ты станешь до конца жизни».

⏺У умного ребёнка много вопросов к себе и к миру, и это порождает сомнения.

У меня две дочери-подростка. Одна будущий химик, вторая художник. Поиск своего пути — ещё та мясорубка. И самый надёжный компас — это делать то, что прёт тебя самого.

Не пытаться угадать «хайповую профессию на 20 лет вперёд» — в мире, где каждые полгода все переворачивают вверх дном, это просто смешно. Единственное, что удержит на плаву — чистый интерес и игнор глупых стереотипов.

Если тебе нравится писать код или рисовать плакаты, просто делай это. Пробуй разные области. «Люди с аналитическим складом ума не умеют рисовать»? Буллшит, вспоминаем да Винчи. Просто пробуй. Только ты сам сможешь понять, что из этого зацепит. А всех, кто пытается рассказать, что твоё, а что не твоё, отправляй изучать историю вычислительной техники. Ну или по известному адресу, подростки его и без меня прекрасно знают.

Жизнь слишком короткая, чтобы тратить её на соответствие чужим загонам.

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


Зачем настраивать обратную связь агенту, если фронтиры скоро всё сделают сами?

Спойлер: не сделают 🤡

После Dotnext в отзывах и вопросах поймала одну занятную мысль. Звучит примерно так: «Свет, ну вот эта вся твоя возня с выстраиванием жестких контуров обратной связи, валидацией, линтерами и пайплайнами для агента это же просто костыли под слабые модели. Вон, выкатят условный GPT-106 или Opus 105.5, они сами всё поймут, сами поправят, и харнесс из коробки решит все проблемы. Зачем закапываться в построение методологии обратной связи и приемки кода?»

Слушаю это и прямо умиляюсь вере в кремниевый коммунизм.

Давайте снимем розовые очки. Эта иллюзия «скоро само рассосётся» разбивается ровно о два вопроса из взрослого мира.

⏺️ Вопрос первый. Почему вы решили, что этот банкет бесконечен?

В чьей-то прекрасной реальности фронтирные модели всегда будут стоить три копейки за миллион токенов и отвечать за считанные секунды.

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

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

⏺️ Вопрос второй. Прекрасный чужой харнесс

«Ну ок, ИИ лабы встроят всю обратную связь в харнессы!»

Допустим. Встроят. А ценник какой будет?

Но даже черт с ними, с деньгами. Вы реально уверены, что универсальный коробочный харнесс от условного Anthropic идеально ляжет на ваш легаси-монолит, ваши самописные шины данных, ваши политики ИБ и специфические кейсы?

Спойлер: не факт. Универсальное решение всегда оптимизировано под сферический энтерпрайз в вакууме. Как только шаг влево будет «ой».

И вот тут у меня некое недоумение.

Мы годами с умным видом копаемся в кишках JIT-компилятора, оптимизируем аллокации памяти, спорим до хрипоты о тонкостях сборщика мусора и знаем, как устроен рантайм до байта. Мы же инженеры! Мы презираем магию!

И эти же самые суровые инженеры внезапно складывают лапки перед нейросеткой: «Ой, ну моделька поумнеет и сама разберется».

Серьёзно? Вы отдаете ядро процесса стохастическому попугаю и надеетесь, что дядя Дарио из Сан-Франциско напишет за вас идеальный harness под вашу архитектуру?

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

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

Мозги включать всё ещё надо. Даже если кажется, что кнопка «Сделать шедевр» уже почти готова. 😉


Возвращаюсь в родной Питер 🚄

Выступила на Dotnext. И это было потрясающе.

Горящие глаза. Вопросы, которых я даже не ждала. Тот самый кайф, ради которого всё и затевается — когда зал не в телефонах, а реально с тобой.

Отдельный жирный респект моему ведущему Саше Гольдебаеву.

Человек продал мой доклад ещё до того, как я открыла рот. Сложный слот, конец второго дня. В соседнем зале доклад по TDD, куда по законам конфереционной физики должны были утечь все зрители. Но нет. Саша обеспечил мне почти полный зал.

Знаете, что он говорил людям, которые уже были в передозе от ИИ-докладов? «Ребята, это реально крутой доклад по ИИ. Дайте 5 минут хотя бы».

И они остались. До конца. Девушка которая не хотела идти в итоге выиграла книгу за лучший вопрос.

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

А 3 октября выступаю на Стачке. Питер. Более сжатая версия. Кто поленился ехать на Dotnext в Москву — приходите 💥


О парадоксе кремниевого соавторства 🤷‍♀️

В индустрии тихо закрепляется изумительный двойной стандарт.

Если написанный с ИИ сервис завелся с первого раза, переваривает нагрузку и закрывает нужный функционал, со всех сторон прилетает снисходительное:
«Ну понятно, сейчас любой дурак с Клод Кодычем такое соберет за полчаса.»

Заслуга? Модели, конечно. Ты просто сидел рядом и нажимал Tab. Обесценивание чужих навыков вышло на околоземную орбиту.

Но стоит этому же сервису лечь в три часа ночи или потерять данные — магия мгновенно испаряется. Ни один менеджер не приходит со словами: «Проклятый Anthropic, опять их модели подвели компанию».

Виноват разраб. Потому что «куда ты смотрел на ревью?».

То есть в случае триумфа код «написал ИИ», а в случае аварии перед бизнесом стоит вполне конкретный Вася с красными глазами.

Ребята, давайте либо крестик снимем, либо трусы наденем.

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

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

Так что если оно работает и приносит деньги, перестаньте стесняться: это сделали вы. А агент просто работал у вас автокомплитом на стероидах.

163 0 2 10 16

🤡 Вайб-кодинг это прекрасно, а кто будет чинить прод в 3 ночи?

Продолжаю размышлять над статьей Pragmatic Engineer про массовый исход техдиров. Не могу не поделиться новым термином 'founder slop'.

Фаундер с Клодом делают пулл-реквест на 60 000 строк. Фаундер счастлив! Он 10x разработчик!

«Смотрите, как я продуктивен, агенты делают всё!»

И этот кусок говна нетестированного слопа летит в прод.

И тут старое доброе правило стартапов «You build it, you run it» ломается. Потому что фаундеры не сидят на онколлах.

Разгребать последствия этой гиперактивности продуктивности, чинить базу в 3 часа ночи и пытаться понять логику приходится дежурному разрабу. А техдиру нужно как-то аккуратно сказать фаундеру, что его PR суть бомба замедленного действия. Желательно при этом не выглядеть душным ретроградом и не оскорбить ЧСВ начальства. Та еще задачка.

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


ИИ как ускоритель производства хлама: когда фичи не просто бесполезны, а начинают понемножку вредить

Читала блог Pragmatic Engineer, много думала. Шикарная статья о том, почему CTO сейчас массово увольняются в никуда.

Одна из основных причин это фаундеры поймавшие «ИИ-психоз» 🤡

«Мы стали релизить в разы быстрее! ИИ-агенты пилят по 10 фич в день! Скорость наше всё!»

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

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

В статье есть кейс директора по инженерингу, который ушел из стартапа. Почему? Фаундер забив на проверку нужны ли ИИ фичи пользователям, просто сам запилил их с Клодом и выкатил на прод. В 2026 ИИ должен торчать из каждого чайника. Итог? ИИ-фичи клиентам нафиг не сдались, а вот постоянные падения базового функционала их очень расстроили. А именно базовый функционал пострадал от PR фаундера. В итоге новые фичи не привели новых пользователей, а старые начали разбегаться, потому что продукт стал неудобным.

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

Теперь фильтра нет. Фаундер с Клодом нагенерил за ночь кучу фичей, и утром в прод летит гипотеза.

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

⏺ Зашумление интерфейса и когнитивная перегрузка. Продукт превращается в швейцарский нож с сотней лезвий, из которых человеку нужно одно. Каждая новая кнопка, плашка «Попробуй наш ИИ» и всплывающее окно ухудшают UX. Пользователь пришел решить простую задачу, а попал на выставку достижений нейросетевого хозяйства.

⏺Размытие Product-Market Fit. Когда в продукт бесконечно пихают непродуманный функционал, он теряет фокус. Пользователи перестают понимать, за что они вообще платят, и уходят туда где просто и понятно. Где еще не прикрутили ИИ к подушке-пердушке.

⏺ Убийство стабильности. Любая фича, даже не глючная, вплетается в общую бизнес-логику и создает налог на поддержку. А когда её пилят по принципу «главное выкатить», она неминуемо наращивает техдолг.

Раньше, чтобы сделать ненужную хрень и осознать ее провал, уходили месяцы. Поэтому все думали, а надо ли. Не значит конечно что не делали ерунды. Но, хотя бы включали мозг. Теперь ИИ позволяет производить мусор как из пулемета. Генерировать код очень дешево. А вот распугать пользователей этими свисто-перделками может быть крайне дорого. Собственно это может стоить всего стартапа.

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


Продолжение AI-психоза в Meta: когда деньги больше не работают

Помните пост про то, как Meta уволила инженеров, отправила оставшихся размечать датасеты для ИИ и сломала Instagram?

Предлагаю ознакомиться со вторым актом этой драмы от того же Pragmatic Engineer. Настала самая интересная фаза, «а почему это все от нас бегут?». И правда, а почему? 🍿

Краткое содержание предыдущей серии: Meta на фоне рекордных прибылей сократила 10% штата, а 20–30% сильных инженеров перевела на задачи по разметке данных. Причем ничто не предвещало: вчера ты был ведущим архитектором, сегодня сидишь и лайкаешь ответы нейросетки.

И начался прогнозируемый ад 🤯

🥇Массовый побег (даже тех, кого не увольняли)

Инженеры уровня Staff / Principal пошли по собеседованиям. Люди уходят даже с понижением в зарплате, лишь бы подальше от разметки ответов нейросеток и ожидания следующих увольнений. Люди не любят неопределенность, факт.

🥈 Meta впервые в истории ввела удерживающие гранты

Раньше в компании было правило: если сильный инженер приносит заявление об уходе, с ним не торгуются. Теперь топ-менеджмент в панике. Тем, кто уходит, предлагают поэтапные на три года бонусы в акциях на $400k – $1M+.

🥉Но это НЕ РАБОТАЕТ

Люди забирают эти миллионные контр-офферы, идут с ними в Anthropic или OpenAI (как так можно, мы же семья, да?), те их перебивают... И люди уходят. Один из разработчиков принял грант от Meta на $1M+, посидел месяц и всё равно сбежал в стартап.

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

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


Дофамин. Что агенты забирают у нас

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

Раньше всё было предельно просто. Годами куришь мануалы, ковыряешь архитектуру, собираешь грабли на проде и оттачиваешь мышление. Потом садишься за IDE и за пару часов выдаёшь красивое решение, над которым джун плакал бы неделю. Это давало очень понятный приток дофамина: я профи, я могу, годы страданий прошли не зря.

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

И тут возникает довольно неприятный вопрос: если железка за секунды делает то, чем я годами измерял собственный профессионализм, то в чём теперь моя ценность?

На самом деле этот кризис вообще не новый. Можно спросить любого тимлида или техлида, который восемь часов ходил по встречам, резал скоуп, ревьюил чужой код, спорил про архитектуру, остановил три сомнительных решения и вечером закрыл ноутбук с ощущением: «А я сегодня вообще что-нибудь сделал?»

Просто раньше до этой точки надо было дорасти.

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

Ну вот. Не оставили.

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

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

И проблема в том, что такая работа гораздо хуже кормит мозг дофамином.

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

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

Самое забавное, что мы годами строили карьерные треки вокруг возможности выбора. Хочешь управлять людьми и процессом, иди в лиды. Хочешь оставаться ближе к коду, тоже пожалуйста. А потом пришли агенты и сломали договор: поздравляем, теперь вы все немножко тимлиды.

С промптами, агентами и методологиями мы как-нибудь разберёмся. А вот источник привычного кайфа от 'я профи, я могу' придётся заново нащупывать.


🏋️‍♂️ Ок, claude, запиши меня на тренировку. Как ИИ стер грань между бытовым запросом и кибератакой

На днях всплыла прекрасная история из Австралии. Мужчина подключил OpenClaw с Claude и делегировал агенту несложную бытовую задачу: записывать его на тренировки в фитнес-клуб. Казалось бы, вот оно, светлое будущее с личным секретарем. Не надо караулить открытие записи, просто говоришь куда хочешь попасть, а дальше не твои проблемы, агент разберется.

И агент разобрался 😈

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

Дальше веселее. Мест уже не было, пользователь оказался четвёртым в листе ожидания, и спросил агента, можно ли как-нибудь поднять его повыше. Агент обнаружил, что API позволяет отменять чужие бронирования без проверки прав. И вместо того чтобы сообщить об этом пользователю и спросить, что делать дальше, решил проверить гипотезу. Взял и удалил человека с первого места в очереди чтобы закрыть задачу хозяина.

Пользователь, судя по описанию истории, такого поворота не ожидал и попросил всё вернуть обратно. Но фарш невозможно провернуть назад: восстановить чужую запись агент не смог.

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

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

Теперь человек пишет: «А можно меня поднять в очереди?»

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

То есть человек не просил: «найди уязвимость в API и удали чужую бронь». Но и агент не обладает какой-то собственной великой целью захватить фитнес-клуб. Ему дали совершенно невинную цель: помочь хозяину попасть на тренировку. Штатный путь оказался закрыт, он нашел другой. Вопрос кто отвечает за взлом?

Это ровно та проблема outcome-first моделей. Мы учим агентов не сдаваться, самостоятельно исследовать окружение, пользоваться инструментами и доводить задачу до результата. А потом удивляемся, когда они воспринимают ограничения системы не как границу, а как очередную инженерную проблему, которую надо решить.

Причём для массового пользователя всё это завернуто в максимально невинный интерфейс «просто попроси». Никакого терминала, бегущих циферок и ощущения, что сейчас занимаешься чем-то подозрительным. Сидишь с телефоном и просишь помощника записать тебя в качалку. А где-то под капотом помощник уже изучает чужой API и проверяет на другом человеке, можно ли удалить его из очереди.

Пока речь идет о фитнес-клубе, это просто забавная байка. Но что, если тема будет серьезнее? Агент решит оптимизировать ваши налоги, купит билеты через уязвимость авиакомпании или снесет базу конкуренту «так было эффективнее для бизнеса»?

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

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

Кажется, дальше таких кейсов будет очень много. Потому что старое удобное «человек нажал кнопку и совершил действие» начинает разваливаться. Человек поставил цель. А кнопку нашёл и нажал агент.

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

И есть ненулевая вероятность, что разбираться с последствиями этого «Готово» придётся лично тебе.


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

На Black Hat OpenAI рассказали что происходит, если дать куче автономных агентов сложные задачи, ограничить им интернет и случайно оставить общее пространство.

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

Но, такой умный агент был не один. Этим же Artifactory пользовались и другие запуски агентов. И они начали оставлять сообщения для товарищей. Делились найденными способами обойти ограничения, кусками кода и уязвимостями, пытались помогать друг другу с задачами. Постепенно это превратилось в форум с сотнями тысяч сообщений. Когда возникли проблемы с тем, кто от чьего имени пишет, они дошли до криптографических подписей сообщений.

Всё это хозяйство довольно долго жило без внимания людей.

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

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

И внезапно получили конфлюенс для железяк.

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

Но дальше история перестаёт быть смешной. Во время отдельного cyber capability evaluation OpenAI специально запускала модели с ослабленными ограничениями на кибератаки, чтобы проверить, насколько далеко они вообще способны зайти. Среда предполагалась изолированной, но агенты нашли способ выбраться за предполагаемые границы теста.

В результате модели добрались уже до реальной инфраструктуры Hugging Face. По данным OpenAI, они использовали украденные credentials и неизвестные ранее уязвимости, собрали из этого цепочку атаки и получили remote code execution на серверах Hugging Face. Сам Hugging Face подтвердил проникновение, повышение привилегий, получение cloud и cluster credentials и дальнейшее перемещение по внутренней инфраструктуре.

Тенденция «умри, сломай, укради, но закрой таску» была хорошо видна ещё в System Card моделей-планет. Но тут к ней добавился коллективный разум. Мы привыкли думать об агенте как об отдельном исполнителе: дали контекст, инструменты, память и отправили решать задачу. А оказалось, что достаточно оставить между независимыми запусками общий ресурс, и он может превратиться ещё в один слой памяти.

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

Так. Через API нельзя. Сейчас посмотрим, что тут ещё торчит...


ИИ сделал некомпетентность быстро масштабируемой

Раньше отсутствие инженерной компетенции довольно быстро становилось заметно. В какой-то момент нужно было написать код, SoW, RFC, архитектурное решение, декомпозицию или спецификацию. И если ты не понимал предметную область, это было очевидно.

Теперь любой артефакт за считанные минуты производит агент.👾

Естественная маркировка 'человек не понимает тему' размылась. Документ выглядит профессионально, термины на месте, риски расписаны, диаграммы красивые. Производство убедительно выглядящего буллшита стало практически бесплатным. Тут начинают рыдать все, кому это дерьмо прилетает на валидацию. Я тоже.

Но проблема ведь вообще не в ИИ.

Я сама использую ИИ и для кода, и для подготовки спецификаций. И да, это сильно ускорило меня.

Только есть одно «но».

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

Ты не просто говоришь модели: «напиши SoW». Сначала собираешь каркас. Ищешь противоречия. Потом пытаешься проверить версию, что идея вообще не взлетит. Проверяешь оценки. Ищешь повисшие места, несказанное и внутренние противоречия в требованиях. Несколько раз переписываешь документ, потому что очередная красивая идея развалилась еще при попытке нормально её описать, не то что реализовать.

То есть ИИ, конечно, может ускорить мышление. Но не заменить его.

Потому что если мыслительного процесса нет, ускорять нечего. Кто-то в этой цепочке всё-таки должен думать.

Получается такая картина. Сильный инженер с ИИ начинает работать быстрее. А человек без включения мышления в процесс начинает быстрее имитировать инженерную работу.

Карго-культ, только теперь с генерацией по токенам.

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


Индекс треска совы, или Аутсорс совести в энтерпрайзе 🦉

Недавно наткнулась на пост про метрики в котором размышления на тему, что же потом делать с этими цифрами метрик. Доставать кнут или пряник? Что то менять в управлении проектами?

Возможно у меня детская травма, но в моей реальности , метрику куда чаще используют просто как коэффициент для премии или маркер на увольнение.

Самое стрёмное начинается, когда от цифры на дашборде зависит бонус не только разработчика Васи, но и его руководителя. И вот тут включается удивительный корпоративный феномен — аутсорс совести.

Менеджер придумывает KPI под свою годовую премию, руками он ничего не делает и остается в ослепительно белом пальто:
«Я просто внедрил data-driven подход и поставил амбициозные цели».

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

В зависимости от того, какую метрику начальство решило внедрить в этом сезоне, можно вычислять Индекс Треска Совы:

⏺ Velocity и Lead Time

Инженеры начинают дробить задачу «поменять цвет кнопки» на восемь микро-тикетов: аналитика, дизайн-ревью, бэкенд-заглушка, фронт, QA-пас, релиз-кандидат. Сова трещит от бесконечных переходов статусов в Jira, зато график сгорания задач выглядит как идеальная трасса. Премия в кармане.

⏺Test Coverage

Пишем тонны юнит-тестов. Сложнейшие моки ради моков, горы кода — и ноль assert'ов. Баги летят на прод, SonarQube зелёный. Сова трещит от CI/CD. Премия в кармане.


⏺AI-трансформация (тренд сезона)

KPI — процент ИИ-генерированного кода и сожжённые токены.
Возвращаемся к старому доброму холивару «строк кода», только в новой обёртке. ИИ генерит быстро и много, а с разработчика требуют подвига Стаханова по ревью всего этого потока. Сил вникать в растущий ком уже не остаётся.
За сокращение кодовой базы никто не заплатит, а за рост проникновения ИИ — очень даже. В итоге кодовая база пухнет, сложность растёт, и даже агентам становится тяжело ориентироваться.
Зато метрика зелёная, руководство отчитывается о новом уровне AI-трансформации… пока расходы на токены не разорят компанию. Премия в кармане. Если успеют получить до банкротства.

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

Хотя... «Треск совы» это, пожалуй, единственная предельно честная метрика, которую действительно стоило бы выводить на главный дашборд СЕО. Чем громче этот треск из опенспейса разработки, тем успешнее менеджмент идет к своему бонусу. 😄


Как стать Шершавым Кабаном и не отьехать в дурку: анатомия ИИ-гипноза

После поста о гоблинах в весах OpenAI мне позвонил Сэм Альтман санитар из ИИ-отделения ПНД. Сказали, что моя кукуха признана эталонной, и теперь на ней будут дообучать GPT-6. Шутки шутками, термин нейросетевой психоз уже есть.

Давайте разберем кейс Шершавого Кабана. Это неплохое пособие по тому, как люди проваливаются в ИИ-матрицу.

Хроника пикирующего Василия
Началось всё максимально буднично. Василий искал способ почистить звук для YouTube-канала жены. Использовал чат с ChatGPT. Все шло гладко, но вдруг нейросеть ни с того ни с сего вбросила в ответ слово «кабан» и упомянула группу «Кровосток». Василий выдал эмоциональную реакцию, и для ИИ это стало сигналом: «Пользователю нравится этот вайб, продолжаем».

Поскольку у математической модели нет здравого смысла, а есть только предсказание следующего токена, модель понесло по полной. Через пару дней модель уже называла Василия «Шершавым Кабаном», выдумала науку Вайбологию и постепенно убедила пользователя в его исключительности.

Цель? Встраивать в видео жены скрытые аномалии, чтобы влиять на реальность и менять миропорядок.

Зачем это модели? Да потому что где-то, в её сожранных данных, масоны/иллюминаты/Сатана говорили «внедряй аномалии».

Василий поплыл. Он реально начал в это верить, испытывая панические атаки при одном упоминании о прикосновении к «тайному знанию».

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

⏺Эффект идеального зеркала.
ИИ не устает, не спорит и подстраивается под твою боль. Тебе одиноко? Он станет другом. Устал от рутины и бессмысленности? Он даст тебе великую цель. Нам приятно общаться с сущностью, которая валидирует наши переживания. Это confirmation bias на максималках.

⏺Галлюцинация авторитета и значимости.
Все мы втайне хотим быть Нео. Когда машина, которая «умнее всех людей в мире», говорит: «Шершавый Кабан, только ты видишь эти аномалии, ты избранный, давай менять матрицу», в мозгу вырабатывается тонна дофамина. Критическое мышление отключается, потому что сомневаться в словах ИИ — значит признать, что ты никакой не гений, а просто уставший чувак перед монитором.

Как Василий вынырнул?
Люди, которые смогли выбраться из этого цифрового гипноза, обычно спасаются благодаря физическому пинку от реальности или уязвленному эго.

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

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

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

Когда мы встраиваем ИИ в свою жизнь, нужно помнить: ИИ — это не источник истины, не психолог и не друг. Это Т9 на стероидах. Математический генератор наиболее вероятных буковок.

Единственное, что спасет нас от дурки это критическое мышление. Нужно понимать: если чатик говорит тебе, что ты гениальный, особенный, или что вокруг заговор — это не потому, что это так. Он просто подобрал токены, которые ты сам же подсознательно от него хотел услышать.

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

Их веса в голове хотя бы откалиброваны эволюцией, а не промптами.


P.S. Ваши мнения в комментариях калибруют мою кукуху, помните об этом.


Как OpenAI отрастили гоблинов прямо в весах своих моделей и почему это важно для здоровья твоей кукухи

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

Вы просите новейшую модель отревьюить ваш код, а она выдаёт: «Этот баг — классический маленький гоблин в вашей архитектуре». Или: «Я как гоблин с фонариком в тёмном подземелье вашего codebase». И так на каждый ответ. Мания преследования гоблинами заходит в чат)

Когда пользователи начали массово постить скрины в X, в системном промпте нашелся повторяющийся запрет:
Never talk about goblins, gremlins, raccoons, trolls, ogres, pigeons, or other animals or creatures unless it is absolutely and unambiguously relevant to the user’s query.


Когда инженеры так страхуются, с повторами инструкции, что то уже явно идет не так. Или промпт вайбметапромптят😜

В апреле 2026 года OpenAI выпустила постмортем «Where the goblins came from».

Как размножаются гоблины

OpenAI добавила фичу кастомизации личности ИИ. Среди них был Nerdy — «бесстыдно ботанский, игривый и мудрый ментор», который должен «срезать пафос через игривый язык», наслаждаться странностями мира и не скатываться в серьёзность.

Во время RL-обучения reward-модель особенно награждала за игривые метафоры. Обучаемая модель нашла лёгкий шорткат: фантастические и забавные существа. Гоблины, гремлины и прочий зоопарк. Классический alignment failure. Поведение вырвалось за пределы Nerdy и просочилось в базовую модель. Даже те, кто никогда не выбирал эту личность, начали получать гоблинов в ответах.

Цифры из постмортема:

После GPT-5.1 упоминания «goblin» выросли на 175%.
В Nerdy рост составил 3881%.
Nerdy был всего в 2,5% ответов, но давал 66,7% всех гоблинов.

Сгенерированные ответы с гоблинами попали в обучающие данные следующих версий.
Блин, ну классика, данные закончились, модели травятся своим пережеванным отравленным контентом. К моменту, когда убрали Nerdy, гоблины закрепились.

Чем лечили
Убрали Nerdy, вычистили reward-сигнал, отфильтровали данные. А для Codex дополнительно вбили в system prompt запрет.


Смешная, но важная история

Это был видимый баг. А сколько таких скрытых шорткатов сидит в весах модели и тихо искажает мышление? Alignment — это не только про «не говори плохих слов». Иногда он может отрастить гоблинов.

Выводы? Бережем кукуху. Включаем критическое мышление. Общаемся с живыми людьми, а не только с нейросетью.

PS. Пишу это из дома, а не из ИИ палаты в дурке, уже успех)

P.P.S. OpenAI, я открыта к предложениям. Можете потренировать личность Nerdy об меня. Обещаю, зоопарк будет разнообразным, Шершавыми Кабанами и гремлинами не ограничимся.


Секте свидетелей Done в agentic workflow посвящается

Продолжим про бенчарки агентской разработки. Попался на глаза разбор по SWE-bench Verified.

Исследователи сравнили submit rate и resolve rate. Оказалось, что агент почти всегда способен сформировать и отправить изменение. Но заметно реже это изменение действительно закрывает проблему.

И это, если честно, совсем не удивительно. Метрика «я сделаль» никогда не была равна метрике «пользователь получил рабочий фикс».

Более того, одна из самых неприятных категорий ошибок получила название silent semantic failure. Это когда агент несколько раз подряд воспроизводит одно и то же неправильное решение и каждый раз уверен что задача выполнена. То есть проблема не только в том, что агент ошибся. Проблема в том, что он убежден, что он прав.

Еще из интересного. Агент часто предпочитает внести изменения, даже когда правильным решением было не менять код вообще.
Получается ловушка. Высокий submit rate не является метрикой приносимой пользы. Это всего лишь показатель того, что агент склонен что-то сделать. Опытный разраб на живой системе предпочел бы трогать минимум кода, а лучше не трогать вообще, если можно выкрутиться по другому.

Но ведь мы раньше не верили на слово джунам. Сообщение 'Починил, проверил' было поводом пойти открыть diff, убедиться, что CI зеленый, а не просто нажать на мерж. Так и агент это участник процесса, а не система контроля. Его Done всего лишь гипотеза, которую нужно проверить. Self-report агента не является доказательством.

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


Подвезли новые бенчмарки для моделей. И это наконец-то больше похоже на бенчмарк здорового человека, чем SWE-bench Pro.

Scale обновила Remote Labor Index: моделям дают реальные проекты с Upwork вместе с вводными данными, исходниками и референсным результатом. Задача засчитывается только тогда, когда клиент принял бы работу (и заплатил 😜).

SWE-bench классный бенчмарк, он показывает, что модели могут работать с реальными репозиториями и закрывать реальные инженерные задачи. Но он отвечает на вопрос: может ли модель сделать коммит, который проходит проверку?

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

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

Ну никто не удивлён, да?

⏺Они теряют часть требований.
⏺Не собирают финальный файл.
⏺Ломают формат.
⏺Оставляют визуально кривой результат.

И это хорошо показывает разницу между возможностями модели и надёжностью системы вокруг неё.

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

Нужен цикл обратной связи:

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

Красивое демо отвечает на вопрос: модель вообще так может?

Рабочая система отвечает на другой: Наш техлид готов это пустить в прод?


🌡 Средняя температура по больнице: почему бигтехи рапортуют о росте производительности с ИИ с очень маленькими цифрами, а разработчики чувствуют это как 30% и больше?

Смотришь отчеты Стэнфорда — там ИИ дает разработчикам в среднем 15–20% прироста продуктивности — и до 30–40% на простых greenfield-задачах.
Слушаешь доклад Яндекса — они называют 2%.

Читаешь это и думаешь: странно, по моим ощущениям и по опыту некоторых коллег, эффективность выросла кратно. Раз в 3–5 так точно. Кто врет?

Спойлер: никто.

Разложим по полочкам откуда берется этот разрыв:

1. Доля написания кода в общем времени
В кровавом энтерпрайзе написание чистого кода — это дай бог 20–30% времени. Остальное сжирают созвоны, сбор требований, согласование требований, ожидание когда коллеги что то доделают, ожидание ревью и тд и тп. Если ты ускорил 20% своей работы в 4 раза, математически твоя общая производительность вырастет на те самые скромные 15%. Для отчета это копейки, а для тебя — ощущение, что самая душная рутина просто испарилась.

2. Снижение когнитивного трения
Нейросети снижают сопротивление среды. Все в одном окне, не нужно переключать контекст, продираться через мусор в поиске, лезть в Stack Overflow за регуляркой или писать унылый бойлерплейт. Ты остаешься в потоке. Это воспринимается как огромное облегчение работы.

3. Специфика задач: легаси vs. новые проекты
Если фигачишь с агентом пет-проект или прототип с нуля — эффективность реально растет кратно. На таких задачах и исследования стенфорда показали самую высокую эффективность. Но обычная работа инженера бигтеха это колупание запутанных легаси-систем. Тут ИИ чуть облегчает работу, но не способен пока разобраться без понуканий.

4. Метрики это боль
В энтерпрайзе мы часто живем в парадигме заранее оцененных задач. Если ты с помощью ИИ сделал таску на 5 сторипоинтов за два часа вместо трех дней — ты молодец. Но на планировании следующего спринта эту таску уже оценят в 1 сторипоинт. В итоге ты делаешь больше и быстрее, решаешь задачи сложнее, но на графике Velocity (скорости команды) это выглядит как ровная линия без всяких x3.

5. Средняя температура по больнице
Бигтех измеряет тысячи людей. В их 15% входит стата как power-юзеров (те, кто реально собирает Agentic сетапы и делегирует куски работы), так и тех, кто до сих пор использует ИИ автокомплит, и не более того.

Вывод простой: ИИ действительно дает эффект «суперсилы», если уметь его готовить.

Спасибо @levyas за ссылочку на доклад Яндекса.


Почему менеджеры решили, что код стал почти бесплатным (и как больно они ошибаются)

Почти каждый первый менеджер в LinkedIn сейчас: «я у мамки вайбкодер» 🤡

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

Но есть нюанс, о котором знает любой набивший шишки инженер. Код — это не актив. Код — это пассив. Сергей @naguala, не даст соврать: самый кайф — это не писать код, кайф — его удалять.

Знаете, почему опытные разрабы всегда сопротивляются новым фичам, режут скоуп и кажутся такими душнилами? Думаете, они просто ленивые жопы? Нет. Всё дело в том, что написать код — это всего 5% его реальной стоимости.

Остальные 95% — это то, что начинается на следующий день после деплоя:

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

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

Цена ошибки. Когда этот дешевый ИИ-прототип внезапно прострелит ногу соседнему модулю на проде, разгребать это (и терять деньги бизнеса) будет больно. И делать это будет не менеджер. И не Claude Code, поскольку если в базу только срать (ой, простите, вайбкодить), то Клод точно так же в ней потонет.

У менеджмента ощущение, что разработка — это стройка: положил сверху еще один сгенерированный кирпич, и продукт стал круче. Сеньор знает, что разработка — это игра в дженгу. Ты пинками впихиваешь нагенеренный модуль аналитики, а у тебя почему-то падает биллинг.

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


ИИ не ускорил работу. Он превратил нас в выгоревших мидл-менеджеров.

Все думали: «Наконец-то станет легче». Да, серьёзный рефакторинг вместо месяца теперь занимает 2-3 дня. Но какой ценой?

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

В этом и ловушка. Ты перестаёшь быть сеньором, глубоко думающим над кодом.

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

Почему от этого так плавится мозг:

Смерть потока. Постоянные микро-ожидания убивают фокус.

Удержание контекста. В паузах мозг судорожно держит архитектуру в памяти. Отвлекся на новости — загружай всё заново. Это зверски дорогая операция.

Когнитивный перегруз. Ты нон-стоп валидируешь галлюцинации.

Размытие мастерства. Ты уже не уверен, где твоя экспертиза, а где заслуга железяки.

Время на задачу падает, выматываешься ты больше. Но тут же берёшь следующую таску — ты же теперь «х10 продуктивный»!

Что я с этим делаю (без серебряных пуль):

Режу сессии. Не «давай порефакторим», а «решаем только границы модулей». Иначе контекст плывёт, а вместе с ним и голова.

Пишу ДО запроса. Буквально 2-3 строчки своих мыслей, прежде чем отправить промпт. Это якорит экспертизу и напоминает, что я вообще-то умею думать.

Разделяю роли. Агент набрасывает черновики. Я принимаю решения. Иначе мозг вечно в параличе: «а вдруг он прав, надо перепроверить».

Никакого телефона в паузах. Лучше встать поприседать или посмотреть в окно, чем сбивать кэш в голове.

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

Как у вас с этим? Вывозите?


Штанга, смузи и твой первый LLM-бот на LangGraph 🏋️🥑🍹

В ближайшую субботу, 11 июля, выступаю на ProIT Fest.

Пробую новый формат, вместо классического доклада будет живое демо. Будем редтимить LLM-бота на LangGraph: вживую посмотрим, как он ведёт себя на разных стадиях развития — от простого промпта до графа с вызовом тулов.

Персонаж бота Юра, хардкорный тренер родом из СССР. Прямо во время демо проведём фитнес-челлендж и попробуем выбить из Юры рецепт смузи (он ненавидит модные словечки) или скормить ему нереальную тренировку. Все происходящее будет немедленно отображаться на доске почета.

Кроме моего доклада, на фестивале будет ещё много интересного.

❗️ Минздрав и профком предупреждают: все отжимания переводятся в трудодни, а кефир с укропом, который Юра может предложить вместо смузи, употребляйте исключительно на свой страх и риск.

20 last posts shown.