Hacker News new | ask | show | jobs
by pekk 4459 days ago
What is unhealthy about shared components? Should we insist that browsers also be built with different languages or compilers or it is unhealthy? We are not talking about a proprietary component here.

There may be reasons to prefer Firefox not to use blink, but "detriment to the health of the web" is a really vague and pointless argument. What do you really mean by that, if not just that Chromium/Chrome are somehow bad for the web?

2 comments

> There may be reasons to prefer Firefox not to use blink, but "detriment to the health of the web" is a really vague and pointless argument. What do you really mean by that, if not just that Chromium/Chrome are somehow bad for the web?

Er, huh? I don't think my phrasing was that confusing: I said that the loss of diversity in implementations would likely lead to a loss to the future development of the web. Multiple implementations of a spec ensure that the spec matches reality and often make for better specs, as feedback from implementations over very different foundations bring out fundamental architectural and performance issues that may not have been obvious otherwise (e.g. you write a feature so that it's efficient on platform X, it means that in 5 years someone implementing a new browser will have to write it very much like X to get decent performance).

This is actually enshrined in the W3C technical report development process: for a specification to become a Proposed Recommendation, "the Working Group should be able to demonstrate two interoperable implementations of each feature"[1].

There were lots of arguments about this when Opera stopped developing Presto to move to Webkit. I think Chromium/Chrome have been, on the whole, great for the web.

[1] http://www.w3.org/2005/10/Process-20051014/tr#cfr

> Should we insist that browsers also be built with different languages

In a perfect world, yes. Then you might not get standards written entirely around ease of implementation in C++, leading to crazy behavior just because it happened to be the simple thing to do in that language.

> if not just that Chromium/Chrome are somehow bad for the web?

What's bad for the web is monoculture, because then people start building sites that rely on quirks of that monoculture that are not codified in a standard. And then if something better comes along it's a long uphill battle to get that something better adopted, because it has to duplicate those quirks.

For example, there is no way something like Servo would be able to happen if we had a Blink monoculture on the web, and I seriously doubt that Blink will be able to parallelize to the extent that Servo is planning to and that I think the web needs in the future.

For another example, once you have an engine monoculture, the developers of that engine become gatekeepers for what's possible on the web. We saw that once already with IE. While Google is not likely to shut down development of Chrome in the near future, they have their own priorities (e.g. getting video DRM implemented is a lot more important to them than anti-tracking countermeasures), so unless you think those priorities are perfect for the web you should be against them having a stranglehold over what ends up in the web platform. Just like you should be against any other entity having such a stranglehold. It was bad when Microsoft was there, it would be bad if Google were there, and it would also be bad if Mozilla were there.