Последние несколько дней технокультура наблюдает за скандалом: основатель языка программирования Zig, Эндрю Келли, в ярости.

Причина в том, что Bun, проект, полностью сделавший ставку на язык Zig, был переписан его основателем Джарредом Самнером на языке Rust.

Эндрю Келли не стал скрывать свой гнев. Вместо дипломатичных слов по поводу этого знакового технического события он напрямую обрушился на личные инженерные привычки Джарреда Самнера, его управленческие способности и бизнес-логику, стоящую за этим инцидентом.
Bun — это высокопроизводительная среда выполнения JavaScript/TypeScript, которая позиционируется как более быстрая и современная прямая замена Node.js. В последние годы она стала серьёзным претендентом на то, чтобы бросить вызов доминированию Node.js во фронтенд-мире.
Ключевая особенность Bun — скорость. Он значительно превосходит конкурентов по времени запуска, установки зависимостей и выполнения тестов, отчасти благодаря тому, что был написан на языке Zig.
В декабре прошлого года Anthropic объявила о приобретении Bun, чтобы использовать его в качестве инфраструктуры для своих инструментов ИИ-программирования Claude Code и Claude Agent SDK. Джарред Самнер и остальная команда Bun сейчас работают в Anthropic.
При масштабном использовании, особенно в качестве основы для Claude Code, команда Bun столкнулась с трудноустранимыми проблемами стабильности.
Конкретно, в версии Bun на Zig было много ошибок, связанных с безопасностью памяти — use-after-free, double-free, забытое освобождение памяти в ошибочных путях выполнения и т.д. В Zig эти проблемы можно контролировать только соглашениями о написании кода, а в Rust они с помощью заимствования (borrow checker) и механизма Drop превращаются непосредственно в ошибки компиляции.
С другой стороны, основное сообщество Zig придерживается политики нулевой терпимости к коду, сгенерированному большими языковыми моделями (LLM). Даже оптимизации, не связанные с ИИ, не могут попасть в основную ветку. Команда Bun сильно зависит от помощи ИИ в разработке, и продолжение использования Zig означало бы необходимость долгосрочной поддержки собственной ветки компилятора, что очень затратно.
И вот в мае этого года мы стали свидетелями масштабной инженерной стройки в технокультуре: основатель Bun Джарред Самнер объявил, что миллион строк кода Bun был переписан на Rust всего за 11 дней. Они использовали ещё не публично выпущенную на тот момент Claude Fable 5 (модель уровня Mythos) от Anthropic и возможности динамического рабочего процесса Claude Code.

Это было эпическое тестирование рабочего процесса агентов (Agentic Workflow), которое позже Anthropic использовала для продвижения Dynamic Workflows как эталонный случай. Но это также вызвало споры из-за «предательства веры».
В своей недавней статье в блоге основатель Zig Эндрю Келли заявил, что причина частых ошибок в Bun до переписывания кроется в ужасных инженерных привычках Джарреда Самнера.
Во-первых, ещё до расцвета ИИ Джарред постоянно писал плохой код. Келли заявил, что команда Zig часто проверяла код пользователей, и кодовая база Bun вызывала у них «чрезвычайный страх». Она была полна нагромождённых друг на друга «костылей» (hacks on top of hacks), злоупотреблений операторами assert, и ради быстрого выпуска новых функций почти никогда не тратилось время на устранение ошибок и технического долга.
А затем появился миллион строк кода, сгенерированного Claude. Келли задал риторический вопрос: «Официально Bun заявляет, что миллион строк кода на Rust (написанного ИИ) безопасен, потому что есть тесты; но если тесты действительно такие исчерпывающие, почему они не смогли выявить все эти раздражающие баги, когда код был написан на Zig?»
Сейчас Келли крайне разочарован тем, что Джарред превратился из энтузиаста-разработчика с энергией новичка (beginner energy) в отвратительного менеджера (stinky manager).
Келли прямо заявил, что, узнав о решении Bun отказаться от Zig, он почувствовал не гнев от предательства, а облегчение. Он боялся, что Bun, идущий под флагом Zig, создаст у внешнего мира неверное впечатление, и ещё больше боялся, что он привлечёт пользователей, которые только копируют и вставляют код от ИИ. Он даже с сарказмом отметил, что теперь он сидит с чашкой чая и радуется, что «это наконец-то не моё дело».
Такая откровенная перепалка привлекла внимание других в технокультуре, и они также высказали своё мнение.
Во-первых, посчитали затраты: все говорят, что токены Claude слишком дороги, но, согласно данным, опубликованным Джарредом Самнером и официальным каналом Bun, проект по переписыванию Bun на Rust, по оценкам, потребовал 165 000 долларов на оплату API. С точки зрения технокультуры и инженерного сообщества, эта цена и время пугающе низки.
Только по затратам ИИ сократило стоимость разработки примерно до одной десятой от первоначальной, а время — с примерно года до менее чем двух недель.

Во-вторых, это отношение к столкновению культуры open-source и эпохи ИИ. Некоторые, прочитав пост Эндрю, основателя Zig, почувствовали сильный дискомфорт, считая, что публичные нападки на бывшего важного пользователя и спонсора (Bun долгое время финансировал Zig) демонстрируют недостаток профессионализма. Некоторые даже заявили радикально: «Я никогда раньше так активно не желал провала какому-либо языку программирования».
Но и ветераны-программисты выступили в поддержку, считая, что в эпоху, охваченную капиталом и пузырём ИИ, Эндрю просто защищает чистоту инженерного качества, демонстрируя стиль, подобный стилю Линуса Торвальдса в былые времена.

Конечно, всех больше волнует, остался ли проект после такой встряски всё ещё удобным в использовании.
В настоящее время наибольшие споры вызывает то, что эти миллион строк кода были механически переведены ИИ из Zig без архитектурного рефакторинга человеком-инженером. В новой кодовой базе осталось целых 27 000 строк кода в блоках unsafe. Многие опасаются, что когнитивные затраты и затраты на отладку, которые понесут будущие разработчики при поддержке, чтении и изменении этой огромной «ИИ-генерированной массы», в конечном итоге могут превысить сэкономленные сегодня первоначальные затраты на разработку.
Станет ли этот проект, нарушающий исторические законы программной инженерии, вехой в изменении ИИ парадигмы программирования или же превратится в будущем в вулкан технического долга, который невозможно поддерживать? Возможно, ответ на это сможет дать только время.
Источники:
https://bun.com/blog/bun-in-rust
https://andrewkelley.me/post/my-thoughts-bun-rust-rewrite.html
Статья из WeChat Official Account «Машинный разум» (ID: almosthuman2014), автор: Гуаньчжу Ай






