Book

Getting Started with Erlang

📖 Overview

Getting Started with Erlang serves as a practical introduction to the Erlang programming language from one of its original creators. The book provides hands-on examples and exercises to help readers understand Erlang's core concepts and features. The text progresses from basic syntax and data types through to more complex topics like concurrent programming and distributed systems. Code samples build in complexity throughout the chapters, allowing readers to develop real applications while learning the fundamentals. Armstrong's writing balances technical depth with accessibility, making the material approachable for programmers coming from other languages. The focus remains on teaching through practice rather than theory alone. The book exemplifies Erlang's unique philosophy of fault-tolerance and scalability, demonstrating how its design principles enable robust distributed systems. Through this lens, readers gain insight into both the practical aspects of Erlang and the broader concepts of concurrent programming.

👀 Reviews

There are not enough internet reviews to create a summary of this book. Instead, here is a summary of reviews of Joe Armstrong's overall work: Readers consistently highlight Armstrong's clear explanations of complex distributed computing concepts. His writing style makes difficult technical material accessible without oversimplifying. What readers liked: - Practical examples that demonstrate real-world applications - Focus on reliability and fault tolerance principles - Direct, conversational tone in technical writing - Balance of theory and implementation details What readers disliked: - Some code examples in older books are outdated - Documentation could be more comprehensive - Advanced topics sometimes lack sufficient detail Ratings across platforms: - Programming Erlang (2nd Ed): 4.2/5 on Goodreads (500+ ratings) - Making Reliable Distributed Systems: 4.4/5 on Amazon (100+ ratings) Notable reader comment: "Armstrong explains distributed computing fundamentals in a way that finally made them click. The principles apply well beyond just Erlang." - Goodreads reviewer Common praise focuses on Armstrong's ability to convey complex ideas through simple examples and clear analogies. Critical reviews primarily note the need for updated examples and deeper coverage of certain topics.

📚 Similar books

Learn You Some Erlang for Great Good! by Fred Hebert This guide builds on Armstrong's foundational work by providing practical examples and deep dives into Erlang's concurrent programming features.

Programming Elixir by Dave Thomas The book teaches Elixir, a programming language built on the Erlang virtual machine that incorporates Erlang's distributed computing principles.

Seven Languages in Seven Weeks by Bruce Tate The book includes Erlang among its featured languages and demonstrates how its concurrency model compares to other programming paradigms.

Programming Distributed Computing Systems by Carlos A. Varela This text expands on distributed computing concepts introduced in Armstrong's book through examples in Erlang and other languages.

Designing for Scalability with Erlang/OTP by Francesco Cesarini and Steve Vinoski The book extends Armstrong's concepts into production-level applications using Erlang's Open Telecom Platform framework.

🤔 Interesting facts

🔸 Joe Armstrong, the author, initially created Erlang while working at Ericsson in 1986 to improve telephony applications, but was told it would never work - it went on to become one of the most reliable programming languages for distributed systems. 🔸 The book's subject, Erlang, powers WhatsApp's messaging system, handling millions of concurrent connections with remarkable stability and was a key factor in Facebook's $19 billion acquisition of the company. 🔸 During his career, Joe Armstrong was forced to "reinvent" Erlang after Ericsson banned its use internally - he recreated it as Open Source Erlang, which led to its widespread adoption across the industry. 🔸 The language's name has a dual meaning: it honors Danish mathematician Agner Krarup Erlang and is also an abbreviation for "Ericsson Language." 🔸 The author passed away in 2019, but his work on Erlang has influenced modern programming languages like Elixir and helped establish the "let it crash" philosophy of software design, which paradoxically leads to more reliable systems.