Goodreads helps you keep track of books you want to read.
Start by marking “Programming Elixir: Functional |> Concurrent |> Pragmatic |> Fun” as Want to Read:
Programming Elixir: Functional |> Concurrent |> Pragmatic |> Fun
Enlarge cover
Rate this book
Clear rating
Open Preview

Programming Elixir: Functional |> Concurrent |> Pragmatic |> Fun

4.30  ·  Rating details ·  564 ratings  ·  49 reviews
You want to explore functional programming, but are put off by the academic feel (tell me about monads just one more time). You know you need concurrent applications, but also know these are almost impossible to get right. Meet Elixir, a functional, concurrent language built on the rock-solid Erlang VM. Elixir’s pragmatic syntax and built-in support for metaprogramming wil ...more
Paperback, P1.0, 287 pages
Published 2013 by The Pragmatic Bookshelf
More Details... Edit Details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about Programming Elixir, please sign up.

Be the first to ask a question about Programming Elixir

Community Reviews

Showing 1-30
4.30  · 
Rating details
 ·  564 ratings  ·  49 reviews

More filters
Sort order
Sebastian Gebski
I've fully re-read new version (>=1.6) to compare it with the original release (1.2 or 1.3 if I'm not wrong). The impression is 95% positive:
* book is polished, well-structured & perfectly edited
* it's 100% enough to start an adventure with Elixir programming
* some of new elements (since 1.3) were properly covered (e.g. formatter), but there are also some other very interesting elements (like GenStage & flow) that haven't been even mentioned - yes, I know that GenServer is huge &
Jun 29, 2013 rated it it was amazing  ·  review of another edition
Shelves: programming, elixir
Disclaimer: The good folks at The Pragmatic Bookshelf were nice enough to provide me with a free copy of this book, but this has no influence on the contents of the review.

My first contact with Dave Thomas was the famous “Pickaxe book” for Ruby. It wasn’t my first contact with the language, but it certainly helped in deepening my understanding of it. It’s a great book, and I went back numerous times to re-read certain chapters. I already had a crush on Ruby, but “the Pickaxe” helped turning that
Jeremy Carman
May 27, 2018 rated it it was amazing  ·  review of another edition
Shelves: tech
It was a good book. I had previously ready Learn functional programming with Elixir last month. I expected this to be very similar, and just reinforce what I had just learned, but I was pleasantly surprised. One thing I liked about the book was the author was often pointing out the functional way to think about or do things. I also liked that he would occasionally point out convention, and then say I prefer method X.

The book is broken into three major sections. The first section was language bas
Bo Jeanes
I've been really excited about Elixir for a few months and wanting to dig in. Late last year, I went through the Getting Started guide and managed to get through the whole thing in about a day.

Then I did nothing with Elixir until picking up this book.

I really wanted to like it but really, I found that it was just a wordier version of the Getting Started guide. It took longer to get through but taught very little above what was in the guide. Furthermore, the author's writing style and humour came
Sebastian Gebski
Apr 30, 2015 rated it it was amazing
The best tech book I've read in months.

Perfect balance between what's told & what's needed to comfortably start coding in Elixir. It shines especially in language-dedicated sections, OTP part feels a bit too short, but as it can be really overwhelming (based on my own experience when I was learning Erlang some time ago), I don't find it a big trouble.

All key topics (distribution, supervision, actor model itself) have enough of author's love, with an exception of error handling maybe. And I d
Fabian Linzberger
Jun 15, 2013 rated it really liked it
very nice introduction to the language. while it targets programmers who do not know erlang already, and I already do, I still enjoyed the macro and protocol chapters a lot. also covers some basic functional programming well with practical examples.

recommended for anyone looking to learn Elixir!
Justin Smith
Apr 01, 2017 rated it it was amazing  ·  review of another edition
Fun easy read. Doesn't dive to deep, but gives you what you need to understand the language.
Daniel Paulino
Jul 26, 2017 rated it really liked it
If you're looking for a introduction about how powerful is Elixir, this is a great choice. Dave Thomas starts with some basics principles of the language and Functional Progamming then shows how the some core principles of the OTP works, as the final part he shows some advanced principles like Macros and Protocols, but If you're looking for a more advanced book this is probably not the best one.

