# Joe Armstrong

> British computer scientist (1950-2019)

**Wikidata**: [Q1691321](https://www.wikidata.org/wiki/Q1691321)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Joe_Armstrong_(programmer))  
**Source**: https://4ort.xyz/entity/joe-armstrong-q1691321

## Summary
Joe Armstrong was a British computer scientist (1950-2019) best known as the creator of the Erlang programming language, which revolutionized concurrent and fault-tolerant programming. He developed Erlang while working at Ericsson to solve telecommunications challenges, creating a language that became foundational for modern distributed systems.

## Biography
- Born: December 27, 1950 in London
- Nationality: United Kingdom
- Education: University of London; Doctor of Philosophy from Royal Institute of Technology, Stockholm
- Known for: Creating the Erlang programming language
- Employer(s): Ericsson
- Field(s): Computer Science

## Contributions
Joe Armstrong's most significant contribution was the creation of the Erlang programming language during his time at Ericsson in the 1980s and 1990s. Erlang was specifically designed to handle concurrent processes and fault-tolerant systems, addressing critical needs in telecommunications infrastructure. The language introduced innovative concepts for managing millions of lightweight processes and enabling seamless distribution across multiple nodes. Armstrong also contributed to the Open Telecom Platform (OTP), a set of libraries and design principles that complement Erlang. His work laid the foundation for modern distributed computing systems, influencing how companies like WhatsApp, Amazon, and other large-scale services handle massive concurrency requirements. Beyond Erlang, Armstrong was instrumental in advancing the understanding of concurrent programming paradigms and fault-tolerant system design through his writings, talks, and academic work. His approach to programming emphasized the importance of designing systems that could gracefully handle failures rather than simply avoiding them.

## FAQs
### Q: What programming language did Joe Armstrong create?
A: Joe Armstrong created the Erlang programming language while working at Ericsson. Erlang was designed specifically for building concurrent, distributed, and fault-tolerant systems, particularly for telecommunications applications.

### Q: Where did Joe Armstrong work during his career?
A: Joe Armstrong worked at Ericsson, where he developed the Erlang programming language. He was also affiliated with the University of London and earned his PhD from the Royal Institute of Technology in Stockholm, Sweden.

### Q: When did Joe Armstrong die?
A: Joe Armstrong died on April 20, 2019, in Stockholm, Sweden.

## Why They Matter
Joe Armstrong's impact on computer science extends far beyond the creation of a single programming language. His work on Erlang fundamentally changed how engineers approach concurrent programming and fault tolerance in distributed systems. The principles he pioneered—such as treating failures as normal operations rather than exceptional circumstances—have become standard practice in modern cloud computing and microservices architecture. Companies like WhatsApp used Erlang to handle billions of messages with minimal downtime, demonstrating the practical value of Armstrong's theoretical work. His influence can be seen in subsequent programming languages and frameworks that adopted similar concepts of actor-based concurrency and immutable data structures. Armstrong also contributed significantly to the broader programming community through his advocacy for better software design practices, his educational efforts, and his philosophical approach to thinking about software systems as living, resilient entities rather than static programs.

## Notable For
• Creator of the Erlang programming language, which powers major telecommunications and internet infrastructure
• Pioneer of concurrent and fault-tolerant programming paradigms that influenced modern distributed systems
• Developer of the Open Telecom Platform (OTP) framework alongside Erlang
• Academic and industry leader who bridged theoretical computer science with practical engineering solutions
• Influential advocate for rethinking software architecture around failure resilience and process isolation

## Body
### Early Life and Education
Joe Armstrong, born Joseph Leslie Armstrong on December 27, 1950, in London, received his education from prestigious institutions. He studied at the University of London before pursuing a Doctor of Philosophy degree at the Royal Institute of Technology in Stockholm, Sweden. This educational background provided him with both theoretical foundations and international perspective that would prove crucial for his later innovations.

### Career at Ericsson
Armstrong spent the majority of his career at Ericsson, where he identified critical problems in telecommunications software development. The company needed a way to build systems that could handle millions of concurrent calls while maintaining near-perfect uptime. Traditional programming approaches proved inadequate for these requirements, leading Armstrong to develop entirely new paradigms.

### Development of Erlang
The creation of Erlang began in the mid-1980s as part of Ericsson's internal project to improve telecommunications software reliability. Armstrong recognized that existing programming languages were ill-suited for concurrent processing and fault tolerance. Erlang introduced several revolutionary concepts including lightweight processes, message passing between processes, and a "let it crash" philosophy for error handling. The language was designed to support hot code swapping, allowing systems to be updated without stopping service.

### Technical Innovations
Erlang's runtime system implemented sophisticated garbage collection mechanisms and process scheduling that enabled millions of concurrent processes. The language featured built-in support for distribution across multiple machines and automatic recovery from hardware and software failures. These features made Erlang particularly suitable for telecommunications switches, web servers, and other mission-critical applications.

### Industry Impact
Major companies adopted Erlang for high-stakes applications. WhatsApp used Erlang to support over a billion users with a relatively small engineering team. Amazon employed Erlang in parts of its infrastructure. The language became essential for building systems requiring high availability and scalability. Armstrong continued to refine and promote Erlang throughout his career, contributing to its evolution and adoption.

### Legacy and Recognition
Armstrong's work extended beyond technical contributions to include influential writing and speaking. He authored books and papers that articulated his philosophy of software design and concurrent programming. His approach to thinking about software systems as collections of independent, communicating processes influenced an entire generation of programmers and language designers. Even after his death on April 20, 2019, in Stockholm, his ideas continue to shape how engineers approach distributed computing challenges.

## References

1. [Till minne: Joseph Armstrong. 2019](https://www.dn.se/familj/till-minne-joseph-armstrong/)
2. Virtual International Authority File
3. MusicBrainz
4. [Source](https://twitter.com/FrancescoC/status/1119596234166218754)
5. National Library of Israel Names and Subjects Authority File