Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

>Erlang is not good for Glue-together style web application

Granted Elixir's Phoenix framework is not Rails level yet, it's system of plugs and heavy inspiration from rails actually makes it quite useable as a replacement for rails. Also immutability and the associated smaller memory footprint makes it more feasible to run cheaply on services like heroku or aws. Personally, I think elixir is a good boat to jump on to carry us over to the next world of web development.



I wrote this article way back in 2013. Initial commit of Phoenix was Jan 18, 2014.

But! you're quite right. Elixir is focusing on the web application type things that Erlang and the community around it has never much addressed. There's enough interoperability from Elixir to Erlang that you could probably say the ecosystem as a whole is addressing the problem if you squint hard enough.

Side comment, it's been interesting to see Elixir grow since 2013. A lot of folks learn Elixir and then Erlang but I think it's less common to learn Erlang and then learn Elixir. It's led to an interesting situation where Elixir has had to bootstrap knowledge about OTP on its own terms without a large pool of domain experts sitting around. The asymmetry in knowledge--knowing Erlang does not imply knowing Elixir but knowing Elixir implies knowing Erlang--also makes me wonder how the squinting assumption above will shake out long-term. ¯\_(シ)_/¯


As someone who has gone from Ruby -> Erlang -> Elixir, I'm both thrilled and terrified by the culture developing.

On one hand, you have a very similar open source culture to what exists in Ruby. The fact that hex.pm exists alone is amazing. Libraries are expected to work, be documented, and be maintained.

On the other hand, the number of questions that can be answered with RTFM is astoundingly high. Where Erlang has an implicit knowledge requirement regarding OTP and distributed systems in general, Elixir has a much lower barrier to entry in the community.

An Example: On one of my libraries (a db driver) I have received multiple requests for "Add section to README on how to use this with Phoenix". I have a section on how to add to a supervision tree, which from the erlang world is overkill, and I expect users to be able to connect the dots.

That said, the core team is pretty dang smart. There's plenty of OTP wisdom there, and they aren't very quick to give into the mob rule of the community. It's under strong guidance.


Can you provide some good reading material? I've been looking for some, but except the elixir docs and phoenix website, at lot of resources that I have found are outdated or poorly written.


If you want to truly understand Elixir, go through the book/site Learn You Erlang For Great Good. Understand it in Erlang, then apply it in Elixir. Once you get a feel for how to translate idioms from one to another, everything will be much easier, since you can turn to either community for information. You'll find that an undocumented library follows one of a small handful of designs and a quick peek into the source is all you really need.

Once you get the Erlang->Elixir relationship, I recommend Erlang in Anger.


I have played with Elixir, and it is certainly gaining in popularity I believe due to its rubiness and web dev. Personally, I prefer LFE, but that's because I am a Lisper and love parentheses. I am reading 'The Handbook of Neuroevolution through Erlang'. It is a great use for Erlang. I am hoping somebody will work on the LFE translation of it. Good article.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: