My main interest these days is writing non-blocking GUIs. I don't want to see a "spinning beach ball" or "no results found" or similar things ever.
In theory Erlang has the best non-blocking support of any language, but I see a lot of risk in developing prototypes to get to the point where I know it was a good decision.
I don't see Elixir as moving the needle so far as what is conceptually tricky about Erlang.
No one uses it. The average programmer writes
Javascript/Java/Python code. Erlang is a great functional language, and I've actually seen it used in the real world, but it goes above the heads of most programmers.
It’s dynamically-typed and it doesn’t have real arrays. It can sometimes be frustratingly slow to do things that imperative languages do easily, but that’s the price of entry for functional languages. Luckily you can drop down into Rust or C if you need high performance.
Otherwise, it’s a great language. I’m consistently happy with the decisions that the Erlang and Elixir core teams make, and it’s my go-to language for web development.
I’ve written a lot of Erlang/Elixir, basing the stack for my last startup on it. I wouldn’t change that decision, but you are completely right on people not getting it. I way overestimated the capacity for even well educated devs with computer science degrees to pick it up.
There were other factors, but largely it came down to whether they were exposed to something like scheme before the typical java education. Outside of that it was only people who had a deep understanding of the actor model that could get it.
[+] [-] PaulHoule|7 years ago|reply
In theory Erlang has the best non-blocking support of any language, but I see a lot of risk in developing prototypes to get to the point where I know it was a good decision.
I don't see Elixir as moving the needle so far as what is conceptually tricky about Erlang.
[+] [-] sideshowmel|7 years ago|reply
[+] [-] jefflombardjr|7 years ago|reply
[+] [-] amsha|7 years ago|reply
Otherwise, it’s a great language. I’m consistently happy with the decisions that the Erlang and Elixir core teams make, and it’s my go-to language for web development.
[+] [-] eb0la|7 years ago|reply
Language is perfect for what was created: matching pathologicaly ordered number arrays (phone numbers); but needs some way to get people onboard fast.
[+] [-] dpeck|7 years ago|reply
There were other factors, but largely it came down to whether they were exposed to something like scheme before the typical java education. Outside of that it was only people who had a deep understanding of the actor model that could get it.