a builder's codex
codex · operators · Armin Ronacher · ins_ronacher-language-choice-ai-era

LLMs have dissolved the language-familiarity tax, turning programming language selection from a skill constraint into a deliberate preference

By Armin Ronacher · Creator of Flask, Jinja2, Click, and Werkzeug; software engineer and writer · 2026-08-22 · essay · Fast and Hard Code

Tier B · TL;DR
LLMs have dissolved the language-familiarity tax, turning programming language selection from a skill constraint into a deliberate preference

Claim

LLMs remove the language-familiarity barrier from programming language selection. Developers can now choose a language for performance or ecosystem fit without requiring deep personal expertise, because agents can read and write unfamiliar syntax fluently. The decision shifts from "what can my team ship" to "what fits the runtime and ecosystem requirements."

Mechanism

The months-long learning curve that previously constrained language choice is no longer a bottleneck when LLMs act as fluent intermediaries. A developer choosing Zig for performance or Rust for safety no longer needs years of experience in those languages to ship working code. Ronacher names Cloudflare's Zig-based Git engine and Vercel's fx agent as examples of LLM-assisted projects in non-mainstream languages that would previously have required specialist hires. Previously gatekept domains, including cryptography, systems programming, and embedded development, become accessible to teams with adjacent skills and LLM assistance. The main remaining constraint is ecosystem fit and tooling maturity, not developer familiarity with the syntax.

Conditions

Holds when: The task is well-scoped enough for an LLM to generate correct code in an unfamiliar language. A reviewer with sufficient context can evaluate the output's correctness even without deep language expertise.

Fails when: The project requires deep idiomatic knowledge, tight performance tuning, or platform-specific expertise that LLMs cannot reliably generate. High-stakes systems where miscoding a memory-safety boundary causes production incidents require human expertise regardless of LLM fluency.

Evidence

Ronacher writes from first-hand experience building LLM-assisted systems across multiple languages and observing the shift in how teams make language choices.

"LLMs make language choice much less consequential than it used to be"

He cites Cloudflare's Zig-based Git engine and Vercel's fx agent as current examples of teams choosing non-mainstream languages with LLM assistance. The argument is that the ecosystem and runtime profile now dominate the choice, with familiarity reduced to a secondary factor.

Signals

Counter-evidence

Generating syntactically correct code in an unfamiliar language is not the same as generating correct code. Memory safety, concurrency bugs, and language-specific idioms can produce plausible-looking but incorrect code that a non-expert reviewer cannot catch. Ronacher's claim may hold for prototyping and tooling but not for production systems in safety-critical domains. The familiarity tax may have shifted from writing to reviewing, concentrating risk at the review stage rather than eliminating it.

Cross-references

Open the interactive view → View original source → Markdown source →