DEV Community

Elixir Phoenix vs. Serverless Node

Mike Rispoli on November 22, 2019

So this is not another comparison post, I've read enough of those to understand the basic differences between these two. This is basically an open ...
Collapse
 
mrispoli24 profile image
Mike Rispoli

Alright, so I took a bit of time to setup a sample Phoenix app and build out basic authentication and setup an Elm frontend just to push things a bit more. I found the setup itself relatively easy, and the microseconds service time is indeed true and as advertised. That being said, despite it's comparison to Ruby and Rails, I have not found Elixir and Phoenix very easy to grok. While Phoenix resembles rails in many ways, I did not find Elixir to be the easiest thing to just fumble around in for a while the way Ruby lends itself so nicely to.

So that being said, how do you resist the urge to fall back on what you know? I didn't I'm going to be moving forward with node since I have less time than I would like to make this project. When it comes to Elixir I will need to have some time to sit down and really learn the language for this one. Some languages lend themselves well to learning as you go, like Ruby, but Elixir development without understanding the fundamentals was moving painfully slow for me.

One other strike against Elixir that I found in my research was that the deployment and hosting of Elixir apps can be notoriously painful. This scared me quite a bit as I find nothing more frustrating that building an entire app locally and then needing to spend two or more hours working out a deployment pipeline.

In the end the problem of dealing with millions of concurrent connections is a problem I do not have at a projects outset. And at the point that my application reaches this need I'm probably going to be a very happy camper and be able to get some help scaling things up. Too many users is a good problem to have, and can be planned for at a later time. Best not to outrun your headlights. That and there are many many examples of software built in Node that scales just fine.

So I was happy for this little experiment and look forward to studying up on some Elixir on the side and possibly taking on a bigger Elixir project at a later date when I have more time. At the very least I find when you study a new language you can take that new style and apply them to your crafting of javascript.

Collapse
 
fractal profile image
Fractal

I appreciated this write-up, as I've been contemplating the same thing!