[erlang-questions] Erlang and the learning curve

Kenji Rikitake <>
Fri Jan 7 06:34:57 CET 2011

Learning Erlang/OTP is much harder than I thought; the world of Erlang/OTP is
more profound and complex than I first viewed.  The language itself is
relatively simple, but the idea and philosophy expressed in the OTP are
not something you can grasp in a few days.

In the message <AANLkTinDzrtDko5-o16PtJM3Uy+bBMKToxapwAe=>
dated Tue, Jan 04, 2011 at 08:49:40AM +0100,
Jesper Louis Andersen <> writes:
> * Get a good idea of what the functional programming paradigm is.

I need to confess that I really had to take 20 (1988 to 2008) or even
more years to find out why the functional programming is useful in the
*real world programming*.  So it could be very tough.  Erlang/OTP is the
first functional language systems I really wanted to learn.

> * Get a good idea of what the concurrency primitives of Erlang looks like.

Reading the library source code of Erlang/OTP will help.  I still need
to absorb the hidden and important ideas of the primitives.

> * Understanding how to do web development with Erlang.

Writing code with sticking to the OTP gen_server framework will help
speeding up the learning process.

I think Mochiweb is another very good set of code to begin with.

> * Perhaps understand what OTP is.

"Erlang and OTP in Action" from Manning Books will help, as well as
thoroughly and carefully reading OTP User's Guide many times.

> * Having a specific project you want to implement on top of all of the above.

I understand Erlang/OTP is a language system for building computing
infrastructures rather than user-interface application software.  So
I think writing server or P2P agent software looks the fastest way.

(Of course you can write almost anything for computers with Erlang/OTP
and nobody will prohibit you from doing so (I was amazed by the
Othello/Reversi code in Erlang/OTP games :)), but every language system
has its own advantages and disadvantages.)

YMMV, but it's fun to learn Erlang/OTP.
Kenji Rikitake

More information about the erlang-questions mailing list