How Simple Is Too Simple?
I'm a big fan of avoiding unnecessary complexity. Keep it simple. But recently, I've seen a number of posts by engineers that go quite far in the other direction.
Like someone who claims to run multiple successful software projects, with paying customers and five-figure monthly revenue per app, on a single VPS (virtual private server), and SQLite3 as the database. So instead of $300/month in cloud compute, that guy spends $20/month. And of course, he'll be happy to sell you his exact playbook.
That sounds alluring, but a couple of points come to mind:
There is zero redundancy. Need to reboot that server for whatever reason? Your software is unavailable.
The database backend lacks so many important features compared to Postgresql.
Who's making sure security updates, database updates, and the many other tasks of operating a server get done on time?
Contrasting the simple stack against a full-blown globe-spanning compute cluster the likes of Netflix are using is disingenuous. That's like saying "Helicopters are overkill for your daily commute. Walking barefoot is much cheaper."
Nothing wrong with being prudent and frugal, but especially if you're just starting out with your startup (or product) idea, time is just as valuable, if not more, than a few bucks saved. And if you're already earning five-figure revenue from your product, the time savings, security, and sanity that a proper (not overblown) cloud setup provides are worth every cent.
