Elixir/Phoenix: fresh but promising
A little bit like us. No, all joking aside; the programming language Elixir and corresponding framework Phoenix don’t exist very long, but grow in popularity. Not without reason, if you ask us.
New but proven
With Elixir you’ve got the best of two worlds. The reliability and scalability of Erlang, and the elegancy, developer happiness and productivity of Ruby. Elixir is quite similar to Ruby, for example in the aim of writing comprehensible and elegant code. These similarities are no surprise when you consider that one of the founders of Elixir participated in the creation of Ruby on Rails. The major difference between Elixir and Ruby is that Elixir, unlike Ruby, is a functional language.
Elixir is often mentioned in one breath with Phoenix. Logically, because Phoenix is the framework that makes programming with Elixir even more fun. Phoenix resemblances Rails, only is Phoenix is faster, more expressive and functional, of which the latter makes sure that bugs are noticed in an early stadium. What more do you want? Well, what about better concurrency and less memory utilization? On these aspects Elixir/Phoenix scores evidently better than Ruby.
The success of Elixir
When something works well, more people want to use it. A leading company that uses Elixir is PepsiCo. PepsiCo is the second largest food and beverage company in the world right after Nestlé. They use Elixir for internal business solutions in marketing automation and optimization of their supply chain. Another company that benefited hugely from using Elixir is Pinterest. The implementation (and efficiency) of this programming language allowed them to halve their server count (from 30 to just 15) compared to when Pinterest relied on Java. In addition, the code could be cleaned up enormously. This reduced the codebase tenfold, from about 10,000 lines of code to 1,000!
Elixir/Phoenix enables us to build software that communicates very smoothly with external systems. And do you want real time applications in your product, like chats, live data or games? Then Elixir/Phoenix is what you need. As you may have noticed, the pros of Elixir/Phoenix are endless. But for real. When we start talking about this, there is no stopping us. But is Elixir/Phoenix the answer to all your questions? Nope. That's why we made a list of the pros and cons:
- Very suitable for processing a lot of traffic.
- Low costs for the upscaling of applications.
- Automated testing is easily implementable.
- Good protection against race conditions and bugs.
- Less ready-made packages then other frameworks. As a result, it often takes longer to arrive at a prototype or first version of a product.