Hacker ApprovedDepartments

Erlang/OTP

Hacker Approved

Ranked 19 of 163 programming languages by recommenders

Recommended for its built-in actor-model concurrency, fault tolerance and the batteries-included OTP library for distributed systems, though critics cite weak raw performance and odd syntax.

Recommended for its built-in actor-model concurrency, fault tolerance and the batteries-included OTP library for distributed systems, though critics cite weak raw performance and odd syntax.

233 people gave an opinion

recommend it
193
criticize it
40
approval share
83%
Each figure is 2 people. RecommendsCriticizes

Recommended in 12 of 13 months

  1. November 2025: recommended
  2. December 2025: recommended
  3. January 2026: recommended
  4. February 2026: recommended
  5. March 2026: recommended
  6. April 2026: recommended
  7. May 2026: recommended
  8. June 2026: recommended
  9. July 2026: recommended
  10. August 2026: recommended
  11. September 2026: recommended
  12. October 2026: recommended
  13. November 2026: not recommended (month in progress)

Owned for 9 years

Median of the 9 owners who said how long they have had it.

Each square is one year.

Why it carries the badge

  • 193 people recommend itNeeds 10 or more, met.
  • 4.8 recommenders for every criticNeeds 2 to 1 or better, met.
  • Recommended in 12 of 13 monthsNeeds 4 or more, met.

The same three rules apply to every product, and the badge can’t be bought. How the badge works

What people say about it

The reasons people give, with the number of comments that give each one. Open a reason to read what they said.

Why people recommend it

Each mark is one comment

  • First-class share-nothing concurrency

    “Any sufficiently complicated concurrent program in another language contains an ad hoc informally-specified bug-ridden slow implementation of half of Erlang.”

    Comment from 15 Apr 2026 in “Do You Even Need a Database?”

    “If you're looking for a language that makes "sharing by communicating" the default for almost every kind of use case, that's Erlang.”

    Comment from 26 Nov 2025 in “A million ways to die from a data race in Go”

    “When you send a message in Erlang, nothing the recipient does with the message impacts anything on the sender side. That's good!”

    Comment from 15 Sep 2026 in “Principles for Fast Tokio Applications”
  • Fault tolerant and reliable

    “In terms of ops usability, it's difficult to beat reliability, availability, and serviceability (RAS) features of mainframes. Erlang/OTP comes close.”

    Comment from 13 Dec 2025 in “We Lost Something: 1970s REPLs Were Better Than Modern Development Environments”

    “The language has extremely robust recovery mechanisms, having been designed for flaky telecommunications infrastructure.”

    Comment from 15 Feb 2026 in “What Functional Programmers Get Wrong About Systems”

    “the Erlang platform gives you so many guarantees that even if you somehow make a mistake, it is never catastrophic”

    Comment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”
  • Easy distributed, multi-node systems

    “if you want to learn distributed systems stuff, two Erlang BEAM processes on virtually any general purpose computer are more than enough”

    Comment from 23 Jan 2026 in “Setting Up a Cluster of Tiny PCs for Parallel Computing”

    “I have found the real value of Erlang to be internally between trusted nodes of my own physical infrastructure”

    Comment from 11 Nov 2025 in “How I fell in love with Erlang”

    “If you really know you can't scale with just a big box from the outset use something like Elixir or Erlang”

    Comment from 31 Aug 2026 in “Startup Anti-Patterns”
  • OTP features out of box

    “you are going to find it hard to get to the same level of feature completeness that Erlang offers out of the box”

    Comment from 11 Nov 2025 in “How I fell in love with Erlang”

    “I was so annoyed when I found out the OTP library and realized we've been reinventing things for 20+ years”

    Comment from 25 Nov 2025 in “Trillions spent and big software projects are still failing”

    “doing powerful things in Erlang/Elixir is trivial where it would be really convoluted in other languages”

    Comment from 11 Nov 2025 in “How I fell in love with Erlang”

What people warn about

Each mark is one comment

  • Slow for raw performance work

    “Erlang's VM is actually surprisingly slow, and in the era of c10k it was still using select/poll”

    Comment from 29 Dec 2025 in “We "solved" C10K years ago yet we keep reinventing it”

    “Erlang's said to be a pretty bad fit for -say- 3D video games that require high raw performance.”

    Comment from 13 Nov 2025 in “How I fell in love with Erlang”

    “they also had a historically bad performance story due to misjudgments in development direction”

    Comment from 27 Sep 2026 in “Go Concurrency Distilled”
  • Inconsistent naming and layered complexity

    “They just added shit to it as they needed it without apparently putting too much consideration into the organization, naming, or conventions.”

    Comment from 11 Nov 2025 in “How I fell in love with Erlang”

    “Most of it fits into the 'as simple as possible' mold, although there's some places where the use case is complex and it shows in the code”

    Comment from 11 Nov 2025 in “How I fell in love with Erlang”

    “I think the problem is that there is Erlang, the syntax, then Erlang, the features, and then there's OTP.”

    Comment from 14 Jan 2026 in “The Gleam Programming Language”
  • Concurrency model has its own pitfalls

    “Erlang does make some failure modes less nasty. It also hides latency debt well enough that people thinks the model saved them”

    Comment from 14 Mar 2026 in “The Isolation Trap: Erlang”

    “copying everything which, while improving memory safety by a huge margin, introduced (a) various GC footguns”

    Comment from 3 Jun 2026 in “My thoughts after using Clojure for about a month”

    “Erlang somewhat fixes this with 'selective receive' which re-introduces the possibility of deadlocks.”

    Comment from 6 May 2026 in “Behavior-Oriented Concurrency for Python”
  • Niche, hard to adopt

    “It's the converse that's an issue. If your org doesn't use any Erlang. You're not going to be able to add it.”

    Comment from 2 Mar 2026 in “Process-Based Concurrency: Why Beam and OTP Keep Being Right”

    “a niche purely functional language with a weird-ass syntax that is challenging to transition to”

    Comment from 7 Nov 2025 in “Ask HN: What's the Deal with XMPP”

Other programming languages people recommend

The four most recommended other programming languages, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.

Erlang/OTP compared with 4 alternatives
ProductRecommendCriticizeApprovalMonthsOwnedBadge
Rust2,03997368%134 yrs118 ownersApproved
Go1,25465166%135.9 yrs63 owners—
Python1,06782157%1218 yrs64 owners—
Zig74344962%121 yr27 owners—
Erlang/OTPThis page1934083%129 yrs9 ownersApproved
See all 163 programming languages, ranked

What people said

40 of the 332 comments that mention it, newest first. Each links to the original comment.

“Where Erlang, to stick to your question, can be non-deterministic (without taking special care).”

CriticizesComment from 17 Oct 2026 in “Intuitive concurrent programming in any language”

“they also had a historically bad performance story due to misjudgments in development direction”

MixedComment from 27 Sep 2026 in “Go Concurrency Distilled”

“When you send a message in Erlang, nothing the recipient does with the message impacts anything on the sender side. That's good!”

RecommendsComment from 15 Sep 2026 in “Principles for Fast Tokio Applications”

“If you really know you can't scale with just a big box from the outset use something like Elixir or Erlang”

RecommendsComment from 31 Aug 2026 in “Startup Anti-Patterns”

“the guarantees offered by OTP and its actor model are much more important than compile-time type checking”

RecommendsComment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“the Erlang platform gives you so many guarantees that even if you somehow make a mistake, it is never catastrophic”

RecommendsComment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language”

“copying everything which, while improving memory safety by a huge margin, introduced (a) various GC footguns”

CriticizesComment from 3 Jun 2026 in “My thoughts after using Clojure for about a month”

“Thousands of share-nothing actors (fibers / green-threads) with first-class support for communication between them”

RecommendsComment from 3 Jun 2026 in “My thoughts after using Clojure for about a month”

“Erlang somewhat fixes this with 'selective receive' which re-introduces the possibility of deadlocks.”

MixedComment from 6 May 2026 in “Behavior-Oriented Concurrency for Python”

“Python already had threads - and had the examples of Go and Erlang to show how well then worked compared to async / await.”

RecommendsComment from 22 Apr 2026 in “What Async Promised and What It Delivered”

“Any sufficiently complicated concurrent program in another language contains an ad hoc informally-specified bug-ridden slow implementation of half of Erlang.”

RecommendsComment from 15 Apr 2026 in “Do You Even Need a Database?”

“it does feel like it could be a natural fit for its own operating system without having to live on top of Linux”

RecommendsComment from 29 Mar 2026 in “Show HN: Crazierl – An Erlang Operating System”

“Erlang would offer similar benefits, because what we're doing with these things is more message passing than processing.”

RecommendsComment from 21 Mar 2026 in “OpenCode – The open source AI coding agent”

“Erlang does make some failure modes less nasty. It also hides latency debt well enough that people thinks the model saved them”

MixedComment from 14 Mar 2026 in “The Isolation Trap: Erlang”

“I'd still rather be writing this system in erlang than in another language, where the footguns are bigger.”

RecommendsComment from 14 Mar 2026 in “The Isolation Trap: Erlang”

“A GenServer processes messages sequentially from its mailbox — mutual exclusion is the execution model”

RecommendsComment from 13 Mar 2026 in “You hired the AI to write the tests. Of course they pass”

“Erlang is a concurrent language at the core; everything else is just a poor imitation implemented in libraries.”

RecommendsComment from 5 Mar 2026 in “What Python's asyncio primitives get wrong about shared state”

“It's the converse that's an issue. If your org doesn't use any Erlang. You're not going to be able to add it.”

CriticizesComment from 2 Mar 2026 in “Process-Based Concurrency: Why Beam and OTP Keep Being Right”

“the fact you can just attach a console to a running system and inspect processes' states makes it much easier to debug”

RecommendsComment from 2 Mar 2026 in “Process-Based Concurrency: Why Beam and OTP Keep Being Right”

“The language has extremely robust recovery mechanisms, having been designed for flaky telecommunications infrastructure.”

RecommendsComment from 15 Feb 2026 in “What Functional Programmers Get Wrong About Systems”

“if you want to learn distributed systems stuff, two Erlang BEAM processes on virtually any general purpose computer are more than enough”

RecommendsComment from 23 Jan 2026 in “Setting Up a Cluster of Tiny PCs for Parallel Computing”

“I think the problem is that there is Erlang, the syntax, then Erlang, the features, and then there's OTP.”

MixedComment from 14 Jan 2026 in “The Gleam Programming Language”

“Erlang's VM is actually surprisingly slow, and in the era of c10k it was still using select/poll”

MixedComment from 29 Dec 2025 in “We "solved" C10K years ago yet we keep reinventing it”

“A small cluster running erlang is probably better than a tiny number of finely tuned race-car boxen.”

RecommendsComment from 28 Dec 2025 in “We "solved" C10K years ago yet we keep reinventing it”

“In terms of ops usability, it's difficult to beat reliability, availability, and serviceability (RAS) features of mainframes. Erlang/OTP comes close.”

RecommendsComment from 13 Dec 2025 in “We Lost Something: 1970s REPLs Were Better Than Modern Development Environments”

“maintainability which I've found to be excellent for anything I ever did in Erlang, probably better than any other language I've used”

RecommendsComment from 4 Dec 2025 in “A Look at Rust from 2012”

“If you're looking for a language that makes "sharing by communicating" the default for almost every kind of use case, that's Erlang.”

RecommendsComment from 26 Nov 2025 in “A million ways to die from a data race in Go”

“I was so annoyed when I found out the OTP library and realized we've been reinventing things for 20+ years”

RecommendsComment from 25 Nov 2025 in “Trillions spent and big software projects are still failing”

“Erlang's said to be a pretty bad fit for -say- 3D video games that require high raw performance.”

MixedComment from 13 Nov 2025 in “How I fell in love with Erlang”

“doing powerful things in Erlang/Elixir is trivial where it would be really convoluted in other languages”

RecommendsComment from 11 Nov 2025 in “How I fell in love with Erlang”

“It's too easy to hot-patch a live system during firefighting and then forget to retrofit the fix to the source repo.”

MixedComment from 11 Nov 2025 in “How I fell in love with Erlang”

“I have found the real value of Erlang to be internally between trusted nodes of my own physical infrastructure”

RecommendsComment from 11 Nov 2025 in “How I fell in love with Erlang”

“Most of it fits into the 'as simple as possible' mold, although there's some places where the use case is complex and it shows in the code”

MixedComment from 11 Nov 2025 in “How I fell in love with Erlang”

“Erlang therefore misses the "benefits" of operating on a higher ISO layer, but gains powerful advantages of operating on layer 4”

MixedComment from 11 Nov 2025 in “How I fell in love with Erlang”

“They just added shit to it as they needed it without apparently putting too much consideration into the organization, naming, or conventions.”

MixedComment from 11 Nov 2025 in “How I fell in love with Erlang”

“you are going to find it hard to get to the same level of feature completeness that Erlang offers out of the box”

RecommendsComment from 11 Nov 2025 in “How I fell in love with Erlang”

“Two separate Erlang nodes. On different machines, different networks, different continents if I wanted.”

RecommendsComment from 11 Nov 2025 in “How I fell in love with Erlang”

“a niche purely functional language with a weird-ass syntax that is challenging to transition to”

CriticizesComment from 7 Nov 2025 in “Ask HN: What's the Deal with XMPP”

“Erlang is very math-notation-y and when I introduced people to some Erlang code I'd written they understood it”

RecommendsComment from 1 Nov 2025 on Hacker News

“The point of Erlang/Elixir is that it is as performant as possible, and Erlang's history is a testament to this.”

RecommendsComment from 1 Nov 2025 on Hacker News

Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.