46 comments

[ 3.7 ms ] story [ 82.3 ms ] thread
It's an interesting topic - but, the linked Reddit thread isn't all that interesting itself. It's most just a collection of unsupported conspiracy theories.
The title implies two things:

- Google is pushing Shadow DOM before other major browsers agreed to standardize the API

- The page load in Firefox/Edge is worse than it would be without Shadow DOM

If either or both of these are true then it's pretty shitty on Google's part. If neither are true then it's just a load of FUD. Is anyone more familiar with the situation able to speak to these questions?

The tweet is by a well-known Mozilla engineer. In that same tweet he points to an extension that increases YouTube performance by 5x just by reverting to the old design that doesn’t use the Shadow DOM.

You can verify for yourself that Shadow DOM v0 is deprecated: https://www.chromestatus.com/feature/4507242028072960

For the first one, this is pretty well known : Google "shadow dom v0"

v0 is the old stuff chrome shipped before there was consensus, and it's pretty different from v1, which is what the spec settled on. To be clear, "is pushing" isn't exactly correct, it's "pushed". I _think_ everyone is now on the same page wrt v1?

(Disclaimer: I do work at Mozilla but I've not been involved in this and this is just what I've read)

I'm surprised YouTube is still using v0 since v0 was deprecated a while back.

But v1 is not being implemented yet in Edge or Firefox? [1]

And then you get these kind of "crap" from twitter [2]

It seems we have been talking about Shadow Dom for years, grid, flexbox, web development still isn't anywhere near good enough.

[1] https://caniuse.com/#feat=shadowdomv1 [2] https://twitter.com/Shihrer/status/1021891405633925120

Nobody see this. Sad
v1 is implemented but preffed off in Firefox, IIRC
It's implemented, it's preffed off. These things take time to roll out properly. Chrome jumped the gun on v0, Firefox/Edge aren't "dragging their feet".
> I'm surprised YouTube is still using v0

They're still on Polymer 1.x. Upgrading takes time I guess.

If true, then it is yet another example of anti-competitive behavior from Google. Reminds me of Firefox support in Hangouts.
The worst I've seen is that Google serves an ancient version of their homepage to Firefox mobile for "reasons". With an extension to spoof useragent to Chrome, you get the regular page and it works fine
Used to be the case with Google Maps as well, Chrome user agent would get you served with a faster version.

The worst I've seen though isn't by Google themselves. It's user-agent whitelisting on other web sites, that think it's okay to prevent users from using the browser they want because they couldn't spend time testing in the other browsers. Sometimes they even exclude Chromium. For that reason I have an user agent spoofing extension on each of my browsers.

IMO, Google put a new stage on embrace extend extinguish I call "neglect". Make everything open source and nice, then continue to update G specific functionality by simply not maintaining good support for anything else.

Google probably has the best engineers and greatest minds since IBM in the 60's, possibly ever. But great engineers are attracted to shiny objects, and if all of those are Google objects there's suddenly no reason to use anything else

I'm not super quick to think they're doing something malicious here. I've experienced this exact thing at two of my jobs this decade, one of which I currently work at. Firefox and especially Edge are often just slower for some DOM manipulation use cases and style recalculations.

Although Pendo has been identified as the primary cause for Edge slowness :P

No, the tweet points out how this is specifically because Google uses a deprecated, older version of a standard that only Chrome supports. It’s absolutely not a question of Firefox or Edge being “just slower,” it is a question of using a feature that is literally only implemented in Chrome and that other browsers have agreed not to implement.
Thanks for the correction. Clearly I should not have skimmed so lightly.
And the current version of the standard also isn't implemented in Firefox yet, so using that would change nothing?
It is implemented behind a preferred ATM, IIRC
I think in any stride in life you can easily make decisions that aren't well thought out that are malicious without intent.
Time for antitrust to break Google up. At the very least force the divestiture of both Chrome and YouTube. And obviously given the case in Europe, Android as well.
Sure, on Firefox adblocking works pretty much solid, removing all kind of ads thanks to uBlock origin.

On Chrome, I get sometimes still ads across videos, plus Chrome is Google's Browser: obviously they test YouTube extensively with it and they just make it "work" for other vendors.

uBlock Origin shares the same code in Firefox and Chrome. Any differences you see have nothing to do with the browser.
And now I know why Youtube always takes several seconds to begin working after page load. Usually it would sit there, showing me a thumbnail or even daring to play an add while basically every single UI element was a grey blob slowly pulsing while the javascript in the background was busy shitting data into a polyfill. And with that addon? Basically instant page load.

