Discuss.
Actually, I came across this today which was instructive to me because I run a community-based site on LAMP and only heard of MEAN when I joined here. So I really would like to hear some folks weigh in on this. I don't think a refresh of my community will involve switching stacks, but new projects...?
https://bitbucket.org/blog/lamp-vs-mean-which-stack-is-right-for-you
For new projects, I'd say it just depends on how serious the project is. If it's just an experiment or a project for fun, why not try a novel new stack? If it's something more serious, then maybe stick to what you know best.
The blog post calls LAMP the "dinosaur" but I don't think that's a great characterization. It's widely adopted & widely supported, so I imagine it will be around and fairly mainstream for a long time. That consistency is appealing to me, at least for non-novelty projects. My default stack is LAMP with Laravel.
To me, dinosaur just means well supported and stable. People like to bad mouth PHP because it's an easy target because everyone else is, most of them never dealt with PHP4 or even PHP5.0 craziness. When it comes to building websites I think people will be hard press to find a better language than PHP. The last time I built a web app in a different language the deployment of it wasn't as nice as PHP. The last time being a few months ago.
Hi Tom!
The article itself is good at explaining the basic concept but generally, the stack depends significantly on the use-case as well as your own familiarity/comfort with said stack. Personally, I agree that LAMP is a "battle-tested" stack and I've been working with it since I started Web Dev (though I use LEMP now but still similar enough) and I usually don't see the need to switch.
However, where stacks like MEAN, MERN, MEVN, etc. USUALLY excel is the MVP and prototyping phase because it allows you to use what is essentially JavaScript to quickly iterate and deploy onto serverless hosts. I would suggest that you definitely look into these stacks but don't worry about it too much e.g. NoSQL is not always the best case and I, personally, am more comfortable with using Django or Laravel to handle all the Authentication, Routing and similar tasks allowing me to use the same old LEMP but paired with React or Vue.js on the frontend 😁.
That being said, there are certainly times when going serverless might be a good option e.g. I purchased Divjoy from a fellow IndieHacker and his product allowed me to start, modify and deploy in what was basically just a few hours at basically zero financial cost since even the deployment was handled by Vercel's free plan.
TL;DR: the stack is (usually) subjective.
Tom, decision should be done only based on what your/your team skillset is.
If you better in PHP over node js - pick PHP related stack.
If you can deliver software faster in nodejs - pick this instead.
I never consider tech stack only because something is trendy. I always follows team skillset.
One exception - when you have specific requirements for software and you have to pick different tool set. For example, I am fluent in python/sqls, but part of my project is to integrate different platforms. I had to wrote plugins in MQL4, MQL5, C++. It is a must even if I didn't code in c++ before. Without that - I couldn't provide business value.
That's a very backend thinking
Also lamp, who uses Apache in the last decade in place of ngnix? (Except WordPress ppl I mean)
While 15years back end I tried a refresh with mobile multiplatform front end focused..
Currently with
Svelte - JS framework, feels evolution of react which I just learned
Firebase - (while vendor dependent) multi Auth, live reactive datastore, file storage (has added recently common backend server less functions)
Framework7 - UI framework
These are the main ones but feels the choices are
JS framework - react, angular, Vue, svelte
UI framework - while there are tons to mention generally only a few are mobile app focused AFAIK, ionic and f7, was having a hard time with the first and loved the 2nd.
Pure JS vs typescript (don't know TS yet)
CSS processors optional
Backend vendor - firebase is very talked about and I now get why, very easy to start and work with, docs are good unlike you know who. You can do your own, what I liked about meteor framework they are also reactive db, MongoDB default but others available and you self host, you might be able to take only the reactive db part.
App compiler - Cordova/electron (optional)
Optional html precompiler if you want it a little more backend like for SEO and/or complex renders first paint?
So combining with API and trigger systems like zappier, which now I understand more, you might not have to write backend at all or very little like backend jobs only
With front end only you can get cheap or free hosting, firebase has a generous? Free tier
So 0 cost to start till some scale not time bound
Anyway it's all recent learning in my recent side switch
Also did I mention live front end reloads on code updates? Save file= new version on the browser without you clicking anything