Hi everybody! How are you?
Sorry for my dismiss... You know how is the end of a semester.
In the today's post, I will help you choose the best Stack for your project! But, first of all, let's break down what is a Stack.
What is a Stack?
In simple words, a Stack is all the layers you use to build a a product. Read this post to undestand better what is.
MEAN Stack: What is this?
MEAN is a software bundle that stands for MongoDB, ExpressJS, AngularJS, and NodeJS. Every young programmer love this one! Why? Well because every Web Developer knows HTML, CSS, and the famous JavaScript. If your knowledge about JS is good great! Now you can use JS in Front-End AND Back-end. A dream come true!
So, like you can imagine these technologies can save a lot of your time! Using the MEAN Stack you don't need to learn another language like PHP, Ruby, Python, etc.
Just a short note
LAMP Stack: What is this?
In this case, LAMP means "Linux, Apache, MySQL, and PHP, Perl, or Python". Some years ago everybody used this one. Do you know WordPress and Jumbla, right? Well, they use this tech. If you want to develop or work with WP is a good idea learn PHP.
Like Intersog say in this post:
"For years, it has been the most effective solution to develop enterprise level web apps with enhanced customization and flexibility, cost-effectively."
Now that you know the basic stuff let's take a close look.
Just another a short note.
This is what I see every time that some one say me: I will use LAMP
the man is the programmer xb
MEAN Stack
Maybe you are asking: Ok, Rui. But what does each technology do?
- MongoDB (data storage)
- Express.js (server-side application framework)
- AngularJS (client-side application framework)
- Node.js (server-side language environment although Express implies Node.js)
It's amazing to work using MongoDB. This tech is super flexible to store data. Using MongoDB is like build Objects in JS. Very simple and fast! :)
Angular, well Google did an interesting job building this framework. You probably know what is and how this works.
You probably know but I will say it. Now it's the show time for Node.JS. Using this piece of heaven you have access to the backend. You just need to use an API called Express.
Using this Stack you have a clean and coherent mechanism to move data back and forth from user to disk farm.
LAMP Stack
- Linux (OS)
- Apache (web server)
- MySQL (data storage)
- PHP or Perl or Python (scripting language)
Some people say " MySQL and PHP make it easy to code and even novices can easily build something and get it up and running quickly. " I believe in this people. But this implies learn more 2 things until you start work...
What is the best option for you?
In this part of the post, you already understand what is the Stack I prefer. I'm 23 years old. So I like simple stuff.
But everybody is different. In my opinion, the answer to the question lies in the specific needs of the business. Like everything in life, each Stack have their own set of advantages and disadvantages.
The main advantage of choosing MEAN is the fact that JavaScript code can be reused for both the server and the client. What is great! Simple to work and simple to do the "support"/maintenance. Better, like Interog say " It makes the workflow homogeneous and also enables two groups of full stack developers to work well together on the application as a whole."
Build a team using the MEAN Stack can be expensive. because Node.js is something "new". For example, here in Portugal we have few people know Node.js comparatively with PHP, Ruby or another language.
Conclusion
Both Stacks are going to continue to play an important role in the development of web applications for years to come. But I believe that the MEAN is closer to the future. The next generation of programmer loves JS and if we can do the same thing spending less time great!
Node.js came to stay and once you use it you will understand perfectly what I "mean" eheh
I would like to listen what you think. Please, give you opinion in the comment section :)
See you later.
@MinnowBooster
You're such a nerd! Just kidding. That seems a bit complex ... But like everything in life, nothing comes easy. Hope to understand more of it from you ! Thanks mate
Eheh guilty xb
This part is very easy Ricardo! To understand all about this just read one or two articles about.
Thanks for all! :)