Which book is better for learning Erlang?


I just got a $25 Amazon Gift card and would like to buy a book to learn the Erlang programming language. Based on recommendations from this forum the choices are:

Which one should I get?


You can’t go wrong with either. That said, I’ve given LYSE as a gift on a few occasions and find it’s a little more useful as a reference (especially for OTP concepts) than Joe’s.


My favorite book is: Erlang Programming by Francesco Cesarini, Simon Thompson


Well, if it is a question of “which one should I spend my money on”, let me point out that you can read LYSE online for free (sorry @MononcQc :sweat_smile:).

If it is more a question of “what should I read first”, I would recommend LYSE. It covers more ground than “Programming Erlang”, at the expense of omitting background details that are good to know but which you don’t need to get started. You can (and should) read “Programming Erlang” afterwards to gain more and deeper insights.

So in a nutshell, I would recommend reading both, in the order I indicated. At least that is what worked out pretty well for me. However, keep in mind that they are both a little old by now, and so some parts are obsolete (like the gen_fsm chapter in LYSE) while some newer things (like maps and gen_statem) are not covered.

Finally, “Erlang Programming”, which @Fantarina mentioned, is a good one too, roughly at the same level as “Programming Erlang”. However, I wouldn’t recommend it as a first read. I know one person on this forum who tried to learn Erlang from scratch from it and got stuck every so often on details and concepts which are not important for beginners. I haven’t seen anything from him lately, so it may well be that he gave up. Nevertheless, I would recommend it as a later read.


I like to have print copies for when I am not at my computer. For example, reading it while going to bed.


Yeah, me too, I have them both on paper :wink:


Have you tried a Kindle? They are much easier/nicer to read in bed than a big heavy (and mostly text) book imo, and the great thing about ebooks is that publishers like PragProg and Manning often give you free updates inside each major version of the book, so you can get a book in beta and know that you’ll get the final print version (along with other updates) as and when they are released :003:

iPads/tablets are ok too, but it’s much easier to get distracted on them.


Each of these books is good in its own way. What unites them is that the authors are programmers and lecturers.
In my opinion they are difficult for beginners. The best place to start is with a book is “Introducing Erlang”. It is written in a manner from simple to complex and the reader is gradually immersed in the complexity and peculiarities of the technical material.


I would also like to add a few words to clarify my recommendation. :green_book:
The author of the book Simon St. Laurent is a professional writer and it was a pleasure to read it (and reread it time to time).


I agree with the order, I’m kind of new to Erlang. Started with Programming Erlang and run into a plethora of challenges, e.g part of the same code snippets are shown in pieces over more than one chapter, functions were being called from lib_misc; you had to copy that into the project folder etc. The anagram recursion was difficult to wrap my head around etc, moved to Erlang Programming but this time with less challenge except a tool like pman wouldn’t work, debugging was quite a challenge; eventually I moved to Introducing Erlang which was very gently towards a noob and with references to these other books for further reading. The Erlang community on slack has been another great source for learning, helping with challenges and pointing to the right resources.



Been reading Introduction to Erlang a bit on and off. I am wondering what book I should get next, after finishing “Introduction to Erlang”?

1 Like

What about some of the books already suggested above?^^ :003:

1 Like

Which one would be the next book in the progression?

1 Like

If you feel you understood everything then you could go to a more advanced book?

Have a look at the books in our #erlang-learning-resources:books section and maybe go with one that seems like the next step up and one which appears to be written in a way that you think you might like?

If you haven’t read Programming Erlang I would think that is a must read for all Erlang programmers because it was written by one of the creators of Erlang :003: