Elixir books and courses for beginners
Elixir is one of the main weapons of our dev team. We chose the best books and courses that will help you get started. Take the first sip!
Elixir has been a frequent topic of my recent articles on this blog. No wonder - the language born in 2011 is being used by big companies and websites, and has earned itself the reputation of Ruby developers' next language.
Despite the functional programming paradigm, which is completely different than the object-oriented programming one in Ruby, the learning curve for Elixir is pretty low. Also, the fact that Elixir has been named 8th most loved language among software engineers in the recent Stack Overflow survey, speaks volumes about its popularity.
Elixir is on the rise, battle proven with such features as:
- concurrency,
- fault tolerance,
- and scalability.
Don't want to miss out on opportunity? Perfect. Take a look at our list of the most popular Elixir books and courses. Ready to take the first sip?
1. The Getting Started guide
The free tutorial made by Elixir creators and available at the language's official website.
You will learn about Elixir's syntax, how to define modules (as opposed to classes and stateful objects), manipulate the characteristics of common data structures and many more.
Every course user is welcome to ask questions or report mistakes through the issue tracker on Elixir's GitHub account.
Available online and in EPUB format.
If you want to drink from the very source, here it is.
2. "Joy of Elixir" by Ryan Bigg
Heard about the awesomeness of Elixir, but have never written a line of code in your life? If you are afraid of being the odd one out, that's where "Joy of Elixir" by Ryan Bigg comes in handy.
His book, available also as free web content is the crucial stuff for absolute beginners. Bigg confesses that many of the Elixir guides, regardless of their informative value, come with a lot of assumed knowledge. "Joy of Elixir" is the "go-to resource for teaching people programming for the very first time with Elixir", as the author claims.
See? Elixir and programming are not only for the chosen few.
3. Elixir School
Another great destination for all those who want to learn and master Elixir is the Elixir School. This is an open initiative and a team effort by worldwide contributors whose mission is to make the language spread across the dev community.
Thanks to the volunteer work, the lessons in the Elixir school have been translated into Italian, Slovak, Spanish, Turkish, German, Polish and many more.
4. Free Elixir Course by Prograils
Free online Elixir course written out of passion for programming by our developer, Szymon Soppa.
From the functional programming paradigm, through data structures to control flow mechanisms, the Free Elixir Course by Prograils will equip you with everything you need to know at different stages working with Elixir.
Each of the eleven major chapters is accompanied by practical exercises that will help you forge theory into practice.
5. "Programming Elixir 1.6" by Dave Thomas
An updated and expanded edition of the highly-ranked "Programming Elixir 1.3". Dave Thomas avoids any academic overtones to effectively attract developers to The Next Big Thing in the web development community - Elixir.
Then again, his book is something way more than laying out the fundamental concepts - as one review goes "it goes beyond the basics and teaches you to think Elixir".
6. "Elixir in Action" by Saša Jurić
The highest ranking book according to the startlearningeixir.com users (scoring 97%).
Saša Jurić, a developer with extensive Elixir and Erlang experience, author of The Erlangelist blog provides a practical introduction to Elixir and functional programming. Besides the basic concepts and building blocks, "Elixir in Action" examines such topics as integration with BEAM and a system's distribution over multiple machines and running it in production.
"Elixir in Action" (second edition now available) was written for readers with no previous Elixir/Erlang experience, but at the same time familiar with some other programming language (Ruby, JavaScript or C++). A fine way to expand your coding repertoire!
7. "Mastering Elixir" by André Albuquerque and Daniel Caixinha
One of the newest publications in our ranking, "Mastering Elixir" was written by two software engineers, André Albuquerque and Daniel Caixinha, working with the language on the daily basis and using its assets for high growth of business.
We tried to write a book that would talk about the full Elixir development experience, from the creation of the project until the very end, when you deploy and monitor your application
wrote Albuquerque on Elixir Forum, which perfectly wraps up the intentions and contents of the book.
Wanna dig deeper? Our developer recommends these books
While researching for this article, I asked Michał Buszkiewicz, Elixir dev at Prograils, to complete the list with his recommendations. And here they are, specifically targeted at those who crave for a more thorough Elixir experience and want to put their knowledge in a wider context.
8. Professor Frisby's Mostly Adequate Guide to Functional Programming
Beyond books that focus on Elixir as a programming language, it is highly recommended that anyone who wants to not only learn but master the tool should immerse deeper into what the traits of the language's paradigm are, so that other languages sharing the paradigm will be easier to harness.
This is where books such as Professor Frisby's "Mostly Adequate Guide to Functional Programming" shine: they serve a thorough presentation of functional programming concepts, without focus on any specific language (in this case, JavaScript is the language of choice because it's perfectly adequate). Elixir's functional nature and power of expression surely allows all of the presented concepts to be leveraged.
The book, written in accessible yet accurate and precise language, is targeted at anyone who has ever found traditional imperative programming not to be the Holy Grail of programming paradigms, or has already found functional programming interesting and wants to be a master of their profession.
9. "Metaprogramming Elixir: Write Less Code, Get More Done" by Chris McCord
This book, written by Chris McCord, one of the leading Elixir community people and author of the Phoenix framework, lays out Elixir's metaprogramming capabilities thoroughly. Metaprogramming is, in a nutshell, often described as a language's tools capable of writing code that generates code. The broad range of metaprogramming tools make Elixir a very extensible and flexible language - a trait shared with languages such as Ruby, though utilizing completely different mechanisms.
The book is great for ambitious developers who want to master Elixir metaprogramming, perhaps with some experience in using advanced mechanisms of other languages.
10. "Adopting Elixir: From Concept to Production" by Ben Marx, José Valim, Bruce A. Tate
Built around stories of Ben Marx, the lead engineer behind the Elixir transition in Bleacher Report, Bruce Tate who hires and trains Elixir programmers at icanmakeitbetter and the language's creator Jose Valim, the book exceeds the mere topic of programming. "Adopting Elixir: From Concept to Production" shows the case studies and strategies behind the most successful Elixir applications. Those with high traffic and huge annual revenue. This book goes beyond the language, shows the bigger picture and offers a much more holistic approach to Elixir transformation. Chances are, an inspiring one. Thanks HumanOS for this recommendation!
Speaking about adopting Elixir...
Curious if you need to use Elixir for your software project? Maybe this article will help you get the answer.
Looking for a skilled and agile software development team fluent in Elixir? Shoot us an e-mail, we will gladly lead you through the entire experience!
Photo by Eric Reyna on Unsplash.com