What is Elixir and Why Should I Care?

This post is just a short collection of items that I think are valuable if you're just approaching Elixir for the first time and are trying to understand what it is and why it is a strong option.

This podcast episode is a fantastic overview of the technology and how it fits into the software engineering landscape, in general.

Brian Cardarella of DockYard has done a great talk, The Business Case for Elixir. Check this one out if you're interested in the reasons for adoption, from a company's perspective.

Phoenix LiveView is a new library which could represent a paradigm shift in how many of us build SPAs. Chris McCord's recent article sheds some light on how it works. His even more recent ElixirConf EU talk goes deeper yet.

The runtime is incredibly efficient and handling many simultaneous users. Read about How Discord Scaled Elixir to 5M Concurrent Users with only 4 full-time engineers or how Bleacher Report could reduce 150 servers running their Ruby on Rails app to 2 when they rewrote in Elixir.

I think the most exciting thing about the tool, for me, is simply how it leads me to write code that is so uncommonly easy to read, follow, refactor, and test. The fact that we embrace the thing that makes good OOP code, functional programming, is a big component of this, but the tooling and the features seem to generally draw from the best practices across the field, allowing me to stay focused on the problem at hand and iterate quickly. I think this talk describes some of these ideas: using FP naturally (or sometimes forcibly!) leads you to "pits of success" where one ends up with good designs which are easy to reason about, test, etc. (The YouTube description is worth a read.)

A developer from Podium wrote a great article explaining how they have been all-in on Elixir for some time and, despite looking closely at a number of alternatives, couldn't be happier with their choice.

The book Adopting Elixir got a hearty recommendation from someone at the Lonestar ElixirConf in Austin I just returned from. The guy said it really sold his team and I imagine it would be a great explanation of the why & how from a higher level than an actual intro to programming the language. I actually think the Elixir books from Pragmatic Programmers are good, in general. I originally learned the language from Programming Elixir.

The Awesome Elixir page lists a great many learning resources, libraries and other useful goodies.

Saša Jurić, a well-respected member of the community, did a fantastic talk at GOTO 2019 about BEAM technology, The Soul of Erlang and Elixir.

Hopefully, I'll come back and add to this post in the future as I find stuff.

Show Comments