What do you think?


Elixir in Action
The Elixir language blends the battle-tested power and stability of the Erlang virtual machine with an approachable and expressive syntax. Revised and updated for the Elixir 1.7, Elixir in Action, Second Edition teaches you how to apply Elixir to practical problems associated with scalability, fault tolerance, and high availability. Along the way, you'll develop an appreciation for, and considerable skill in, a functional and concurrent style of programming.
384 pages, Unknown Binding
First published January 1, 2015
About the author
Saša Jurić
2 books22 followersSoftware developer with many years of experience building server systems, as well as desktop applications, with a special focus on developing backend systems using Elixir and Erlang.
Ratings & Reviews
Friends & Following
Create a free account to discover what your friends think of this book!
Community Reviews
Displaying 1 - 30 of 43 reviews
December 17, 2015
Programming Elixir: Functional > Concurrent > Pragmatic > Fun presented different valuable topics --it went more into macros nearing the end, which I appreciated--however, it didn't seem to build knowledge for the reader as well as Elixir in Action. Nearly a third of this book is devoted to managing and scaling an example application in Elixir/OTP. At certain points during Programming Elixir, I felt the need to skim and move forward quickly. This would've been impossible with Elixir in Action as it's a pretty dense read. Even if you are a software engineer with a bit of experience, it will take you a while to work your way through this one, but the time will be well spent.
As I paged through this book, I toured the C++ programs of past employers in my mind and thought to myself that I could've written most of them with less than half the code and effort in Erlang/OTP. The more I dig into different tech stacks, the more I realize picking the right stack for the job has a huge effect on the amount of effort that is involved in building systems.
Anyway, I recommend this book even if you know nothing about Erlang/OTP or Elixir, but just want to broaden your perspective on what different frameworks provide to you. In terms of implementing a fast, distributed system, I can't think of why you wouldn't start here!
As I paged through this book, I toured the C++ programs of past employers in my mind and thought to myself that I could've written most of them with less than half the code and effort in Erlang/OTP. The more I dig into different tech stacks, the more I realize picking the right stack for the job has a huge effect on the amount of effort that is involved in building systems.
Anyway, I recommend this book even if you know nothing about Erlang/OTP or Elixir, but just want to broaden your perspective on what different frameworks provide to you. In terms of implementing a fast, distributed system, I can't think of why you wouldn't start here!
July 22, 2015
Elixir (as a young tech) has a good start in terms of books - PragProg's "Programming Elixir" is decent & "Elixir in Action" is very nice as well (even if we had to wait a bit until it leaves MEAP stage).
Pros:
1.) VERY good introduction to the language & its syntax
2.) VERY good introduction to OTP & gen_server: imho better than the one in "PE"
3.) Great code examples -> readable, concise, but properly set in context of current topic
Cons:
1.) Very little about the practices around programming itself - except packaging, tracing & deployment (w/o hotswap!): pretty much nothing about testing (especially when you keep in mind how specific processes & message-driven communication is)
2.) Book formatting has its flaws -> code samples have 2 ways of formatting that are used interchangeably and pretty random -> in one of them font scales (on Kindle), in one doesn't and sometimes it's not readable enough (on both Kindle Fire HDX & Kindle Paperwhite)
If you're looking for the introductory book for Elixir AND OTP/gen_server, it's a book for you.
Pros:
1.) VERY good introduction to the language & its syntax
2.) VERY good introduction to OTP & gen_server: imho better than the one in "PE"
3.) Great code examples -> readable, concise, but properly set in context of current topic
Cons:
1.) Very little about the practices around programming itself - except packaging, tracing & deployment (w/o hotswap!): pretty much nothing about testing (especially when you keep in mind how specific processes & message-driven communication is)
2.) Book formatting has its flaws -> code samples have 2 ways of formatting that are used interchangeably and pretty random -> in one of them font scales (on Kindle), in one doesn't and sometimes it's not readable enough (on both Kindle Fire HDX & Kindle Paperwhite)
If you're looking for the introductory book for Elixir AND OTP/gen_server, it's a book for you.
February 16, 2022
So i have read almost all published Erlang reosurces ,and, since i wanted to get a hold on Elixir i started with this one.
I found the first 25% of the book really clean cut , concise , sharp. Author does outstanding job presenting the language features , and goes deep enough to give you a bird's eye view of Elixir.
He also does a really cool job , including elixir manual links for the programming features that deserve a deeper dive !! +10 for that man !
Now for a starter the next 25% of the book is also great , since he introduces the OTP mechanisms (genserver, supervisor, app) , explains them in a simple manner , yet again with another big plus - he includes images ! Those are so damn good for conceptualization.
I knew most.of that stuff so i got a little bored and i thurdged fast through the pages.
Next part he goes all.the way to build a HTTP distributed system which i sincerely applaud ! Seeing the system go from Erlang primitives to a full blown http app running over a cluster is a damn fine job !
However i already read something like this in Erlang in Action , so again i passed through a bit faster.
What i really really loved in this book was the final part ! The release part , the way you build, deploy, monitor and interact with a running erlang system.
That part is golden and comes from a guy that spent days on forums, erlang man and slack channels trying to understand the black arts behind the release process...and this guy in 2 pages explains and provides simple scenarios on how to do exactly this 100 clearer than all materials i've read. Marvellous !
Great fine and polished book ! I recommend it wholeheartedly to anyone interested in the Erlang/Elixir !
I found the first 25% of the book really clean cut , concise , sharp. Author does outstanding job presenting the language features , and goes deep enough to give you a bird's eye view of Elixir.
He also does a really cool job , including elixir manual links for the programming features that deserve a deeper dive !! +10 for that man !
Now for a starter the next 25% of the book is also great , since he introduces the OTP mechanisms (genserver, supervisor, app) , explains them in a simple manner , yet again with another big plus - he includes images ! Those are so damn good for conceptualization.
I knew most.of that stuff so i got a little bored and i thurdged fast through the pages.
Next part he goes all.the way to build a HTTP distributed system which i sincerely applaud ! Seeing the system go from Erlang primitives to a full blown http app running over a cluster is a damn fine job !
However i already read something like this in Erlang in Action , so again i passed through a bit faster.
What i really really loved in this book was the final part ! The release part , the way you build, deploy, monitor and interact with a running erlang system.
That part is golden and comes from a guy that spent days on forums, erlang man and slack channels trying to understand the black arts behind the release process...and this guy in 2 pages explains and provides simple scenarios on how to do exactly this 100 clearer than all materials i've read. Marvellous !
Great fine and polished book ! I recommend it wholeheartedly to anyone interested in the Erlang/Elixir !
This entire review has been hidden because of spoilers.
November 13, 2021
Amazing book, but I think is not the first book to get started with Elixir, you should have some experience with it (I already have it), but besides that, it's an amazing book it has changed the way that I see Elixir and showed me that I was so wrong about Elixir/Erlang. It explained so well the killer features of Elixir/Erlang. Now I'm an Elixir lover.
September 27, 2014
the only book about production grade elixir applications that I've read so far. I'll revisit this one in the future, that's for sure
March 27, 2019
A very straightforward and gentle introduction to relatively complex ideas like OTP and distributed systems in Elixir. Highly recommended to anyone new to this topic.
October 8, 2024
A great book to start learning Elixir.
June 11, 2020
A clear soup-to-nuts overview of Elixir that focuses primarily on the benefits and usage of OTP. Early chapters focus on the specifics of the language, including syntax and data types, which is clear but thankfully brief. The real value for me was the explanations of BEAM, processes, supervisors, and applications, which not only explained what they were in a glossary sort of way, but described how to use them, and even better, when not to. I like a book that illustrates tradeoffs using examples obviously gleaned from real world situations.
October 24, 2023
Elixir In action has a more practical take than Programming Elixir by Dave Thomas, as it focuses more on application of concepts instead of concepts in isolation. Notable elixir ecosystem topics to me included concurrency in BEAM, GenServer, Supervision trees and ETS tables. The examples were easy to follow but the author had a tendency to be loquacious with explaining, while the examples - though practical - weren't particularly interesting.
Overall, it's a good step 2 if you're new to elixir as a whole, the first being Dave Thomas's Programming Elixir. If you've had some experience already, it may be a good read as you approach thinking about your application in a production instance.
My bookmarks are on pages 4, 6, 12, 76, 94, 96, 100, 132, 168, 174, 176 & 247.
Overall, it's a good step 2 if you're new to elixir as a whole, the first being Dave Thomas's Programming Elixir. If you've had some experience already, it may be a good read as you approach thinking about your application in a production instance.
My bookmarks are on pages 4, 6, 12, 76, 94, 96, 100, 132, 168, 174, 176 & 247.
May 16, 2022
Very well organized and smooth read in the context of programming languages books. The book starts with the language basics and doesn't waste a lot of time going over these basics. We build a To-do list application from the first pages of the book, improving upon it throughout each section until we have a fully distributed To-do list web application that utilizes elixir features of scalability, fault tolerance, high availability, and distribution.
December 13, 2017
Pretty awesome book on Elixir...I already knew Erlang so it was easier to catch up...but still the books does a pretty good job on explaining things in an easy way...
My first book on Elixir and I'm glad I chose this one to start -:)
Lots of examples and good explanations...totally recommended...and as for Elixir as a language...very interesting and pretty well designed...
My first book on Elixir and I'm glad I chose this one to start -:)
Lots of examples and good explanations...totally recommended...and as for Elixir as a language...very interesting and pretty well designed...
December 11, 2020
If you are like me, and don’t fancy too much about the awkward humours in the other starter book, you’ll probably find this book a better and more stoic alternative. My only complaint is that the second half on OTP and the supervision tree could be more detailed for beginners to fully appreciate the power of Elixir.
March 30, 2023
The first 5 chapters were boring for me and hard to get through, because I have already read the material in other books. But from that point on it was only getting more interesting with each chapter. Great explanation of concurrency patterns, usage of supervisors, different ways to register a process, distributed communication etc.
August 12, 2019
Juric does an excellent job of structuring the material, starting with language basics and moving into gradually more complex content. His code examples are clear, concise, and easy to follow.
Well done book!
Well done book!
December 18, 2018
Informative and easy enogh to follow
May 15, 2019
Excelent book to learn how to deal with Elixir in concurrent, distributed and fault tolerant systems.
Read
March 18, 2020Did not complete
July 2, 2020
Good overview of the language and OTP concurrency model.
October 23, 2021
Loved this intro to a new world
July 6, 2022
Succinct and very exemplary for the language.
September 20, 2023
This book takes you from absolute elixir beginner to advanced. it handles all the important topics in elixir in a very interesting way. I loved the book and special thanks to the writeer
January 16, 2024
Marking as "read" I didn't really finish it but it's not as relevant to me now as it was when I was starting with Elixir back in 2019. This is a great book, and still a great reference.
January 1, 2025
A great introduction to Elixir, only catch is that I would recommend getting familiar with the syntax beforehand since the section in this book wasn't enough in my opinion.
February 14, 2025
A really well written book, it'll make you confident in writing basic Elixir.
November 19, 2022
An excellently written guide into a powerful world of distributed/fault-tolerant Erlang/Elixir systems. In addition to a plethora of useful coding ideas, Saša will reply with a comprehensive solution to one's issues on GitHub in a short amount of time. This all makes learning that much more effective.
Thanks, Saša!
Thanks, Saša!
February 5, 2019
Very well written and covers great ground. Highly recommend it !
May 3, 2020
Excellent intro to Elixir!
November 14, 2019
This review represents really well what I felt about this book. In a few words: it was worth for every single page.
April 1, 2015
Definitively a must read if you want to learn Elixir and start to build OTP applications. The book is fun, and the examples are easy to understand. The application Saša uses as example is very simple, and it is developed though the most part of the book.
This book has some complex subjects and skip the very basics, so I don't think is for Elixir beginners. For those, I recommend Dave Thomas's Programming Elixir book.
This book has some complex subjects and skip the very basics, so I don't think is for Elixir beginners. For those, I recommend Dave Thomas's Programming Elixir book.
December 3, 2019
I just finished reading this book for the second time, as part of an Elixir Book Club.
I love this book.
I'm not sure I can recommend it as one's first introduction to Elixir (unless one is already comfortable with functional programming and other languages) but for those who are over the hump and looking to get a handle on how to really take advantage of the BEAM using Elixir -- this book is a must-read.
I love this book.
I'm not sure I can recommend it as one's first introduction to Elixir (unless one is already comfortable with functional programming and other languages) but for those who are over the hump and looking to get a handle on how to really take advantage of the BEAM using Elixir -- this book is a must-read.
Displaying 1 - 30 of 43 reviews






















