I am about to build a system with Erlang (my problem can be solved better with multiple CPUs) and I have skimmed through:
- Learn You Some Erlang;
- Erlang/OTP in Action
- Programming Erlang (Armstrong);
- Erlang Programming (Cesarini).
The Erlang/OTP in Action book (2) says: "...writing non-OTP Erlang code is really an advanced topic, and something that should be done only when you really really have to. So perhaps not ever having done it the non-OTP way is a blessing because you will pick up the right habits straight away with regard to things OTP..."
(2) insists that commercial systems should be built with OTP only, whilst (4) gently shows that OTP is not the only way to do this.
Additionally, by reading (4) I have found out that building the knowledge from the very basics of Erlang helps to understand how OTP works (but not in the opposite way).
So, the question is: Should I choose Erlang/OTP to build a commercial system or can it be done with pure Erlang?