[erlang-questions] Any Erlang Devs Contemplating Elixir?

Loïc Hoguin essen@REDACTED
Fri Feb 26 20:26:16 CET 2016

On 02/26/2016 07:28 PM, Andrew Berman wrote:
> Hey Fellow Erlangers,
> I was curious if any of you guys have switched or are contemplating
> using Elixir for your next project. I've been programming Erlang for a
> while now, but I'm about to start a new project and wanted to see where
> other Erlang devs stood on it.

People end up choosing Elixir for one of two reasons:

- they identify with the Ruby-like syntax that they find familiar, 
comforting or perhaps cool (it will always be a different reason for 
everyone because behavior related to identity isn't rational). They 
probably are/were Ruby developers or like Ruby.

- they require a feature that only Elixir provides. Survival.

Considering most Elixir developers come from Ruby (because of the first 
point), Elixir has the most effort going into Web-development related 
libraries, and so people coming because of point number two will most 
likely use it for Web stuff (or Unicode, but it's usually Unicode for 
Web stuff).

(Some people are probably not going to be happy about me making the 
above observation, but Elixir would grow a lot faster if they made use 
of this instead of fighting it. The best way to make Elixir get big is 
to advertise it as a better faster Ruby on Rails. Forget other 
languages. Forget about Erlang. Just target Ruby people.)

Personally I don't really care about it. I am irrationally put off by 
the syntax the same way I am irrationally put off by the Ruby syntax. 
But even if I wasn't, it doesn't have any particular feature that would 
make me want to use it. I guess you could use it to write DSLs, but LFE 
is probably a better choice for that, in part because calling LFE from 
Erlang is much easier than calling Elixir from Erlang, due to using the 
same conventions for modules and types.

In the end it doesn't really matter. Use what works for you. Some people 
are horrified by Perl, and yet there's still some large Perl codebases 
out there, because it works for them.

On a related note, if you ask someone why they choose one or another 
tech, you will almost always get completely different answers. The 
reason is that the choice is rarely rational. When the choice *is* 
rational it's because it wouldn't work with any other tech. But it's 
rare because you can do most things in most languages. Same applies to 
DBs, OSes... So people make the choices they identify best with (and 
some people make a different choice every week because they identify 
with tech that makes the most noise).

(Been talking about identity a lot recently, because I've been reading a 
lot about it. The world makes a lot more sense when you realize *and 
accept* that people are not rational, myself included.)

Loïc Hoguin
Author of The Erlanger Playbook,
A book about software development using Erlang

More information about the erlang-questions mailing list