Joy of Elixir (self-published) (free)


by Ryan Bigg

Joy of Elixir came about because I saw that there was not very much when it comes to absolute beginner material for learning Elixir. There's the excellent Getting Started guide on and the Programming Elixir book, but those feel like they're more targeted towards experienced programmers. They teach Elixir with a lot of assumed knowledge about programming languages. They're great books, but they're only great books for experienced programmers.

There's also the wonderful Elixir School site that serves well as a reference guide to the features of Elixir, but what newbies really need is a gentler introduction to Elixir.

Joy of Elixir avoids assuming you know anything about programming while teaching you about your first programming language: Elixir.

It seemed like there is a vast, empty, cavernous void where there should be something like the excellent Learn to Program book by Chris Pine. That book is for another programming language called Ruby; but there feels like there should be an equivalent to that for Elixir.

We have people completely new to programming wanting to learn Elixir -- because people who have learned Elixir already told them about it and how cool it is! -- but the support is not-quite-there yet. So this is an attempt to fill that void. Essentially a response to: "Why won't somebody think of the newbies?". Well, someone is thinking of the newbies.

I want Joy of Elixir to be the go-to-resource for teaching people (yes, that means you!) programming for the very first time using Elixir. I want you to experience the joy that Elixir (and programming in general) can bring to people. I want you to feel like they have power over the machine because of the knowledge contained within this book.

I want you to feel competent as our future's potential computer programmers. I want you to feel like you can become a programmer. This isn't stuff a "chosen few" can do. You're capable of learning this too.

Companion blog post:

If you find any mistakes within the book, please follow the instructions over here to let me know about them.

Thanks for reading!

Book suggestions for Elixir beginners
How have you been learning Elixir & Phoenix? (2017 Edition!)
A free and open source online Elixir and Phoenix bootcamp

Nice one Ryan :023: I am sure this is going to help lots of newbies get into Elixir (and functional programming) :003:

For those interested in this book, I’ve read one of Ryan’s other books (a Rails book published by Manning) and I was very impressed!


I am a little confused. It states the book is free, but then when I want download it, I have to purchase it???


This is a pretty common approach, free to read online, but paid as a eBook/PDF or paper.


Not only is it free to read online, but it is also open source:

The repo is a Jekyll site and so you’ll need Ruby installed to run it, but the setup is very easy to do.

If you want to view this book offline then I would recommend cloning the repository and then running it locally.

Alternatively: if you want it in dead-tree form: combines all the available chapters into one web page and then from there you could print it out.


Nice Ryan!


Thanks a lot

This seems to be the first book, which seriously picks me up, where I am.

Little suggestions:

those_who_are_assembled = adds Firstly a couple of persons, then just one.
This is confusing since I like to know how to make multiple sublists at once.

Plus, it also suggests that people can get added to such lists after a while, without mentioning how.

Here something similar:
How to call the example on the bottom, since there is no person = anymore involved?

This is currently where I stock:

I suggest to do an example with numbers, if you like the users to calculate things.


Thank you for reading and making these suggestions :slight_smile:

Would you mind opening a new issue for each different thing in the repo? Particularly, one issue for Chapter 3’s thing, one issue for Chapter 4’s and one issue for Chapter 5? That will make it easier for me to track / fix them when I get around to doing that.


Short review here:



you have plenty of free time.


Yes, it’s done :slight_smile:


I was referred to this guide by a family member, and found it very easy to jump into. Sadly I’ve reached the interim end of the tutorial. Are there any tutorials that you can point me towards that are fairly simple like this one, and are geared towards the learner that has a good understanding of how computers work. In other words; simple, but not too simple. I intend to come back to this as more is added, but I like to go through multiple tutorials to grasp the full understanding of a single language. Any suggestions would be great!