ecabigting
← Back to Blog

Forking Without Protection

by Eric Thomas D. Cabigting
Forking Without Protection
[ ai generated ]

I remember the first time I tried Bun. It was on a side project last year. I needed a fast JavaScript runtime and Bun delivered. The install was instant. The server started before I could blink. I loved that feeling. As engineers, we are drawn to speed. We want tools that make us feel productive. We want to ship.

So when I saw a post that Bun had forked Zig to achieve 4x faster debug builds, my first reaction was excitement. This is exactly what I want, I thought. More speed. Less waiting. But then I read the rest of the story, and my excitement turned into concern.

Bun forked the Zig compiler to add parallel semantic analysis. They announced it with a flashy benchmark and a note that they would not upstream the changes. The reason they gave was Zig's strict policy against LLM-authored contributions. Social media exploded. People took sides. Some praised Bun for pushing boundaries. Others defended Zig for protecting their culture. But almost everyone missed the actual engineering problem.

The Zig team responded calmly. They explained that parallel semantic analysis was already on their roadmap. They had been working on it carefully for a long time. The problem with Bun's approach was that it introduced non-deterministic behavior. Depending on the order in which types were analyzed, the compiler could throw false errors. That is a nightmare for a systems language. You cannot have a build that fails randomly thirty percent of the time. No amount of speed is worth that kind of instability.

But here is the part that truly impressed me. Zig did not just criticize the fork. They pointed to the real bottleneck. The slowdown was never semantic analysis. It was LLVM, the backend that generates machine code. Zig has been quietly building its own custom backend and incremental compilation system. With that proper foundation, incremental updates drop from forty seconds to under half a second. That is not four times faster. That is orders of magnitude faster. And it is deterministic. It is correct. It is built to last.

This is the lesson I carry from my own work across many stacks. I have been in rooms where teams want to add a quick AI-generated fix to hit a deadline. The tool spits out code that looks right. It compiles. It passes a few tests. But nobody stopped to ask if it solves the right problem. I have learned to be suspicious of flashy wins. The boring solution that actually works is usually the one that took time to design. There is beauty in slowing down and doing it right.

There is also a cultural layer here that we cannot ignore. Bun was acquired by a large AI company in late 2025. Zig is the result of a small team's decade of careful work, starting from a single founder and growing into a foundation-backed project. The MIT license makes the fork perfectly legal. That is not the issue. The issue is how it feels. When a well-funded corporation takes a small team's ten years of goodwill, adds a quick patch, and frames the team's quality standards as the obstacle, something feels wrong. It is not illegal. It is just not respectful. It is not how healthy open source ecosystems grow.

I want to be clear. I use AI every day. At my current role in an AI startup, I see its power constantly. AI helps us move fast. It helps us explore ideas quickly. It helps us spike out experiments. But it is not a replacement for deep understanding. AI is for speed. It is not for correctness. Correctness comes from careful thinking, from understanding the real bottleneck, from respecting the problem enough to solve it properly.

Zig's no-LLM policy is not about rejecting the future. It is about maintaining a bar for quality. It says that contributions must come from human understanding and deliberate craft. In a world where anyone can generate ten thousand lines of code in an afternoon, that guardrail matters. It forces us to slow down and think. It protects the codebase from slop.

Fundamentals come first. Always. You can layer AI on top once the foundation is solid. But you do not hack a compiler for a headline. You do not ship randomness because an LLM suggested it was a good idea. You ship with protection. You ship with care.

The Zig team showed us what good engineering looks like. They did not chase the flashy fork. They identified the real bottleneck. They solved it the right way. That is the kind of craft I want to build. That is the kind of craft we should all want to build.

Disclaimer: All content reflects my personal views only and does not represent the positions, strategies, or opinions of any entity I am or have been associated with.

Continue Reading.