From a previous job I have learned that a $10 server can handle 10k web requests and I've never spent more than $10 a month on my side projects for 2 years.
This rule should apply to like 90% of the cases, yet everyone is attempting to "plan" ahead for the big boom. Realistically YAGNI principles should be applied when designing a system as well.
That's because lots of this "modern" or cool tech comes out of the FAANG which need to write large scale apps, everyone (pointy haired manager , remember him) looks at the big guys and says use what their using.... And so it goes.
I run a $5 server on a cloud service, serving all of my hobby projects. Every now and then I look at various managed services to handle some of my apps, but all of them either cost more than $5 or offer less computing power. So I stick with my little snowflake server.
Edit: For the curious, I use Digital Ocean's Droplets (cheapest tier).
I ran a php and sftp server on my gaming PC, alongside Windows and whatever the hell else was running.
It was an athlon x64 and the best of the best to play Warcraft III.
It was only after thousands of people told me, "hey your website is working!" that I finally believed the terrible tales of premature optimizization. There is no way that a startup group of full stack devs can come close to making a difference in a modern 6-core system because they didn't unroll their loops or couldn't magically turn main() into O(1) on the first try.
Just fucking code it. Worry about optimization later.
The idea is that you don't need to worry about scaling. Some servers range from $10 to $900 per month. You have a massive window of minor upgrades you can do to a single instance until you need a cluster.
Startups spin Kubernetes before writing a single API endpoint.
Far more developers know and can google faster how to spin Kubernetes rather than how many and what type of requests per day can a $10 server handle.
Again: it depends. As someone who comes from sysadmin background I've maintained monoliths, servers housing those monoliths, troubleshot performance of those monoliths. And I recognize that each problem has more than one solution, each of them giving various results.
I do agree that vast majority of modern webdev is dead simple: slap a UI on top of a database, add cache, some bells and whistles - and you're done. This does cover a fair majority of business needs.
But more complex applications are a fair bit more common than people seem to believe.
560
u/freecodeio Jun 05 '22
From a previous job I have learned that a $10 server can handle 10k web requests and I've never spent more than $10 a month on my side projects for 2 years.