News for hackers. Stuff that matters.

Ask HN: Learning Erlang from scratch

I've been reading a lot about how wonderful Erlang is. So I'd like to learn Erlang properly from scratch.

Any books/websites/docs/whatever is greatly appreciated. I've started reading the official documentation but it's not very friendly. I want something that starts from the basics, through to the syntax through to deployment. I'm sure one resource will cover all this so anything you may have is welcome.

Thanks!

( 29 comments | 41 points | on HN )
Re:Ask HN: Learning Erlang from scratch by qhoxie on Thursday October 16, 2008 @04:33PM (#334905)
http://www.pragprog.com/titles/jaerlang/programming-erlang

No question. Written by the author of the language.

It has lots of great practical examples and walks you through everything from start to finish.

http://www.trapexit.org also has some really nice tutorials and discussion.

Re:Ask HN: Learning Erlang from scratch by babo on Thursday October 16, 2008 @04:46PM (#334934)
It's an amazing book, a rare example of well balanced content. Highly recommended.
Re:Ask HN: Learning Erlang from scratch by tdavis on Thursday October 16, 2008 @05:52PM (#335006)
This.
Re:Ask HN: Learning Erlang from scratch by ricree on Thursday October 16, 2008 @05:05PM (#334956)
Another obvious but useful site is http://www.erlang.org/doc

I especially tend to spend a lot of time on the pages at http://www.erlang.org/doc/man

Re:Ask HN: Learning Erlang from scratch by pierrefar on Friday October 17, 2008 @06:56AM (#335483)
Yes, but they're not very beginner-friendly and not that user friendly.

I'm sure I'll use them extensively later when I get more into this.

Re:Ask HN: Learning Erlang from scratch by JustAGeek on Friday October 17, 2008 @03:59AM (#335408)
Yes it really is a great book!

However, it is by no means a suitable book for people who haven't programmed anything yet, the author assumes that you are already familiar with coding. So for absolute beginners the book is probably way too difficult.

Re:Ask HN: Learning Erlang from scratch by prakash on Friday October 17, 2008 @01:28AM (#335333)
The trapexit guys are planning to release "Practical Erlang Programing".
Re:Ask HN: Learning Erlang from scratch by pierrefar on Friday October 17, 2008 @06:54AM (#335481)
Thanks! Great resources, both.
Re:Ask HN: Learning Erlang from scratch by sunkencity on Thursday October 16, 2008 @05:01PM (#334950)
programming erlang is a very good book!
Re:Ask HN: Learning Erlang from scratch by gqwu on Friday October 17, 2008 @03:36AM (#335404)
1) read all courses in http://www.erlang.org/course/course.html then do the exercises in http://www.erlang.org/course/exercises.html

2) read official Getting Started manual http://erlang.org/doc/getting_started/part_frame.html

3) learn about erlang OTP http://www.erlang.org/doc/design_principles/part_frame.html

4) this book is a MUST get! "Programming Erlang: Software for a Concurrent World" by Joe Armstrong http://www.pragprog.com/titles/jaerlang/programming-erlang

good luck!

Re:Ask HN: Learning Erlang from scratch by pierrefar on Friday October 17, 2008 @06:58AM (#335485)
Thanks! The courses look really good.
Re:Ask HN: Learning Erlang from scratch by balpreetspankaj on Thursday October 16, 2008 @06:07PM (#335024)
A few days ago, I was looking at this presentation on Erlang presented at one of Google Tech Talk. This was my first introduction to Erlang and I found it very informative.

http://video.google.com/videoplay?docid=240707194662243675&#...

Re:Ask HN: Learning Erlang from scratch by damienkatz on Thursday October 16, 2008 @09:05PM (#335162)
The best way to learn any language is to build stuff. Build something you think is cool. Allow yourself to suck at it and do everything wrong. Then build it again, or build something else cool.
Re:Ask HN: Learning Erlang from scratch by pierrefar on Friday October 17, 2008 @06:59AM (#335486)
Agreed 100%. I have an idea that I want to build with Erlang.
Re:Ask HN: Learning Erlang from scratch by tdupree on Thursday October 16, 2008 @04:37PM (#334914)
After seeing it referenced a lot on HN, I've also been really interested in learning Erlang.

What projects have you fellow hackers used/are using Erlang for? Are you glad you did?

Re:Ask HN: Learning Erlang from scratch by RKlophaus on Thursday October 16, 2008 @07:24PM (#335094)
I just published a screencast demo of a web framework that I made in Erlang, called Nitrogen.

See http://nitrogen-erlang.tumblr.com

Also, the technology behind my startup company, Stitcho.com is in Erlang. See http://www.stitcho.com

I would definitely recommend it, especially if you are one of those people who really stretches a language. Once you get past the new syntax, it is very quick to learn.

Re:Ask HN: Learning Erlang from scratch by phr on Friday October 17, 2008 @12:36PM (#335750)
RKlophaus: Your stitcho.com site needs to tell the reader more about why they need Stitcho -- on the first page.
Re:Ask HN: Learning Erlang from scratch by brianr on Thursday October 16, 2008 @05:28PM (#334986)
I wrote a message queue server that uses the memcached protocol (so I could use memcache client libraries to connect to it), similar to Starling/Sparrow. Starling and Sparrow kept falling over from the volume of connections, so I decided to write my own in Erlang. We've been using it in production for about 6 months now, and it works great.
Re:Ask HN: Learning Erlang from scratch by aaronblohowiak on Thursday October 16, 2008 @05:47PM (#335002)
Any plans to open source it?
Re:Ask HN: Learning Erlang from scratch by brianr on Thursday October 16, 2008 @09:42PM (#335191)
Yeah, that's been on my list for months. Maybe I'll get to it this weekend...
Re:Ask HN: Learning Erlang from scratch by aaronblohowiak on Friday October 17, 2008 @02:28PM (#335847)
please email me when you do - aaron.blohowiak at google's popular free email host.
Re:Ask HN: Learning Erlang from scratch by moonpolysoft on Thursday October 16, 2008 @06:10PM (#335027)
I wrote a clone of Amazon's dynamo. It really helped speed up development vs. trying to do it in a language like Java or C++. http://github.com/cliffmoon/dynomite
Re:Ask HN: Learning Erlang from scratch by tlrobinson on Friday October 17, 2008 @01:43AM (#335340)
Bob Ippolito (who wrote mochiweb, a webserver written in Erlang) did an introductory talk last year: http://bob.pythonmac.org/archives/2008/03/08/exploring-erlan...
Re:Ask HN: Learning Erlang from scratch by pierrefar on Friday October 17, 2008 @07:00AM (#335487)
Video is always good. Thanks!
Re:Ask HN: Learning Erlang from scratch by tlrobinson on Friday October 17, 2008 @03:56PM (#335940)
I should also mention I found this one a little more engaging than the Google Tech Talk one.
Re:Ask HN: Learning Erlang from scratch by tlrobinson on Thursday October 16, 2008 @04:38PM (#334917)
I don't know Erlang and I haven't read this, so I can't vouch for it, but I came across this book:

http://www.erlang.org/download/erlang-book-part1.pdf

Re:Ask HN: Learning Erlang from scratch by phr on Friday October 17, 2008 @12:27PM (#335741)
That's the first Erlang book, and is very good. Unfortunately, it's out of print, or was the last time I checked, but might be available used. It's very good for wrapping your head around programming with pattern matching, single assignment, and message passing concurrency, but light on the OTP, since, I believe, it was written before much of today's OTP was written. Think of it as the book the writers of OTP must have used to learn how to write OTP.

If you can find a used copy, grab it. I bought mine when it was still in print, and wouldn't part with it.

Re:Ask HN: Learning Erlang from scratch by jfarmer on Thursday October 16, 2008 @05:33PM (#334993)
I wrote a few Erlang tutorials was I was learning: http://20bits.com/tag/erlang/

The public documentation for the language is awful.

Re:Ask HN: Learning Erlang from scratch by voodootikigod on Friday October 17, 2008 @09:33AM (#335576)
We did it as part of a group and found that to be highly advantageous. I recommend finding someone near you who is also interested in learning Erlang and work through it together.