I don't think this portents anything great for software in general.
We're a good year+ into the use LLMs for all major bits of software that we all rely upon and GitHub here is down to one 9 of uptime. I've been using GitHub for a _long_ time, my first commits there go back to August 2009!, and I honestly don't recall GitHub going down as much as it has in the last year.
I'm sure there's other things happening in the background, but I can not help but believe that this is directly correlated with the increase of LLM usage.
Though I would love to hear someone else's pet theory how a rock of the internet went from four+ nines of uptime to maybe one.
Are these outages caused by introduced bugs, though, or by load issues?
As someone who has spent many years working in high load environments, this is not an uncommon pattern.
You design a system and it works great. It can handle failures, load spikes, it is horizontally scalable, things are great. You think you figured it out.
And then load keeps increasing and you suddenly hit a tipping point where everything keeps failing, and you cant keep up. The things that you thought were perfectly horizontally scalable turn out to have a bottleneck you didn’t even think about until you got to a truly massive scale. Your systems suddenly don’t have the excess capacity to handle load spikes or catchup work, so suddenly any failure cascades and recovery is more and more difficult. You can’t solve the problem with additional hardware, and your perfect scalable design actually can’t scale any more.
This doesn’t have to be about GitHub using LLMs in their code to still be related to LLMs. GitHub gets a lot more commits now because of LLMs and probably get a lot more reads because of LLMs as well.
It could be that the extra usage just pushed them past one of those capacity thresholds.
Which is somewhat humorous because it was arguably more stable when they ran on their own hosted colo infra before moving to Azure. This was a choice versus keeping the infra compartmentalized and using Azure for elastic overflow compute needs. I'm sure marketing and bonuses rest on throwing it all on the Azure quicksand though.
Except, lots of devs use github, and see what using Azure means. Management is seeing that downtime too. So what insane person will ever touch Azure willingly?
Hotmail used to run on bsd, and they tried to move it to WinNT, back in the day. Same thing. Disaster. And it was held up as a reason to never use winnt for serious work, for years.
Microsoft just always shoots themselves in the foot.
And also the most important few thousand accounts will get custom support and all sorts of patchwork and MS will put the effort to solve all their problems. So the customers that matter to MS are likely having a great time on azure. And for every ten thousand of us chums that leave azure, there's probably one sweetheart deal won through wine and dine that more than compensates.
Haven't worked in AWS but as a customer of AWS, GCP, and Azure there is a quite a difference between running workloads that are doing long-running computations on AWS (on demand is so rock solid that loosing a box is a rarity, I run on spot and still complete almost all of my runs) and running on Azure's "on-demand" style offering feels like spot (or worse) on AWS.
> on demand is so rock solid that loosing a box is a rarit
Maybe this really depends on region, but I can't say this is true. I've experienced tons of hardware failures that have caused instances to throw weird errors, instances to randomly stop, instances to randomly disappear (along with their corresponding EBS volume).
Standard EBS volumes are only 99.8% durable. If you run a lot of instances on EBS, some of them will disappear.
GCP meanwhile has balanced zonal PDs (not even regional, zonal) at >99.999% durability.
I've never lost a disk on GCP, I've never even had an instance stop once without me telling it to stop.
Azure is absolutely a hot mess though. Had a VM a client was paying for backups on. Couldn't restore the backup because they changed generations of VM platforms too many times, literally no way to restore it. Had to get their support to eventually give me a .vhd that magically appeared in a OneDrive share a few days after asking about it.
But that's just a perfectly fitting excuse for GitHub degradation.
Web search, steaming, high frequency trading, and many other systems are resource demanding, and keep scaling. Whether to handle the surge due to bots or wider adoption. But GitHub can't scale git? It isn't even git failing.
Incompetence in leadership is what makes a tech business technically unable to meet growing demand.
Which wasn't a problem before MS acquisition. Git is the write intensive process. It scaled to millions of contributors. Then couldn't keep scaling. But sure if you believe the narrative and blame ai bots.
GitHub had 30 million users in 2018 when it was acquired by Microsoft. This year alone they added 30 million users for total of 180 million. So pre-Microsoft GitHub faced very different problems compared to post-Microsoft GitHub not even considering poor management or AI. They're by far the largest platform of its kind, so I'm sure the problems are uniquely difficult to solve.
I have trouble believing it’s a uniquely difficult situation when no other tech company of the same or larger scale has those same problems.
Is there a single Google service that has ever had reliability this bad? Facebook? Instagram? TikTok? Apple? Those companies all run hugely scaled write-heavy platforms. Why is GitHub so uniquely unreliable?
Me and 1 billion of my best friends can upload 5GB 4K videos to iCloud Photos and live stream to Facebook all day long but GitHub who is owned by Microsoft the second largest cloud computing provider on the planet can’t handle 180 million users pushing code and running pipelines on VMs?
I won't pretend to be an expert in the various systems of running these services, but to me it seems that GitHub's system is especially vulnerable to what AI is doing.
I'll give you an example: I pointed Codex at one of my repositories asking it to implement some features. Very quickly, it ballooned a 3 minute CI workflow to 30 minutes per commit, and the number of commits it started making increased 10 fold. So we're looking at a 100x increase in usage just from myself.
You factor that into the fact that all public repo get access to this same compute, basically unlimited minutes, up to 20 parallel tasks and 6 hours per request. Now because of AI, every small little weekend throw away side project is running a full dev ops shop. And the pressure never goes down because the AI just start a cron job to run these systems every single day, whether anyone is even looking at these repos including the authors, who may themselves just be bots.
And the systems are sophisticated: parallel builds across windows, mac, multiple linux distributions, multiple architectures, embedded targets, web targets, full feature matrix, the works. The default MO of these agents is to do as much testing as possible without any regard for resource constraints, and GitHub offers them unlimited resources, so it's like an addict meeting a dealer.
So in a sense, maybe being attached to Microsoft is the problem. Or at least their unlimited wallet is -- Microsoft is the enabler in all of this.
I also can't pretend to be an expert on this. Conceptually, everything you're saying makes sense.
It still just sounds like a really vanilla "horizontally scaling VMs" problem, especially for yesterday's incident that was focused on pipelines.
If this is a "GitHub is giving away more capacity than it has" problem, that's easily solved by rate limiting and queuing.
This is GitHub's explanation:
> During the incident, some Actions Runner Controller (ARC) runner pods became stuck in an idle state. Affected users can delete those pods using kubectl or redeploy their Actions Runner Controller application. ARC will automatically create replacement runners.
> The next releases of Actions Runner and Actions Runner Controller will include an automatic recovery mechanism, preventing the need for these manual steps in the future.
That sounds a lot more like a major architectural flaw and a really obvious oversight.
> Incompetence in leadership is what makes a tech business technically unable to meet growing demand.
I don't think this is true. Take LLMs for example, you need GPUs to serve them and these are in short supply at the moment making it hard to meet demand. I don't think this is necessarily the fault of incompetent leadership.
One of the big motivating factors in the development of git was the desire for decentralized version control.
With GitHub, we threw that away. It's centralized on steroids. Now we're all depending on one platform that has to be massively scaled to deal with the massive load of serving almost every major software project on the planet. And when it is down, we all notice.
I see this repeated a lot and IMO it's simply not true.
The main decentralized advantage of Git is that you can continue to do VCS operations without network access or access to the remote host.
Most of what Github does is managing collaboration. The only thing we've "thrown away" by using Github is the email based workflows or directly pushing git branches to various hosts. But unless you're gonna have team members SSH into each other's machines you'd still need a central repo somewhere.
I agree, no horizontally-scalable system is infinitely scalable in any dimension. You will hit some limit - for example, you might be able to support arbitrary scale in some dimension, but there is a bound on the sustainable rate of change, or the second-order rate of change, and you hit that limit.
You seem to be suggesting though that hitting those limits came as a surprise, and/or there was no future architecture plan to address that when it happens, which I think is the real problem here. You would expect a team with the maturity of Github to understand what those limits are, and plan for them, based on predictable growth in demand.
Actions is one thing, that seems like a difficult, dynamic and bursty thing to host, even before the Vibe Cambrian Explosion. And _nothing_ at scale is easy... But Pages? The static sites? Down for so many hours? Oof.
Use of Claude for coding increases the number of commits, merges and pushes. Add in difficulty in getting RAM, Disk Storage and Servers. A dash of high energy prices, data center angst and tariffs. A pinch of diverting resources to all things AI. You get legacy systems that cannot keep up with demand for expansion.
This is an excellent comment and I don't want to diminish by adding jokes but this totally reminds me of the hitler uses kubernetes meme. You can do everything right for HA and there'll still be something to trip you up.
AI slop-code has exacerbated the problem and GitHub is not able to keep up. If you look at the last 12 month's outage reports from GitHub's own status page, many of them mention capacity issues as an underlying cause.
To me this correlates more to them being bought by Microsoft, a company known for being seemingly incapable of creating quality software to the point that it's not even funny anymore, and also known for sloppifying all the products they touch.
I don't think so. GitHub was bought by Microsoft 8 years ago and people have only started complaining about its uptime in the last year or so - exactly correlating with the surge in LLM use.
It's not the whole story. The biggest change is actually the internal rules for how downtime was reported, it wasn't actually such a large change in the actual reliability then.
I don't think so. I've seen those complaints for more than a year.
I have an Ops background and I strongly suspect they were given a stupid timeline for the Azure migration.
I've got to believe Microsoft have decent Ops people but the management wanted to move faster than was reasonable and screwed it up. Move one thing at a time and double check it all works and you can do a migration like this.
I've lived through two acquisitions by the world-largest companies (and few more smaller ones). Here's my impression of what often happens in situations like this:
* There's a huge disconnect between the actual product and what was sold to the buyer. It could be that the product was a borderline fraud, or it could be that the product was actually much better quality than the expectation on the buyer's side, but the buyer isn't interested in most of the product.
* Fear spreads in the acquired company that their product will be discontinued or reshaped into something else.
* The pay is good, probably much better than before the company was bought.
* Many internal teams end up lacking real purpose and try to insert themselves into every new internal project only to obfuscate their irrelevance.
This leads to some pathological developments, where the teams previously working on acquired products start doing a lot of useless, for-show work. Internal initiatives sprout like mushrooms after a summer rain, but they are all plagued by very broad (and mostly irrelevant) team involvement, duplication of existing products / services, and fear of being discovered. And while there are plenty of such initiatives, their role is to be a superficial distraction. In reality, everyone is afraid to touch the old code or do any sensible integration because it could lead to blanket firing of a lot of people. The middle-management behavior becomes a sort of exchange of favors, where everyone is afraid that the other can blackmail them into losing their job, and so everyone is trying to be extra nice by offering a slice of a pie to another manager.
What this leads to, in reality, is insane inertia (often despite highly shortened software release cycles), astronomic amounts of unmitigated tech. debt, opacity in communication with management, persecution of those who genuinely want to improve the system.
Based on this, my prediction is that Github will not survive. Just like Skype didn't. Somehow or other, Microsoft will find a way to replace the product with... MS Outlook with a new skin.
Even on a large timeline there is just a lot of risk when migrating legacy infra to an entirely new system, especially if the original arch grew "organically" and has tones of edge cases.
I always figured these problems were directly related to the migration.
> people have only started complaining about its uptime in the last year or so
I'm sorry but this made me laugh out loud. That isn't true at all, this has been going on for years. This conversation[0] from six years ago has discussion about the outages starting to become much more frequent in December 2019. It has never gotten better in that time, it's just continually degraded.
Ok I should have said people have only started constantly complaining in the past year or so. Of course there was the odd complaint in the past, but now I see a thread about it at least ever month on HN, and loads of articles about migration off GitHub.
GitHub Actions was always a mess. Because it is a Microsoft product.
If you want to have a horrible time, try reading some of the runner code. It's early 2010s-style Windows-First, MSFT C# crud that has trouble not racing several threads to inconclusive status codes.
Yes. That was my impression too. Github Actions aren't a good product in many ways. It's also very complex and requires quite a bit more infrastructure than the rest of Github. Unfortunately, I don't think that the commercial side of the product would allow it to improve in the direction of better quality / uptime. It's cursed to be forever like MS Outlook: whenever it changes it's for the worse, even though it was never good.
I'm not sure if this is a joke or not, because it has all the signals of a joke, but it might be closer to true than I'd like to admit.
At my work, the average quality has gone up with "blindly trusting Opus". The failure modes are horrendous and the code is verbose as shit, but it still works better. Most "engineers" aren't very good at writing code.
It's true, Microsoft made github worse, but the more recent issues seem to have to do a lot more with Microsoft selling its soul to AI. Microsoft really appears to have gotten dumber as they became dependent on AI. Most recent example: they used to promote Win11 and 32GB RAM. Now they are down to 8GB silently ... this is quite hilarious. There are now so many side effects that you see degradation in so many other areas. Or the gaming industry: it is not quite dying but it is taking a huge hit with skyrocketing RAM prices. Consoles selling less is an example here. It's quite fascinating how deadly disruptive AI is now.
This really needs to have a lot more evidence that it’s because GitHub’s code is being written by AI vs them being bombarded by activity from all kinds of AI agents all over the world vs they were already on a trajectory of quality loss.
The 32GB issue is more about one internal factor: the wasteful reliance on Electron and other JS runtimes for UI, and two external factors: the very high price of RAM, and the increasing adoption of Linux.
So they will make Windows run on 8GB because people can't purchase cheap RAM anymore, and they want to stop people migrating to Linux.
This is not directly caused by AI slop, only indirectly through RAM prices.
It is definitely and absolutely caused by LLMs. I must do 20x more GitHub operations now, and since the agents know GitHub far better than me, I'm using more advanced features. Multiply this times all of us.
For the longest time, I didn't appreciate the "AI-induced traffic" excuse. But seriously, I checked the rough github egress for our lab versus an old log from 2024, and there's an order of magnitude or two difference. From asking around, it seems people all have the gh cli tool and let it loose with parallel tool calls and e.g LLM's polling Actions in a background bash while loop with sleep $TOO_FEW_SECONDS. Some people use a variety of skills where the agent makes a commit every few code changes, and uses Issues for its memory/log. And they have O(5) sessions at the same time doing all kinds of crap. It's the same with PR checks/PRs. Recently we also saw continued usage throughout the night as well, which did not exist pre coding agents. Loops or whatever they call cron jobs in the harnesses these days is the reason. It must be adding up.
I honestly don't care either way. Either they are using AI as an excuse to hide their incompetence, or they are constantly going down due to the AI they have been promoting.
If your platform can't handle the use patterns of AI, then perhaps don't go around telling everyone to use AI for everything? It's a self-inflicted wound, you could also just not do this. Too bad Microsoft has bet its future on AI not being a giant bubble, huh?
Someone else quoted a 14x increase in load due to AI hammering github. I wouldn't be at all shocked if that was true, considering how much AI tools are DDOSing the entire internet.
That plus migrating clouds is insanely difficult to manage. They're almost certainly drowning in traffic and trying to keep up.
In my own CLAUDE.md files, I tell it to liberally use the `gh` CLI to search for issues and error messages across the entire GitHub code index. It's insanely effective, but it feels like I'm part of the problem, and I'm sure there are a lot of other people doing the same.
The funny thing is that if companies wanted they could probably use AI to instead increase uptime. Keep existing QA teams (instead of replacing them) and then use AI for better and more timely monitoring (and messaging even) and as an additional Always-Testing™ layer of QA
It's caused by human laziness and corner cutting. LLMs can write buggy code or incomplete architectures as much as humans can, but standards have lowered. It's not the LLMs are not capable of also fixing these same issues, but that's additional work.
They mentioned earlier this year that they were beginning the migration to Azure and that it would take a couple years. I would assume it has more to do with that migration then anything else.
I wonder if GitHub actions was a bad idea? Like maybe it's being abused for other kinds of compute besides just builds? And even builds themselves can require a lot of compute. I've only recently had a repo there where I wanted to do builds to make a release (both linux binaries and WASM) and whenever I do that tag and wait a few minutes for those builds to finish I think about all the other projects/repos out there on GitHub doing the same.
I'm really kind of surprised they let us do that - like, why didn't they just have you upload the binaries after building on your local machine?
They let you do it because GitLab was first to let you do that. MS had to match the offering of their most noticeable competitor. They also felt like thay had to one-up them... well, to win the competition.
So, from the sales point of view, Github Actions was, at the minimum, an alright idea. Not brilliant, but quite obvious and expected. From the engineering standpoint, however, this is a disaster on many levels. But, that never stopped Microsoft before. They don't try to win the market by making an objectively better product, their tactics are and always have been to make a product that can claim (with an asterisk) to be able to do a lot of things the customer wanted only to discover afterwards that those promises were phony.
> why didn't they just have you upload the binaries after building on your local machine?
You can do that already with GH Releases. Actions is if you want CI/CD managed by GitHub. And you can also use your own machines via self-hosted runners.
I saw a graph of Github outages somewhere. The drop in uptime strongly correlates with the introduction of Github Actions. To be fair, it's a huge chunk of functionality, also, hard to make reliable. LLMs might have an effect, but the issues definitely started before LLMs were used for code generation, so, as much as I don't like the AI-generated code, I'd have to admit that it's probably not the cause here.
someone from github posted a usage graph from the last year on twitter a while ago and they were serving like 14x more requests in a matter of months. it's frankly impressive they've kept up.
It's probably not attributable to AI in the way that you're thinking - Github has been absorbing an exponential increase in usage, and that increase is mostly due to new AI-related projects being created and worked on.
Though I'm sure some of the blame can go to internal slop code.
We're a good year+ into the use LLMs for all major bits of software that we all rely upon and GitHub here is down to one 9 of uptime. I've been using GitHub for a _long_ time, my first commits there go back to August 2009!, and I honestly don't recall GitHub going down as much as it has in the last year.
I'm sure there's other things happening in the background, but I can not help but believe that this is directly correlated with the increase of LLM usage.
Though I would love to hear someone else's pet theory how a rock of the internet went from four+ nines of uptime to maybe one.