The nice thing about the book is that all chapters comes with a some exercises to reinforce what you l
Michael Dubakov
Nov 08, 2016 rated it really liked it
Quite OK book. It was the first FP book I read fully, so first part was useful. I imagine it will be too basic for developers with FP experience. Unfortunately, second part did not dig deep into systems design based on processes. You have a glimpse of processes, supervisors, tasks and agents, but there is no foundation you can understand how to create at least medium apps. I think this book is good for beginners only.
Stoica-Marcu Floris Andrei
Comparing to the “Programming Erlang” book by Joe Armstrong I found this book lacking in many regards. I often found myself wondering why some parts of the book are so shallow. All-in-all, if I were a beginner to functional programming and was learning from this book I would certainly learn allot, just not have much in-depth knowledge on how things work behind the scenes.
Sotolf Flasskjegg
Nov 19, 2017 rated it really liked it  ·  review of another edition
This book was fun, I still have quite a bit to learn, but it was well written, and I would need to practice a bit to get to understand stuff completely.
Oct 12, 2018 rated it it was amazing  ·  review of another edition
Great language and clear writing.
Anurag Peshne
Nov 01, 2017 rated it really liked it
A good book for experienced developers to get started with Elixir.
Aug 22, 2017 rated it really liked it
Shelves: programming
Great introduction to Elixir. Would highly recommend for anybody interested in the language.
Valery Lukin
Jan 03, 2019 rated it it was amazing  ·  review of another edition
Shelves: programming
Great and easy to read book. After getting familiar with Elixir basics this book is a gem to find. Gives nice introduction to ITP and some more in depth of language itself.
Romenig Lima
May 07, 2019 rated it really liked it  ·  review of another edition
It has useful examples for how to code in different ways with elixir!
Jul 08, 2017 rated it really liked it
If you are toying with Elixir – just read this book. A lot of useful info for beginners, some advices for converts and a ton of fun.

Bonus: Dave Thomas is one of the greatest tech evangelists, you just can't ignore his enthusiasm.
Piotr Kalinowski
Jun 21, 2016 rated it it was amazing  ·  review of another edition
Shelves: computers
Good overview of various basic concepts related to Elixir to get you started and wet your appetite for more. It's actually exactly the kind of thing I feel like I need when starting with the new language, as this is how I seem to learn them best: start with an overview to get a general understanding of the “landscape,” and then work with the language filling in any details into that mental scaffolding.

Good read, even if I had a quibble with the way the concept of accumulators was introduced, for
Jacek Królikowski
Very chaotic, with debatable topic order, some explanations posing more questions than they provided answers. Some of this could be possibly blamed on the characteristics of the language. The author states in the foreword "I want to inspire you to get involved, and the point to the online resources that will fill in the gaps.", but I think this has been taken a step too far. Frequently there's just a handful of examples for a given construct with a wordy commentary, without a more in-depth expla ...more
Willian Molinari
Dec 16, 2016 rated it liked it
Shelves: computers, text
It's not the best Elixir book I read but it's a good book.

I started with Programming Phoenix for a more practical learning. This book feels like the other "Programming language book". You will find how to split a string, or how you can deal with regex. In case you're looking for the methods for many types, it will be for you.

For me, it's not the best book to start, but it's a good one to improve your skills and "programming language vocabulary".
Dec 28, 2014 rated it it was amazing
This book gives you a fantastic overview of all the great features that Elixir offers as a programming language.

The first part of the book covers some concepts about functional programming, then you'll see some basic language constructs, which are normally used every day like basic operators, anonymous functions, pattern matching, binaries, char lists, keywords, maps, modules, enumerables, and so on... also talks about some code conventions, at the end of this part the author shows how to organi
Mark Schisler
Sep 01, 2015 rated it it was amazing
This is a great way for someone who already knows how to program to learn more about Elixir and the Erlang VM. Imagine building a ruby-esque, functional wrapper around the Erlang VM, with great Macro meta-programming capabilities and you have Elixir.

