Live data from Hacker News

Why is GitHub UI getting slower?

yoyo-code.com

41–50 of 123 posts

Re: Why is GitHub UI getting slower?

#41
post #5

Earlier quoted context omitted.

Were they using vanilla js? That's impressive if yes.

They were, and still very much are, using web components. But they hired a team to do experiments to imagine the future of GitHub UI, and that team built everything in React. Now that team's work is being ported to the production UI.

Also as a part of their bullshit React rewrite in addition to making everything much much slower they also managed to break basic functionality like the back and forth buttons on Safari that only got fixed quite recently but for a good 9-12 month period it was impossible to use on iOS.

Genuinely whoever was a part of pushing this rewrite should have been fired.

Re: Why is GitHub UI getting slower?

#42
GitHub, Facebook, Reddit, Instagram (on the web)... All these major websites are becoming incredibly hard to use. My intuition would be "SPA crap" but I'm pretty sure you can make great and snappy SPAs. What am I missing?

Re: Why is GitHub UI getting slower?

#45
post #4

Githubs performance has been rapidly degrading ever since they started rewriting everything in React. It's basically impossible to view diffs now because they often fail to load, render correctly, or just are incredibly slow.

Everything has been getting worse since the React rewrite(s). Everything is just so much more slower and janky. And things like the "back button" keep acting weird (I reported this several times, after a long delay they fixed it several times, and it just keeps breaking a few weeks later – I've given up).

Some of the design decisions are also just baffling, like having "New Issue" in a small modal instead of just a full-screen page (only if you have templates set for some reason). Having less than half the screen being used is not helpful, and only going to reduce the quality of reported issues because it's just shit UX. Baffling. I genuinely wonder if the people designing/building this have ever used GitHub themselves (they reverted some of the other misguided "how on earth did you think that was a good idea?!" features, but not this one).

I have so many more gripes and bugs; clicking "show raw" generally works better for viewing code (or just cloning locally). It's just embarrassing. But it's all pointless to report because nothing gets fixed and it all just keeps getting worse.

GitLab was a "GitHub clone", but I guess now GitHub is turning in a "GitLab clone" by making everything a slow janky barely working mess.

Re: Why is GitHub UI getting slower?

#46

GitHub, Facebook, Reddit, Instagram (on the web)... All these major websites are becoming incredibly hard to use. My intuition would be "SPA crap" but I'm pretty sure you can make great and snappy SPAs. What am I missing?

You can? I haven't seen them.

You can indeed do so, but it requires a skillset way behind new grads, bootcamps and giving up the prevailing leadership mantra of "All engineers are fungible so just throw that random team over to learn React and it'll be fine".

Front End Engineer roles pay less than general Software Development Engineers at pretty much every FAANG and so you see a lot of FEEs want to transition. Not much senior talent gets kept in that kind of pipeline.

Re: Why is GitHub UI getting slower?

#47
If you just need a place to store your code, self-hosted Gitea is very easy.

Your discoverability will drop to close to zero, and Actions are trickier to set up. Plus, you'll have to come up with a backup plan.

But, you'll be hosting your code on your machine, Microsoft will be out of the loop completely, and you won't be feeding the AI monsters if your repo's are set to "private".

Re: Why is GitHub UI getting slower?

#48

GitHub, Facebook, Reddit, Instagram (on the web)... All these major websites are becoming incredibly hard to use. My intuition would be "SPA crap" but I'm pretty sure you can make great and snappy SPAs. What am I missing?

You can? I haven't seen them.

Google Maps from a decade ago was pretty decent. There's also GMail from around when it was new. That was all on crappier client hardware too.

Note that I didn't say anything about their _current_ incarnations…

Re: Why is GitHub UI getting slower?

#49
post #27
post #5

Earlier quoted context omitted.

Were they using vanilla js? That's impressive if yes.

They used mostly vanilla JS for over a decade. They were early proponents of a technique they called PJAX which is actually pretty similar to how HTMX works: https://github.com/defunkt/jquery-pjax My hunch is that over time it became harder and harder for them to hire new frontend developers who didn't insist on building everything new in React and eventually they gave up.

I think it was two things:

1) The original web components proponents[1] there were very heavily into "vanilla" web components. Web components are low-level APIs and just don't have the ergonomics of frameworks without a library to help. For a few elements built by a few true believers, this is ok, but when you scale it out to every component in a complex app with company-wide teams you need the ergonomics and consistency-setting of a declarative and reactive API.

2) The GitHub Next team built their work in React because they required the ergonomics to move fast and they were operating independently from the production app teams. I think the first thing of theirs to be integrated was Projects, and they could probably show that their components had much better DX. Starting from the ergonomics argument, the hiring argument would take hold.

I've seen this happen a few times where web components teams believe that the whole point of them is to not have to use dependencies, hamstring themselves by not using a helper library on that principle, and then get web components as a whole replaced for a proprietary framework in search of ergonomics. If they had used an ergonomic web component helper library, they could have stuck with them.

The irony is that these transitions are usually way easier than a framework-to-framework migration because of web component's inherent interoperability. I still consider that a plus for web components: morally and pratically, technologies should be as easy as possible to migrate away from.

[1] GitHub was so into web components that they regularly sent representatives to W3C meetings to work on them, but a lot of the original team has left the company over the last 10 years.

Re: Why is GitHub UI getting slower?

#50
As an interesting example of the opposite UI experience, this video goes into why the McMaster-Carr website is so incredibly snappy to use: https://youtu.be/-Ln-8QM8KhQ.

It's different from GitHub in many ways (no user-generated content, day-by-day mostly static pages), but it's interesting to see how good a browsing experience can be. It makes sense given that their value as a company depends so much on making it quick and easy to find exactly what you need.

Post reply on HN