Hi
Vitaliy--at Concurix, we got our start building an Erlang based operating system, and now we are building Node.js profiling and monitoring tools. So we can speak in depth about the two platforms--feel free to ping me offline if we can help.
In the meantime, +1 for other points made on this thread. A few things I would add:
1. While Erlang has a very elegant concurrency model, the actual implementation has a ton of singletons, particularly with gen_servers. As a result, the *actual* multi-core scale-up factor is a LOT less than you would otherwise expect. We have found the process-per-CPU model of Node clusters to be a more efficient multi-core scaleup paradigm.
2. NPM is a true gem, and there is no equivalent in Erlang (yet--they are working on it). While not perfect, Node/NPM's ability to handle lots of third party modules with different version all in the same app via the closure encapsulation is a big big deal. In Erlang, you typically need to be very careful about which third party modules are included, and which versions, as the module namespace is global.
3. +1000 on the depth of the community in Node. You will find amazing, and amazingly talented folks in the Erlang community, but the sheer scale of Node brings a lot of depth to the set of available libraries, help on stack overflow, etc.
4. List comprehensions and function pattern matching in Erlang can yield some very elegant and tight code.
Good luck!
cheers,
alex