Hacker News new | ask | show | jobs
by px1999 1005 days ago
If you can do things yourself or with your staff, you probably don't need aws.

But when the cost of you doing something (either direct or opportunity cost) becomes higher than that of using aws (or another cloud provider), you should use them.

Yes, you can get really really really far without needing to scale if you spend a lot of energy and effort on optimisation, but that's time you're not doing biz dev, or building out capability.

And even now you probably are currently spending a lot of energy on things that are useless outside of saving $ you'd pay to Amazon. As you grow, the cost:value of doing these things yourselfor even in-house changes.

If you're successful and scaling, it's often waaaaay easier and cheaper to throw $$ at a problem short term than getting engineers to actually prioritise and look at it.

1 comments

This is mostly FUD. A single 8core server made in the last 10 years, with 64GB RAM and SSD/NVME drives, can saturate a 10gb/s link even with some db lookups thrown into the mix. How many lifestyle businesses would even need more than this, aside from backups and redundancy?
Many people underestimate how much easier it is as a business to throw money at things than to actually solve possibly hard problems. "Database failover and scale to z1d.12xlarge" as a strategy is insanely cheap in comparison to spending days/weeks/months trying to prevent spikes from impacting performance.

As much as folks here might not want to hear it, throwing an army of mediocre (or, ideally, decent) developers at a problem and paying through the nose for managed infrastructure often winds up being a much (much!) cheaper way to arrive at a good outcome than a smaller number of more skilled engineers with a shoestring infrastructure budget.

With (if using Postgres) WAL and log shipping, ZFS send/receive snapshots every minute, and other dead-simple setups, a single developer can easily protect against hardware failure, have solid backups, and unless using an absolutely horrific stack, can easily handle a very large amount of business with the hardware I have mentioned.

Have you ever worked with mediocre developers? Have you ever been responsible for a built-out implementation of the sort you are talking about?

And, have you ever actually run intensive tasks on hardware where you owned the entirety of the system and could have visibility into the full OS? (Many VM providers oversubscribe their CPU and RAM, and, you have no visibility into memory bandwidth performance either.)