It promises literally NOTHING else, including zero cost. Free and open source software can and should cost money! (The "free" in "free and open source" is not about money, people!)
I'm actually very enthusiastic about these OSS "supply chain" attacks that have been happening in various communities. Because optimistically I hope it'll help people realize that OSS _is not a supply chain_ (more details here: https://lobste.rs/s/cxwidw/no_one_owes_you_supply_chain_secu...). Unless you're paying your vendor AND/OR have a contract in place with them with certain guarantees, you do not have a supply chain.
One term thats in almost every FOSS license is "this software is provided with no warranty." A supply chain implies a warranty. Therefore, FOSS is not a supply chain.
I'm sick of coming here and see "open source" as something with "moral values" - stealing it from the free software with "the magic" of conflating the two concepts.
Open source is just big software companies stealing from innumerable volunteers
I guess that's a pretty good point I never thought about. I've never come across software released under a permissive license that didn't either come with the source code, or host it somewhere convenient like github.
Real world examples would often be embedded devices powered by open source that don’t distribute any code, preventing users from maintaining or modifying the devices.
Of course, vendors will often do this with GPLed code too, and lawsuits are relatively few and far between. (Many thanks to SFC/SFLC for putting scarce resources towards this when possible.)
Because of this, although I appreciate the open-endedness of the MIT/BSD licenses for end user software, I do prefer the GPL for anything that may become infrastructure.
Haven't you? There's quite a bit of closed-source software based on permissively-licensed code. You can get the upstream source for the permissively-licensed code, but not the modifications made to it. Windows (used to) use some BSD-licensed code for a few network utilities like nslookup.
I guess I considered that completely separate from open source. For instance, I've heard that MacOS is "based on BSD," but since MacOS itself is obviously not open source, it's not an example of open source software that doesn't provide the Four Freedoms.
Open-source software provides the four freedoms, but doesn't necessarily require preserving them transitively.
GPL software requires preserving them transitively and requires derivative works using the licensed software as a component to provide them.
MPL requires preserving them transitively.
BSD/Apache/MIT don't require preserving them, but still require the resulting software to include the original license & attribution. In the case of a closed-source program distributing (say) MIT-licensed software with proprietary modifications, the resulting binary is still released partly under the MIT license & includes the MIT license text, but doesn't include the source code.
I know this is ridiculously dramatic, but its the truth: I actually cried writing this blog post (tears hit my keyboard, I'm embarrassed to say).
Nobody should cry over a SaaS, of all things. But GitHub has meant so much more to me than that (all laid out in the post). I have an unhealthy relationship with it. Its given me so much and I'm so thankful for it. But, it's not what it used to be. I don't know.
We've been discussing it off and on for months, really started seriously discussing it a couple weeks ago, and made the final decision a few days ago. Putting metaphorical pen to paper and hitting "publish" makes it so very real.
I'm sure folks will make fun of me for this. It is a stupid thing. But I truly love GitHub, and I hope they find their way.
It's okay to have emotions. I have similar emotions. I'm GitHub User 22723 which is effectively the same as you (considering there's ~180m GH accounts nowadays)
My version of your post reads differently:
"GitHub only gets better if people who give a shit stick around to make it better"
Walking away would be easy. I felt that way when I left Heroku ~six years ago. I left that job and never opened the Heroku dashboard again, after nearly a decade of happy use. I felt that it was irredeemable, and though it took a while, Salesforce did eventually succeed in running it fully into the ground.
I don't feel the same about GitHub. It is precisely because it's precious that I can't walk away. I'm not the only one here who feels that way.
In the past few years, GitHub has absorbed both a fundamental paradigm shift (agentic coding) AND several different hockey sticks of growth. It's messy. I'm not always proud of the results or the product choices we are forced into. But none of it feels like the Heroku/Salesforce debacle. Occam's razor applies here: it's not "more AI coding" and it's not "big bad Microsoft." It's scale, and a fundamental shift of the ground under all of our feet.
I hope we do the things that will make you want to come back. I hope we spark that joy in you again! It's not stupid to have big feelings about something that is so central to our lives as developers. Fuck that noise.
Strongly agree. And not only that, but time has _already_ shown the continued degradation of the github experience even with users ostensibly sticking around trying to "make it better".
Indeed. Back in 2018 and 2019 I expended a fair amount of time and energy reporting a squash 'n' merge metadata rewriting bug to GitHub and advocating for the behaviour to be changed. [1]
Once or twice someone internal to GitHub got interested... and then drifted away again. Years later the broken behaviour remains. And I'm a lot more cynical about thinking GitHub fundamentals might ever get any better.
I think OP is basically applying "vote with your wallet" strategy and/or some kind of "action speaks louder than words". As I understood from the article, they have been vocal about trying to change things, but they are shouting into the ether since nothing has changed and in fact only getting worse.
There’s a difference between a relationship with a person and an organization. I think the difference is large enough that the analogy doesn’t really hold.
Exactly, only humans should have at least one chance to grow and improve. Orgs are heartless legal entities that deserve no loyalty whatsoever, they are all one acquisition away from turning on you (as a customer or an employee).
Organizations are made up of humans too... but, the bigger they get, the less you notice that. Back in the day when GitHub was still a small company with one (very good) product, I can understand having a feeling of loyalty towards them. Since they are part of M$ and more beholden to M$'s KPIs then to their users, sticking with them only because of nostalgia is probably ill-advised.
I do work at GitHub. I shared the above as a nuanced "yes and" to the pain that Mitchell is feeling.
In the same way that Mastodon didn't replace Twitter even when Twitter went to shit, I don't believe in the various GitHub alternatives becoming a broadly-used thing. Maybe we'll end up with more GitHub-alikes like Codeberg, mabye we'll end up with some communities adopting novel forges like Tangled and Forgejo. But it beggars belief that most of the millions of GitHub's users would switch to something so much more complicated. Has the same energy as "20XX is finally the year of linux on the desktop".
My very personal hot take: the likeliest happy future is _most likely_ to happen through improving GitHub. I vote with my feet to do that from inside, and that's all I wanted to add. Hence "I hope we do the things that make you want to come back one day." I believe in it enough that I choose to work here on exactly that, because like Mitchell, I care very much about the platonic ideal of GitHub. He's ready to move on, and I'm not yet. There's no value judgment hiding inside that.
> But it beggars belief that most of the millions of GitHub's users would switch to something so much more complicated.
I've moved my projects over to my own personal Forgejo (when I don't care about collaborating on them) and Codeberg (when I do). I find that ecosystem vastly simpler in the common ways that matter. For instance, viewing large diffs and syntax highlighted files is unbelievably faster, about as fast as GitHub's use to be before it was "improved".
For every way I use those forges as a solo or small-group contributor, the alternatives are as good as or better than GitHub today. Some product manager could become a company legend by figuring out how and why that is, then getting someone to do something about it.
Yes, sure! OP didn't say that there aren't alternatives or that the alternatives aren't any good, they just said that GitHub is so huge it will probably continue to remain relevant, no matter how bad it gets. And they have a point - X is one example, but even SourceForge (remember SourceForge?) is still around, despite being an undeniably shitty platform that tried to install adware on their user's computers.
But OP did say the alternatives were “so much more complicated”. If you showed a new dev both GitHub and Forgejo, I’m not sure they’d notice the differences other than the latter being much faster for many common operations. It and Codeberg aren’t more complicated in any tangible way.
If GitHub’s internal thinking were “well at least we’re easier than Codeberg”, then they may find that the moat isn’t nearly so deep as they might hope.
I'm glad you are optimistic. GitHub will need employees with that attitude if they're going to pull out of their current trajectory.
To be clear- from a user perspective, "improving GitHub" means "restoring reliability to what it was 6 years ago". There's no killer feature that makes people stop leaving, if my PRs don't lead every third day and actions never work.
I may have my timelines wrong but I don't remember github being rock solid 5 years ago. I remember multiple outages keeping us from pulling code for go packages that were not using an enterprise dependency cache and killing multiple days of work a year for those systems. It's what I used as a forcing function to move people TO an enterprise dependency cache, and to find the few scofflaws running work code off of github.com versus enterprise.
Another line on that graph should probably be "January 7, 2019: GitHub offers unlimited free private repos". I can't imagine that helps with service stability.
There is no way Github had 100% uptime prior to the MS acquisition. Nobody has 100% uptime 100% of the time. They must have changed how they were measuring uptime.
Can you explain more of what you mean by "wild" here?
I never worked on any SaaS that had such high uptime. It seems pretty good to me. In 10 years, it was always better than 99.5% uptime. That seems impressive to me for a huge, complex SaaS like GitHub.
Feels like a pretty wildly misleading graph. What do they say about lies, damned lies and statistics?
This graph is literally designed to abuse correlation =/= causation by attaching the arbitrary label "microsoft acquires github" so that the reader will apply causation to the uptime.
Now let's overlay ontop of the uptime graph a few lines of: # of monthly active users, # of monthly commits, size of PRs, action minutes per PR (whatever demonstrates scaling)
Something tells me that the uptime issues follow scale more than they do ownership... but that's not the narrative that this chart was designed for...
Comparing to twitter is astute, as there are some analysis that point to it being mostly bots in 2025.
I can see the same happening for GitHub, in fact it seems to be actively trying to move in that direction: a platform for AI agents to host code, to review code, with little to no human activity.
Just like everyone who didn’t want to deal with bots left twitter, they will soon leave GitHub for similar reasons. I’m sure there is a future for GitHub as the code hosting platform for agents but it should be no surprise then when real people like Mitchell and the rest of us jump ship.
> But it beggars belief that most of the millions of GitHub's users would switch to something so much more complicated. Has the same energy as "20XX is finally the year of linux on the desktop".
This is funny, because 2025-on seems to be starting some couple years of Linux on the desktop/laptop. Valve introduced millions of people to gaming on Linux, bazzite is exploding in popularity, and that popularity is pouring into other projects like Omarchy, Mint, Ubuntu.
GitHub maybe will end up like Twitter - where the people who are there are there because they have to be, while the people actually enjoying their time online are on different platforms.
Lack of knowledge about something can certainly make it seem horrid. It just means you have a lot to learn. There is a reason so many of us engineers with decades of experience in Windows, MacOS (and OSX), and Linux use a Macbook Pro as our daily driver.
That is a really really shitty comment. Because their choice is different to yours they have a lack of knowledge?
FYI I had a top class developer working for me about 5 years ago, who saw me using WSL and VScode... they had a Windows machine and several macs due to the nature if their work. A week later they were on Windows every day, only using apple for apple builds.
The answer is, we don't all do the same kind of work. There is a reason so many engineers working in your field use mac. Guessing you are a Web developer?
It's funny you say this because the more I learned about mac the more I understood its limitations in being as good an operating system as e.g. Arch.
I know a lot of engineers. Some daily osx, some daily Linux. I'm not seeing any particular correlation in knowledge or skill - except perhaps slightly in the osx people's disfavor.
Maybe you can install homebrew and open source apps to make it more Linux like, but you'll still be stuck with Mac OS's shonky window and task management UI unfortunately.
Install SizeUp. I paid $10 10 years ago and have been using it ever since. Far better window management than any Linux distro I've used. (and better than windows but that's not saying much)
I like Divvy because it supports more than just halves and quarters — I use a 7×6 grid so my browser can be wider than my editor and terminal: https://mizage.com/divvy/
Pairs well with Stay to make windows automatically return to their assigned layout when plugging/unplugging my external display: https://cordlessdog.com/stay/
I found that part ironic and tone deaf as well. Like, read the room buddy. France just announced they're officially moving from Windows to Linux. The country of France. I think OP is looking for a single lynchpin moment where things change from one way to the other. Where in reality, things rarely happen that way. It's a slow and steady shifting away from one thing towards another.
I think a better comparison would be between GitHub and 1Password. Both started out as really excellent things for individuals and both became really awful things for individuals in their pursuit of enterprises.
- They ditched their previous android app for a new one that doesn't get the grandfathered accessibility access so autofill is mostly useless...
- On mac, safari integration is consistently flaky. It regularly keeps getting blocked in a loop telling me to unlock 1password when 1password has already been unlocked.
- Passkeys are unreliable to the point of being unusable
- Autofill frequently doesn't work well where for some reason the site with the same url as saved in 1password is not offered during autofill. When 1password used to work, it helped catch phishing attempts because it wouldn't show autofill on pages that do not match. Nowadays because of the shitty autofill, people get trained to go to the app, copy the password and paste it in the website. This means that it will no longer protect from phishing attempts
- The previous behaviour of saving any newly generated password as a password object (not login) was much better. Now newly generated passwords are only available in the password history of the browser extension you specifically used.
- I can't tell 1password to ignore a specific website
At this point, the only reason I'm not using bitwarden is that search is very slow on it with 2k+ passwords.
When I quit using 1Password, it was when they dumped native apps for electron apps and quit supporting the product I’d been buying upgrades for every couple years, in order to pivot to a cloud model that lets them imposing an enterprise subscription model for enterprise users onto individuals. Dunno what they’re up to these days, but I’d be shocked if they could last six months without enterprise customers, so I know I’m not relevant to them anymore. And that’s the same way I view GitHub — individuals are financially and strategically irrelevant to their bottom line.
It’s their right, certainly, but it means I use GitHub as a Google Site replacement and my only active repo is archived whenever I’m not pushing commits to silence all the unwanted crap that comes with a GitHub repo. I’d be daft to ignore free hosting and I don’t care in the slightest that it’s one nines. Makes me laugh every time, though, to think of all those billion dollar AI-layoffs businesses having to stop AI work for a day because AI proliferation broke the freemium model and GitHub’s too hooked on being home to unfunded, mission-critical infrastructure projects to close the barn doors on free.
Just to add a dissenting voice to all the complainers:
- autofill on desktop is rock-solid, it virtually never fails, much less so than any other password manager autofill
- it works great with passkeys, again rock-solid, and again the best UX of any password manager. passkeys itself are also great
- OTP code integration (only use this for non-important stuff) works great too, again best-in-class
- switch to Electron was great for most, the Windows app sucked and there was nothing on Linux, now we have a good application across all 3 desktop platforms, although it was a slight downgrade for Mac users
- autofill works fine on Android 99% of the time
- 1Password CLI and SSH agent are interesting additions but SSH has a lot of paper cuts
In general, they have by far the nicest UX and UI of all password managers. And they really seem to care. They were the first to introduce stuff like "no automatic autofill" because of security implications, their vault spec is open source (in case they go belly up), they get audited regularly. They were the first to add passkeys and actually made a site (name escapes me) that shows which services have passkeys and how to activate them.
I can't globally disable that "autofill" also hits "submit". I want to review what it autofills before I submit. I consider this a security risk. I can disable submit only on a login-by-login basis, and my coworkers are able to reenable it again. I can't globally disable it for myself.
This setting does exist for "Universal Autofill" [1] which is what I use instead of any browser extensions because I don't want to get phished when I'm not at my best. [2] [3]
On the Mac app, the setting is at the bottom of the General settings screen.
The downside to forgoing the browser extensions is that creating new logins is painfully manual. The risks of using the extensions just freak me out too much.
Painfully manual. Every time I have to delete the word "Login" when creating new login, I wonder how hard could it be to vibecode myself what I want. I fantasize about getting a job there to fix the UX issues and then quit.
FYI I recently discovered a 1p browser extension feature named “Password Generator History”. It has a record of all generated passwords, whether their respective items ever ended up saved or not. Live saver.
Same here. I paid for my family's accounts for many years until the app suddenly became much worse. Honestly, Apple's own Passwords app has 95% of the features of, and the ones it does have work far better than the 1P equivalent. I can't imagine paying for a personal account again.
It’s getting buggier and buggier, not being able to fill in passwords properly is kind of a glaring omission of a password manager (and that’s on three different computers).
They keep adding features but seem to show little interest in fixing bugs. I submitted debug logs, recorded videos etc but it just trickled out in the sand. And as another poster wrote, it all started going bad with the switch to Electron (might be the rust backend that is the problem, I don’t know and frankly don’t care, it just doesn’t work as well as it did before).
Not the parent, but the only thing I really hate about 1Password is that I can't tell it to never offer to save a specific site's password. I can turn off all offers to save passwords, or I can have the stupid pop-up ask me multiple times a day if I want to save that password. The pop-up chases me across the site until I get rid of it. Aarrgh. Blood boiling. Rage overflowing.
I have the same issue when using Google Passwords. One specific example: Many of my bank websites require 2FA with a code via email, SMS, or token. Each time, Google Chrome asks me if I want to update the password with the 2FA token. I have no idea how to disable it. Am I doing something wrong?
I have the same complaint about lastpass. With lastpass it's doable, but I have to keep looking up how to configure a site to never site and never ask.
Speaking of a "year of Linux on desktop", it's mostly not happening because the desktop lock-in has largely eased. I of course love my Linux desktop, but I use relatively few native applications, and every one of them is multiplatform now. Windows desktop becomes less and less relevant in its own way, by degradation of experience, and by being replaced with consoles and the Steam Deck.
Same may happen to GitHub. CI/CD tools and workflows can become more portable and adaptable. Independent code review tools that can use GitHub API along with a few other APIs may become popular. GitHub will become one of, not the one. I won't call it a bad outcome.
Honestly many companies would do well to use these services. I think we get too much into the idea our apps need the same guarantees as the large products out there. Define your SLAs and then choose the platform.
Windows 1.0, I believe. Xerox PARC invented the WIMP UI paradigm (windows, icons, menus, pointer), Apple commercialised it first, and then Microsoft copied Apple.
Who's this random somebody that has a copy of your code that you don't want shared or trained on? GitHub's no saint here, but it seems like that somebody is an issue, not GitHub.
Until now there was never a reason to have a permissive software license that tries to restrict where the recipients can store the code, because this is a new issue. My software is AGPLv3 but I'd rather just stop sharing my code entirely than let these corpos profit from my work for free. Mirroring onto GitHub is very very common since GitHub is frequently accessible in network environments where random others forges may not be.
It is actuly good for the ecosystem to have competition. Githubs quasi monopoly was a bad thing. And will continue to be a bad thing in the future if it remains
> But it beggars belief that most of the millions of GitHub's users would switch to something so much more complicated.
None of the alternatives you cited are as complicated as GitHub. Also, GitHub started with this Actions bullshit which is just reinventing the CI wheel and overcomplicating stuff that was already made simple. The one thing I hate Forgejo about is for being compatible with Actions and promoting is as the way to go for CI, when you have much better alternatives like Woodpecker, where you can actually understand the underlying code for your CI/CD pipelines.
The problem is that from the outside it seems like Microsoft no longer cares about the product. So much so that "the product" has become "shareholders"[0].
We've just been moving into a world where metric hacking is the desired outcome, not an outcome to try to avoid. These companies are only surviving because of their monopoly statuses. Because of momentum. It's a powerful force. It's the reason Twitter still is around. The reason Facebook is still around. But them being around doesn't mean they're good. It doesn't mean they're useful. It doesn't mean it is a good product. It doesn't mean the users like it. It just means people are used to the way things are and they aren't angry enough to leave for something else. But these companies are actively creating friction for users, daring them to leave, gouging them for everything they can. FFS Microsoft is the largest contributor (even more than Valve) to creating "the year of linux". Sure, it'll never have M$FT's market share, but it sure is eating into their revenue.
We've all lost sight of what made software so powerful in the first place. Why it became so successful and changed the world. We used to ship good products that help people, make their lives better, and make lots of money in the process. Now, I think all that anyone cares about is the last part. Now we're actively being hostile to those that make the systems better. And that system is fucked up and will destroy itself. That's not a good thing, because it does a lot of damage along the way. It is a system of extreme myopia.
In the last 5 years I'd argue that most software has made my life harder and more complex, not easier. There are definitely exceptions to this (ghostty being a great example), but there is a strong trend. I know I'm not alone in this feeling and I think we're getting to a point where a lot of people are no longer willing to dismiss their own gripes. This is not a good sign...
I'm glad you're optimistic. I do hope things can change. And my frustration is not directed at you. I really do want you to be right and I really do want to see change come from the inside. But I do not think those leading the companies now have any foresight. To be honest, I'm not even sure there's anyone at the wheel. It feels like we've just let the market forces steer the ship. If the currents steer the ship, then there's no captain, regardless of who claims the title. Frankly, I don't want to be on a ship without a captain, but here we are.
> There is no avenue by which you make GitHub better by continuing to use it as it has been.
I feel like in a very mundane sense, I pay GitHub for a service, and they use that money to pay developers, to then make GitHub better.
It's tough to be working somewhere when usage is booming, and your service is crashing all the time. It's also tough to migrate your infrastructure between platforms, which it sounds like GitHub finally has to do in order to scale to the next level, to really take advantage of being part of Microsoft, although that has to feel pretty frustrating in the short term.
So hang in there GitHub team. Just keep fixing things.
The problem is just, you don't pay GitHub for their service, you pay Microsoft for a service called GitHub, and Microsoft will put your money in their "earnings" basket and do whatever they want with it. Not sure if the amount of money Microsoft gets from GitHub subscriptions directly affects how much "love" the GitHub service gets.
Sure it does. Users who continually push for the right features, stress test things (under normal circumstances), demonstrate uses of the platform that could be baked in by default, etc. are all highly valuable to everyone. And the social aspect matters too, even if GitHub really isn't a "social coding" site anymore. If great people doing OSS stuff are all on various GitHub projects, that encourages more good people to do good OSS stuff.
This doesn't apply to current Github issues, where rather than a lack of the "right" new features, it's just an escalating degradation of existing services that is the complaint.
The attitude of "stay to support the product" can prevent a better replacement. When Digg torpedoed themselves back in 2012 or whenever, that exodus was a big part of Reddit growing from niche to dominant.
The only users who can push for features now are those who can somehow directly influence people working on GitHub (a small number of users) or those with massive purchasing accounts that can shake Microsoft itself to its core (governments, fortune 100 companies).
I suppose us "normals" can push by making it easy to replace GitHub with something else, so that they start risking losing it all.
> Users who continually push for the right features, stress test things (under normal circumstances), demonstrate uses of the platform that could be baked in by default, etc. are all highly valuable to everyone
That's the job of GitHub's product and engineering teams, not the users.
To add on, GitHub has made it explicitly clear that they are both not working on features to focus on their Azure adoption and many core projects are in stasis even from community contributions.
No. Products don't magically get good because people conjured up features from thin air or just copied a competitor. It is very much a two-way street, especially when the product acts as a platform that tries to support heterogeneous use cases.
I used to work at GitHub. I think you should find a new job.
Before Microsoft came along, the entire company was aligned from the bottom to the top around the goal of delivering a single great product. As soon as they bought us, that changed; there were now lots of ways for an individual to succeed at GitHub-the-division-of-Microsoft that had nothing to do with GitHub-the-product. Now GitHub doesn't even have its own top, the org chart just smears into the Microsoft one at some hazy point. Perverse incentives abound.
An organization like Microsoft can never recreate the magic that was GitHub. There's just too many competing interests and agendas that have absolutely noting to do with making GitHub better. In the time before I left, I actually encountered many people who didn't care if they were making it worse, if it advanced their other goals.
This isn't a surprise at all. I saw the exact same thing at Meta. The incentives are so strong to improve your individual performance that it's hard to resist, literally hundreds of thousands of dollars at stake.
Now with the fear of constant layoffs at Microsoft and Meta too, it's even more critical for individual engineers to optimize their performance review or you might lose your job. Sadly this is hard to line up with putting out a good product.
Maybe I'm naïve, but it seems like the people who keep their eye on the ball and really try to make a great product are the ones who win out in the long run.
If you optimize for performance reviews, you'll make a lot of money, yeah. But you'll eventually find yourself overemployed and incapable of keeping up with that gambit anymore. Or, you'll find yourself doing something you never wanted to do. In extreme cases, it's like those people at Palantir in that post last week, realizing they're the bad guys. Usually it's just looking at your calendar on Monday evening, seeing a wall of meetings from 4PM to 9PM, and telling your kid you can't go to the park today.
Meanwhile, the "product people" I know well are all doing really cool stuff during the day, then going home to enjoy their lives. They don't make as much money, but they're happy.
Quote that one Wu-Tang song today, and you'll be quoting that one Talking Heads song in a couple years. I guess.
Believe it or not, some companies are run by people who just want to sell widgets and get on with life. Some of them even have morals! Shocking, I know. Smaller companies, sure, but they'll still pay you a good living wage anywhere but SV. Not every boss is a megalomaniac.
I think this can be true at the IC level and in situations where the organization's success depends on the product being good, but that's not always the case. Big companies with market control can go years, or perhaps even indefinitely make bad product decisions and still print money. Product development comes to revolve less around merit and more about appearances.
I've worked in big tech and had the sort of conversations with my managers where they say: "The work you're doing in X is great. I use it and it really needs work. But it's not a priority, or even 'impactful'. Your work on X is effectively equivalent to doing no work".
Sometimes it isn't even about getting a promotion, sometimes the implication is you should be worried about keeping your job. You can still do X which everyone knows is great and someone should do, but "on your spare time, as an extra" because Y is what your performance review will really revolve around.
The sad part is I can tell they mean it, and do agree someone needs to work on X, but it isn't their decision to make, because they have to show face and explain to their manager why an engineer earning XXX,XXX didn't meaningfully work on Y. Ultimately someone up the chain who you've never talked to is the person who decided X is unimportant; they don't want to kill it they just don't use it, or have a strategic reason to not care about it.
In the politics of upper management perhaps it was something an adversary used to vouch for, and now you have to prove the org can do without it. Or perhaps it's the ace in your pocket, and you wan't it to be lack-luster so when the big boss above you starts talking about retirement, you can show amazing wins in the area and be first in line for succession. Companies are not democracies. For better or for worse big companies are not democracies, they are feuds, so if the kingdom isn't in danger its future comes to depend a lot not on what's the best decision, but how a decision fits the game of thrones.
I would argue it goes even a step further: any org the size of Microsoft struggles to maintain the quality of... well, anything. And, added to that, Microsoft seems exceptionally bad at doing fucking anything now. Azure is a complete mess, Windows is an utter dumpster fire, the office suite feels like it gets just slightly worse with every update, Copilot is a fucking joke compared to every other AI on offer (and hilariously, will agree with everything I've said here!), they won't even use their own frameworks to develop software anymore!
Microsoft is literally too big to fail and it's their sole asset at this point. When companies like Github get bought by Microsoft, I just put a clock on the wall in my mind. Just a matter of time before the shit seeps in.
They can't help it. They are organizationally unable to function. It's so much worse than misaligned incentives and redundant management (though those are factors): they seem culturally, institutionally, unable to just... DO ANYTHING. Everything they do is 1 step forward and 4-20 steps back. They are too big and they should be broken up for their own good as well as the good of every user of their software.
This issue of large organizations making shitty products seems to infect every company except for a handful. Even Google, with all its good intensions, by 2010 was full of political animals climbing ever higher on the corporate ladder while management struggled to set incentives correctly to make the company product focused.
Its just unbelievably hard to nail the culture and incentives in large organizations. Some notable exceptions: Sony in its first 3 decades, Toyota in the 70-90s era, Apple after the return of Jobs and till his death, and one could even argue Microsoft in the era of Windows 95 till about Xbox 1. Maybe even Tesla and SpaceX.
Something hard to quantify happens when the culture of product erodes and the culture of politics virally infects a company. I witnessed it at a couple of big companies ... Intel in the late 90s, Google in the 2010-15 era (working as a contractor looking in).
Hats off to people like Jobs and Musk who could grow product culture at scale ... I can't even say I've been successful at fostering this kind of culture in startups under 500 employees.
> "GitHub only gets better if people who give a shit stick around to make it better"
It is a megacorp that is mainly in this situation because of its relentless pursuit of exponential growth for the benefit of a very select few to the detriment of everyone else (including GitHub employees such as yourself). The hockey sticks are there, but how they've reacted to them - which is what has lead to this situation - is entirely because of the above. If not for that, it could've reacted to them differently.
It does not deserve to get better.
It would be very good for society if GitHub's market share massively declined, if everyone moved away. It wouldn't be good for you personally, but it would be good for everyone else. There is nothing positive about a single company having access to everyone's code.
Just look at all the tricks you've been playing, automatically opting everyone in to having their code used for LLM training. [0]
GitHub shouldn't get better. It should decline in popularity.
You know full well that it is undeniable that your competitors gaining market share would be good for everyone as a whole, but comp juicy and emotional attachment to people there and the pre-acquisition times where it used to be a great company (those times are not coming back) and your past with them etc.
I used to think people who said Github had become very unreliable were exagerating, but I can't miss it now. If you want to keep people, you have to actually go down less.
It's interesting that internally you had a very different experience with Salesforce buying Heroku and Microsoft buying Github. From the outside it appears to be analagous (except github is degrading quicker than Heroku did?)
Did Heroku ever actively degrade? Seems more like it was neglected until the competition eclipsed it entirely. What GitHub is doing seems worse, like true active regression.
Salesforce never understood Heroku. Salesforce's understanding of Heroku, if such an understanding ever existed, was wildly different than what Heroku understood it wanted to be. Benioff's penchant for buying himself a company every year did not help — "no headcount this year, we're buying Mulesoft/Quip/Tableau/Slack/$WHATEVER. And oops we spent too much money on dreamforce. Sucks that your pager rotations are burning people out!" It was very clear they did not give a shit about us, as evidenced by resources.
It's safe to say that I'm hypersensitive to these antipatterns and have been looking out for them at GitHub, and I don't see them.
What Microsoft wants GitHub to be is pretty much what GitHub wants GitHub to be. A home for all developers, playing a central role in the production of both public and private software. That alignment was never there with Heroku/Salesforce.
GitHub is not perfect but I don't think it's "degraded faster" at all. It's _grown_ faster. Much much much faster. And it's had to expand into the AI field, which is not an incremental thing like "hey let's launch a new feature or better dashboards." Nobody knows what AI wants to be when it grows up. GitHub in 2026 fundamentally resembles a pre-PMF startup in many ways because of that. I'm obviously not an unbiased observer, but I wouldn't count us out just because it's an uphill. Everyone's on that same uphill.
Having experienced both firsthand, I fundamentally disagree that there's a parallel. GitHub/MSFT has the median amount of corporate bullshit. Not more, not less.
> GitHub is not perfect but I don't think it's "degraded faster" at all. It's _grown_ faster.
It’s grown in a way that degraded it and that required actual effort. For example:
- The fancy new diff viewer frontend that barely works. Someone wrote that code — it didn’t happen by itself.
- The unbelievably buggy and slow code review frontend (which is surely related to the diff frontend) was added complexity that did not need to happen. Its badness has nothing to do with how many users use it. It’s just bad in a no-scaling-involved way.
- GitHub actions. It’s … bad. I suppose there wasn’t a predecessor that was better.
> And it's had to expand into the AI field, which is not an incremental thing like "hey let's launch a new feature or better dashboards."
No, it did not have to expand into the AI field. A competent AI-free GitHub Core that could have an optional AI layer on top would have worked just fine if not dramatically better than the current mess.
(I say this as a paying user who will probably cancel soon. The Copilot reviews are kind of nice, but they’re not any better than a third-party system, and I’m getting sick of GitHub not working. Plus, the repos I’ve already migrated off of GitHub get to have nice non-AI things like gasp service accounts.)
> GitHub actions. It’s … bad. I suppose there wasn’t a predecessor that was better
There might not have been a predecessor, but it's been obvious for at least a decade that GHA are a very poorly designed programming language, yet nothing was done to improve. They introduced Github Apps that solve many of the issues with Actions, but that requires deploying a service and aren't anywhere near the ease of use of Actions.
Amusing new observation due to today’s outage [0]: apparently GitHub never bothered to do the obvious optimization to the /pulls page: when you load it with the default “is:pr is:open”, they seem to be depending on their heavyweight search service, despite the fact that their normal API can enumerate open PRs just fine (and probably at dramatically lower cost to them). Sometimes the common case of a webpage should be simple instead of a relying on something fancy.
Im an outsider and a layman, so this might be totally off base, but...
The way I hear people talking about github reliability doesnt sound like scaling problems to me. If you drive 20 miles every day but then decide to drive 2000 miles and run out of gas, thats a problem of scale. If you drive 2000 miles and your engine explodes, thats a problem of design.
Maybe their design problems are being made evident because of sudden scale, but they're still design problems.
I think the fair side of this is that you have to make tradeoffs when you design things. Scaling problems are design problems, but whether they were mistakes or not really depends on how predictable that scaling was.
Car analogies are typical, so I'll add in there.
My car can take the four of us, and we can load it up with things from the shops. I can put a bunch of heavy tins of food in there, or some DIY things, but if I put several tons of stones in the boot it'll totally fuck it up.
Is that a design problem?
Not really, it's a relatively cheap regular car, and it failed at a certain scale.
It would be a design problem if it were a flatbed truck, despite it being the same scaling that showed the problem.
Making my car resilient enough to take that weight would require tradeoffs that would either make it worse for other jobs I want it to do or at least add significantly to the cost.
This is similar in engineering software systems too, you can make it handle scaling up better, but this can require a much more complex architecture that may make it slower at smaller scales. It can make it more complicated to work with, add additional risks of failure as well.
I think it had all the pieces (api,cli,etc.) already that it would've still be very useful in an AI world without deeply integrating AI things (copilot, etc.). I'd take higher availability over AI features any day.
> What Microsoft wants GitHub to be is pretty much what GitHub wants GitHub to be.
Yes, and what Github wants public github.com to be is free QA for Github Enterprise. My company is a paying customer with 200 engineers and it's pretty clear we're just Guinea pigs for the Enterprise product.
Isn't this the massive problem? You're trying to do everything, and you can't, and you're trying to do it for everyone all at once, and have tied it all together so much that scaling up gets worse. If it's more than twice as hard to cope with twice the use, then you have to charge a bunch more to customers as you grow - and that's for your customers to get no actual benefit.
> GitHub is not perfect but I don't think it's "degraded faster" at all. It's _grown_ faster.
The experience has degraded. It's really, really bad. I've seen companies spending thousands and thousands of dollars weekly in developer time *hitting rerun on broken actions*. It's so expensive to start with then so expensive in how awful it is to use.
Something I really don't get I guess is what out of all of this actually needs to be cross-project. How much of my github use needs access to something that isn't running on the same machine? I worked with a team building things actively, maybe 20 devs? That's not really a large set of users. Let's say 10 devs with the workload of 20, the cheapest plan would be $40/mo, enterprise would be ~$200. Would ten heavy users really max out a 64GB ram, 6+8 core new i5 with dual nvme drives, a gigabit connection and unlimited traffic? That's about $40 at hetzner for a box.
I'm not arguing a big federated position, I just don't really get why some of these enormous companies need to be so centralised. It feels like the problem is trying to be a big interlinked thing, and failing at it. The only things I can think of are
1. Links between issues
2. Accounts
3. Search
The first is mostly solved with literally just links, accounts isn't a huge problem and search is fair enough - but search is utterly awful and I cannot find things within one single repo or organisation reliably. So global stuff is irrelevant.
> And it's had to expand into the AI field, which is not an incremental thing like "hey let's launch a new feature or better dashboards." Nobody knows what AI wants to be when it grows up
If github persists in being utterly shit for developers, it won't be around to find out. I'm not sure at all what part of the AI stuff needs to make everything else bad, and I'm extremely bullish on AI and agentic coding.
To really hammer this last point home, as agentic coding means we can do a lot more and faster - the unreliability of github has become much more apparent and impactful. Unreliable tests, unreliable code pulling and pushing, unreliable diffs. You're making the agents jobs harder, making the devs jobs harder exactly in the place they now spend much more time.
It makes github dramatically more expensive as a place to work. Also just really fucking annoying.
I think the general answer is that it would take real development effort to make federation work, and having to have compatibilty with other installations slows down your own pace of possible features -- I think these things are undeniable. Arguably worth it for society/the community (I wish we had more open standard federation and less centralization), but from the point of view of the company will it actually lead to increased profits sufficient to justify? In fact, it may do the opposite, if you are one of the largest, then lock-in is better for your profitability. Compatibility with other services is only important for the small upstarts trying to get customers from the largest.
I don't like it, but I think we will get proprietary centralization as long as we have capitalism of the sort we have.
I get what you mean, I think what I'm pretty stuck on is what is the centralisation solving? Federated messages dealing with lots of things flowing back and forth and live updates, etc is one thing - but what is it about GH that makes much of a difference when things are in one place or many? Much of the work is done in very isolated sections.
Imagine each organisation/user was run with completely isolated data, and you used something like google sign in for auth (so one global sign in, then oauth).
What wouldn't work? Global search, that I get. I struggle to think of other things though. Maybe whether links between issues across orgs updates? Every commit, diff, code browser, permissions for writing, reading, org level search, stars, would work with zero federated sort of search-y things. Package management, issue tracking, all that would be the same.
Forks followed by PRs? Not sure that would be much different - maybe you'd have to raise an issue on the original project with a link to your new repo & branch.
Some of my attraction to github is just that I am used to and like the UI, and I get annoyed on another platform where I don't understand the UI and don't know where to find things or how to do things (like set up free CI for open source project, or debug existing CI for a PR).
Other than that... auto-linking to issues, prs, and code (with auto-expansion of excerpt in issue) cross-project is nice?
But you are right, git is theoretically something where separate projects are fairly isolated, which does make it more mysterious that competitors are having trouble and it seems like github has some kind of network effect lock-in anyway. It's a good question.
> It's interesting that internally you had a very different experience with Salesforce buying Heroku and Microsoft buying Github. From the outside it appears to be analagous (except github is degrading quicker than Heroku did?)
This pops up on here frequently. People misremember the Heroku timeline with Salesforce. Most of Heroku's growth and glory days happened after the acquisition. Salesforce actively invested in it and turned it into the powerhouse that people remember today.
At some point, they stopped, and it's not clear why.
People flip the order of the first two and remember it as "Salesforce acquired Heroku and then they went on a downward spiral" but that's not really what happened. There were many years of growth in between, including the period that almost everyone who remembers Heroku fondly remember it for.
I am aware, and I am often the one making that point -- but here we have someone who worked at heroku saying he experienced the SalesForce acquisition as immediately negative and with signals that it was not going to get better and this caused him to leave, so I was discussing within that narrative. I was more intersted in learning about his take from his experience than in trying to tell him he was wrong and salesforce was great for heroku despite his experience working there?
But yes, heroku from the outside kept doing quite well for the first years of Salesforce ownership, whether becuase they let them alone and kept their budget going, or whatever. That's why I suggested that from the outside github's slide was much faster.
idan (who again, tells us they worked at heroku) replied to me in this thread:
> Salesforce never understood Heroku. Salesforce's understanding of Heroku, if such an understanding ever existed, was wildly different than what Heroku understood it wanted to be. Benioff's penchant for buying himself a company every year did not help — "no headcount this year, we're buying Mulesoft/Quip/Tableau/Slack/$WHATEVER. And oops we spent too much money on dreamforce. Sucks that your pager rotations are burning people out!" It was very clear they did not give a shit about us, as evidenced by resources.
> It's safe to say that I'm hypersensitive to these antipatterns and have been looking out for them at GitHub, and I don't see them.
At the point we're quoting other people's replies in other parts of the thread becuase we're not all even having the same conversation anymore, we're probably done!
Fun story about that: In Ruby 2.x, the version GitHub originally launched with, every object implemented the method `id`, which returned the object id (in 3.x, it was renamed to `object_id`). Every object had this id, ActiveRecord models, strings, floats, integers, booleans, etc. Some objects had fixed object ids, like `true.object_id #=> 20`, `false.object_id #=> 0`, `123.object_id #=> 247 (2n+1)`. The `object_id` for `nil` is `4`.
Yehuda Katz was the first external user of GitHub after the cofounders, so his github user id is `4`.
The way Rails works, if you want to look up a user record, you do it by id:
author = comment.author
user = User.find(author.id)
Now, if there was some bug, and for some reason a comment had no author, `comment.author` would return `nil`, `nil.id` would return `4`, and the UI would show Yehuda as the author in the UI. People would ask, "Who is this Yehuda guy, and why is he commenting on my PRs?"
TBH I'm not super invested in github. I pay for it (smallest plan) and use it as a repository and for forking other projects occasionally, and for hosting some small-time static sites. I've never really needed any of it's other features. Every time I go to github.com there's more and more cruft though, which to me means that I'm not their target customer and they will inevitably either alienate me or jack up their prices. Happens every time there's an acquisition so I'm kind of used to it now.
Github has remained surprisingly useful for quite a while post M$ purchase, but I'm old enough to know that everything M$ touches eventually goes to crap. It's like a law.
I remember using CVS and Subversion though, with very limited hosted options, and I thought Github was the bees knees at the time.
In fact now I think about it my claim to fame used to be that Github used one of my Rails plugins. I had written a really simple versioning system (Rails 2 I think) that I used for my blog and they used it, IIRC, for versioning wiki pages.
When I was working at Microsoft I got transferred over to GitHub for awhile and someone there noticed my ID and made a big deal out of me having a 4-digit ID. :)
Thanks for sharing that link. My GitHub ID is 484.
I had no idea that I joined so early. It says I joined in 20/2/2008. I guess I was following some of the founders' work in Rails when GitHub was announced and must have signed up shortly after it got started.
I'm 17722 and also felt late. I was a holdout on Subversion and was resistant to Git in general since SVN still worked fine and had good tooling, but eventually some client work moved to Git and thus eventually Github.
Hah! I was too. I was at a bar with Chris trying to convince him to base the company off of hg instead of git but they already had the domain name and had already started building it.
Genuinely surprised to be just over 10k too! Felt late!
No idea how my two character handle made it through… Probably the wrong thread to ask anyone at GH to allow me to block notifications anytime anyone mentions "@ts" but I've come to accept it at this point, lol.
For comparison, I'm 208,820 and we're in the same year: I got that number 2010-02-23. So GitHub more than doubled user count that year, impressive for a "late to the party" growth.
I had just tried asking Gemini to help me get there, and it kept telling me to read line 2 of github.com, as if they were serving JSON on their homepage. :facepalm:
> "GitHub only gets better if people who give a shit stick around to make it better"
At a basic level I appreciate this sentiment. However, the common dysfunction I see in large corporation is its not the lack of people who give a shit. Its lacking a sufficient number of people in positions of power that give a shit -- such that they can actually make change happen.
All too often competing pressures (features, profit, delivery speed, politics) take precedence; not leaving time for things that would really move the needle. In essence, too many leaders are happy to ship garbage; they don't care (or don't know).
If Github were to put out a statement saying "service quality is our priority", it is fairly meaningless. If they added "here's how we'll get there", maybe it helps some. Moreso -- "from now on executive compensation is tied to these SLOs", then maybe something would actually happen.
The issue is that modern software businesses aren't encouraged, in the slightest, to care about polishing products.
The company leaders only care about features shipped. That's it. They only polish those features if they are shipped in such a broken fashion that they are actively causing outrage. Once the features are shipped, it's done, any additional resources on an already shipped feature is seen as wasted.
This permeates all aspects of modern corporate software, unfortunately. It's why the likes of C# and .Net is forever adding new frameworks and language features while abandoning the existing frameworks. It's why Microsoft has had more new UX frameworks than OS releases. It's why for the same setting Microsoft now has multiple panels for the same information, literally a panel introduce in windows 98, Vista, 10, 11.
The only time a company like MS kills a product is when that product competes in the same space as an existing product. For example, it's why they killed wordpad. It was offering features too close to what Word did for free.
The fact is, it costs almost nothing to add a feature. It costs a ton of money and resources to properly integrate, use, polish, and remove places that feature fits into. I can't imagine the amount of money MS paid to integrate copilot into everything.
I think it's true that lacking sufficient numbers in power is essential for change, but I also think there is a lack of people who give a shit. I've had many 1-on-1 conversations, some lunch casual and some more directly syncing on a project, wherein we'd come to straightforward conclusions on next steps. And then we'd have full team meetings to make official decisions and I'd find myself alone asking questions about a leader's out of the blue contradicting proposals. I'm not sure how one functions in this (I guess typical?) environment.
> "GitHub only gets better if people who give a shit stick around to make it better"
What's the mechanism of action here? What changes if I stay? What changes if I give more or less of a shit? Is there javascript telemetry feeding my shit into a dashboard with a calibrated shitometer for executives to consult when they set quarterly objectives? My account is six weeks younger than mitchellh's and I've been watching GitHub fall apart for the last year, what will happen because I stick around to watch for another year? Besides that I will get covered in shit.
You're an employee. What changes if you stick around? Back in October 2025, the GitHub CTO Federov prioritized moving to Azure above feature work (https://thenewstack.io/github-will-prioritize-migrating-to-a...). Yesterday he recommitted to it (https://github.blog/news-insights/company-news/an-update-on-...), writing "We started executing our plan to increase GitHub’s capacity by 10X in October 2025 with a goal of substantially improving reliability and failover." GitHub has had six bad months of increasing bugs and sharply decreased uptime, and the CTO just recommitted to staying the course. You've explicitly been directed to move to Azure, not to give a shit or to make things better.
So I'll defer to your direct expertise. From the outside, Heroku stalled and died because Salesforce prioritized everything else in its business above Heroku. Are GitHub's priorities so different? Does you giving a shit make Azure and Copilot the best top priorities for GitHub? Will Azure and Copilot be why I stop seeing SPA jank? Will Azure and Copilot be why I can see my list of open PRs? Will Azure and Copilot be why I see something more than the 500 unicorn? Will Azure and Copilot stop the spam PRs that want to undermine the quality of my code? Will Azure and Copilot lead to anything other than the same corporate dismissal and dysfunction that led to Heroku? Will you giving a shit matter?
> In the past few years, GitHub has absorbed both a fundamental paradigm shift (agentic coding) AND several different hockey sticks of growth. It's messy. I'm not always proud of the results or the product choices we are forced into.
Excellent example of why centralization is a bad thing. A Git “hub” is not a thing that should have ever existed for a self-described “distributed” version control system.
Decentralized networks benefit from hubs if they benefit a subset of the network, which GitHub has for a long time. A hub is a focal point and there can (and should be) many of them in the git "network."
Nothing prevents usage of GH in a decentralized fashion. There's nothing magical about git remotes. Just add some more, figure out a process that works for you, have fun!
In reality: when I want to send a letter I don't want to figure out a process from scratch. I want to go to the local post office, buy a stamp, and post a letter.
Convenience is a spectrum and different people land in different spots. What irks me is when I lack the choice. And that's not the case here.
Github isn't a public good or a person; it's a product for a for-profit company, whose aim is to squeeze profit out of you. They care nothing for you and will dump you the moment it's profitable.
I would invest your energy in something worthwhile like an open source project, a non-profit, a social or political cause, a family memeber, etc.
> Occam's razor applies here
I think the simpler explanation is clearly that it's a for-profit company and these problems aren't worth fixing, and not a speculative engineering excuse. If Microsoft wanted to invest more, including in uptime, they could make it happen. They have over a trillion dollars.
I fully agree with your points but have to mention that market capitalization is not money available to the company. Microsoft is valued over a trillion dollars at the stock market, Microsoft doesn't "have" a trillion dollars they can spend.
Just an observation: The different approaches mentioned in the replies to this post seem to all neatly fall into one of the three types of individual response (exit, voice, loyalty) there are to any sort of decline in/of firms and organizations of any kind within Albert O. Hirschman's well-known economic framework, originally laid out in Exit, Voice, and Loyalty: Responses to Decline in Firms, Organizations, and States (1970).
Personally, I find "loyalty" perhaps the most fascinating one of those, being "irrational" for the individual almost by definition but sometimes, for example, proving out to be the only "glue" holding an organization together through a period of incurable-looking decline followed by an eventual recovery (in the lucky cases).
I completely understand a "people who give a shit stick around" mentality if you work there, but you can't expect users who run a business on it to stick around if it's broken.
Correct, sorry I thought this was pretty obvious but in retrospect maybe not.
I'm not encouraging Mitchell to stay, I'm saying that my version of his post is about _me_ staying to make a brighter future, and adding my context on why I still believe that.
And finally I closed with "I hope we win you back" to be extra clear about it!
The problem is that you decided the correct place for your “version of his post” was in the comments to his version of his post. This rhetorically implies you’re offering your version as an alternative to his, and it explicitly sets up your version as a comment on his version.
And then you claim your version is only about you. Why post it as a reply, if that’s true? It would be off topic. But it isn’t off topic; because actually you are talking about OP in addition to yourself.
I found out today that I am user 6082. I have been using github since the rubyconf (railsconf? I can't remember) where it was announced. I loved octocat. I was a git fanatic. It has been extremely disappointing.
I am using fossil now. I kind of love it, just a sqlite file with a very trim binary to interact with it. I get all of my things that I want (wiki, forum, issues, docs, etc) all in one file.
But that's just for fun. At work we are still tied to Microsoft Github. Just typing that out feels dirty.
github hasn't absorbed agentic coding, though. agentic coding has absorbed it, and as a result it's quality is suffering.
the thing about github that is so maddening is linus gave us the secret with git itself. then we reinvented centralized source control using git and called it github, and here we are.
Decentralized version control only works if there is some way to find and access those distributed repositories. For many reasons and no matter the tech there is always a drift towards having a centralized registry so that the degrees of separation for individual actors is minimised. Be that a search engine or code forge or social network.
For *most* users, fully distributed and disconnected is a bug not a feature.
As someone with the ID 1653, I've totally given up on the thing. I've even created my own rust based forge, ironically, hosted on github at the moment.
Github is Microsoft, who even cares? How can ppl be so caught up in a brand name? Microsoft doesn't care about you, why do you care about Microsoft? Things always change, just move on when the time is right.
Totally. And a small correction I think to your analogy is:
It's like crying when your favorite IRC network gets acquired by a crazy person (eg. Freenode) and refusing to jump onto libera.chat. I get network effects make a scene, but still, come on, new Freenode is not Freenode, it's just a name. Time to move on!
> "GitHub only gets better if people who give a shit stick around to make it better"
At best that's half of the equation. You also have to continually hire new people who give a shit, and you have to do that within the context of Microsoft.
Given the rot already evident, there really isn't any incentive for people who care to join. They would have to care more than the organization does about the product, and there would have to be many of them.
Once product in large companies get to this point, there's no real way back. Quality will max out at the minimum required to retain the revenue. And if that fails for too long, it'll be put in product hospice.
> t's not "more AI coding" and it's not "big bad Microsoft." It's scale
Besides "That's what makes us money and pays my bills", there is no real reason to keep building github as this centralized, all-encompassing system that needs to work at global scale.
Engineering is about understanding that everything is about trade-offs, and eerything keeps pointing out to the fact that wrong choices are being made there. You can throw as many people as you want or all the MS money at it, but as long as Github "engineers" that keeps overindexing on Efficiency at the cost of Resiliency, it will feel like this pile of unusable crap
What you built was a community, not a website owned by Microsoft — it could port just fine to GitLab.
“I won’t leave, I’ll fight to make this place better!” is a laudable trope ofc, but in this case you’re not making any place better, you’re just defending shareholder value. IMHO :)
> My version of your post reads differently:
> "GitHub only gets better if people who give a shit stick around to make it better"
> Walking away would be easy.
Yeah, be careful not to gaslight yourself into trying to "tough it out" with bad vendor relationships. Sometimes you do need to know when things aren't good/healthy and it is time to walk away, as sticking around just ends up being needlessly flagellent.
Especially with corporate owned software or SaaS ecosystems!
Sounds like you made the right choice with Heroku back in the day. I feel like this is Github's Heroku moment.
Considering the size and scale of Github, do you feel like it's become closer to an infrastructural public good rather than a privately owned product?
The amount of impact I've seen to businesses around the US at least might as well be akin to a Covid shutdown, and that certainly has me thinking about what the overall impacts are on the US economy overall.
Caveat, I'm not a lawyer, I don't speak for the company, yadda yadda
It's a product that is _de facto_ present in nearly all developer scenarios. There are scenarios where I personally believe public management is better than private management, e.g. single-payer healthcare is strictly better than the bullshit we have in the US now. It's fundamentally cheaper for the polity when the government negotiates with healthcare providers than each private insurer.
I don't think that's fundamentally the problem facing GitHub, and I don't think it would be better in any way — for anyone — if it were regulated like a utility. But again, I write javascript for a living. Take what I'm saying with a big-ass rock of salt.
git is an infrastructural public good. github is a company that sells you git adjacent services.
Speaking of git adjacent services. Why did google code end? Was it too hard for them to monetize? I tend to have an aversion for signing up for stuff so have never had an account on either, but they had a lot of momentum. And them shutting down that service feels like the inflection point marking the end of the "don't be evil" period, A lot of open source projects got burned in that one. That or when they bought YouTube instead of developing their own google video further.
> Why did google code end? Was it too hard for them to monetize?
My guess is that abuse (people hosting files/data that google didn't/wasn't allowed to host) made it untenable for a service that wasn't generating revenue and had limited headcount.
Something like Google drive or yt could spend a lot more energy stomping it rather than the handful of folks from the open source programs team.
I used to be a hubber - I really hope that institutional change happens at GitHub and I'm glad there are people there still fighting for it. I left because caring deeply (maybe, like the OP, too deeply) for the platform wasn't enough to shift many layers of leadership to focus on performance and reliability. Watching it crumble and lose its early-days focus on engineering excellence was just awful.
Even when we had a CEO telling people to focus on making GitHub Fast (<3), telling people to do what made GitHub better and not what people thought would make Microsoft better or make their jobs more secure to MS (because Microsoft bought GitHub because GitHub was the important thing, not so it could be a consumer of Azure) - it was still an uphill fight to change mindset and it didn't go anywhere meaningful.
I really hoped that others would be enable to enact that change after I left, but everything coming out of GitHub makes it look like the core focus is still not on making it fast or reliable or just better overall for people. If a blog post about GitHub's availability still includes the world's third-best major cloud provider as name drop on a solution, people are not focusing on making GitHub better. They are focusing on being part of Microsoft. Make GitHub better first, buy more super fast computers with the fastest everything you can buy, or at least use the best or second best public cloud provider, then work out how to leverage Microsoft to do it in-house or cheaply later. A GitHub that nobody wants to use is a bad investment for Microsoft.
Also, rip out 90% of default feature bloat integrations from initial page loads, add them as discoverable drill-downs or optional things to enable if people need it. Adding every feature under the sun (and copilot) on every place you can think of might read nice, but if you then fail people's most basic needs, you're worse off. GitHub still needs to function as the basic tool for all the future stuff to work. Accept the agentic coding paradigm shift and focus on making the tools faster for the hot paths rather than every path - and yes, that means removing stuff from the hot paths. GitHub today is like a maze, layers of settings and features, like nobody is thinking through UX anymore. This seems unrelated to performance, but this sort of "throw everything at the screen" style of UX is also what leads the backing systems to crumble under load.
I appreciate that you're staying inside with that mentality.
Like Mitchell, GitHub was once a dream job for me, and it just never lined up pre-acquisition. I shared many of Mitchell's habits too, about GitHub being my reading material. Until some time after passing 2000 starred repos, I had literally read every line of code in each of them. GitHub still feels like home to me, as a user.
Good luck, and we're all counting on you.
(359439, which is quite high for this thread, it seems!)
As Albert Hirschman observed in reflecting on his seminal "Exit, Loyalty and Voice": "an organization needs minimal, or floor, levels of exit and voice in order to receive the necessary feedback about its performance".
Don't feel too bad, you are both essential to the process that ends in Github improving (or imploding).
The heroku mention here struck a chord for me. I don’t feel as attached to GitHub for some reason but Heroku was the first web host I used where I felt like “this is how cool a web-based tech-oriented product can be”.
So crazy to see how money can ruin such a good thing.
fuck microsoft. it absolutely is the big badness of that monster. microsoft's sick monopoly has dragged humanity back by years from where we should be. every hour wasted, every email lost, every skilled career sacrificed to their garbage is the future lost.
"GitHub only gets better if people who give a shit stick around to make it better"
This only works in democratic settings. In capitalist corporations, typical liberalist parliamentarism and so on it does not work, only coercion does, which might be peaceful, like a strike or boycott, or it might not be.
I'm wondering now how the heck we ended up so early on Github. It was back then just a small unknown startup but i'm not sure what connection we first 30,000 users share. At the same time i remember there must have been also some connection to Y Combinator back in 2008. Is there a way to see my own history of probably first commits or activity on Github? Oh, i found out. It was the early Rails Community on Github. That's probably what the first Github Users all share in common.
I'm user 7xx,xxx but I also believe I created a Github account while working on Rails projects (basically copying Ryan Bates and assembling things together. haha good times)
First, a reminder of the guidelines: "Please don't use Hacker News for political or ideological battle. It tramples curiosity."
Second, even if your comment was not an attempt to do ideological battle: neither the comment you replied to, nor the post linked, mentioned any pronouns, so your comment makes no sense. (Well, the comment you replied to used the pronouns I, we, and you, but first- and second-person pronouns are ungendered in the English language, so if that was what you were referring to then your comment still would make no sense). Were you trying to leave this on a different message?
I can feel the frustation, nothing dramatic about expressing it
This quote from the post resonated with me:
> I want to get work done and it doesn't want me to get work done. I want to ship software and it doesn't want me to ship software.
The sentiment is shared, and github is not the only service making me feel like that, it feels like everything on the web is more flimsy and low quality nowadays. Constant outages, bugs, UI papercuts, incomplete features, what in the world is going on?
I suspect it isn't even really "greed". It is just the slow mold growth of an org chart optimizing comfort for itself instead of value for customers. Generally, startups / founders are the only anti-bodies against this type of behavior.
What a weird time for our industry. On one hand, small teams have never been able to move faster than right now.
On the other, the economy and market conditions are brutal for the little guys. Incumbent behemoths hoovering up value, talent and financing.
Instead of shaking things up as usual when a major paradigm shift hits, AI has mostly been a centralizing, consolidating force. Not that I was expecting it to be otherwise, but it's certainly dismaying to witness.
Or am I being too pessimistic / glorifying the past?
It's easier than ever to make your own furniture. IKEA is bigger than ever.
It's easier than ever to publish a video game. Steam is bigger than ever.
It's easier than ever to 3D-print tractor parts. John Deere is bigger than ever.
It's easier than ever to switch to solar power. The petroleum industry is bigger than ever.
One person reverse-engineered Coca Cola, made an exact taste-alike and published the formula. You can make some at home. Coca Cola is bigger than ever.
The hidden cost to competing in these industries is insane. Its so hard to build a physical product that can compete against a giant like IKEA. You need to make some with less r&d, less automation, less infrastructure and you're going to sell less units and all that needs to be price competitive against something that is made on an production line with a team of experienced engineers and sold to millions at fine margins.
That depends, doesn't it? If I make it, it costs time instead of money. (Costs of tools are amortized over all the things I might make.) If I get it from IKEA, it costs money instead of time.
> It's easier than ever to publish a video game. Steam is bigger than ever.
In this case: these statements aren't contradictory, they're complementary. It's easy to publish a game on Steam, where the audience are and the money is. It's also easy to publish on itch.io where no money is.
I think org chart the impact is how the individual person can advance their career while doing good work. If they only get rewarded for new things, service and maintenance suffers.
By lowering cost and not investing profit to the company? Yes, short-term v long-term, but who in this world cares about anything after their next salary?
If you have the choice to sell out or not sell out, the only logical decision is to sell out, because then you'll have lots of money and one presumes the product wasn't emotionally important to you. You can then move on to making your next product.
Couldn't have said it better. Whatever else you want to build in life will be exponentially easier if you sell out first, and many builders have many things they want to build and not just one.
Focus on open protocols, simple formats over complex vendor-specific cruft. Then you can always "fork" away from an enshittified saas.
I bet a small team of the quality of the kind developers who are attracted to hacking on Ghostty could recreate the subset of GitHub functionality they actually need in ~six months. It's just the problem of how to pay for the ongoing care, maintenance and hosting? Maybe another opportunity for Mitchell's particular brand of philanthropic OSS.
DNS is the cause of all problems, but it's also the solution - just like anyone can run Apache or Nginx, so should anyone be able to run a git setup. Then it scales really well, as everyone is doing their own thing on their own domains.
Of course, you lose out on some things like ease of user access and various protections.
You don't need this. git and a local drive. git and a shared drive. git and an https engine (can be a plugin to apache/nginx, not a full github like solution). git and ssh but people use username/password.
> it feels like everything on the web is more flimsy and low quality nowadays.
Not just the web either. It feels like the whole world is in a race to throw shit together and cash out as quickly as possible: influencers, hustle culture, enshittification, etc.
My pet theory is that all of the global chaos around the climate, politics, pandemic, etc. is leading people to no longer believe in the future. Once you lose that, all that's left to care about is the right now. No one takes the time to scrimshaw the deckrails on a ship they believe is sinking.
And you, my father, there on the sad height,
Curse, bless, me now with your fierce tears, I pray.
Do not go gentle into that good night.
Rage, rage against the dying of the light.
We can't really change the tide lest we be King Cnut - but we can at least take the time and effort in the things we do to fight against entropy - bring more order and durability into our lives.
Or perhaps another adaptation:
God, grant me the serenity
to accept the enshittification I cannot change
the courage to improve the things I can
and the wisdom to know the difference.
We can; the tide changed to where it is now and can change again - and somebody will change it.
People need to stop bemoaning it, and think and do something. The enshittification is an idiotic, failing, extremely short-sighted strategy.
It's a huge opportunity - your competition has stopped investing in its product, fired its talent, treats its customers with utter contempt, and is managed by imbeciles. Who is a better target for disruption? Hire the talent, market your quality, treat your customers with respect, point out the BS your competition does every time they do it. Stop staring at your navel.
One way it's possible is if the US ditches the two party system. We are starting to see some cracks in the partition recently with the Epstein files and the Israeli genocide. People from both sides are starting to realize they share a lot of common ground.
Leaving aside the reductionism, the difference is that we are already seeing the effects of the "bad weather" and we all lived through [1] (and, to a point, are still feeling the effects of) the "flu". No "ifs" about it.
There's no need to worry about a threat that has been theorized for 70 years (and may very well never happen) when there are actual, real catastrophes happening right now.
[1] Well, except for those who didn't make it through. They are not here by definition, but their memory is still fresh.
> I can feel the frustation, nothing dramatic about expressing it
I think the "ridiculously dramatic" part is the whole love letter to GitHub, not the frustration.
And I think it is fair to say that it is ridiculously dramatic. Which is okay, of course, I'm not criticising here. Just like it would feel ridiculously dramatic (at least to me) if someone explained that they cried today when they stopped their subscription to Netflix in order to move to another service, because they love Netflix so much.
The difference here is _creative_ work vs consumption. Craftspeople like Mitchell feel passionately about the tools they rely on to build. Github has also been a social place for builders.
I don't think it's ridiculously dramatic to feel sad about great tools rusting or makerspaces closing...
Again, I am not criticising the feeling. It's okay to feel the way we feel.
I am just saying that when Mitchell mentioned it being "ridiculously dramatic", I think he was not talking about the frustration but rather about the fact that he cried about leaving GitHub.
It's okay to feel sad about something and to also feel that it's ridiculously dramatic to feel sad about it.
>The sentiment is shared, and github is not the only service making me feel like that, it feels like everything on the web is more flimsy and low quality nowadays. Constant outages, bugs, UI papercuts, incomplete features, what in the world is going on?
Have you ever tried to run anything from the 80/90s era? Segfault everywhere, "fatal error was successful", kernel panic, BSOD, screen freeze for any reason and its opposite.
Nothing serves better good all time than bad memory as they say.
Not that the gigabit of useless crap to show essentially a few ko of text is fine, but the abuses and horrors that humans commit just shifted a bit where they land, it's not like there was a time were we had a land free of human dirty stuffs.
Yes somehow, in a the sense that there are always things that we can observe as annoying when the representation of a situation where these issues are not present is easy to fantasize. But making actually disappear these annoyances is the hard part, plus the new situation have great chances to be bound to different annoyances that phantasms didn't anticipate. So the NP hard problem is being critique of our anticipations to try to avoid paths to bigger troubles, and keep steady effort on waking the path all while also paying attention to current sensory feedbacks of the situation on the road.
React gets blamed for this because the error handling is bad and the UX is confusing. But the issue with GitHub’s frontend is that the backend is dropping requests. When you click a button on GitHub and the loader gets stuck that’s because there no timeout/error handling in the JavaScript but there also no reply from the server. I feel like React is getting a bad rap because it’s visible when the issue is clearly their backend.
> React gets blamed for this because the error handling is bad and the UX is confusing
Yes, it does.
> React is getting a bad rap because it’s visible when the issue is clearly their backend.
Two things can be bad! Except that in this case one of them is unnecessarily bad, because nobody forced them to use a front end system which defaults to terrible failure handling.
It's also not tautological that React apps have bad error handling. You can do proper error handling and retry logic in React, and I can't for the life of me understand why GitHub engineers making several hundred thousand a year in cash and at least that much in stock simply... don't?
It's no wonder my jobs feed is flooded with senior engineering positions at GitHub (one wonders if they're growing, or jettisoning dead weight) but I can't imagine it's a good look for the resume to put GitHub on it at this point.
What's hilarious about that script is that the solution is so simple: use a less-than comparison instead of an equals. That's really, really all it would have taken to fix the issue. And yet https://github.com/actions/runner/pull/3157 was opened on 2024-02-17 and was merged on 2025-08-21, a full 18 months (plus a few days) later! It took literally 18 months for them to merge a bugfix that is trivially obvious to see is correct.
Yeah, the problems at GitHub ran (and still run) deep.
P.S. Yes, there are busy-wait issues in that code, which should have been addressed by bringing back the check for the `sleep` command and using it if available, falling back on the CPU-burning busy-wait only if `sleep` was unavailable. But the most revealing thing is the 18 months to merge a trivial-to-verify PR. That, more than the bad busy-wait loop, is the fundamental indicator of brokenness at GitHub under Microsoft's ownership.
This is surprising to me, I would have bet money that all the people who actively engage in this type of language/framework war discourse were all drawing Social Security by now.
There's a big difference between a war between two somewhat equivalent things that make different choices (editor wars, language wars, etc.) vs pointing out that certain things are really fundamentally ... not good. IMO we all need to be much louder and clearer about how bad things are, and how much better they could be.
This is, in fact, on topic: github actions seemed to me like a bad idea from the start, to me, but I let my co-workers and "network effects" convince me that I was being grumpy and that it was fine, and so we've adopted it. And now ... here we are. It was exactly as bad I thought it was, and it reflected a broken engineering culture.
It is certainly possible that you are brilliant and your co-workers and the industry writ large are all morons. That you were right all along, and chickens roosting and all that, though it seems at least equally as likely that this is not the case.
If you think it requires "brilliance" to figure out that Github Actions is really bad, and/or that "the industry writ large" always makes good decisions, you might be the problem!
After yesterday's outage they admitted that their elasticsearch index for issues/prs lost data.
They seem to have changed the primary source of data in the issues and pull requests tabs (w/o filters applied) from the underlying database to the elasticsearch search index, which has the side effect that there's a noticeable delay between state change of an issue/pr and an update in the UI. But as seen today, these can get out of sync, and apparently they even had data loss in the index.
I would really like to know their reasoning for making that change. I can totally imagine that they wanted to "simplify" so the UI uses only a single data source instead of two.
As a user it's incredibly annoying to have a delay between issue/pr state changes and the search index picking it up.
What? React has nothing to do with current state of affairs. In fact, React on GitHub currently exists in mere islands, i.e. in Projects and recently in Pull Requests. Most of the frontend is still Web Components[1] paired with Turbo[2] for hot reloading. GitHub is still as slow even with JavaScript disabled, try it yourself. Backend just serves stuff really slow. In fact, there is an alternative GitHub frontend (no affiliation) that feels snappier and is written in React.[3]
With that said, Mitchell complains about outages. These started directly after Microsoft acquisition[4] and are attributed to migration from AWS to Azure.
Pull Requests is the thing that was wacky in the UI yesterday, coincidence or not? I have no idea.
Yesterday we saw PR pages that displayed no error, just displayed wrong info. I would have preferred to get an error page than outdated or empty lists. I was guessing this was related to the React migration but I don't really know.
Also, the browser back and forward buttons no longer work in pull requests when going between PR tabs (commits, checks, files changed, etc) as well as some other site interactions.
Like, what user-hostile intention was the reasoning behind that? I am literally imagining a product manager smoking a cigar and laughing at the RUM session replays of me losing my shit.
Fully agree. We really should punish companies that blatantly push this kind of mercenarism. I mean, every VP and CxO join a company, he/she takes super short-sighted decisions that push some random metric a bit up, and then they leave with a huge performance bonus not caring if everything is worse. They won't be around to cope with the fallout as they are already in another company doing the same.
I am not again performance bonuses, but they should be attach to better metrics. Eg the number of happy users is still up in 3 years time. Or something like this.
This is my darkly optimistic take on enshittification:
Companies know how to make good product, but if they don't have "new and shiny" to impress us anymore, then their only alternative is to make things worse so they can heel turn and then make things "better" by unmaking all of the worse things they did.
They can also milk their customers coming and going in the process.
It's not "enshittify or lose", its just raw greed. Things will get better again, either that or a competitor will destroy them. Enshittification is just the current meta and a new one will come soon enough.
I don't think companies know how to make a good product any more. Conway's law won this battle.
I think it's that company management has no incentive to do well. So they have no reason to push this down to the bottom tier of workers who actually make the products. The feedback loop is open. They make an order, the product gets worse, the line goes up, they don't know the product got worse and they have no reason to care anyway.
When is the "get better" step? I've only ever seen two things happen mid- or post-enshittification:
1. The company builds a moat and just remains shit.
2. New entrants either displace the company entirely (most likely) or competition slows the enshittification process (distant second) or reverses it (almost never).
It's not clear to me why "get shitty" is a necessary step to this. What part of GitHub's executives' grand plan is "have a barely-functional service that randomly prevents people from working"?
> What part of GitHub's executives' grand plan is "have a barely-functional service
What about lock-in, being a monopoly? Why wouldn’t you maximize on saving costs? Sure some people leave, but the majority is not going anywhere. And if the platform dies they’ve made more money than to keep it alive.
The enshittification process milks the current product of all of the money that can be wrung from it by any means just shy of immolation.
Companies aren't getting cheap loans right now so they're desperate to juice their stocks so that upper management can secure their bonuses.
That's why "get shitty" is necessary.
When they've wrung it dry, pocketed all of the crumbs of raw cash they can get, then they'll either collapse due to overmilking their products or they'll realize that the only way to refatten the calf is to bring in new customers, so they'll unshittify it for the fresh infusion of customer money.
It's a cycle, and one I predict will inevitably lead to many of these companies' collapse.
Depends on how strong a moat really is, but it can be "enshittify and lose", too. Enlightened (as opposed to short-term) self-interest may pay off after two years or twenty, depending, and in the latter case, it may as well not pay off at all as far as a public company are concerned.
I think Microsoft’s home game is “monopolize and enshittify”. They are the masters and know the exactly what amount of enshittification is too much. E.g. Hashimoto quitting GH is probably totally worth the 10 SREs they fired. Us plebs cannot go anywhere.
The idea was, move fast and break things - but then pick them up and fix them. Companies realised they didn't really have to fix them properly as the users still stuck around.
Yes, exactly. AI isn't some magic dust that you can sprinkle into your workforce and get more productivity and better results. It is at best a force amplifier for what you already have. If you're making awful and broken products, you will make even more awful and even more broken products at a higher rate than before.
It's not a coincidence that every impressive result done using AI has come from someone with a track record of impressive results before AI. AI isn't magic. It doesn't make you good at stuff you're bad at.
Microsoft had a very specific niche of making completely awful software that wasn't actually broken - in fact, that was often the infuriating thing.
If it just shat the bed completely, you'd have an easy argument to replace it with something else; instead, it would be technically competent (Hi, Raymond!) but covered in stuff that made it infuriating to use (Hi, Redmond!), especially if you didn't live in it day in and day out.
I think it's more people are checked out (and AI is one part of it yes), made worse by orgs who don't know how to lead/manage/change effectively.
FWIW, some people used to (or still do) say similar things that software is significantly worse because people use "unserious" languages like PHP, Ruby, Python, JavaScript. It brought about so much cool shit that I don't think it's worth saying we should've stuck with only C and Java.
I don't know if it's just because I was young and bright eyed, but it seems like the "passionate nerd" is somewhat absent in modern tech orgs. Seems like, starting around 6 years ago, none of the new hires seem to give a fuck about anything anymore.
That's definitely great for work life balance, and I don't think any less of them for that, but passion seems to be gone.
I would be doing what I do for work if I was employed or not. That's how everyone I used to work with was. Now everyone seems to do the minimal, with the goal being more to direct blame than solving neat problems.
I'm still optimistic. I think the number hasn't gone down, just the ratio. Software still offers a relatively well paid and comfortable career, so you naturally get people who just want to do a good job and that's it. Nothing wrong with that.
Used to be nerds hanging out on IRC, distributing Slackware, hacking trialware, modding games, etc. that had the passion and problem solving determination to do software work, which used to be harder due to lack of access to information.
OTOH what a great time for a budding engineer. I'm in my mid 30s, and no longer have the same stamina and passion as in my teenage/20s, but in the last 5 years I've learnt so many things I could not have done so back in the day. I learnt and experimented way more around random topics like compilers, OS, electronics, databases because of ease of access to information, AI (:shrug:), even though I have way less free time.
Github is going around boasting how many PRs they generate a day with Copilot with very limited human input. Whether that's true or not, it might have effect.
When did every company become a feature factory? Was tech ever not like this, or is it just how it works? It seems like they all end up this way, and it's really dumb.
Hardware, I don't know. Possibly always was too, I think even non-tech hardware was pushing more features as an excuse for shorter product lives back around the Great Depression, give or take a decade.
Managers now try to "extract value" quickly, leaving ruins behind them and not caring about the future as the immediate payouts allow them to stick to the "F*k you, I got mine!" paradigm.
It's slop from both sides, they're pretty obviously slopping their move to Azure, and at the same time being slammed with a Cambrian explosion of slop repositories.
Too bad it's not reminiscent of the Hotmail purchase where they tried to move off the BSD servers and ended up with new accounts on the relatively unreliable Windows-based setup, and old accounts routed to the original BSDs.
Spool of Wire Guy or Wiregate refers to a viral video of a man (named Dan) telling his wife (Cindy) that a spool of wire he's had for 40 years is almost at its end
The spool of wire became a prominent metaphor on the app, representing something that might seem meaningless to others, but holds sentimental and nostalgic value to its owner.
I do recall this meme and I empathize with him and also Mitchell above. It's annoying for people to not understand your feelings or make fun of them especially if they're reflections on years past.
That is indeed a dangerous slip. I hope yours wasn't an Apple machine. Warranty might be an issue, because even if just one key got soiled, they will propose you should replace "practically" the entire machine (or rather make you; because well, replacing just that exact part that was damaged would be less expensive and hence less efficient and environmentally unfriendly).
On the other hand, not at all ridiculous; dramatic yes. I almost felt sad when Orkut shut down. Almost. And around the time XMPP/Jabber stopped being like email when Google/Fb pulled the plug. Can't remember whether it was at the same time. I became numb to such fast and slow metamorphoses a long time ago and I feel sad about this numbness. It's a forced cynicism I'd say. These are such inane corporate events/changes and yet these are so deeply embedded in our lives. Without check and any power over them. So perpetual cynicism works.
PS. I really found Ghostty to be cool (and fast!). Sadly, I reverted to stock Terminal, not because Terminal is as good, but because I no longer have/had much terminal usage (until I get back to work/coding again, and I hear things are happening in the terminal a lot more again with our world's new coding toys, LLMs, and whatnot). I also heard you on a podcast recently, and it was very interesting, and since then, I want to try Ghostty again, without even a real need for it yet.
To be honest, the blog post is quite a lot of self-indulgent waffle. But I forgive you for that, "each to their own", as they say.
What I won't forgive you for is writing such a long blog post and then completely missing the bottom-line.
Do not write "I'll share more details about where the Ghostty project will be moving to in the coming months".
If you're going to make me read such a long blog post, then at least have an answer ready-to-go for the critical question that everybody is going to ask !
I read the post yesterday, and read it again today before commenting, and it's not really self-indulgent waffle.
Ghostty might be an open source and free product, but that doesn't mean that Mitchell in particular, that works on it, treats it any differently to how a for-profit company would treat its own software.
If you're using a SAAS that offers a product to both companies and individuals with the same feature set, and it's uptime is anything less three-nines, it's not fit for purpose.
Frankly, I'm amazed companies aren't walking away and giving the same reasons.
There isn't inherently wrong with loving a tool or been sad when it it becomes something you can't love anymore, we are tool using monkeys after all - it is perhaps our defining characteristic.
I'd be absolute crushed if Linux (for example) morphed into something I could not/no longer wanted to use, part of the reason I use open source wherever I can is because that is less likely to happen, Inkscape is still inkscape nearly 20 years after I started using it, so is Gimp, so is KDE, they've all changed but the essence of them is still the same (so has Linux).
KDE's hard-switch to Wayland broke so many things in my workflows, from what used to be a perfect system.
For keyboard expansions espansso/ydotools crash bi-hourly and I couldn't pinpoint the source, clipboard sharing between applications doesn't work anymore, global shortcuts have been limited... The essence is the same, but it is so broken that it has a real productivity impact that will require a lot of effort to correct, and would depend on upstream fixes...
Nothing stupid about caring deeply about tools that shaped your career. GitHub wasn't just a SaaS for a lot of us it was where we learned to build. The fact that you're emotional about it says more about how much you gave to that platform than anything else.
Ghostty will be fine wherever it lives because people follow the project and not where it's hosted. Best of luck!
So true! This quote from the blog post really hit me:
> Since then, I've opened GitHub every single day. Every day, multiple times per day, for over 18 years. Over half my life. A handful of exceptions in there (I'd love to see the data), but I can't imagine more than a week per year
How could you not feel this way about a tool you willingly use this much? Perhaps if your employer is forcing you to use it, its different. But maintaining OSS? that's a labor of love. How could you not get emotional?
I feel you mate. When people were scrolling Facebook, I was scrolling github, being so excited to see so many people building things together. Commits popping up in my stream were making me feel we were improving the world, bit by bit. It was an happy stream, compared to the depressing stream of Facebook.
And then Microsoft bought github. And I knew it would only be a matter of time before it would fell down. It also made little sense to build all our beloved open source projects in the living room of the entity who was so harmful to our community for years.
So I left github and joined several gitlabs. But I never found back this central steam of "look at open source being made in real time". We need a decentralized gitlab with ActivityPub.
We weren’t even in the same circles and this was my first good conference, but my own little company that I worked at was full of motivated hackers that were trying to wrap our heads around what you already understood.
You took my comments about on-boarding and documentation very humbly and you knew what I was really saying was: keep it up.
You sure did keep it up.
Those same team mates are here with me using TF at a different company years later, and we’re still pushing left.
Those colleagues just said “it’s art and science”
… and when the art gets ripped away from you, what you described is a natural reaction.
> Its given me so much and I'm so thankful for it. But, it's not what it used to be. I don't know.
Mitchell, when I was in 10th grade and had to pick my streams which led me to pick comp-sci/stem rather than finance (I am going to college soon), I thought of my dream life and it was being on a vacation/beach using Linux or terminals and opening github and contributing to open source software. I simply couldn't imagine my life without terminal (funny because ghostty is the terminal that I use)
You said that you have been with Github for 18 years, that is longer than the time I have been on earth. You were (and in some sense are!) living my dream life in that sense and github fulfilled its role, it had helped you until recently when it has started to get worse and worse.
my point is you have an special bond with github and for good reason,so to remove an somewhat integral part of all of this (github) after so long will have emotional feelings and outbursts.
I hope that you are doing fine, Ghostty/your-work has a positive impact on my life and gives a hope by being a relaible tool I rely on, I wish nothing but the best for Ghostty and you personally.
I am an early GitHub user with low 6 digit user ID (joined around 2011 with a two letter handle). I approve Mitchell's message.
It's been painful to use GitHub these days, user experience practically went down the toilet with ridiculous pains like CVEs [1][2], slow and ineffective and expensive GitHub Actions that doesn't allow local execution instead a "push & pray" workflow leading to repetitive "commit-push-wait" cycles to debug CI errors or bugs and then the absolutely horrendous Arkose Lab's Octocaptcha[3][4]. Note that only new users are encountering the Octocaptcha at account creation time, the amount of the time I wasted on solving these ridiculous visual or audio captchas are insane. I happened to need to create 3 separate accounts for the orgs that I am consulting for recently, each time it was at least 20-30 minutes to go through the account creation process. Sure it blocks some AI bots, but can't GitHub team create something that doesn't hinder the user experience?! Oh, if you have uBlock Origin or Privacy Guard on (which I did), it will take longer because each failed answer will set you back for another 5-10 mins of puzzle time!
Plus the reliability issues that Mitchell mentioned. Mona the Octocat jumped the shark in 2026. RIP.
The same thing happened to Twitter. All the online properties we used will be gutted and sunsetted eventually. The only thing we can do is move on and slash and burn a new pasture.
This is more than a SaaS, for you and the others. Stating kind of the obvious: without it Vagrant, Terraform and heck, even Hashicorp would have not been the same - or probably even existed. Despite probably being a later user of GitHub I share the same feelings. It's so sad to see GitHub, a product and company I once respected a lot, getting trashed by Microsoft and all of these outages.
> I truly love GitHub, and I hope they find their way.
I jumped ship as soon as they added MFA. I vibe-coded my own raw Git repository reader to help consolidate my other repos (BitBucket, GitLab), which inevitably started to impose more restrictions (disk space, MFA), as well. It's no GitHub, but works, doesn't cache, and is pure PHP.
I hope this doesn’t come across as making fun, but it had never occurred to me that GitHub could be anything more than a tool for hosting my source code. So if you had written this same piece about all the good times you’d had in Windows Explorer, I’d be no less confused.
Can I ask what was there that made you visit the site for anything other than reviewing pull requests and issues?
It's probably not GitHub as such, but the associated memories and experiences. You never miss a place, you miss the feeling of happines you had when you were there, or the people you spent time with there.
People get emotional over a car, over a house, over a pet... you could argue for everything it's just a car/house/pet... you can get a new one.
I don't think it is dramatic. I felt a similar sadness around this subject. It's the meaning behind it: the hacker spirit, the naive curiosity, the juveline freedom, being destroyed by the corporate machine. It is a small metaphor that hits all of us in different spots.
We all understand that. We had some piece of software we still cling on to it (in my case is a copy of paint shop pro 5, corel draw 7 and Delphi 7), despite being completely obsoleted or assassinated by "big industry". I could add CoolEdit 2000 to it, but havent really opened it in a decade.
To be honest, I never understood the fascination with github. Its a hub, of git repos. Not to piss on your parade, because your complaints are valid, but maybe isnt github that as gone sour as much as you have grown out of it. This was your passion, now its over and you move on.
I felt pangs of emotion reading the post so it’s definitely not just you.
I think because GitHub has been such an important part of my life dating back to the very start of my career - just like you.
And it’s not just the technology, it’s the people. All the great projects there. The countless README’s I’ve dissected trying to setup something new. There’s people behind all of that and that always felt exceptionally meaningful to me.
It has been profoundly emotional to watch GitHub degrade over the past year. It’s almost like watching someone you love slip away. Which I have also done. It’s not the same, but there is something familiar in the pain.
Meanwhile streamers dunk on it in YouTube videos and on X and none of it is funny to me. It’s just tragic.
I find the decline of these things upsetting too. I don't know if it slots into enshittification specifically, but there's a phenomenon of decline in general that's so antithetical to where my career began and what I thought was possible. I want to believe we can do better, and ideals can still matter in software.
And I mean, they clearly can; your own contributions are proof of that. We can all do better and the decline isn't a prescription we all need to follow. Regardless, it's tough to watch. Github used to be such an exciting and promising platform.
I'm interested to see where you land the project at post-GH. The platform has just not grown in the ways I had hoped and their reliability has been a real issue for awhile now.
I would hope they would prioritize stability and features that devs have been asking for but it seems like that is not where their focus is at.
Wow, thanks for your honesty here. I'm commenting primarily to commend your decision-making which I couch in empathetic understanding.
I saw your post and immediately thought, "good, surprised it took {any organization leaving github} this long." I don't hate big M nor the 'github ecosystem' (except maybe github actions, which seems to get 10x the attention it deserves); the challenge is I perceive far better solutions to be chosen which would serve the open source world if we simply deploy a slight increase in cognitive energy.
Whoever makes fun of you over it is exactly the people you want to avoid.
Leaving any emotions aside, all the arguments you gave are technical and carry weight: we are not always in the mood for OSS work -- or even have the time and energy, which happens to be the much more oft limitation -- and when we are, we want our infra to just work. If it does not, that might kill your motivation for a week. Or a month.
For an OSS contributor, the main one even, this is actually bad news. You are doing both yourself and your community a big service by making this difficult decision.
It's a fair writeup and your thoughts are valid. Businesses have to continue to re-earn customer trust each year - especially when it's mission critical and they expect recurring revenue. I hope they find their way too.
If you're still considering vendors, I think you'll find some of the keep it simple ethos can still be found among OSS friendly vendors -- Codeberg, etc. Good quality & uptime doesn't have to be expensive - just grounded by people that care enough to reject the scope creep and focus on doing one thing well.
I'm sure others have probably said this, but I'll say it anyways. Give Gitea a try. This is what I do. I self-host all my projects and mirror them to Github if they are public projects. And I have distributed Gitea runners across my various servers and they just work and my pipelines never fail me. I'd also highly recommend GitLab CE for similar reasons. But, if you really don't want to self-host, GitLab proper is also awesome and way better than GitHub IMO.
"Lately, I've been very publicly critical of GitHub. I've been mean about it. I've been angry about it. I've hurt people's feelings. I've been lashing out. Because GitHub is failing me, every single day, and it is personal. It is irrationally personal. I love GitHub more than a person should love a thing, and I'm mad at it. I'm sorry about the hurt feelings to the people working on it."
And I think that you and GitHub went through the stages of life together. They probably weren't exactly parallel, but I bet you measure and remember your life through GitHub's life to some degree, along with the projects you had there.
There's no question that with your drive and acumen that you could build the GitHub that you both had and want. It might be your next chapter.
I think people today think that compartmentalization is easy but sometimes in life your work and personal life and everything else gets all mixed up and you get situations where others might call it unhealthy but for you, it’s fine ante it’s how you want to live your life.
That’s just to say that crying over GitHub is fine, you’re a human, we cry over all sorts of stuff. Emotions are weird and you should not feel badly for having them.
You really, really do. Please, for your own benefit, take a step back and touch grass, literally. There is so much more to this world than Github of all things.
> Every day, multiple times per day, for over 18 years... During my honeymoon while my wife is still asleep? Yeah, GitHub
Yeah I agree. I'm not going to pick on someone for having an unhealthy relationship with a product such that they get weepy when it goes downhill. But I do hope he recognizes how unhealthy it is, and works to improve that.
It's good to care about these choices. There are also lots of ethical reasons to leave GitHub, and this makes it easier for people to choose to leave on those grounds, too. Every time people talk about their decisions and normalize anything that's not just having a monoculture where there are no competitive markets and monopolists control entire ecosystems, that's a good thing.
I got kind of emotional when I left Reddit a few years ago during the API drama. Moderating for years, participating for like 15… it’s hard to not feel emotionally invested in that. Sure one could simply say “it’s just a website,” but obviously it’s more than that.
> GitHub only gets better if people who give a shit stick around to make it better
Quote the opposite. We need to leave so they receive the message in order to fix it. As far as the suits know, life is swell. So much so they can't keep up with demand. Be sure to say why you are leaving too, so they know what to fix.
It's not a stupid thing - GitHub not being serious about basic reliability is, at this point, a big risk to people depending on it for change management, much less OSS projects needing it to do every aspect of work in the public.
GitHub made working in the open a joy. It's very sad the state that it's in.
I love the ideas and motivations underpinning Github's creation. For a long time Github was the best instantiation of those ideals. Maybe not so much anymore. Transitions are always the most difficult but they often result in new perspectives.
One of the biggest gifts in life is to find a true passion. And for every passion there are two sides to the coin - the joy and the suffering. The agony and the ecstasy. It’s a gift to care so much; and it inspires.
Thanks for all your open source work. You changed the industry for the better. Are you thinking of building a Github competitor? I would find that very appealing.
I don't have much of an opinion about Github, but I just want to add that your feelings are valid. It is not a stupid thing and I hope nobody is making fun of you for crying over it.
Do you think this is endemic to large software organizations today, or are our needs (and the corresponding complexity) just outstripping the ability of old business models to address it?
People who reach outlier-level success in a field tend to have strong opinions and an emotional connection to said field. It’s probably a non-trivial part of why they are so successful.
I'm a bit lost about the problem. Is it really about crying about outages? I'm aware of enshittification issues in the broader tech field but the post and this comment don't really say what the problem is. If this is supposed to be some kind of signal and wakeup call, more info would help. For context I'm a lightweight Github user for over a decade, mostly putting up personal projects without much collab, and opening issues in other repos when I find bugs, just cloning and forking stuff (mainly in the machine learning community, but also in general Linux tools). For me it works okay enough, compared with the overall landscape of SaaS. I'm not a fan, don't feel any loyalty and my expectations for user abuse from big tech are admittedly pretty abysmal by now. I'm just not seeing what specifically happened with github to trigger this.
You mean being affected by the constant outages that make the product literally unusable? If you were doing any serious work with it you might understand.
Thanks, I thought there was some other kind of flareup recently. This seems like bog standard service provider stuff. When my Vodafone internet connection has a lot of outages, I switch to another ISP. Same here. No need to overdramatize it. Use GitLab or whatever else.
Damn GitHub is at a new low. I wish GitHub wasn't overtaken by the AI agents and hoped that the situation would improve. But it just didn't and ever since Microsoft took it over, it was just run into the ground.
I thought that GitHub was so unreliable that it would be better to self host instead of use the service [0]. It turns out that 6 years later, that was the case and it doesn't sound crazy anymore.
The problem is GitHub was neglected and the AI agents ran it into the ground and we need to now self host.
No man, I'm with you. I remember when GitHub was a joy to use. Finding new niche tools and projects written by people who actually cared about their work. Needed some simple postgres backup script? Browser GitHub and plenty of people put time and effort in creating something that actually worked.
I was talking about the same thing just yesterday. GitHub with its friendly mascot is no longer. It's now just another SaaS platform that everyone including my non technical colleagues are using. Their push towards everything-AI is the exact opposite of what they stood for in the begining. A community of like minded people who wanted to build great tools and loved software. But yet no longer. GitHub now feels like a soulless SaaS that's trying to hook my onto an enterprise subscription and bring my whole team along so we can all do some agentic coding or whatever.
Github won't shed a single tear in return, hell, they probably didn't even know until this came out. And not to sound harsh, but they probably don't care either. If they don't 'find their way', then there are 10 different competitors ready to take over, and I hope some of them do. Better for the ecosystem to have a strong element of competition. Perhaps their time as top dog is ending, and it's only natural, nothing lasts forever, especially in tech.
So far everything is going according to the plan. Humans are really close to make the AI that will replace them and enter into the next phase of the plan.
Or do you have a better idea of what the plan exactly is?
You mean the AI that might fail and suck every last ounce of entropy or life out the planet and sufficate it? Have you seen the insane amount of natural gas being burned to power it? Obviously I'd love if AI solved its own energy crisis but that hasn't even begun to happen yet. You think it will invent cold fusion? Room temp super conductors? Solar cells past our theoretical limits? Do you realize it's literally being controlled by human greed?
What about P vs. NP? Is auto-complete able to create P solutions and then perform NP verification by interacting with experiment or calculation IO? Couldn't it test solutions faster than a human on problems with massive solution spaces like folding proteins or aligning electron-hole pairs?
You have been a tremendous influence on my professional life. Vagrant made VMs easy to use. You were very gentle with my Vagrant PRs. We disagreed a bit and I migrated some of those rejected Vagrant PRs into VeeWee. Then Hashicorp happened and I was over the moon. (Full transparency - not everything was perfect, I lost 50% of my Hashicorp equity which hurt real bad but that's not your fault, just saying there were ups and downs!)
This is all to say I have tremendous respect for you. Which is why I say:
You also have the resources to fix this. You not only have the resources and skill Mitchell, to make it happen - You know everything that it takes to be the CEO of a Billion dollar unicorn - you have the connections, you have the vision.
More importantly, Mitchell, you care.
Make it happen. You have done it a few times before. Do it again.
In a reductive sense, yeah it's a bit silly. But zooming out, I can understand. Sucks to have your hand forced. Sucks to be let down. Sucks to watch something that was great fall from grace.
Thanks for Ghostty, been my daily driver for awhile now. Hope the rest of your day/week goes much better!
People will comfort you about your emotions and your tears and then tell you you’re wrong to feel sad about it. They’re lying to you. Your instincts about how you feel are completely correct.
The reality is it is a bit irrational to love a saas so much and cry about it. I’ve been using GitHub as long as you and I feel nothing for it. To most people moving off of GitHub is a huge hassle, an annoyance rather than a tragedy.
I think the biggest damage is the project visibility. Everything else is more of an annoyance.
Bud. Right decision. Time is a forward moving arrow. You gotta do what's right for the project and over the years I've rarely seen your decisions going against the stream.
It's not stupid to share your emotions towards a platform you've grown passionate of, especially when since Microsoft's acquisition, the platform has become enshittified, and now, vibe coded to an extent that there is not a single week where there are no issues with the platform.
Hey bud, thanks for the honesty and I feel your pain! You're an incredible engineer and I've looked up to you (even though we are the same age) since hanging out at Kiip. Our tools should be getting better not worse. Hopefully your influence can be a canary in the coal mine to make some real change to reliability. -D
Naw I did the same after I got "piled" on at Metafilter a few years back, and after 18-years buttoned my account because I was sick of the toxicity (I am an ancient BBS/usenet guy from decades ago - I can handle "flamewars"). I am pretty "left-leaning" liberal, but the "purity tests", insular nature and extreme "wokeness" that place has turned into has basically ruined it. They have monthly meta discussions/threads on why they are losing attention/participation, yet they don't seem to recognize that they drive people away.
Back to Github... I wonder how much of the "enshitification" can be tied to the acquisition and corporatization by Microsoft... (I am going to guess "alot")
No serious person would make fun of this emotional reaction. It seems technology had something going on, and it quickly got flooded by incompetence and greed.
We have all been deeply involved, constructed careers and sharpened our tools with technology and hopefully for the benefit of technology.
I can only imagine how deeply sad the current state of software is for those talented individuals that helped to carry it to here.
Some of us can at least hide it with cynicism because there is not much at stake, but emotional honesty is very much appreciated.
There is absolutely nothing normal or healthy about being so attached to a source control repo that you cry when you replace it. I'm not saying OP is right about testosterone levels (how the hell would I know, I'm not a doctor), but everyone telling Mitchell "it's ok to feel things" is doing him a grave disservice. He has a very unhealthy attachment to Github and he needs to work on it, not have people validate his unhealthy behavior.
> it's 100% fine (and healthy) to care about things in life.
Yes it is and I didn't claim it wasn't, so this is a strawman.
There's nothing personally indicting about having low testosterone. It's relatively common and it's potentially a serious medical condition. There is no reason to take offense from this.
> I wanted to add a counter to that and say they are very normal and support them rather than suggest they go to the doctor.
I don't see a reason to counter anything I said. I offered neutral information that may help the OP. If the OP's testosterone levels are indeed low due to a serious medical condition, then you've just done them a major disservice. Even if you're of the opinion that it's normal, it's reasonable for someone else to assess that feeling sadness to the degree of provoking tears in response to deciding not to use productivity software is a cause for concern.
The point I was making in my initial reply was in response to the trivialization of what someone else cares about ("sad enough to cry over productivity software"). That to me is by definition judgmental.
I don't believe there is a universal list of things that is OK to care deeply enough to cry about.
There are plenty of things you would cry about that I would not, but I can understand why you would care deeply about those things. Or maybe you are of the opinion that crying isn't allowed at all. Which is also an opinion.
My use of "judgmental" was to communicate that my intention was not to pass judgment on his worth as a person or his worthiness of respect as a person or professional in me providing honest feedback about his behavior.
> I don't believe there is a universal list of things that is OK to care deeply enough to cry about.
It's not about prescribing when it's OK to cry or trivializing what he's sad about, it's about deviations from average behavior. The vast majority of emotionally well-adjusted men usually only cry at the death of a loved one or during a divorce or serious break-up. Here's data on that: https://yougov.com/en-us/articles/51961-the-who-what-where-w... To find yourself crying in a situation different from those situations should raise a red flag. Yes it may be the case that it's not a sign of anything serious but given the rarity of the situation, it's reasonable to suspect there may be something else at play, e.g. low testosterone.
Tools can be frustrating. We can get emotional with tools we appreciate and we grew up with. But we should also learn to not focus solely on work efficiency. As you say yourself, this is unhealthy. You've labeled it, now work on fixing that unhealthy relationship with work, and with that tool.
Nobody should be in an emotional turmoil because they can't do a PR in a 2h window during a day.
We should all learn to take things more slowly, because our current accelerationist society is detroying the planet, and is destroying social ties.
Because, if you get that emotional from on a non-functioning tool... wait until you discover how our non-functioning democracies allowed for a genocide to happen in Gaza, for people in the south to be doing slave-work for our AIs to satifsy people in the north, etc
Well, I originally used C23's #embed directive (https://en.cppreference.com/w/c/preprocessor/embed) but GCC in Nixpkgs doesn't support C23 (or I'm holding it wrong) so I dropped back to this. The better long term solution is #embed.
I've definitely used C23 via Nixpkgs long ago at this point, did you use the `gcc` package and `-std=c23`? Both unstable and 25.11 should support it on all currently packaged GCC versions.
Im touched that “Ghostty but for X” is a marketing point but what does it mean in this case? I thought this might be based on the architecture I did for Ghostty. But it’s not. Or it might be full native UI, but it’s not (it’s GPUI). Not trying to be rude or unappreciative but as the creator of Ghostty here… what do you mean?
I’m curious about the overlap between people that want a keyboard driven experience, but also would prefer a Mac-native GUI rather than a TUI or a vim / emacs distro. Seems like a very narrow audience to aim for.
Welcome to the club. It’s like when people say “Bloomberg Terminal for X”. You just can’t really say anything because everyone knows it’s not Ghostty, based on it or will ever be it, but it’s about the vibe… and if you then chase after them, it only serves as free advertising :)
Note in Ghostty 1.3 we disable discretionary ligatures (I think dlig/calt) by default as recommended by font standards. We still enable liga though that usually contains far less controversial ligatures.
I'm the original creator of Ghostty. It's been a few years now! I don't know why this is on the front page of HN again but let me give some meaningful updates across the board.
First, libghostty is _way more exciting_ nowadays. It is already backing more than a dozen terminal projects that are free and commercial: https://github.com/Uzaaft/awesome-libghostty I think this is the real future of Ghostty and I've said this since my first public talk on Ghostty in 2023: the real goal is a diverse ecosystem of terminal emulators that aim to solve specific terminal usage but all based on a shared, stable, feature-rich, high performant core. It's happening! More details what libghostty is here: https://mitchellh.com/writing/libghostty-is-coming
I suspect by the middle of 2027, the number of people using Ghostty via libghostty will dwarf the number of users that actually use the Ghostty GUI. This is a win on all sides, because more libghostty usage leads to more stable Ghostty GUI too (since Ghostty itself is... of course... a libghostty consumer). We've already had many bugs fixed sourced by libghostty embedders.
On the GUI front Ghostty the apps are still getting lots of new features and are highly used. Ghostty the macOS app gets around one million downloads per week (I have no data on Linux because I don't produce builds). I'm sure a lot of that is automated but it's still a big number. I have no telemetry in Ghostty to give more detailed notes. I have some data from big 3rd party TUI apps with telemetry that show Ghostty as their biggest user base but that is skewed towards people consuming newer TUIs tend to use newer terminals. The point is: lots of people use it, its proven in the real world, and we're continuing to improve it big time.
Ghostty 1.3 is around the corner, literally a week or two away, and will bring some critically important features like search (cmd+f), scrollbars, and dozens more. In addition to GUI features it ships some big improvements to VT functionality, as always.
Organizationally, Ghostty is now backed by a non-profit organization: https://mitchellh.com/writing/ghostty-non-profit And just this past week we signed our first 4 contributor contracts to pay contributors real money! Our finances are all completely public and transparent online. This is to show the commitment I have to making Ghostty non-commercial and non-reliant on me (the second part over time).
That's a 10,000 foot overview of what's going on. Exciting times in Ghostty land. :) Happy to answer any big questions.
What has it been like witnessing terminal emulators make such a huge comeback with the advent of Claude Code et. all? I remember comments here in the early days of Ghostty along the lines of "Why is he working on a terminal emulator? We need people working on future problems, not the past!" Pretty funny considering I regularly hear people say they are in the terminal more than the browser now. Crazy times!
If you told me 3 years ago that terminal usage would _increase_ I would've laughed. Beyond that, I'm now having regular conversations with the frontier agentic coding companies (since they're far and away the largest terminal users at the moment) and if you had told me 2 years ago that that would be happening because of a terminal, I would've laughed even harder.
Wait, really? So I’ve used the terminal for everything for decades, and now, because of vibe coding, all The Kids have joined me? I don’t even know how to feel about that. Better terminals are nice though.
Right? It’s been kind of funny watching everyone “rediscover” the terminal and I’m over here feeling like a true graybeard “silly kids, I’ve been here the whole time.”
What’s old is new again is apparently just as true in tech as it is in fashion.
It's because the web developers who destroyed the web are now taking their mess with them into more obscure places, such as terminals, hardware and AI.
That's probably why it is so hyped up as it is right now.
The HN zeitgeist has something of a love/hate relationship with the web, I've noticed. HN in general seems to skew a little older than a lot of online communities, so a lot of HN users were adults back in the early days of the web/Usenet/etc. There's a tendency to view those days with nostalgia, leading a lot of people to feel like the "good old days" of the web were "ruined" by the modern shift into more interactivity, fancier/prettier design, etc. And "web developers" are the ones proximately responsible for the shift, so they get the hate too.
I laugh every time I see someone on HN asserting that the web "shouldn't" be used for anything beyond "documents and lightly interactive content", which is not uncomment. There's some real old-man-yelling-at-clouds energy there.
It basically boils down to: (a) 90s web developers tended not to have computer science backgrounds and weren't aware of fundamentals -> (b) when js frameworks exploded in popularity and diversity in the 00s, there was much wheel reinventing, because those developers (and to a lesser degree framework inventors) were often ignorant of wheels -> (c) there are persistent, fundamental mistakes* in the web ecosystem that could have been fixed at the start if anyone with experience had been asked.
All of those people are now the vibe coders of the 20s, and it's going to end up in the same dumpster fire of 'Who knew it might be a good idea to cryptographically sign and control library packages in a public repository?'
* Note: I'm distinguishing things going sideways despite best intentions and careful planning from YOLO + 'Oops, how could that possibly have happened?' shit
Have you used the web recently? It’s a mess. Most sites don’t actually work well. Everything is slow and bloated and ad-filled, pulling hundreds of megs from hundreds of hosts to display a single page covered in popup alerts, subscription begs, cookie warnings, and paywalls.
I think terminal workflows are intimidating for a lot of people, because the discoverability is lower than GUIs. You can't necessarily intuit how a CLI works, you have to read the documentation or watch a tutorial, which my 10 years in the IT industry has taught me a big barrier even for really experienced SWEs. The new coding TUIs are a more gentle introduction to that.
> ... because the discoverability is lower than GUIs.
The UI paradigm created by the emacs transient package [1] can improve the discoverability of CLI commands significantly. It's one of the components of magit, the famous git frontend, that makes it so awesome. It's discoverability is very close to that of GUIs and somehow even more pleasing to use than GUIs. I wonder if someone is trying this on terminals.
I remember the first time I heard a girl use the word "lol" (early 2000s) and thought to myself: Normies have hit the internet.
I've used a terminal as my main interface FOREVER, and I'm amazed that people are joining this healthy habit of interacting with the computer as CREATORS.
/* Claude Code is the strongest case of the return to the mainframe: a closed, bespoke, paid service that nothing locally run compares to. Terminals are just a natural part of the mainframe world! */
What's it been like managing a fairly large project with Zig? I know you've spoken highly of the language in the past, but recently it seems like Zig has been through some substantial changes that would be relevant to a terminal emulator. I'm curious how painful the churn has been for project maintainers.
It's been extremely good. I should really blog about it in more detail because I do get asked this question regularly. It's been very good.
The large language changes are a burden, but it's something I knew going into it. And so far in every case, it's been well worth it. For example, 0.15 introduced the std.Io.Writer overhaul, but I really love the new API. I haven't started the std.Io change yet for 0.16. We'll see. And honestly, LLMs make this all way less painful... even though they're not trained on it, agents are able to run builds, reference docs, and work their way through the upgrade with huge success.
I thought that finding contributors would be an issue, but it hasn't at all. There's a lot of people out there eager to use Zig, the language isn't hard to learn (as long as you're already familiar with systems concepts), etc. It has been good.
I'll think about more to say if I write about this more but overall, I'm very happy with the language, the community, and the leadership. All good.
That's super interesting to hear. I see people say all the time "oh I would never use it in a big project because it's changing so fast", but then see awesome projects like Ghostty and Tiger Beatle written in it, so clearly they're doing something right.
I'm surprised to hear LLMs have been helpful. What little I tried to use them for with Zig, all the information was way too out of date. But I was mainly just doing research, not running an agent at the time, so that's probably why.
Yes, LLMs with Zig are absolutely useless without agentic behaviors. Throw an agent in the mix and it's totally fine. Bonus points if you pair it with some basic agent skills so it knows how to look up language references, stdlib files, etc. then it does even better.
I'll have to give it another try the next time I play around with Zig. I decided to let all the big changes with IO and what not play out before diving back in lol.
I've been slow on the agent pickup. The ethical issues really bother me (LLMs in general), though it's clear I'm not gonna have a choice in this industry so I've been caving recently. The persistent narrative that agents can build entire complex software systems is also irritating, because that clearly doesn't seem to align with reality.
Would you mind sharing or pointing me to any links that explain how you've set up Zig to work effectively with LLMs using agentic features?
I was thinking that downloading the full official documentation, separated by sections inside the repository someone is working on with Zig, could be useful, but maybe there are more optimal ways to approach this.
Do you get frustrated in using a low training data language like zig with AI models? I've noticed that models tend to be better with languages like TypeScript than Swift because of issues like that.
Yes, that's it. It came about after writing a small TUI for a friend to back up their Vimeo library. They liked the simplicity and speed but not having to use the shell. Didn't want to install Ghostty either.
My brother has built a game using python on the CLI and I've been trying to find a way to package it. Your project seems very promising for my use case.
Project mentions Windows compiles but isn't tested. Do you have a gut check on what issues there might be?
I think it may actually work. It's just that I only have a VM to test it on, and it does not support OpenGL. I got it to compile and run, but it crashed on that VM limitation.
Feel free to open issues in the repo, I'll find a way to get a Windows machine if there's interest.
You can also email me at `trolley [at] wands [dot] is`
Coincidentally I was just listening to your interview with The Pragmatic Engineer [1] this morning. Loved hearing the stories of early days at HashiCorp, taking it public, and the near-miss with VMware.
It also got me wondering how things would be different if you haven't crossed paths with the guy who unplugged your mouse :) It's fascinating how life is full of these small yet defining moments. We don't always appreciate them right away, but beautiful to look back.
Thanks for Ghostty! It has been my daily terminal driver for the past year.
I was also just recommended this interview on youtube. honestly it makes sense if the algo decided it was the right time to recommend this video and resultantly this post is making it's way to front page of HN
I subscribe to the channel, so I had already downloaded the episode. But glad PE is getting some algorithm-love; it's a great channel/podcast. Gergely is a great interviewer.
Thanks for all the work you do! I had used terminal just a few dozen times before November — and now i am in terminal more than any app (even more than the web browser).
It’s common for me to have 15-25 different terminal windows open for using Claude code. I shifted to Ghostty because I was looking for more features.
Unfortunately, none of the features I wanted are available anywhere (though I’ve come to appreciate Ghostty anyway). Here’s what I had wanted:
1. Basic text editing features (ie click to place cursor in the text input field; highlight to delete)
2. Change colors or fonts mid session (to make it easier to find particular windows)
3. Window management and search (eg, a way to find my windows when I lose them and to otherwise control them)
Apparently, it is really hard to develop features like these for terminal emulators. I’d love to understand why…
The next release includes a way to use a command palette to search for and jump between surfaces (windows, panes), which sounds like it partially addresses your third point. I had a small hand in it, by building the initial UI for the Linux version.
IMO this isn’t the job of the emulator. You can do this all in `tmux` for example.
As for editing text, ghostty+tmux most definitely supports editing text with the mouse (even an in terminal right click menu!) although sounds like your intended use of select to delete isn’t common so you’ll need to do some customizations.
What makes you say that isn't the job the emulator? Sure it is. In fact, tmux itself is a terminal emulator that you just so happen to run inside of another terminal emulator that you want to multiplex.
I’ve been using scroll back search for 15+ years with Terminal.app and iTerm2, and there’s no way that’s not the job of the terminal. You don’t know how good that is until you use it.
Now that Ghostty is part of a real org, is there any way people can sponsor specific features/bugfixes? I've been waiting for drag/drop to be working on KDE before I make the switch, and I'd be happy to pay for a fix.
> the real goal is a diverse ecosystem of terminal emulators that aim to solve specific terminal usage but all based on a shared, stable, feature-rich, high performant core. It's happening!
I recall the package manager war of Haskell between "stack" and "cabal-install":
Users would have strong opinion depending on their background.
But the developers eventually made both projects use the same libraries.
Both tools allow for ghcup to manage the compiler, so there's no conflict there.
The difference is eventually just a frontend experience, and all the heavy lifting and synergy is achieved behind the scenes.
I would not have believed the same is possible for terminals, even cross-platform, so thank you for having this vision.
The real goal isn't for Alacrity or Kitty or WezTerm or any other terminal to use libghostty. I think over the long term, terminal emulator user bases dwindle down to niche (but important) use cases.
The real goal is for higher-level tooling (GUI or browser) that utilizes terminal-like programs to have something like libghostty to reach for. I think this represents the much, much larger ecosystem out there that likely touches many more people. For example, Neovim's terminal mode, terminal multiplexers, PaaS build systems, agentic tooling, etc. You're seeing this emerge in force already with the awesome-libghostty repo.
libghostty would still be useful for traditional terminal emulators to replatform on, and for example xterm.js is seriously looking into it (and I'm happy to help and even offered their maintainer a maintainer spot on libghostty). But, they're not the goal. And if fragile egos hold people back, it's really not my problem, it's theirs.
As an outsider to the fascinating world of terminal emulators... can you explain why this might be? Rather, what about `libghostty` would be off-putting vs `libtermengine`?
Just that it's a specific "product"-y sounding name? Would you also be concerned about "libwayland" vs "libcompositor"? Genuinely curious: this seems like an insightful question, I just don't follow the reasoning.
Disclaimer: I am not the maintainer of anything terminal related, it's just an intuition.
Let's say I'm the creator of ghostty "competition".
The fact that is has the same name, could feel if I change that:
- Maybe my users start thinking why don't I use ghostty instead
- Will the maintainers of libghostty chose more oriented to ghostty than for my terminal?
It's a half assed analogy, but think if Google's V8 would be called ChromeEngine instead of V8.
Many thanks for everything. Without Ghostty I wouldn't have been able to create https://github.com/rcarmo/webterm and have a decent browser-based terminal that works the way I expect it to.
Having incorporated libghostty into my current web-based project, I can't say enough thanks. I've lived in the terminal since 2003, resisting IDEs, VSCode, everything because I'm a die hard Vim + tmux guy. Vibe coding coming back to the terminal, and being able to use libghostty to facilitate that is a serious vindication of my steadfast resistance to move away from the terminal.
I'm sure you feel the same watching Ghostty become what it has. Big thank you.
mitchellh: What is the current thinking WRT adding client/server functionality (like built-in tmux+mosh)? I recall you talking about it on the Changelog podcast, and that would be a killer feature for me; I really make a lot of use of the wezterm equivalent, it's so nice having first-class UI windows rather than tmux's faking of it.
Just to clarify, it's more about the ability to run a terminal on my Linux box and connect and disconnect to it from my Mac that I'm looking for. Wezterm does a good job of this. Previously I was using tmux and mosh and Nebula, and that worked really great for reconnecting (I almost never had to reconnect, it just stayed live, wezterm I need to reconnect all the time, but that works reliably). But copy-paste with tmux is meh.
You're one of the forefront experts in terminal protocol parsing. Do you have opinions on "interceptor" applications like tmux or mosh, for example? These applications technically need to do extra upfront work (especially mosh as it transforms the entire protocol) and it's not a transparent "I treat vt100 as a black box, I put bytes in, I get well structured, standardized events out". Does libghostty-vt support that currently, does it intend to support these kinds of protocols in the feature, or is this kind of thing outside the scope of the project?
Random advice question. My brother taught himself to program and has been making a terminal-based game. What started out small has turned into a highly polished game with ascii art, sound, you name it.
I’ve been trying to figure out how I could actually help him distribute it and I keep coming back to the best option being to wrap his programs terminal output into a host process that can emulate and render it. It seems that the lib Ghostty might be perfect for the former, but not quite yet on the latter?
I don't have specific references for you, but perhaps you could look into how old-school roguelikes packaged their software for distribution. Particularly ones that made the jump to Steam or Itch?
I started using it a few days ago and then I need to find something in the terminal. But....there is no find! Why? Can you guys add it? This is such a basic and critical feature that I may have to just go back to...just about anything else.
Do you know of any Qt based libghostty front-ends? Also, hows zig for a relatively complex project like this? I like zig in theory but have always been worried about using it since it's still pretty early days
I literally discovered Ghostty yesterday when googling "best terminal macos" and surfaced a ~year-old reddit thread recommending it [0]. Just needed something other than Terminal so I could Cmd-Tab between distinct command-line work (e.g. claude code and ipython tabs). Was nice to find something that just worked
Hey Mitchell, thanks for ghostty (happy user here for a month or two). Is there anywhere I can look to see the status of the next planned release?
I've been waiting for the vim feature to hit stable, and have just been checking to see if there's a new release every so often, but I couldn't find a discussion or anything to see when it was planned.
I use Ghostty as my main TUI at work and absolutely love it. Most of my day lives in terminals, and Ghostty just feels fast, clean, and out of the way in the best possible sense.
I was a long-time Kitty user, but switching to Ghostty has been a big upgrade for my workflow. Hard to go back now. Thank you
Excited to see the further development of libghostty! It is an exciting project in this new world of being able to develop your own agentic development environments rather effortlessly. These things are possible because of projects like yours. Thank you!
Thanks for creating Ghostty! Is there a chance to have shorter release cycles? I switched to nightly because of the mem bug and search, but ideally would like to be on a more stable channel.
I just wanted to say "thank you". I switched to Ghostty over a year ago and it's been working out great. It's now my default terminal. My favorite features are responsiveness and ease of splitting panes.
Hi Mitchell, thanks for creating Ghostty. Been part of my workflow ever since I found it. Just a small question, when do you see Ghostty can fully replicate iTerm2 popular features like output copy/selection?
Is there any chance of a stable release that fixes the memory leak issue? I know I could run nightly but for something I spend all day every day using I'd much rather run a stable version.
> On Linux, the quick terminal is only supported on Wayland and not X11, and only on Wayland compositors that support the wlr-layer-shell-v1 protocol. In practice, this means that only GNOME users would not be able to use this feature.
while I agree, the comment you just replied to says:
> Ghostty 1.3 is around the corner, literally a week or two away, and will bring some critically important features like search (cmd+f), scrollbars, and dozens more
> To give a little productive criticism, one thing I really miss is when having tiled terminals, I want to be able to full screen one of them temporarily.
I think you're looking for the `toggle_split_zoom` binding which has existed since Ghostty 1.0 and is default bound to `cmd+shift+enter` on macOS which is the same binding as iTerm. It's also visible in the menu and command palette.
We recently added a kind of split title bar, making it double click to zoom is a good idea. I'll add an issue for that to the roadmap.
Can I take advantage of you being here and express some desiderata?
1. The quick terminal feature is ghostty's killer feature for me, I switched to ghostty because of it. Could we make it first-class feature? Like, i'd love to have tabs over there too (like in guake/yakuake).
2. I have a white on black theme (white text on black background) but when i split vertically/horizontally, the borders between one shell and the next are not really visible and I have an hard time resizing them... Can you do something about it? Setting the colors of borders would be an okay fix for me.
also, from not that long time ago, you can change the focus of panes and you can tell it to respect the zoom state if you want, which is super convenient
To be more specific, Open Source only promises the four fundamental freedoms (https://en.wikipedia.org/wiki/The_Free_Software_Definition).
It promises literally NOTHING else, including zero cost. Free and open source software can and should cost money! (The "free" in "free and open source" is not about money, people!)
I'm actually very enthusiastic about these OSS "supply chain" attacks that have been happening in various communities. Because optimistically I hope it'll help people realize that OSS _is not a supply chain_ (more details here: https://lobste.rs/s/cxwidw/no_one_owes_you_supply_chain_secu...). Unless you're paying your vendor AND/OR have a contract in place with them with certain guarantees, you do not have a supply chain.
One term thats in almost every FOSS license is "this software is provided with no warranty." A supply chain implies a warranty. Therefore, FOSS is not a supply chain.
reply