11 августа 2026 года в блоге Google для разработчиков вышел материал с заголовком, который трудно прочитать нейтрально: «Почему Go — идеальный язык для разработки с ИИ». Авторы — Cameron Balahan, груп-продакт-менеджер языка Go, и Richard Seroter, chief evangelist (главный технический евангелист) Google Cloud. За сутки пост собрал почти три сотни комментариев на Hacker News и разделил аудиторию ровно пополам: одни увидели давно назревший аргумент, другие — маркетинг без единого измерения.
Разберём, что именно заявила Google, какие цифры за этим стоят на самом деле — и почему главный вывод из этой истории касается не только Go.
Главный тезис: узкое место сместилось с написания на ревью
Логика авторов такая. Пока код писал человек, языки соревновались в том, как быстро разработчик доберётся от идеи до рабочего прототипа. Отсюда популярность лаконичного синтаксиса, метапрограммирования, «магии» фреймворков — всего, что экономит нажатия клавиш.
Когда основную массу строк генерирует агент, эта экономия обесценивается: агенту всё равно, сколько символов печатать. Дорогим становится другое — прочитать, проверить и потом сопровождать то, что он выдал. Balahan и Seroter формулируют это как сдвиг «from writing to reviewing» («от написания к ревью») и утверждают, что Go проектировался под второй режим ещё двадцать лет назад, задолго до всяких LLM.
Формулировка авторов: «language design in the service of software engineering» — дизайн языка в интересах инженерии, а не в интересах отдельного программиста.
Аргументы Google: три опоры
Один способ написать одно и то же
Синтаксис Go намеренно узкий: меньше вариантов записать одну и ту же мысль — меньше пространства, где агент может сделать нетипичный выбор. Сверху идёт gofmt, встроенный форматтер, который не обсуждается и не настраивается: любой код приводится к единому виду автоматически.
Авторы приводят характерную для сообщества фразу: гоферы часто говорят, что любят Go в том числе за невозможность определить, кто именно из команды написал конкретный кусок кода. В мире, где половину коммитов делает агент, эта стилистическая безликость превращается из курьёза в свойство инфраструктуры.
Инструменты в комплекте, а не в экосистеме
Второй аргумент — про то, что в Go «из коробки» есть замкнутая петля обратной связи, которую агент может крутить сам, без человека:
- Статическая типизация и быстрая компиляция. Компилятор немедленно отвергает несуществующий метод или неверный тип — а собирается Go, по утверждению авторов, на порядки быстрее Java, C# и Rust. Для агента это означает короткий цикл «сгенерировал → проверил → починил».
go testи встроенный фаззинг. Тестовый фреймворк и автоматический поиск граничных ошибок — часть языка, а не сторонняя библиотека, которую ещё надо выбрать.govulncheck. Официальный сканер уязвимостей в зависимостях, работающий с базой Go.- Go Modules с checksum database и модульным зеркалом. Контрольные суммы пакетов проверяются централизованно — прямая защита от подмены в цепочке поставок. На фоне того, что происходит в npm, аргумент звучит весомо.
gopls, профилирование, трассировка и PGO (profile-guided optimization — оптимизация сборки по профилю реальной нагрузки).
Ключевое здесь не список сам по себе, а то, что все эти инструменты официальные и единственные. Агенту не нужно угадывать, какой линтер принят в этом проекте: ответ всегда один.
Обещание совместимости
Третья опора — совместимость. Код, написанный под Go 1.0, компилируется и запускается на актуальном тулчейне без изменений; авторы напоминают, что Go 2.0 не будет никогда. Плюс go fix с модернизаторами, который детерминированно переписывает устаревшие конструкции на актуальные идиомы — без участия ИИ и без риска «творческой» интерпретации.
Замыкает список кросс-компиляция в один статический бинарник под любую ОС и архитектуру: агенту, который разворачивает результат сам, это заметно упрощает жизнь.
Цифры, которых нет у Google — но есть у исследователей
Главная слабость поста: в нём нет ни одного бенчмарка. Это первое, что заметили в обсуждении. Но фактура в индустрии есть, и она скорее подтверждает постановку проблемы, чем вывод про Go.
Исследование CodeThread (июнь 2026, «Is Agent Code Less Maintainable Than Human Code?») проверяло, как агенты дорабатывают чужой код. Четыре агента на четырёх бенчмарках справлялись с задачами хуже, если развивали реализацию, написанную другим агентом, а не человеком: разрыв в доле решённых задач доходил до 13,1%. При этом обе исходные реализации проходили тесты — разница пряталась в мелочах: валидации входных данных, обработке ошибок, неявном поведении.
Анализ ревью — 278 790 инлайн-обсуждений в 300 open-source проектах — показал, что на агентский код рецензенты тратят на 11,8% больше раундов ревью. Отдельно любопытно доверие к самим замечаниям: предложения, сгенерированные ИИ, принимались в 16,6% случаев против 56,5% для замечаний от людей. И правки от агентов чаще увеличивали объём и сложность кода.
Третья работа изучила больше 1000 файлов, сгенерированных ИИ, и 3200 последующих изменений к ним в 100 репозиториях: основную часть сопровождения этого кода в итоге вели люди, а не те же агенты. Наконец, опрос Stack Overflow 2025 года зафиксировал, что высокий уровень доверия к выводу ИИ декларировали лишь 3,1% респондентов.
Иными словами, проблема, которую описывает Google, реальна и измерена. Вопрос — решает ли её именно Go.
Что возражают
Обсуждение на Hacker News вышло содержательнее самого поста. Основные линии критики:
- Нет измерений. Тезис «Go лучше для ИИ» не подкреплён сравнением с другими языками ни на одном публичном бенчмарке.
- Конкурентность. Участники напоминали про отчёты Uber, где у Go количественно фиксировали больше ошибок конкурентного доступа, чем в других языках. Простые в написании горутины легко порождают гонки, которые компилятор не ловит.
- Альтернативы сильнее. Rust, Zig и Java дают более жёсткие гарантии на уровне компилятора — а в сценарии, где человек физически не успевает вычитывать поток кода, ценность именно компиляторных гарантий растёт.
- Объём важнее качества строки. Разработчик из крупной компании описал показательную картину: LLM пишет на Go почти без синтаксических и типовых ошибок, но объём генерации таков, что ревьюеры перестают справляться — и в прод уходят логические ошибки вроде неверного HTTP-статуса, которые компилятор в принципе не видит.
Есть и подтверждения с другой стороны. Инженер, возглавляющий Go-гильдию в Netflix, в том же треде написал, что у них растёт число сообщений от команд: агенты пишут на Go код лучше, чем на других языках. Он же указал на практическую причину — go fix, пакеты для работы с AST и SSA, управление go.mod делают массовые автоматические правки кодовой базы проще, чем в большинстве экосистем.
Почему это касается не только гоферов
Если убрать из поста название языка, останется тезис, с которым согласны обе стороны спора: выбирать инструменты теперь стоит по стоимости проверки, а не по скорости написания. И это применимо к любому стеку.
Тенденция видна не только у Google. Команда TypeScript переписала компилятор на Go ради кратного ускорения проверок — то есть ради той же короткой петли обратной связи. Python в свежей версии двигается в сторону предсказуемости поведения по умолчанию. Логика везде одна.
Практический минимум, который стоит закрыть в любом проекте, где к коду допущен агент:
- Форматтер и линтер — обязательный шаг в CI, а не рекомендация в README. Единый стиль убирает ложные различия в диффе и оставляет в ревью только смысловые правки.
- Тесты, проверяющие поведение, а не факт прохождения. Исследование CodeThread прямо показывает: зелёный прогон не гарантирует, что следующий агент сможет это развивать.
- Автоматический аудит зависимостей. Агент охотно тянет пакеты; сканер уязвимостей и фиксация контрольных сумм должны работать без участия человека.
- Ограничение размера пул-реквеста. Самое дешёвое из всех средств: PR, который человек физически может вычитать за один подход, ловит больше ошибок, чем любой линтер.
Итого
Пост Google — не исследование, а позиционирование, и относиться к нему стоит соответственно: аргументы про gofmt, обязательные тесты, обещание совместимости и единый тулчейн — сильные, но они описывают удобную инженерную практику, а не эксклюзивное свойство Go. Ни одного числа в подтверждение «идеальности» авторы не привели.
Ценность истории в другом. Она фиксирует момент, когда индустрия вслух признала: ограничивающий ресурс в разработке — уже не время на написание кода, а внимание человека, который этот код проверяет. Дальше вопрос не в том, какой язык выиграет, а в том, кто первым перестроит процесс под новое узкое место.
Частые вопросы
Нет. Речь не про скорость генерации, а про стоимость проверки. Тезис Google в том, что Go даёт агенту быструю и однозначную обратную связь — компилятор, gofmt, go test, govulncheck — и потому сгенерированный код дешевле проверить и сопровождать. Бенчмарков в самом посте нет, и критики указывают на это в первую очередь.
Нет. Аргументы Google почти дословно переносятся на любой стек: строгие типы, обязательный форматтер, быстрые тесты и сканер уязвимостей в CI дают тот же эффект в TypeScript, PHP или Python. Смена языка ради ИИ-агентов — крайне дорогое решение, которое пост Google никак не обосновывает цифрами.
Данные 2026 года указывают на это. В исследовании CodeThread агенты хуже дорабатывали код, написанный другими агентами: разрыв в доле решённых задач доходил до 13,1%. Анализ 278 790 веток ревью в 300 open-source проектах показал на 11,8% больше раундов ревью для агентского кода.
Три основных: в посте нет измерений; модель конкурентности Go исторически даёт свой класс ошибок (на что ссылались участники обсуждения, вспоминая отчёты Uber); Rust, Zig и Java дают более сильные гарантии на уровне компилятора. Отдельная претензия — объём: компилятор ловит структурные ошибки, но не логические, а ревьюер тонет в потоке PR.
Источники
- 1.Why Go is an Ideal Language for AI-Assisted Software Engineering — Google Developers Bloghttps://developers.googleblog.com/why-go-is-an-ideal-language-for-ai-assisted-software-engineering/
- 2.Code that passes every test can still break the next AI agent that touches it — The New Stackhttps://thenewstack.io/go-language-ai-agents/
- 3.Google says Go is well suited to AI-generated code — Developer Techhttps://www.developer-tech.com/news/google-go-ai-generated-code/
- 4.Is Agent Code Less Maintainable Than Human Code? (CodeThread) — arXivhttps://arxiv.org/html/2606.21804v1
- 5.Human-AI Synergy in Agentic Code Review — arXivhttps://arxiv.org/abs/2603.15911
- 6.Обсуждение публикации на Hacker Newshttps://news.ycombinator.com/item?id=49261907



