
I have deployed code to: Bare metal servers that screamed when the fan failed. VPS machines that...
I have deployed code to:
And after years of “cloud-native architecture,” I’ve realized something uncomfortable:
The cloud is not your computer. It’s a negotiation.
When you write Go:
err := db.QueryRowContext(ctx, query).Scan(&user.ID)
It feels deterministic.
When you write Rust:
let user = repo.find_user(id).await?;
It feels safe. Structured. Controlled. Owned.
You think:
I wrote this code. I understand this system.
But in the cloud?
You are not running software.
You are renting probability.
Go was built at Google for large distributed systems. It assumes failure.
if err != nil {
return err
}
That’s not error handling.
That’s distributed system trauma.
Go developers understand something frontend engineers often don’t:
Everything fails. Everything times out. Everything retries. Everything lies.
And AWS amplifies that truth.
Your Lambda cold starts. Your ECS task reschedules. Your EKS node disappears. Your RDS connection pool silently dies.
Go doesn’t fight this chaos.
It shrugs and returns error.
Rust says:
You don’t get memory unless you prove you deserve it.
It forces you to confront ownership, lifetimes, and mutability.
And then we deploy that beautifully memory-safe binary into:
You eliminated use-after-free.
Congratulations.
Now debug why your pod can’t reach S3 because your IAM role lacks s3:ListBucket.
There was a time when “stack trace” meant something.
Now the stack looks like this:
You fix a bug in your code.
The problem was a security group.
You increase CPU.
The problem was file descriptor limits.
You scale horizontally.
The problem was a missing index.
We used to debug functions.
Now we debug ecosystems.
AWS doesn’t break loudly.
It degrades gracefully.
Which is worse.
Your service doesn’t crash. It just slows down enough for users to leave quietly.
And the billing dashboard? It scales perfectly.
You don’t notice a bug because of logs.
You notice it because your credit card calls you.
Say what you want about monoliths.
They were:
When something broke, you SSH’d into one machine. You checked logs. You fixed it.
Now?
You open:
And you still don’t know why 503 is happening.
Despite all of this…
Go and Rust are thriving in the cloud.
Why?
Because they are honest languages in a dishonest environment.
Go embraces failure as a first-class value. Rust enforces correctness at compile time. Both reduce uncertainty in systems that are fundamentally uncertain.
The cloud is chaos.
Go and Rust are discipline.
And that tension is exactly why they belong together.
The best cloud engineers today aren’t just good at writing code.
They understand:
In other words:
We didn’t stop being systems engineers.
We just outsourced the hardware and multiplied the complexity.
In the end, the cloud didn’t make engineering easier.
It made responsibility abstract.
And abstraction is power.
But every abstraction leaks.
Go leaks through error.
Rust leaks through Result.
AWS leaks through your invoice.
The monolith never lied to you.
The cloud smiles politely while charging by the millisecond.
gemmaI ported the whole Gemma-4 family — E2B, E4B, 12B, 31B, and the 26B-A4B MoE — to run on...
communityHey DEV, I'm Tobore. Let's actually connect. I've been on here for a while now, mostly writing and...
ai(yep, kinda clickbait, just for the funsies 😊) At the beginning of the year, I relaunched my...
aiMy laptop was sitting idle with the fan at full tilt. Nothing was running that I knew of. The culprit...
githubactionsI Built a Thing! TL;DR — Google Gemini-based Pull Request reviews and Issue Triaging for...
aiI've been hearing the word "harness" thrown around a lot lately. I assumed it just meant "the IDE" or...