I think some young people just know AWS because of their dominant marketing, and have no idea what's it like to just have some dedicated servers - which you need for your own security anyway, unless you're comfortable sharing RAM and CPU with others (I'm not https://media.ccc.de/v/33c3-8044-what_could_possibly_go_wron... )
I think it depends of your scale. On most cases the real hosting cost for a dedicated barebone is administrating and managing the server. So if you need 100 dedicated 20 core server it is most likely cheaper to do that yourself, but if you need just one it is much much cheaper to use some cloud service.
I don't think you ever "just need one", for me one is always two : staging (and ci, by extension ..) and production.
Provisioning an EC2 instance or a dedicated server just has the same cost in terms of manhour: running some automation in deployment pipeline, is something that you'll have to setup and maintain.
Be it updating a docker-compose file over ssh with ansible or something else: you have to do it anyway. If you want to cut that cost perhaps try with a starter project from OpenShift or Heroku, but that will also have a bigger cost even than an EC2 instance, and you will still have to take time to ensure your deployment is properly automated, with automated backups as part of the process.
Prod needs n + 2 if you want to survive losing one (machine, datacenter, whatever) while you have one out for maintenance. Buying three when you need one is pretty expensive; buying seven when you need five isn't as big a deal.
Staging just needs n > 1 to test that sharding works at all.
IMO bare compute isn't really the AWS value prop; if all you need is a VPS (or a non-virtual one) AWS is expensive overkill. The reason to use them is all the peripheral services, tied together with IAM[1][2].
From a purely operational perspective; this is also a reason to avoid them.
If it's throwaway then sure, but building your critical infrastructure around a single provider is really bad business hygiene for the sole reason that you can never control for your dependency increasing costs arbitrarily.
Maybe that's fine for most people, people seem to optimise (or value?) developer time over basically anything else so maybe it's something that's already taken into account.
How much would you have to pay a sysadmin to install, maintain and monitor an in house hosted server ? How much would you have to pay to have daily snapshots of your instance ? And what do you do with the old server if there is a change in business strategy and you either need a much bigger server, or no longer need this server at all.
Are you suggesting that someone running in the cloud suddenly has no need of an ops team? This is the danger in drinking the DevOps Kool-aid, assuming that because a developer can manage to not completely fuck-up their dev box they are somehow proficient enough at system administration to manage cloud infra.
Daily snapshots? For the prices listed you could have an actual hot spare running 24x7 and still save money. This also makes surge-up easier and if you ask nicely a lot of decent dedicated hosting providers will let you shrink without holding you to contract terms.
The comparison above is not AWS vs an in house hosted server. It's dedicated bare metal. If something happens with the hardware on those dedicated servers, the hosting company handles it for you.
And even most dedicated servers can optionally come preinstalled with the OS.