That's why you self-host!
My personal best is $4K because of one unchecked option.
You can host your own AWS, Costs ALOTTTT LESS
You can't really host your own AWS, You can self-host various amalgamations of services that imitate some of the features of AWS, but you can't really self-host your own AWS by any stretch of the imagination.
And if you're thinking with something like localstack, that's not what it's for, and it has huge gaps that make it unfit for live deployment (It is after all meant for test and local environments)
I tried something or other on aws. I only needed the 'definitely free, no cost whatsoever we will suspend the account before you hit whatever limits we set - that I didn't even hit a fraction of' tier free trial month to do whatever it was I was doing.
At the end of the 'totally free' month they charged me something like £1.80. Obviously £1.80 is inconsequential, it is the fact there was any charge at all given everything I had been told - I can't remember what I did, probably learned to set up a vpn or something simple - I didn't even use it beyond setting it up and testing it.
I made sure I burned the account in a big firey pit and I will never go back to them for anything I am paying for (news that I doubt is keeping Jeff Bezos up at night, but it isn't inconceivable I might have bigger projects in the future). I doubt they could figure out what the charge was for. Presumably chatgpt hallucinates their billing now which might be an improvement.
There's lots of costs to AWS. They'll rope you in with the whole free tier for compute and storage. But AWS has charges for outbound traffic, detailed logging, elastic IPs, etc.
It's a whole job to just do cost analysis for cloud services.
I was promised 15 years ago that cloud computing would avoid unexpected bills and provide consistent expenses that project managers love so much.
Oh, it's expected costs.
Like, figure out the compute requirements of your code, multiply by the cost per compute unit (or whatever): boom, your cost.
Totally predictable.
Compared to suddenly having to replace a $20k server that dies in your data center.
So much easier.
Except when your code (let's be honest, the most likely thing to have an error in it... At least compared to some 4+ year old production hardware that everyone runs) has a bug in it that requires 20x compute.
But maybe that is a popularity spike (the hug-of-death)! That's why you migrated to the #cloud anyway, right? To handle these spikes! And you've always paid your bills so... Yeh, here's a 20x bill.
Good point. Maybe it depends on what I want to happen when that load spike comes.
Maybe it depends on what I want to happen when that load spike comes.
I don't know what they wanted to happen, but at my old place the load spike overloaded the UPS units.
Me: "we really shouldn't be running these at ~~85~~ ~~90~~ 95%."
Brass: "That's not 100. Find room to ingest this company we bought when the CEO made a friend at a circlejerk."
Overnight server update check: blip
UPS: Bypass mode, bitches!
¯\_(ツ)_/¯
Saw that Grafana gets special notifications permissions on iOS for emergencies - expensive charges should wake up whoever’s on the hook for them :)
Who told you that?
The Downloadable RAM Fairy
The cloud computing salesmen
And all the senior management that believed their horseshit.
"Did you accidentally leave an unused function running? Too bad."
I enabled Cloudtrail to log all DynamoDB read/write data events when trying to troubleshoot an issue. Even though I only left this enabled for a few days, the Cloudtrail line item was $5k more than it should have been. My back of the napkin math with assumptions came out to be 100 times less than that, so I had a really awkward support email asking them to reverse the charges, which they did fortunately.
A lot of the times this comes down to a user error.
For example, very similar to your case, I knew someone that enabled Cloudtrail, and configured some things to have Cloudtrail logs dumped on S3. Guess what? Dumping things on S3 also creates a Cloudtrail that gets logged to S3 that Cloudtrail logs. Etc
Doing things like that and creating a loop can get you massive bills
Yeah, in my case, I wasn't familiar with the settings for Cloudtrail Data Events, and didn't realize you could select which events to log, based on the actor or resource, as opposed to all events in DynamoDB. That would have saved me a lot processing power to filter the logs to look for the actions I was looking for.
What I referenced earlier actually happened to me with Azure once. Unfortunately, I discovered at that last minute, but they thankfully just closed that account and never charged me.
That's why pay-as-you-go payment model is completely unfitting for the world of computers.
Prices can rack up dramatically without you noticing.
I'm very new to programming and somehow have a job where I have to write Python scripts. Someone on my team mentioned that we use AWS and now I'm scared. Can someone explain how you accidentally rack up such a bill?
If you spin it up, fucking own it. When you're done with it, shut it down. I have long lost count of the number of times I've reached out to a team to ask about the coin miner they are running on some random EC2 instance only to find out that some jackass spun it up for a test, gave it a public IP, set the VPC to allow any inbound traffic, installed all kinds of random crap and then never updated it. Nor did it get shutdown when the test ended. So, a year and a half later, when the software was woefully out of date, someone hacked it and spun up a coin miner. Oh, and the jackass who set it up didn't bother to enable logging or security monitoring. But, they sure as hell needed the ability to spin stuff up on their own. Because working with IT to get it done right would be too hard for their fragile little ego.
Can someone explain how you accidentally rack up such a bill?
For example: You can deploy your Python script as a Lambda. Imagine somewhere in the Python script you'd call your own lambda - twice. You basically turned your lambda into a Fork Bomb that will spawn infinite lambdas
You're gonna be fine. Honestly, if your team has given you permissions to do something accidental like this then it's on them. You're not gonna get stuck with the bill. You're not gonna get fired. It wouldn't be your fault.
It's really only scary when you're doing it solo with your own back information lol.
It's actually difficult. You can set a budget so AWS will alert you when you hit it.
They have a price calculator that'll calculate costs before you do anything.
Inbound Internet is free. Only outboard costs you anything.
Network transfers between VPC's using private links are free.
AWS accounts are free.
Lambda functions are ultra cheap as you only pay for the time you use it.
S3 is object storage with 11 9's of uptime and it's cheaper than any enterprise NAS.
Basically you'd have to setup something wrong and ignore it for weeks to incur a large bill.
Or leak your creds and let a crypto miner in. But your point still stands.
Just make sure whatever resources you spin up you're spitting down. This stuff though tends to happen when people accidentally let a a script that creates and destroys instances run over the weekend and it didn't appropriately clean up instances for you...
Or you thought you would try your hand at training in llm and then realized you spent way too much money on the infrastructure and resources
AWS has a multitude of different offerings with confusing pricing structures. They have zero incentive to make them understandable.
That said, chances are your new company has people who understand this already and know how to manage it. Hopefully, they'll put up some guardrails that prevent you and others from running up a big bill. I wouldn't expect a junior programmer to know how to do this, but that's ok as long as the company is managed right. Granted, that can be a big if sometimes.
Experienced at running my own server: 50€/month power bill
It's okay I guess
Wow that's.... Pricey. What is your kWh cost?
~0.28€/kWh
So 50€/month assumes an average of 263W used 24/7, though considering I also have two switches and a workstation/backup server as well as the inefficiency of an UPS, that is realistic.
Yeah sounds about right. But we have really cheap power, something like 7 or 8 cents per kwh (US). Not sure why, lots of wind I guess.
The term you’re looking for is government-subsidized fossil fuels.
Not really. About 55 percent of the power today came from renewables.
~~Laughing~~Crying in 0.38€/kWh
This is how I feel about vibe coding
“Claude can you help me with this”
“Sure, taking a look”
you’ve exceeded your allotted token limit
Oops.
These horror stories make me afraid to even learn AWS with trials
Years ago, I played with AWS then contacted their support to make sure any AWS billing to my account was disabled.
I thought I'd try it again recently, and couldn't log in.
I still don't think I'm missing anything.
I'd rather have VPS or server providers where I know exactly what I'm getting per month no matter what, tho I've ran near data transfer surcharges.
First thing I learned in a video course was setting a spending budget for your account. I set a $10/month limit and never broke it in 6 years.
Someone left their NAT Gateway running..
I never have that problem with Digital Ocean 😆
I'm using it for backups. Compared to Dropbox and similar, it's very cheap
Programmer Humor
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics