Hacker News new | ask | show | jobs
by the_gastropod 2338 days ago
This isn't to say there aren't disadvantages, too. But for advantages, specifically, I think some pros of Elixir are:

- It runs on the Erlang VM, which is (tech-wise, anyway) fairly old and battle tested. It was deliberately built for resiliency and concurrency. It has some very clever concepts, like supervision trees, cheap processes, interprocess communication via message passing (hey, sounds like OO, right?), and 0 downtime deployments built-in.

- Its creators (namely Jose Valim) come from the Ruby community, and value a lot of the same things Rubyists do: good documentation, testing, and excellent tools for package management, debugging, builds, testing, etc. Several libraries are very similar to their Ruby counterparts. E.g., Phoenix will feel very familiar to a Rails developer. Ditto, the syntax is kind of similar to Ruby. The paradigm is completely different, as Elixir is an immutable, functional programming language. But... aesthetically, they look similar-ish.

2 comments

> and value a lot of the same things Rubyists do: good documentation

In my opinion, the Elixir community (at least for the core language and major libraries) does documentation better than any other environment I've used. Almost every question I've ever had about using Elixir, Phoenix, or any of a dozen other libraries has been answered by using hexdocs.pm. The few things that aren't clear from those docs can generally be resolved by reading the source.

After that, elixirforum.com or the elixir slack give me higher level discussions on less immediate issues. I don't recall ever needing Stack Overflow for any elixir question.

Speaking of excellent documentation, from the documentation you can jump right into the code and see how a particular elixir function is implemented. Super useful personally for me as a learner. For example , go to https://hexdocs.pm/elixir/Enum.html#map/2 and click on the little "<\>" on the top-right