Обновить

Комментарии 8

Разворот DHH к агентной разработке становится очень логичным, если вспомнить, что Omarchy недавно получил хорошее финансирование от ряда компаний, среди которых есть Meta и OpenAI.

про это не знал, спасибо

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

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

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

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

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

Привет! Да, новость о выступлении DHH уже многих облетела))

Хотел бы обсудить вот этот момент:

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

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

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

А вот к явным минусам Ruby/Rails для агентов я бы отнёс большое количество DSL. Rails сам по себе DSL-heavy, плюс многие гемы вводят свои конструкции. Для человека, который знает экосистему, это удобно, а агенту приходится понимать довольно много неявной магии.

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

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

Ну и к критической инфраструктуре давать агентам большую автономность мне пока всё ещё довольно страшно

Вроде DSL добавляет когнитивной нагрузки… но вот взять макрос в Rust - там может быть чудовищная развертка и поведение кода может сильно меняться. Да и те же derive над стуктурами. Или макрос-язык для html в веб-фреймворках для Rust.

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

Так что DSL в Ruby это вариант мета-программирования. Где-то макросы, где-то декораторы, тут явное написание кода, но на уровне объявления внутри класса.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации