Mitchell Hashimoto dropped a quote this week that sounds wild until you think about it for thirty seconds: “Bun has shown they can be in probably any language they want in roughly a week or two.”
He’s talking about Bun’s recent port from Zig to Rust. The entire runtime. A week or two.
Simon Willison picked up on this and shared his own version of the same story. He was at a conference talking to someone from a mid-sized tech company with legacy iPhone and Android apps. They’d just finished a coding-agent-driven rewrite of both apps to React Native. Willison asked the obvious question: why bother consolidating when AI makes it cheaper to maintain separate codebases?
The answer matters less than the fact that they did it at all. A full mobile rewrite used to be a multi-quarter project that you’d plan around, staff up for, and probably regret. Now it’s something you apparently just do.
Programming language choice has always been sold as lock-in. Pick Java and you’re in the JVM world. Pick Rust and you’re committing to the learning curve, the compile times, the ecosystem. The switching cost was supposed to keep you honest during the honeymoon phase when every new language looks perfect.
That cost is dropping. Fast.
It’s not zero. Bun didn’t rewrite itself by pressing a button. But if a small team can move a complex, performance-critical runtime between languages in a couple weeks, the calculus changes. Same for mobile apps that used to represent years of platform-specific work.
The constraint isn’t “can we rewrite this” anymore. It’s “should we rewrite this, and what does that break?”
When rewrites get cheap, technical debt stops being permanent. That Django monolith you’ve been nursing along because a rewrite would take six engineers a year? Maybe it takes two engineers a month now. Maybe less.
This doesn’t mean you should rewrite everything. It means the decision becomes a normal trade-off instead of an existential one. You can pick a language for the problem at hand without worrying as much about being stuck with it forever.
It also means languages are competing on different terms. If Rust is “expendable,” as Hashimoto put it, then it needs to stay useful. The moat isn’t adoption lock-in anymore. It’s whether the language actually makes your life better right now.
Rewrites still break things. They definitely break institutional knowledge. If your team has three years of debugging experience in Python and you port to Go, you’re starting over on the debugging experience even if the logic is the same.
There’s also a difference between rewriting application code and rewriting something like Bun, which has a clear spec (JavaScript semantics) and a clear success condition (pass the tests, match the benchmarks). Most codebases aren’t like that. Most codebases have implicit behavior that nobody documented because nobody thought they’d ever need to.
AI coding agents are great at translating explicit logic. They’re less great at preserving the thing your predecessor did five years ago that prevents a race condition nobody remembers.
If language lock-in weakens, a few things probably happen.
First, more experimentation. Teams will try new languages for real projects because the perceived risk drops. If it doesn’t work out, you can move again.
Second, more churn. The Python-to-Go-to-Rust cycle that used to take a decade might take two years. That’s not necessarily good. Churn has costs even when each individual move is cheap.
Third, languages that win will win on merit, not momentum. The “nobody got fired for choosing Java” era fades. Languages need to be genuinely better at something to justify themselves.
And fourth, the bottleneck moves. If you can rewrite code in weeks, the constraint becomes understanding what the code is supposed to do. Requirements, edge cases, business logic. The stuff that’s still trapped in people’s heads.
This ties into something OpenAI’s been pushing this week with Codex, their coding agent system. They announced mobile support so you can “monitor, steer, and approve coding tasks in real time across devices.” They also published a case study with Sea Limited, a big tech company in Southeast Asia, talking about deploying Codex across engineering teams.
The pitch is that AI can accelerate “AI-native software development.” Strip away the buzzwords and it’s the same story: the cost of writing code is dropping, so the constraints shift to everything around the code.
None of this means coding agents are perfect. They’re not. But they’re good enough that a Bun-scale rewrite becomes plausible in weeks, and that’s a different world than the one where language choice was a five-year commitment.
Hashimoto’s right. Languages are increasingly fungible. That’s interesting. It’s also kind of unsettling if you’ve spent the last decade building expertise in one stack. The value isn’t in knowing the syntax anymore. It’s in knowing what to build and why.
One email at dawn. The five stories that mattered, with the bits removed and the meaning kept. Free, for now.