'How Chrome Broke the Web' (tonsky.me)
Reader Tablizer writes (edited and condensed): The Chrome team "broke the web" to make Chrome perform better, according to Nikita Prokopov, a software engineer. So the story goes like this: there's a widely-used piece of DOM API called "addEventListener." Almost every web site or web app that does anything dynamic with JS probably depends on this method in some way. In 2016, Google came along and decided that this API was not extensible enough. But that's not the end of the story. Chrome team proposed the API change to add passive option because it allowed them to speed up scrolling on mobile websites. The gist of it: if you mark onscroll/ontouch event listener as passive, Mobile Google can scroll your page faster (let's not go into details, but that's how things are). Old websites continue to work (slow, as before), and new websites have an option to be made faster at the cost of an additional feature check and one more option. It's a win-win, right? Turned out, Google wasn't concerned about your websites at all. It was more concerned about its own product performance, Google Chrome Mobile. That's why on February 1, 2017, they made all top-level event listeners passive by default. They call it "an intervention." Now, this is a terrible thing to do. It's very, very, very bad. Basically, Chrome broke half of user websites, the ones that were relying on touch/scroll events being cancellable, at the benefit of winning some performance for websites that were not yet aware of this optional optimization. This was not backward compatible change by any means. All websites and web apps that did any sort of draggable UI (sliders, maps, reorderable lists, even slide-in panels) were affected and essentially broken by this change.
Maybe you should fuck off with your website that modifies scrolling.
"Now, this is a terrible thing to do. It's very, very, very bad, believe me, folks"
-----
Sorry, I'm only a 1336 h4x0r.
The mantra of the Chrome team was once "Don't break the web".
This hasn't been true for some time now. Why? Because power.
Take (for example) Google's newfound habit of "updating" their webfonts. How many layouts have they broken in the process? Millions.
Google needs to rediscover the value of accepted standards. But there seems to be a new management team calling the shots.
And they're mostly d*cks.
if you use Chrome.
As I'm firmly in the 'fuck Google and all of their products' camp, I hadn't noticed.
It doesn't sound like they broke the web; surely other browsers carried on working just fine? They broke their own product.
In the free world the media isn't government run; the government is media run.
...developers should provide their own initial value for every parameter defined in the standard, and those non-standard parameters available in any popular implementation?
Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
This wasn't a default, it was a standard. Google was the one that decided to add a passive option in the first place, and when they defaulted it to true, they violated the standard. Sites that were broken by this change were doing everything right when they were written; their only mistake was not religiously re-checking their site against every new Chrome Canary build to make sure their standards-compliant site hadn't been broken.
Dominant market position - check.
Starting to define its own browser-specific functionality - check.
Telling developers they should use their company's browser-specific functions to improve performance - check.
Meet the new boss, same as the old boss. Anyone who didn't see this coming the moment Google forked Webkit simply wasn't paying attention.
#DeleteChrome
Isn't it funny how the bigger companies seem to just "know better" than the rest of the Internet engineers?
It would perhaps be better if you internalize the fact that the criticism of having "broke the web" is a one person opinion.
Others would probably disagree.
It is doubly Slashdot's fault, not only have they not fixed the issue, but tags are not whitelisted and get filtered out.
Years ago, websites were designed so that they rendered properly with Internet Explorer. Microsoft didn't have to follow any standards because they had the most widely used browser and Fuck You if you don't use IE.
Now Chrome is the most widely used browser and Google has decided to become the new Microsoft.
The web isn't a development platform, it's a more advanced version of Hypercard. It sucks, it changes to account for the constant sucking, and web "developers" want to make something amazing and be done with it, but you can't make something amazing in Hypercard 2.0, you can just make some presentation. The web isn't designed as an application layer, it's designed as a presentation layer. Stop making apps in the web, they are slower and generally garbage.
Exactly.
Google is just adopting Microsoft's "Embrace, Extend, Extinguish" tactic against its opposition because it has the market share to do it.
That, and Google's attack on free speech, are the reasons why I canceled my Google account.
Running with Linux for over 20 years!
It's very, very, very bad
It explains:
Basically, Chrome broke half of user websites, the ones that were relying on touch/scroll events being cancellable, at the benefit of winning some performance for websites that were not yet aware of this optional optimization
OK, half the user websites? 50% of the web right? The linked article says:
We looked at the percentage of cancelable touch events that were sent to a root target (window, document, or body) and determined that about 80% of these listeners are conceptually passive but were not registered as such. Given the scale of this problem we noticed a great opportunity to improve scrolling without any developer action by making these events automatically "passive".
Looks like the chrome team did some basic profiling, figured out 80% of the listeners are actually passive. Still they should not have touched the default and educated the website developers to register conceptually passive listeners as passive, right?
Google gives some motivation for this:
We believe the web should be fast by default without developers needing to understand arcane details of browser behavior.
There are some plots and more profiling data there.
They could have done an RFC and got the standards updated in the next batch for this. But still, as evil behaviors go, this is not "dos is not done till lotus wont run" level. Does not even come to working around bugs in IIS in IE to make all other browsers crap out level of evil.
sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
How about you fuck off the web, and go install a "native app", and get data-mined.
It's more than you deserve.
Yes, they should avoid installing native apps. Instead, they should use a Google-branded browser. That will DEFINITELY avoid data mining!
Don't use Chrome. There, fixed.
Can someone explain why I have to restart Firefox at least once a day in order to play back video of any kind?
And why doesn't Wunderground render properly on Firefox? It seems that everything is a lot slower these days further convincing me that trying to do anything online that used to be done with a dedicated program is a bad idea.
I came from Dos/Amiga to Windows, the very first time I used Internet Explorer I didn't want any part of it.
Not used to WWW I went to Microsoft.com found a game that looked decent and downloaded it (I thought). ActiveX kicked in and was installing something I hadn't looked at first, so pulled the computer power cord.
The second time I used IE was to download Netscape.
It's idiocy like this why I am compelled to have at least 3 different browsers on every machine I use. Because it seems like every time there's some kind of update, stuff get horribly broken and I need to switch to a different browser for an extended period of time. It's to the point where I've purchased an xmarks premium subscription, so that all my bookmarks gets synced and I don't have to jump through hoops when the inevitable switch happens.
It's so frustrating the way companies think that they are allowed to have defacto control of the entire internet.
Fuck you Google, and fuck you Microsoft before you.
Well, they had good teachers, when they were younger.
On y va, qui mal y pense!
Is that why the map on this website doesn't pan reliably on Google Chrome mobile? 7-Day Forecast for Latitude 43.66ÂN and Longitude 70.27ÂW (Elev. 7 ft) I just tried Mozilla Firefox mobile. Works much better in that app.
At this point I can count on Wunderground to be broken more than 50% of the time. Differently on different days, at different times of day, and on different clients, but broken most of the time. (Trying to change a display preference? Scroll through times in the 10-day forecast view? Select conditions from a controlled (airport) station instead of a random PWS sitting in someone's backyard next to their dryer vent? "We'll be rolling out an update in a couple of months.")
But not to worry. They're maintaining a steady pace of innovation, and soon they'll be broken 100% of the time on all clients.