GitHub is turning into a toxic relationship
Originally published on Medium.
I grew up on GitHub.#
Not in the "I learned how to code there once" sense… I mean my career, some friendships, my confidence as an engineer, and a huge chunk of my professional identity were shaped on that little octocat website. I signed up in late 2013, back when pushing your code to GitHub felt like joining a global commons of builders who actually cared about sharing.
GitHub wasn't just a tool. It was the place.
Open source lived there. Careers were built there. Trust was built there. We had mini-conferences in Buenos Aires where we taught people how — and why — to use it.
Which is why watching what's happening now feels less like a pricing change and more like watching an old friend slowly forget why people loved them in the first place.
A Quick Detour: What Is GitHub Actions (In Human Terms)?#
If you don't work in tech, here's the simple version.
When developers write software, they don't just write code and ship it. There are a bunch of repetitive chores involved: checking if the code works, running tests, packaging it up, and deploying it somewhere. GitHub Actions is the automation system that does those chores for you.
Think of it like a factory assembly line for software.
You push code → GitHub Actions runs → software gets checked and shipped.
For years, this was basically free if you didn't use GitHub's own servers to run those tasks, and you'd pay per compute time (with a crappy round-up) if you ran on their servers for convenience. That openness is why an entire ecosystem of faster, cheaper, better alternatives grew around it.
And that's where the story turns.
The Change That Lit the Match#
GitHub recently announced that starting in 2026, it will charge a "control plane" fee for GitHub Actions… even if you don't use GitHub's own infrastructure to run them.
In other words, GitHub will charge you for not using GitHub.
The fee is roughly $0.002 per minute. That sounds tiny, until you scale it across real teams, real workloads, and real time. Suddenly, you're talking about tens or hundreds of dollars a month just for permission to run automation elsewhere.
And that's what broke my brain.
Developers don't mind paying for compute. We already do that. What we mind is being charged a toll for avoiding a platform that hasn't been properly maintained in years.
Why the Anger Is So Intense#
This is not about money. It's about neglect.
GitHub Actions is widely known among developers as:
Slow
Poorly observable (bad logs, bad metrics)
Billed unfairly (rounding short jobs up to full minutes)
And backed by a shrinking team
Meanwhile, third-party platforms like Depot and Blacksmith proved that:
Builds can be 10–30× faster
Billing can be fair and precise
And observability can be actually useful
Instead of competing (or, frankly, at least improving), GitHub chose a different lever: tax the escape routes.
That's why the reaction hasn't been mild disagreement. It's been outrage, disbelief, and resignation all at once.
Even people who helped build this ecosystem (including the creator of Terraform) publicly said this was the wrong move at the worst possible time.
Mitchell Hashimoto, creator of Terraform, said as much on X.
And that brings me to Terraform…
Terraform Cloud did this too (and I quit it)#
In 2024, Terraform Cloud moved from user-based pricing to something called Resources Under Management (RUM).
Instead of paying for how many people are on your team, you pay for how many cloud resources you manage per month.
On paper, this sounded reasonable:
The free tier expanded to 500 resources
Pricing became "usage-based"
Smaller teams were supposedly helped
In practice?
Costs became harder to predict
Advanced features were locked behind higher tiers
And teams felt punished for scaling responsibly
Sound familiar?
The result of this move for me was that I first got a 40% discount on an annual contract renewal, and I used that time to move everything out: states, the module registry, and even HCP Vault Secrets… I felt betrayed.
Both Terraform Cloud and GitHub Actions followed the same playbook:
Become the default standard
Let the ecosystem build around you
Underinvest in the product
Monetize the choke points
Call it "fairness"
This pattern has a name.
Enshittification#
Writer Cory Doctorow coined the term enshittification to describe what happens when platforms:
Start out generous to users
Then prioritize business customers
And finally extract value from everyone once lock-in is complete
The user experience doesn't collapse all at once. It erodes slowly. Paper cuts. Fees. Friction. Decisions that make sense on a spreadsheet but feel hostile in real life.
GitHub charging developers for self-hosted runners isn't the end of GitHub.
But it is a textbook enshittification moment.
The saddest part is that this was avoidable#
What hurts isn't just the money. It's the loss of alignment.
GitHub used to win because it understood developers.
Now it feels like a Microsoft asset without a captain.
There's no CEO. No visible product leadership. No one clearly empowered to say, "This will burn trust."
And trust (not code) is GitHub's most valuable asset.
The irony is brutal: GitHub built its empire on open source generosity, and now it's taxing the very people who made the ecosystem better than GitHub itself.
Where am I in all this?#
I don't want GitHub to fail — I want it to remember who it's for.
But for the first time in my career, I'm no longer confident it will.
Standards only matter when they're neutral. The moment a "standard" comes with a toll booth, people start looking for exits. And once real competitors emerge (not just better tools, but better platforms) that exit might finally stick.
GitHub isn't dead.
But it's no longer thriving.
And for those of us who grew up there, that realization hurts more than any invoice ever could.