MEAN, the LAMP Stack of 2014
In the early 2000’s, the Web Dev world was pretty Chaotic.
There use to be absolutely no frameworks to speak of, and the idea of Content Management Systems was only just starting to catch on.
However people needed a way to use some common tools (at the very minimum), so they are able to speak a common language between each other.
This is how the LAMP stack came to be!
Linux Apache MySQL and PHP is the most common interpretation of this acronym.
Some developers say the P can stand for Python, some even say it’s Perl, but if you refer to the concept on a Forum/Job Board - almost everyone will understand you’re referring to PHP.
Years have passed since PHP was the undisputed king, with Ruby on Rails, Django (Python based), NodeJS, and even Java having some solid web frameworks these days, one has plenty of choice these days.
Knowing well LAMP stack is going to stay for a long, long time, it’s still always a good idea to see what the Web Dev world is up to.
It gives you the opportunity to learn new features and if not build with those tools directly, you can implement back in your favorite stack (like CoffeeScript & SASS that I learned about a few years back from RoR).
A few days ago (or is it weeks?) I accidently stumbled upon MeanJS
MEAN stands for
MongoDB - Database layer (NoSQL)
ExpressJS - a Back End framework for Node (sort of equivalent to CodeIgniter for example)
AngularJS - Front End framework (development supported by Google, pretty not like any other framework I’ve worked with, but very fun after you get use to it)
NodeJS - The One Ring, a V8 based JavaScript server
(see a pattern here?)
Now there's a long story (can be read here) about the split between Mean.io and MeanJS.
The creator of MEAN is continuing his work on MeanJS, which is better documented and uses Yeoman generator.
I personally felt a bit uneasy about Mean.io being trademarked, so I decided to go with the original creator, and use MeanJS.
Gone are the days of multiple languages
MeanJS attempts to usher in a new era of Web Development, or help advancing a process that is already taking place.
Node is written in the same language your browser can compile - JavaScript.
Think of a world where there’s no miscommunications between Back End and Front End developers, where everyone uses the same language and can give & take data/objects without too much translation work between sides. Sounds too good to be true? It might be.
Node holds a few very interesting options for Web Developers. For years most Back End developers have avoided at all cost messing around with server work, leaving it to System Admins and disregarding its importance.
Node makes developers pay closer attention to what a Server does, and how to optimize it.
In the following weeks I’ll be trying to see what MeanJS adds to the table, and how it helps connecting all the different components together.
Until next time