4 ms·
I’ve seen this a lot. The biggest reason for failure is people assume they already know everything about the VM and language. Erlang + BEAM are the most integra
by rubyn00bie 5y ago
I’ve seen this a lot. The biggest reason for failure is people assume they already know everything about the VM and language. Erlang + BEAM are the most integrated pair of VM and language I know of. It’s the only VM that will preempt running processes. It’s also truly functional.
A lot of really brilliant folks have written truly shit Elixir code because they underestimated the challenge. Oh you’re passing that blob to four different gen servers? Cool expect you blew out your memory copying terms between them. It’s also operationally complex and doesn’t like the normal way of doing things because quite frankly it’ll do it better.
Take metrics or logging, both will slow down your application in Elixir/Erlang/BEAM by a not insignificant amount but people just shovel as much as they can into their apps assuming truths from other languages still hold. When your request times are measured in microseconds, that instrumentation is gonna slow you down. People literally buried boxes with erlang on them in the ground and they’ve worked for 20 years. Maybe give sampling a shot if it worked for a telecom maybe it’ll work for your blog :p
I’ll stop rambling here. While I truly love elixir it’s a lot more of a rodeo than people expect and it extremely subtle ways. It’s also extremely expensive to hire developers. Because you’re not going to be able to hire juniors. They just don’t exist for a language like Elixir.
- bcrosby95 5y agoYes. I view Elixir kinda like 2 different languages in 1: the functional language and the process language. The process language is the most unique one though so you will probably spend more time learning that than the functional one.
- dnautics 5y agoIt's 3 languages. The functional language, the otp process system, and the compile-time scripting language. I think people who have difficulty with some of the constructs at the just-inside-the-defmodule scope are not understanding concept #3
- jolux 5y agoWe train people on Elixir where I work and it seems to go well. I think I was one of the only people with prior Elixir experience they've ever hired, and I am arguably a junior.