The limits of Rust, or why you should probably not follow Amazon, Cloudflare and Discord

· coding books · Source ↗

TLDR

  • Rust’s compiler guarantees are real, but ecosystem fragmentation, async complexity, and rapid release churn make it a poor default choice for most teams.

Key Takeaways

  • Async Rust is a persistent source of bugs: blocking the event loop inside async code appears in nearly every large codebase the author has audited.
  • Rust’s standard library omits crypto and datetime primitives, forcing projects to pull in multiple competing crates (the author counted 5+ crypto libraries in a single small project).
  • 54 Rust releases between 2020-2026 vs. 12 Go releases means regular toolchain, Dockerfile, and dependency churn; abandoned projects can fall dozens of versions behind quickly.
  • Best fits are narrow: cross-platform shared cores (mobile/WASM/server via a single library), embedded/IoT (especially ESP32-C series with Espressif HAL), system daemons, and genuinely hyperscale infrastructure.
  • For web services and async backends, Go’s larger stdlib and slower release cadence typically deliver faster iteration at non-hyperscale loads.

Hacker News Comment Review

  • Commenters challenged the framing: the “don’t use unfamiliar languages” point is generic advice, not a Rust-specific critique, and Rust’s low usage-rank reflects age, not failure.
  • A recurring objection is that the article never names the project type, making sweeping conclusions feel unearned; async criticism applies mainly to network services, not the language broadly.
  • Some commenters found the piece self-contradictory: it ends by listing legitimate Rust use cases and promoting the author’s own Rust book, softening the headline’s force.

Notable Comments

  • @egorelik: notes the article never states the target project type, making the headline misleadingly generic.
  • @unethical_ban: distills the fair takeaway: skip Rust for small-to-medium async work; use it when you need gigascale performance or cross-platform native libs.

Original | Discuss on HN