My mind was blown almost completely today when Dave Thomas overloaded the "do" block and created an aspect-oriented solution to the function profiling problem. This book was also my introduction to OTP, the Erlang's Actor model semantics including G
Mohamad El-husseini
Outside of the official docs, this is the go to Elixir book. I read the first release and recently reread the new release for Elixir 1.2. It helped me author my a natural language processor library, my first in Elixir.

It's a light-weight book. It's not a reference book. But it has enough depth to make it both interesting and useful. It's a great learning tool.

You might want to read it more than once to get the most out of it, especially if you are new to functional programming and OTP concepts.
Sergey Shishkin
Sep 27, 2013 rated it liked it
The book starts really great and very well conveys the point why concurrent and distributed programming is the future. I had two major problems with the book however:

First, the distributed part of the book comes somewhat short and unexciting. I'd wish a more comprehensive example of distributed Erlang, like implementing a consensus algorithm or a partitioned key-value store.

Second, I really disliked Elixir as a language. Ruby syntax is great for an imperative language, but not so much for a func
Dustin Farris
May 29, 2016 rated it really liked it
Nice overview of the language. All essentials were covered with basic examples. The more advanced parts were a little vague—the necessity of Supervisor trees was not well explained; Tasks and Agents could have used an extra couple of pages of detail.

There are a few grammatical errors and spelling typos. Several paragraphs do not flow as well as they could. I'm sure these will be worked out in future revisions.

Overall, the book is a great starting point for a great language.
Philip Sampaio
Mar 13, 2015 rated it it was amazing
The book shows in deep and with a lot of fun the major features of the Elixir language. It was very useful to me, as it explains the topics that I was most in doubt, like supervisors, protocols and metaprogramming. It is very easy to read if you are a beginner in Elixir, because Dave Thomas was very fortunate in add a lot of examples. It covers the basics and the more complex stuff. I definitely recommend it!
Geoff Lanotte
Feb 21, 2014 rated it it was amazing  ·  review of another edition
Shelves: 2015-to-read
I enjoyed going through this book, it did a good job of introducing the language and the concepts in what I felt was an approachable way. I am coming from Ruby, so the syntax felt pretty similar though the concepts stretched my brain.

The book is very well written, I would not recommend this book for new programmers, but for people who know and use at least one other programming language.
Jeremy Frens
May 14, 2015 rated it it was amazing
Great introduction to the Elixir language. It is not bogged down in details, so you get a really solid, quality grounding in the language and its ecosystem (OTP, specifically). I wish types had been treated a bit better (relegated to an appendix), but its coverage was still quite good. The best quality of the book is that it has encouraged me to dig deeper into this language.
Jan 19, 2014 rated it it was amazing
Shelves: devel
Not too deep to be a reference book, but this book has a lot of information.

Dave Thomas sets the expectation in the introduction: this book will not explain the basics, it is assumed that the reader has some knowledge (not little) about functional programming, and programming in general. This way he can keep a good pace introducing how Elixir works.
Chris Maguire
Dec 10, 2014 rated it it was amazing
Well written, concise, approachable. I'm already using Elixir and this book made me feel much more comfortable in it. Thomas doesn't go into minutiae which I appreciate because I can look up the docs if I want all the gory details. I want to get a concise overview of language with some examples and clarification on the fuzzy bits. Thomas does this very well.
« previous 1 next »
There are no discussion topics on this book yet. Be the first to start one »

Readers also enjoyed

  • Programming Phoenix
  • Confident Ruby
  • Programming Erlang
  • Elixir in Action, Second Edition
  • Learn you some Erlang for great good!
  • Erlang and OTP in Action
  • Tmux: Productive Mouse-Free Development
  • Metaprogramming Ruby
  • Distributed Systems For Fun and Profit
  • ERLANG Programming
  • Real World OCaml: Functional programming for the masses
  • Seven Concurrency Models in Seven Weeks: When Threads Unravel
  • Design Patterns in Ruby
  • Working with UNIX Processes
  • The Joy of Clojure
  • Land of LISP: Learn to Program in LISP, One Game at a Time!
  • Programming Clojure
  • 99 Bottles of OOP
See similar books…

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »
“a way, processes in Elixir are like objects in an object-oriented system (but they have a better sense of humor).” 0 likes
More quotes…