David Heinemeier Hansson, better known as DHH and widely known as the creator of Rails, has put a fresh spin on the programming-language debate by tying it to AI-generated code.
He said AI was used to port Campfire, the chat software from 37signals, into Rust, Go, and Elixir. In the first round of tests, the Rust version handled about 36,000 chat page requests per second, while the original Ruby version managed roughly 240.
DHH questions an old trade-off
DHH has long favored Ruby because it helps developers move quickly and keeps code readable. He is now rethinking that premise. If AI writes the code and humans are no longer reading it line by line, he asked, does it still make sense to give up runtime speed for developer convenience.
Vercel CEO Guillermo Rauch endorsed that view. His argument was straightforward: if AI reduces the cost of writing software, languages chosen mainly because they are easier for humans to work with may no longer be the cheapest option for companies.
Vercel’s own Rust migration took 15 months
Rauch pointed to Vercel’s experience with Turborepo. The company spent 15 months moving about 70,000 lines of Go code into Rust. The team believed Rust was a better fit for low-level systems work, but the cost of doing that migration by hand was high enough that the internal return-on-investment case became disputed.
Benchmark results were challenged
The numbers quickly drew criticism from José Valim, the creator of Elixir. After reviewing the repository, he said the Rust version had already gone through hundreds of commits and multiple rounds of performance tuning, while the Elixir version was still close to its initial port.
He also said the architectures were not the same. In the Elixir implementation, database work was concentrated in a single process. The Rust version, by contrast, used optimizations such as concurrent reads and caching. Under those conditions, he argued, it was hard to show how much of the performance gap came from the language itself.
DHH’s reply and the updated test
DHH responded that he had asked top AI agents to push each language as far as possible on performance. If an agent could not find a way to optimize Elixir, he said, that was also part of the reality teams would face in real development.
Work on the different versions continued after that exchange. In an updated unified test published on Oct. 8, the Rust version processed about 106,000 chat page requests per second, while the Go version handled about 53,000. Rust remained about twice as fast.

