The concept of “deferring” to the stack whenever possible is a concept that SlickStack not only embraces, but hopes to evangelize. The concept is so simple and so logical, and yet so foreign to many applications and integrations these days. You would think that will so many years under our belt in terms of servers and the internet, this sort of logic would be more mainstream — but its not, and in its place is the sort of self-centered, “our app is all that matters and integrations be damned” sort of attitude that causes so much bad blood among various software communities…
In WordPress, the saying has gone for years “decisions, not options”. But it is Automattic, Matt Mullenweg, and their team themselves who have abandoned this core philosophy. But while the original philosophy is solid, it does not go far enough — but how could it, when the idea was founded at a time when PHP was a cowboy code and things like configuration management or 12 factor apps did not even exist as mainstream concepts?
We are now in a very mature time when it comes to web applications and integrations, and the idea of stack deference needs to be more mainstream.
Put simply, the idea is that if something “higher up” in your stack already has a recommended decision, then your application farther down the stack should respect that. For example, if you are using Ubuntu as your server OS, which chooses and recommends MySQL as the default database software, you should not replace it with MariaDB on production servers just because its trendy. If you hate MySQL, and you don’t trust Ubuntu to be making decisions that are best for stability, security, and longevity, why are you choosing Ubuntu anyways? …or so the idea goes.
Of course, there are always exceptions and this is simply a general philosophy.
We will be expanding this article more in the future.