Elixir & Phoenix, it’s golden

Read this if you want to stay competitive!

I started this blog to tell about the upcoming revolution in software development of custom web applications.

The use case: on a new project, a custom made modern web application, you need something lightning fast, scalable, straightforward, and you have limited budget/time/resources.

I checked the following web frameworks:

  • Go: Beego
  • Java: Apache Wicket, Vaadin, ZK framework, Manydesigns Portofino, Spring boot with thymeleaf, JSF
  • Javascript: Meteor, Node.js Express, AngularJS
  • PHP: Laravel
  • Python: Django, Web2py
  • Ruby: Ruby on Rails
  • Scala: Akka + Play framework
  • F#: ASP.NET Core (vNext) & MVC Core & Entity Framework Core (NPGSQL) & Razor with tag helpers, previously called ASP.NET 5 & MVC 6 & EF 7

And this is what I highly recommend:

Elixir with the Phoenix Framework

Say what?

Elixir is the programming language, and Phoenix is the web framework built with Elixir.elixir

What is Elixir?

“Elixir is what would happen if Erlang, Clojure, and Ruby somehow had a baby and it wasn’t an accident” – Devin Torres

Ok, sure, that clears things up.

Let’s read what José Valim, the creator of Elixir says:

Elixir is a concurrent and distributed programming language that runs on the Erlang Virtual Machine (Erlang VM) focusing on productivity and maintainability” – José Valim

Ok, but what is Erlang?

Erlang is the programming language invented by Ericsson telephone company, giving Whatsapp the power to handle more than 2 million concurrent TCP connections on an individual server.

Impressive. And Phoenix is?logo

Like Ruby has Ruby on Rails, Elixir has Phoenix. The Phoenix framework is heavily influenced by Ruby on Rails.

So what? What does it mean?

This means that anyone experienced with coding in a similar MVC web framework, can pick up Phoenix quickly.

If I only had Elixir I wouldn’t know to start, but with Phoenix  I can start immediately. Just pick up a Phoenix tutorial and start typing.

Do note that Elixir’s functional programming language will be a paradigm shift for Object Oriented programmers. It will raise questions like:

  • How do I store state in a language where data is immutable? answer
  • How do I make my functions tail recursive?

Right now, you will not find experienced Elixir / Phoenix developers, but more important are these development skills: HTML, data modelling, Javascript, CSS, Web security and SQL.

If you hear somebody speak about web application development, Andy_Tools_Hammer_Spanner_clip_art_smallask:

Is it made with Elixir & Phoenix?

 Why?

It’s golden, that’s why.

Nico

Leave a comment