Elixir In Action (Manning)

by Saša Jurić

Elixir in Action teaches you to apply the new Elixir programming language to practical problems associated with scalability, concurrency, fault tolerance, and high availability.

###About the technology
Elixir is a modern programming language that takes advantage of BEAM, the Erlang virtual machine, without the burden of Erlang’s complex syntax and conventions. Elixir gives you Ruby-like elegance with the power to develop bulletproof distributed server systems that can handle massive numbers of simultaneous clients and run with almost no downtime.

###About the book
Elixir in Action teaches you how to solve practical problems of scalability, concurrency, fault tolerance, and high availability using Elixir. You’ll start with the language, learning basic constructs and building blocks. Then, you’ll learn to think about problems using Elixir’s functional programming mindset. With that solid foundation, you’ll confidently explore Elixir’s seamless integration with BEAM and Erlang’s powerful OTP framework of battle-tested abstractions you can use immediately. Finally, the book provides guidance on how to distribute a system over multiple machines and control it in production.

###What’s inside

  • Practical introduction to the Elixir language
  • Functional programming idioms
  • Mastering the OTP framework
  • Creating deployable releases
  • About the reader:
  • Requires no previous experience with Elixir, Erlang, or the OTP. Written for readers who are familiar with another programming language like Ruby, JavaScript, or C#.

###About the author
Saša Jurić is a developer with extensive experience using Elixir and Erlang in high-volume, concurrent server-side systems.

Don’t forget you can get 35% off the ebook with your forum discount, use code ‘elixirforum’ :023:

Second Edition Now Available:



Don’t forget you can get 35% off the ebook using the code ‘devtalk.com:023:

