Show Notes
Why Learn Elixir?
You should learn Elixir because it has:
- A rock-solid, reliable virtual machine (BEAM)
- Simple, functional design patterns
- Massive concurrency support
- Easy distribution
These features mean you’ll need smaller engineering teams and less costly hardware to run your software. The savings can be spent elsewhere in your business.
BEAM
BEAM was originally developed for the Erlang programming language in the late 1980s. It was designed to be:
- Reliable
- Concurrent
- Distributed
It is widely recognized in the tech community that BEAM achieves these goals. It’s so reliable that one BEAM system was advertised to achieve 99.9999999% reliability, or 1 second of dowtime every 32 years.
Maintainability
Elixir is a functional language, without classes, objects, or inheritance. Elixir programs are made up of simple functions that take input and return output.
result = function(data)
Functions are organized into modules, and related modules are organized into apps. These apps can be run on the same hardware or on distributed hardware, with very few changes.
Concurrency Support
Elixir has excellent concurrency support. Elixir code is run as processes, which are light-weight threads of execution that can run concurrently.
Thanks to BEAM, Elixir can support millions of these processes on a single machine.
Smaller Engineering Teams
Elixir’s simple patterns and full-featured standard library make it possible to develop more software with fewer people.
Whatsapp built their platform on BEAM, and served 450 million users with only 32 engineers. Read more about it here.
About This Series
We cover every language feature, with:
- Videos
- Detailed show notes
- Exercises
- Demos (when appropriate)
- English subtitles for accessibility
Each video has searchable chapter navigation, so you’ll never have a problem finding what you are looking for.
Best of all, there’s no monthly fee. Pay once, and get all future updates for free.