Hacker News new | ask | show | jobs
by staticassertion 1672 days ago
"Kill my service if I hit a billing limit" is a scary footgun as well, and one that could impact larger customers.

I don't think it's unreasonable to say that if you're using AWS you're taking on some responsibility to make sure you're not blowing up your bill. AFAIK you are automatically enrolled in emails that will tell you when you're about to exit a free tier limit, so it's not like they won't warn you.

3 comments

Make it a clearly selectable option, explaining both downsides. Be vocal about it being selected if you want to.

But the thought that not immediately reacting to an e-mail can cost me a month's salary or more is terrifying. Maybe it'll get waived. Maybe it'll be waived in the form of credit that I can only spend on the product (i.e. for my purposes, not waived). Maybe I'll be stuck with it. The "maybe" is the danger here.

Let's say I put some obscure 50 MB dataset into a public S3 bucket, and pay my <1 cent per month to host it and like a dollar for each 200 downloads. Rarely does a month exceed a dollar or two, all is good.

Then someone builds a poorly made colab that downloads the entire dataset each time it is run, and the colab hits the front page of HN while I'm traveling, and makes it to social media the next day because it shows something funny. And people don't run it just once, they play with the parameters, running it multiple times.

By the time I'm back and see the e-mail, a 10000 USD bill may be waiting for me.

To obscure? How about this one:

The operator of a semi-popular website has decided to hate me. Each page load now contains an <img src=[my image]?t=[timestamp] width=1 height=1> in the header, pointing to the biggest image I'm hosting for my small static website.

Edit: Even better example

I've accidentally left an API key in a git repo that I pushed online. My carefully set up billing alert was deleted, then my account started spun up as many of the most expensive GPU instances as quota would allow and started mining Monero. In this scenario, I think a $10000 bill would be "getting off easy".

(Just to be clear, these are hypothetical scenarios. If anyone knows how various cloud providers would react to those in practice, or if you know that there are countermeasures that would reliably stop them, please do tell!)

Nobody is suggesting to make that the default uniformly across all AWS accounts.

It would be excellent for anybody intending to use the free tier for its stated purpose (getting to know the AWS platform) who would like to make the _choice_ to shut off their services if they are going to exceed the free tier quotas.

That way you are free to experiment, and if you blow up something while learning, you're not then leaning on the mercy of AWS support to refund you.

The free tier is not just for getting to know the AWS platform. I worked with customers hosting the entirety of their early applications on free tier services.

Playing around turns into production.

When your service goes down and you lose $XXXXXX revenue suddenly it's AWS's problem. AWS has taken the approach that keeps the lights on, assuming its customers understand their unit economics.

Right there at the top of https://aws.amazon.com/free/ is this:

  AWS Free Tier
  Gain free, hands-on experience with the AWS platform, products, and services
Just because you've worked with customers hosting in the free tier doesn't mean that all free tier users would or should choose to prioritize uptime over cost.
> "Kill my service if I hit a billing limit" is a scary footgun as well, and one that could impact larger customers.

Then make it opt-in but a highly visible one during account creation so that people who just want to test can enable it.