Picking the framework / stack for you

I am a recent convert from the ole dusty LAMP stack. I love PHP, love the direction they are going with Laravel (and of course Zend and Cake have been great frameworks). Apache is the go to, sturdy server and MySQL is, well, MySQL… They work in great harmony.

Enter Node JS. The disruptor of full stacks. Finally the server part of a stack that can represent itself as ‘100% javascript’. MEAN (MongoDB, ExpressJS, AngularJS and NodeJS) is the first to get this great recognition as 100% javascript stack.

Picking a Javascript Framework

Picking a Javascript Framework

What does full stack JS mean for us?

For starters, you have only one language to learn. Albeit, with a LOT of frameworks and technologies surrounding it to figure out before getting up and going. But think about it: Owning a company based off of this full Javascript stack… no longer needing a DBA specializing in MySQL. Not longer needing a PHP guru. No more IT / Apache support guy. And finally no more ‘us’, the front end web developers that make everything shiny with JS, CSS and HTML.

We can now hire just ‘javascript’ developers. We have seen, already, so many large companies switch over to use Node and rid themselves up the majority of Java:

It is the hip, trendy thing to do, and it makes perfect sense! Your front end developer is now a back-end server side developer, as well as your DBA and server architect (once they get to that level of expertise with the surrounding technologies)

Picking a Javascript framework is cumbersome, and takes a lot of thought when in the first stages of creating your app. Depending on if your app will need sockets to commmunicate, or maps to show location, or is it an e-comm-based application… All of these questions have different answers as to which framework to use.

But for me, I have one answer to them all from here on…

I have decided to go with the MEN stack (MEAN, without the AngularJS). I was on the AngularJS train for some time, and after a while noticed that
1) The coolest thing they offer is two-way binding…. I can do that already
2) They screwed the community by starting from scratch with 2.0, and forcing it’s developers to relearn everything!

MongoDB, ExpressJS and NodeJS

MongoDB, ExpressJS and NodeJS

I played with MEAN.io and everything was perfect, except the Angular just got in the way.

Webstorm is an AWESOME IDE

So awesome, that I bought a license for my LLC. You can create boilerplate applications, choose which type of app it will be (in my case it will be Node + Express) and it will create a nicely done directory structure for you to get started. It also gives you the option to choose from several templating engines, with Jade as the default. I have found that Handlebars.js is superior to the other options.

Websotrm IDE

Websotrm IDE

Notice, it has a terminal, so node packages can be installed, server can start and commands can be ran right from within the IDE. I can also run MongoDB commands to query my database from the terminal.

Also notice, GULP is built in, so my build scripts are all recognized individually.

It also has a simple server built in, so no apache setup, but in our case, we run NodeJS, which is as easy as right clicking on a file and choosing to ‘run’.

Pick what is best for you, but

I have found that the MEN stack gives you the freedom of being able to write your own javascript still (not stuck with angular) and still have a great templating engine with handlebars.

Leave a Reply