I spent part of yesterday’s drive to work listening to the “RR Phoenix and Rails with Chris McCord” podcast. Highly interesting for people that are in languages and frameworks.
Chris is the creator of the Phoenix framework and used to be a Rails developer… As he puts it, his favourite language was Ruby until he encountered Elixir. The discussion was quite interesting and there’s a few points that I’ll take away from it:
- Phoenix is built on top of Elixir, which is built on top of Erlang VM. You therefore get all the benefits of the Erlang VM:
- Fault tolerance
- Code reloading
- Massive concurrency.
- Elixir is not Erlang though… it is its own language… so hopefully there should be some improvements over Erlang proper.
- Whatsapp was built using Erlang and apparently this helped them deliver a very performant platform. See here.
- Jose Valim seems to support it, so that’s a pretty good endorsement.
- Phoenix uses the Cowboy engine as its web server
- Phoenix apparently has all the necessary libraries to build the equivalent of a standard Rails application.
- Now here’s the most interesting point to me… it apparently has two development modes.. one for small apps and one for large apps (using OTP). This I need to investigate.
In short, the podcast was really interesting and got me sufficiently intrigued that I added Elixir and Phoenix on my language learning buffer which now stands as:
- ELM (short term)
- Elixir (medium term)
- Swift (medium term)