I had a brief love affair with Elixir/OTP recently. The language ist beautiful, the platform very impressive. Genserver and the actor model are very powerful tools for concurrent systems and Phoenix is one of the best web frameworks I ever tried.<p>BUT the tooling was a bit lacking (e.g JetBrains IDE, good debugging workflow), the library support was a bit spotty (e.g for Auth, everything high quality but often abandoned). Then if you use e.g GCP there is no real first class language support and if you deploy to Kubernetes then there is a lot of overlap with Beam/OTP for deployment management etc. this and I feel for most quick web development pure functional programming is too much mental overhead for me (maybe this comes down to practice). I feel way more productive with e.g Go or Node.<p>I have mad respect for Jose Valim and the community for delivering such an exceptional project in a world saturated with languages and frameworks. But I fear its not for me. At least not yet.
Very curious about the recent surge of Elixir / Erlang posts on HN, is there a reason for this?<p>How is the the job market surrounding this as well for Elixir / Erlang devs?
Great resource, thank you. I've been slowly transitioning my programming time to Elixir/Phoenix the last couple years. Every couple weeks I dive in, but mostly going back to Rails. But recently with the `1.6.0-rc.0` release, this time it might stick. HEEx templates are fantastic, esbuild as the default is a really good choice, LiveView is getting some traction, and the packages seem to be picking up. Fantastic language & framework in general.
I would love to get into erlang and beam. As far as I know, Beam must be a great tool for servers and webservers in general. But can I use the language in other scenarios, too? For example commandline tools, desktop Gui's or games?
As a long-time professional Erlang developer, I'm frustrated about "Rubyists" sticking their toe into the ecosystem via Elixir and then declaring they don't like it. In many ways, the shift to Elixir has been a bad thing.