I’ve been using Elixir at work professionally for the past year and more recently I’ve been starting to do some mentoring around Elixir. I’ve noticed that while there are some very solid intermediate books/resources like Getting Started guide on elixir-lang.org the Programming Elixir book and even Elixir School, there doesn’t seem to be anything at all book-wise directed at newbies.
So I decided to write a little book called Joy of Elixir.
Joy of Elixir avoids assuming knowledge of anything about programming while teaching people about their 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 Ruby; but there feels like there should be an equivalent to that for Elixir. I'm hoping Joy of Elixir can be that equivalent.
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.
Elixir is a great first language to get started with because its syntax is very newbie friendly and the initial concepts are very easy to learn. I would even go as far as to say that Elixir is easier to learn than Ruby because of Elixir's immutability and the way Elixir puts functions into modules -- (rather than the functions just being available, i.e. through inheritance or monkey-patching). I find it easier to navigate through other people's Elixir code, than I do to navigate through other people's Ruby code.
I want Joy of Elixir to be the go-to-resource for teaching people programming for the very first time using Elixir. I want them to experience the joy that Elixir (and programming in general) can bring to people. I want people to feel like them have power over the machine because of the knowledge contained within this book.
I want to have a book that I can confidently recommend to newbies when they ask about how they can learn Elixir. If you have a newbie in your life that wants to learn Elixir, point them at this book and let them read it. I’m very keen to get some feedback from newbies (and everyone else) on how the content could be improved. There’s instructions on how to give that feedback over on the “About” page.
I aim to continue writing this book over the next couple of months and hope to have a finished edition by the end of the year. What’s there at the moment is roughly a month’s worth of work – or put another way: 15,000 words (50ish pages). I’m aiming for the book to be at about 50,000 words (125-150 pages) by the time it is done.