Ask HN: What's not great about Elixir?
This isn't an attempt to bring out some great clash, but I find discussions (in the phase of the language hype cycle that Elixir is probably at anyway) centre around what the language does right, what it does well.
There's not much talk of drawbacks, but in a way I find a discussion of the tradeoffs more informative, both in a way that's more generally language agnostic, (like 'x' language feature is pretty cool, but usually carries these implications because of 'y'), but also just giving me a sense of where the language sits within the tech space.
10 comments
[ 4.3 ms ] story [ 48.7 ms ] threadYou end up having to use tools such as Distillery and Conform in tandem just to be able to configure your app at runtime.
Another thing that worries me a bit is how such a large part of the community comes from Ruby. I wish it was a little more balanced with more diversity in regards to people's background.
Other than that, it is a great language, and I'm having a lot of fun with it :)
So if you are an AWS user for example and want to be in multiple availability zones the Elixir distribution model will not scale and you'll have to use the same techniques and tools other languages use for distribution.
With that in mind, I think the whole distribution buzzword is way over hyped since the majority of companies will be leveraging cloud platforms like Azure, AWS, Google Cloud, etc.
I write Elixir code daily because it's an awesome language to write in and not for the distribution features.
I only use it for management and non-critical low t-put control flow, never for the high t-put and/or data flow.
For high t-put you need to implement your own protocols over TCP or something like ZeroMQ.
Some major Erlang-based open-source projects (ejabberd, riak, RabbitMQ) use built-in distribution and that's why they usually either slow or fail under high load in production.
I think the positives outweigh the negatives. It's nice to replace a lot of moving pieces in a RoR application with just Elixir and Phoenix.