Skip to content
Programming Erlang by Joe Armstrong Review

Programming Erlang by Joe Armstrong Review

2 min readBy AICoder HQ Editorial
Last updated:Published:

4.5 / 5

Overall Rating

Check Price
Editor's Pick
Programming Erlang: Software for a Concurrent World (Pragmatic Programmers)

Programming Erlang: Software for a Concurrent World (Pragmatic Programmers)

4.5/5
$35.97

Programming Erlang by Joe Armstrong is the canonical book on the actor model and fault-tolerant systems. Here is whether modern developers should still read it.

Check Price

We may earn a commission if you make a purchase through our links.

TL;DR

Programming Erlang: Software for a Concurrent World by Joe Armstrong is the foundational text on Erlang, OTP, and the actor model that underpins WhatsApp, RabbitMQ, and Discord's voice infrastructure. Even if you never ship Erlang in production, the mental models it teaches about concurrency and fault tolerance are worth their weight in gold.

Why It Matters

Most concurrency books teach threads, locks, and pain. Armstrong — who literally co-created Erlang at Ericsson to run telephone switches with nine-nines uptime — teaches a different model: lightweight processes, message passing, and 'let it crash.' That model now shows up in Elixir, Akka, Orleans, and effectively every modern actor framework.

Key Specs

  • Author: Joe Armstrong (Pragmatic Bookshelf)
  • Latest edition: 2nd edition
  • Pages: ~550
  • Format: Paperback, ebook
  • Audience: Backend, distributed-systems, and infrastructure engineers
  • Topics: Sequential Erlang, processes, OTP, supervision trees, distributed Erlang

Pros

  • Written by the language's co-creator — voice and authority you cannot fake.
  • Best practical introduction to the actor model anywhere.
  • Strong coverage of OTP, supervisors, and the 'let it crash' philosophy.
  • Examples are small enough to follow and big enough to be useful.
  • Concepts transfer cleanly to Elixir, Akka, and other actor systems.

Cons

  • Erlang syntax is unusual; expect a learning curve if you come from C-family languages.
  • Tooling discussions feel dated — the modern Erlang/Elixir ecosystem has moved on.
  • Some examples are pre-modern by today's standards.
  • Long if you only want the philosophy and not the implementation details.

Who It's For

Backend engineers building distributed systems, anyone moving into Elixir or Phoenix who wants the BEAM-level intuition, and developers who keep getting burned by thread-based concurrency. Also a great read for senior engineers designing fault-tolerant architectures in any language.

How to Use It

Work through Part I to internalize sequential Erlang, then spend serious time on Part II (concurrency) and Part III (OTP). Build a small supervised application — a chat server or a job queue — alongside the book. The lessons stick when you crash a worker on purpose and watch the supervisor restart it.

How It Compares

Versus Designing for Scalability with Erlang/OTP (Cesarini & Vinoski), Armstrong is more philosophical and Cesarini is more rigorously OTP-focused. Versus Programming Elixir (Thomas), Armstrong gives you the BEAM mental model that makes Elixir click. Read Armstrong first, then pick a modern follow-up.

Bottom Line

Programming Erlang is one of the most influential systems-programming books of the last 20 years. Even in 2026, the lessons on processes, supervision, and 'let it crash' make it required reading for anyone serious about reliable, distributed software.

Check the latest price on Amazon →

Free AI Coding Tools newsletter

No spam. Unsubscribe anytime.

Affiliate Disclosure

This article may contain affiliate links. If you make a purchase through these links, we may earn a commission at no additional cost to you.
#programming
#workspace
#books-programming

Discussion

Sign in with GitHub to leave a comment. Your replies are stored on this site's public discussion board.

Stay Updated

Get the latest AI Coding Tools reviews and deals delivered to your inbox.

Browse All Reviews

More Reviews