| I love Elixir, but I have to disagree with the principal aspect of this post. As an engineering leader what I look for when picking tooling for SaaS which essentially boils down to two things: 1) How expensive and difficult will it be to scale the Org.
2) How difficult will it be to implement product features.
I attempted an Elixir startup and found that it failed at both. The language was lovely to use and very smart.But at the end of the day, you spend time and money reinventing solutions already solved in other frameworks which distract from the features of your product. Elixirs libraries are growing, but they have not reached parity to near drop-in solutions found in Django for instance. Is Django the fastest in code execution? No. Is it the most elegant? No. But there is an outstanding catalog of existing solutions and libraries out there that a junior engineer can pull from. Developer velocity is so much faster with a well established framework. Easy to hire for. And you spend time implementing product features instead of reinventing engineering solutions. My ideal product development workflow is to implement in Django, find the bottlenecks (if any) and then specialize those flows. Elixir is great and beautiful, but it was much more difficult to find engineers with experience in it. I really only found engineers that had a curiosity to use it or just started using it. I was never able to find an engineer that I could hire who built and scaled a Unicorn level app with it. Something quite common to find with Django. I'm not saying to use Django. But when starting a project, I just ask that people look at how hard it will be to find someone to help you in the future and decide if you want to spend time building product value or spend time writing beautiful code. |