Why in all that is holy did anyone think this was a good idea and why did noone bother to test this on Firefox or if they did why did the engage in such shitty behaviour?

>Why in all that is holy did anyone think this was a good idea and why did noone bother to test this on Firefox

Because Google only cares about making Chrome look good.

Take a look at pretty much _every_ Google property and at some point or another they've fucked over other browsers in order to make Chrome more attractive for end-users.

I don't think that most google employees do this in a malicious or active manner. But I do think management encourages such outcomes.

I'm basically no longer going to support Chrome on my projects, if it works, yay, if it doesn't, get a real browser.

Honestly what should one consider it then, gross incompetence. I work in a fairly small company, we have 100s of unique forms in our application and we try to make it work and work fast in 3 browsers and sometime we do find/gets reported on performance problem at specific things and we fix those.

How many unique pages or functionality the youtube site has. Am I missing something here? The scaling problem of youtube backend is amazing, complicated and unique. What is the unique uber complicated functionality does the youtube page itself has that they can't test their main page loading up 5 times slower in 2 of the 3 browsers? Do they even open it another browser?

Just set the deadlines tight enough or create the right work environment and testing in other browsers vanishes without a second thought from the employees mind. Regardless of whether or not they want to.
It’s not incompetence when the failure is deliberate.

Microsoft with their “warnings” about DR-DOS for example.

If the outcomes are encouraged, it is both malicious and active.
and yet, the saddest thing of them all, is that one can just... install Chrome!

it's not like the dark ages of IE6, where having to resort to use IE6 was also forcing to use Windows as well and forcing to use a dated, closed, non standards compliant browser.

Chrome is free, available essentially everywhere, standards compliant, fast and with cutting edge web features.

And that's a pity, that's what makes it just too easy to create a monopoly.

and yet, the saddest thing of them all, is that one can just... install Chrome!

The issue is that Google is possibly resorting to actions that violate antitrust laws in the US and the EU to encourage users to switch to Chrome. Antitrust isn't about monopolies; it's about the reduction of competition through abuse of market position. A monopoly isn't required to violate antitrust laws, nor is market competition a defense.

Chrome IS the new IE6. Just consider the number of times that Chrome breaks features because Google thinks webdevs can't think. And Websites breaking because I'm not using Chrome is exactly why IE6 was shit. Websites worked in IE6 but not anything else. THAT was the true tragedy.
I need reading mode and mobile uBlock Origin to use the web. This is something Chrome will never have because it threatens their advertising business.
I would hope that Googlers can make their sites work fastest on the browser that they own and control the internals of.

If I were building a browser, I'd be seriously tempted to do a lot of things for speed that don't seem to be on the table right now. For instance, I'd aggressively bundle common JS or CSS dependencies and short-circuit loading them over the wire. E.g. a site wants jquery 1.x, or Bootstrap 3? I can load that faster from even spinning rust than over fiber, and a few MB of JS or CSS is nothing to store.

> If I were building a browser, I'd be seriously tempted to do a lot of things for speed that don't seem to be on the table right now.

Yes that's all fine, but we're talking about YouTube here as the offender not Chrome. It's fine to make your browser work faster, that's not the same as making your website work slower on other browsers.

> I would hope that Googlers can make their sites work fastest on the browser that they own and control the internals of.

I would hope they'd do that by just optimizing for Chrome, not by deciding to base the whole website on an API that's deprecated and has been superseded and is ONLY still supported by Chrome.

It I remember when chrome only appeared, they deployed try-chrome banners, specifically seen on /. that froze both opera and firefox for a couple of seconds, but worked fine in chrome itself. No one believed me on local forums back then.
I confirm that here too with debian and firefox 52.9. YT is damn slow and HookTube is faster even with the embedded YT player.
So apparently a misguided dependency on an obsolete version of a web framework that uses a dodgy polyfill on some browsers is now proof of a dark conspiracy since browsers won't have the same performance.

This a good discovery and certainly an unfortunate result, but do people not know how web development works? Mistakes like this do happen (though usually with less severe consequences).

HN hivemind: the only cure for a Google bug is... more regulation!
I'm sorry, but Google implementing unspecc'd features and then using these features such that it causes a 5x slowdown in (actually) faster browsers...

I guess you were happy with IE back in the day too? You just find such anti-competitive behaviours acceptable?

Or are you just wealthy enough to buy a 5x bigger PC (consume 5x the power...) to just watch youtube with the same experience as a superior webbrowser would offer?

I think it makes a lot of sense to ask for a standard for companies to build their products against, such that they become naturally unable to abuse the ties between their distinct products, to avoid vender lock-in following a diverged software stack. Standards are n i c e