FULL STORY
DHH's AI Agent Rewrite of Campfire Sparks Debate
DHH had AI agents rewrite Campfire from Rails, with benchmarks drawing community skepticism. A follow-up Elixir optimization attempt fared worse, sparking debate over engineer accountability, which DHH addressed.
2026-10-05 ~ 2026-10-07 · 2 episodes · 9 posts
Episode 1 · DHH's AI-agent rewrite of Campfire across languages sparks benchmark controversy (2026-10-05, 7 posts)
DHH, creator of Rails, used his own accumulated token budget to have AI agents port ONCE Campfire from Rails to other stacks—Elixir, Go, Rust, and most recently JavaScript/Express. He published requests-per-second figures for the same room page: Ruby 244, Elixir 722, Go 3860, Rust 36260—nearly 150x from Ruby to Rust. DHH admitted Ruby was slowest but said he values productivity and the joy of programming more, and questioned the point of "no longer reading code." The cross-language performance conclusions were subsequently challenged by multiple developers, focusing on unequal tuning effort and implementation flaws.
Confirmed
- Performance numbers published by DHH: Ruby 244, Elixir 722, Go 3860, Rust 36260 requests per second, a near 150x spread
- DHH admitted the Ruby version was slowest, stating productivity and developer enjoyment take priority
- The experiment used multiple rounds of agent conversion; the stacks also include a JavaScript/Express version
- Responding to criticism of the Elixir version's performance, DHH said he did not hand-tune anything but let two frontier AI agents work Elixir to their fullest, and welcomed speed-up PRs
Unconfirmed
- josevalim cited DHH's experiment: the initial vibe-coded Rust version's req/s was in the same order of magnitude as initial Elixir/Go versions, even slower in some scenarios; the Rust version in DHH's repo only caught up after roughly 300 (by another account 398) optimization commits. @kristoph relayed @jskalc's critique that the benchmark is not a fair comparison—the Rust version received extensive tuning commits while the Elixir version was largely ignored; mattnjp also broke down the comparison traps, arguing Rust's speed came from manual tuning
- @kristoph noted the Go implementation has obvious performance flaws, and the conclusions might change once fixed
- DHH countered: if frontier agents cannot find Elixir's "speed switches," perhaps the ecosystem should reflect—a remark that itself sparked debate
- @rchaves offered a different perspective: ordinary applications should care about compile times and legacy bugs rather than raw performance numbers
Why it matters
This is a rare large-scale cross-language porting experiment conducted personally by a well-known framework author amid the agent-coding boom, and its performance conclusions spread widely. The pushback over unequal tuning effort and implementation flaws shows that cross-language performance comparisons based on agent-generated code demand careful attention to benchmark fairness and methodology. DHH's "if agents can't find the speed switch, the ecosystem should self-reflect" retort extends the debate from a single benchmark to how language ecosystems fit the AI era.
- dhh's agent-built Campfire benchmarks in Go and Rust questioned over flawed implementation — kristoph · 2026-10-05
- DHH's agent-built Campfire benchmarks under fire: Rust was fast because it got hand-tuned — rakyll · 2026-10-06
- dhh's AI-coded Campfire benchmark questioned: Rust got 398 tuning commits, Elixir got one pass — kristoph · 2026-10-06
- DHH has agents rewrite Campfire in Rust: 36,260 req/s vs Ruby's 244, a 150x gap — sujingshen · 2026-10-06
- Dev pushes back on dhh's agent-led rewrite: count tokens spent and bugs left, not concurrency — _rchaves_ · 2026-10-06
- Rust Campfire rewrite needed ~300 commits to match vibe-coded Elixir/Go, josevalim calls out dhh's benchmark — evilsocket · 2026-10-06
- dhh: frontier AI agents can't find Elixir's 'go fast' switches — bad look for the language — evilsocket · 2026-10-06
Episode 2 · DHH Defends Elixir Results After Frontier Agents Fail to Speed It Up (2026-10-07, 2 posts)
dhh said he simply let two frontier AI agents maximize Elixir's performance and got the current results, inviting PRs to speed it up while questioning why the agents couldn't find Elixir's speedup switches, sparking debate over engineer accountability.
- DHH: frontier agents built my Elixir code but can't find the "go fast" switches — devenbhooshan · 2026-10-07
- dhh says frontier agents couldn't optimize Elixir, sparking engineer accountability debate — teropa · 2026-10-07