If you render an <a> in React (or Angular, which I think they're using here), it's just an <a>! You have to do extra work to fuck it up!
I'll generally excuse things like laziness and incompetence, because I understand that not everyone is good at their jobs.
But this:
> You have to do extra work to fuck it up!
resonates so hard. I get so angry at people who take extra time out of their day to put so much effort into making things worse. So many things on the internet are fine, but people spend so much on making them worse. Who is this good for? Not me, and likely not the person who wasted their time ruining functional things.
I was digging into the cursor effect just to see why it's so laggy for some people and noticed that this is actually a Next.js site.
That is news to me that Google is using Nextjs for anything.
It doesn’t do the internal navigation.
And since React doesn’t have built-in support for pushState (Yes I know React Router, but it really wants a hash router), you really need extra work for an internal router. And therefore, every beginner dev does it manually and slightly inconsistently.
So yes, React is absolutely the driver, same as Java is guilty for Guava existing, because it should have been built-in and perfect.
> Yes I know React Router, but it really wants a hash router
This doesn't sound right. The history API has been widely supported by all major browsers (including mobile) since 2013. React was also first released in 2013. Did React Router ever ship a version without a HistoryRouter.
In this case we are not talking about beginner devs (to their credit, the React docs are pushing people toward frameworks now) — these are literally the developers of a framework, fucking it up in their own docs!