Book suggestions for Elixir beginners
How have you been learning Elixir & Phoenix? (2017 Edition!)
Book Sales / Discounts / Coupons Thread
Design pattern for a genserver that needs to get state from the database
Beginner project ideas?
Which book to read?
Elixir design and refactoring books
Need Recommendation on Learning Elixir
What should be the next books I read?
Where can I find an explanation of closures on the BEAM
What books/courses should I take to learn Phoenix as a newbie?
I bought 5 PragProg elixir related books. Should I still buy "The little Elixir & OTP Book?"
Will Learning Erlang help in Learning ELixir and Phoenix?
What is your recommended order of reading Elixir books in 2019?
Distributed Workers
Huge ecommerce backend migration - is Phoenix the right choice?
Getting things done with Elixir - tips?
Stderr and stdout of external program
Book Sales / Discounts / Coupons Thread
What learning resources make you write actual code?
What learning resources make you write actual code?
New to FP, best course and difference between Dave Thomas's book and course
Please recommend Elixir + Phoenix Resources, Communities, etc
Recommended learning resources
Learning Elixir Path for someone not new to functional programming
Mixing It Up With Elixir (CodeSchool)
Book path recomendation for Ruby/Rails dev of 5+ years
Elixir in Action promo code?
How to get started with distributed system?
Aircloak - anonymized analitycs
What should I keep in mind if I'm using Elixir in Action today?
What is GenServer and whats its use cases?
Acceptance of Erlang's 'term_to_binary' and vice versa in Elixir
Programming Elixir (Pragprog)
Learning Resources For Functional Programing App Design Tecniques
Which course should I pick!
How to use the spawn functions?
Where to begin learning Elixir for someone with existing programming experience?
Learning Elixir in 2018
Elixir text only tutorials?
Your Elixir Tips Thread
Functional programming learning path
Resources for architectural design and key principals
Topics covered in Elixir in Action textbook
OTP and the microservices advent
Learning Elixir, frst impressions ( plz don't kill me ! )

Just finished this book - loved it!

I’ve been reading it concurrently with Programming Elixir :003: I read 50% of Programming Elixir first (the language bits) and then jumped to Elixir in Action because it covers much of the same ground on the language side of things. This suited me perfectly because it saved me having to write notes (I find going over things is a great way to ‘repeat and reinforce’ what I’ve learnt). These two books are a fantastic combo if this is your preferred learning style too.

I am surprised this is Saša’s first book - it’s very well written. It moves at a quicker pace than Programming Elixir on the language side of things (which is another reason why I think they work very well together if read concurrently as mentioned above).

Saša also covers much more than just the fundamentals of the language; after the basics you cover processes and OTP in quite some detail (and from what I’ve read so far, goes into more detail here than PE). You actually build your own server process before he introduces you to GenServers (which I felt was an excellent way to demystify them) - you’ll definitely leave feeling as though you have a fantastic insight into Elixir and Erlang!

If you will be reading this together with Programming Elixir I recommend reading 50% of Programming Elixir first, then 100% of Elixir in Action, then finishing with the remainder of Programming Elixir (partly because of what I’ve said above and partly because PE’s been updated more recently - so when you’re done you will be relatively ‘up-to-date’ :slight_smile:).

Overall, this book definitely gets a huge :023: from me! If you haven’t got it - get it! Well done @sasajuric - I can’t wait to see what you put out next!


Thanks for this! It always makes me happy to learn people enjoyed the book.

FWIW, Manning and I have been discussing the update option, and it looks like it might happen soonish. We’ve still not closed the deal, but there’s definitely interest on both sides to update the content to the new version. Stay tuned for more info :slight_smile:


Nice one Saša - please keep us posted :023:

You should write more! I’m sure other’s have said it already, but would love to see a Phoenix book from you :003:


Consider Saša’s blog - The Erlangelist - your homework :079:

PS: Fixed url (apparently I pasted - instead of copied - the url into the address bar :icon_rolleyes:)


The link might be pointing to a wrong url


Best Elixir book

1 Like

Perfect book indeed. Great work Saša!


Personally, I think Programming Phoenix and Functional Web with Phoenix cover the Phoenix space very well, so I don’t have plans to cover that space :slight_smile:

But otherwise, I really enjoyed the process of writing a book, so I wouldn’t mind doing it again at some point :slight_smile:


[facetious on]
But we don’t have a “Build your own Phoenix framework” that uses unit testing to explore the best practices regarding Elixir functional programming, meta-programming and OTP development (and of course testing) that went into creating Phoenix.

“Don’t code blindfolded. Attempting to build an application you don’t fully understand, or to use a technology you aren’t familiar with, is an invitation to be misled by coincidences.”
– Dave Thomas & Andy Hunt, Programming by Coincidence, from The Pragmatic Programmer.

[facetious off]

(Nod to Tero Parviainen)


I must say that I agree that you can never have too many good books :003: plus everyone is different, one author might have a greater following in some circles while others in another.

When you find an author who’s writing style really suits you - you hold on to them! I am still trying to get @russolsen to write an Elixir or Phoenix book :lol:

1 Like

@shankardevy is working on it Phoenix Inside Out (series of books/booklets) (self-published)

Russ Olsen writing a book would be great, and I think that elixir resembles Ruby only superficially, but is much more similar to clojure (without parenthesis).

It’s his writing style that I love (and what I was trying to highlight here, that book authors very often get a following by those who their work resonates with :003:) (PS in case you didn’t know, Russ has been in to Elixir for some time - I wouldn’t dream of asking a non-Elixirist to write an Elixir book :lol:)


Good to know that he is on Elixir. I hope some good news about some always high quality book from him. :007:

1 Like

You guys are making me blush.

I certainly agree that Elixir sometimes seems like a cross between Ruby and Clojure, which is one of the reasons I’m interested in it.



Just reading Elixir in Action now - and so far I think it’s really great. Here is a link to a nice post from the author which outlines how Elixir/Erlang have changed a little since the book was written - good to have a look at it if you’re reading the book…


I’m happy to inform you that Manning and I have reached an agreement for the second edition. The new version will be a mechanical update addressing the obsolete stuff (such as HashDict), and explaining some new features (e.g. the with special form and the Registry).

I also have some ideas for expanding the book (covering some additional topics, and maybe doing some minor restructuring), but this will require much more work, so it will be done in some subsequent edition, possibly combined with a more significant update (e.g. to Elixir 2.0).

Timewise, I’m currently tied up in prepping a workshop and a talk, so I’ll start working on this beginning November. I expect to be finished somewhere in the 2nd quarter of 2018.


MEAP for EiA is finally out (see here). You can grab it at 50% with the code mljuric2 (valid until February 23rd). If you have the 1st edition, I think you can get a better discount for ebook, but you need to check with Manning about that.


I saw your video here Sasa: https://www.youtube.com/watch?v=pO4_Wlq8JeI&t=318s - Thanks to @kokolegorille

For this reason alone I’m going to buy the book, I’m sure I’m going to pick up some gnarly tricks from your book.