Hacker News new | ask | show | jobs
by anoncake 2588 days ago
They have no alternative. Like everyone else, they're at the mercy of Google.

It doesn't matter if it's in Microsoft interests to fork Blink, as that would require maintaining their fork. Which they can't. If Microsoft were able to maintain a browser engine, they would not be switching to Blink in the first place.

3 comments

The history of "Blink" has been Company X using it, then eventually forking, and winning:

Apple decides to use KHTML instead of developing their own browser engine from scratch. This allows a very small team to focus on user experience, instead of the monumental task of replicating the entirety of the historical W3C standard, and ship Safari. Eventually Apple forks KHTML into WebKit.

Google decides to use WebKit instead of developing their own browser engine from scratch. This allows Google to focus on unique features like process isolation and the new V8 javascript engine, instead of the monumental task of replicating the entirety of the historical W3C standard, and ship Chrome. Eventually Google forks WebKit into Blink.

Microsoft decides to use Blink instead of developing their own browser engine from scratch. This allows Microsoft to focus on privacy-related features, instead of the monumental task of replicating the entirety of the historical W3C standard, and ship Edge Chrome. [What will happen next?]

The HTML spec is HUGE, and getting to a point where a new engine can successfully render all the quirks of HTML, CSS, and JS (and WebAssembly, and...) is a harder and harder task every year. Look how long its taking Firefox to get their Rust rewrite going. If you want to focus on end-user features, it makes no sense to start by arbitrarily making a new browser engine that's goal is to... successfully replicate the behavior of existing competing engines (since that's the real standard). If your competitor is open source, then just use that, and focus on what you want to provide.

It is my opinion that people have severely misinterpreted the power dynamic here. Every Windows machine will soon ship with a browser that, as is evident in this very thread, is "basically Chrome"... minus all the Google ID stuff. This is a nightmare for Google, what do they have to offer? "Download Chrome so we can track you!". That's the way its going to sound if Edge Chrome correctly puts its privacy features front and center. Meanwhile, they're getting support for CSS grid or whatever-js-feature for free from Google's hundreds of workers on Chrome.

The power dynamic is more marketing than technical. Google is willing to push Chrome in their most valuable web real estate:

- Chrome ads on the google.com landing page

- Pop-overs when you log into gmail

- Inside the security alerts when you log in with a new device

And probably lots more than I haven't found. Is there any other product that they push so hard?

> Chrome ads on the google.com landing page

And the best way to fight this is with a browser that ships with the OS that takes you to Bing instead of Google.

Either way, this seems orthogonal to the question at hand. Google will push Chrome in all those places regardless of the engine Microsoft chooses to use. Having complete parity with Chrome rendering seems at worst neutral, and at best competitive as Google now needs to rely entirely on marketing (or on features present exclusively in Chrome and not Chromium). I'm not saying Google doesn't have many cards left to play here, but this move is absolutely a net positive for Microsoft in this fight.

I fear that Microsoft has given up the fight, and is content to enjoy the seigniorage from defaulting the home page on Windows, while allowing Google to completely dominate the evolution of the web. Time will tell.
> Microsoft decides to use Blink instead of developing their own browser engine from scratch.

Microsoft decides to use Blink instead of the browser engine they already had.

> This is a nightmare for Google, what do they have to offer? "Download Chrome so we can track you!".

The same things they offer now.

"Download Chrome because it's a better and faster browser!" It doesn't have to be true, people believe it anyway.

"Download Chrome because Edge doesn't support Youtube!" They totally didn't intentionally break Edge.

> Microsoft decides to use Blink instead of the browser engine they already had.

The stated goal of the EdgeHTML rewrite was to "be fully compatible with the WebKit layout engine used by Safari, Chrome and other browsers. Microsoft has stated that "any Edge–WebKit differences are bugs that we’re interested in fixing."" [1] It seems the hardest way of doing this is black-boxing WebKit and making a parallel implementation.

What's going on here is that browser rendering is being commoditized. Just like OpenSSL, or Clang, it doesn't necessarily make sense to implement these on your own anymore, there's no clear business reason. There is little to be gained from having a better flex-box implementation, but lots to be lost by having a worse one than the dominant browser. Using Chrome's source disarms this problem.

> "Download Chrome because it's a better and faster browser!" It doesn't have to be true, people believe it anyway.

I mean, maybe... that's not what's won every previous iteration of the browser wars. Its been either through exploiting an existing monopoly (IE, Safari on iOS) or merit (FireFox). Sure, doesn't have to go that way now, but I don't know why we assume that people are going to be moved by "Chrome is faster!" advertising on something that most people prefer not to care about probably.

> "Download Chrome because Edge doesn't support Youtube!" They totally didn't intentionally break Edge.

They can do this regardless of the engine Microsoft chooses to use. If anything, using Chrome makes it more blatant that they're purposely doing it since there's no plausible deniability that its a weird rendering bug in Edge's code. So this seems neither here nor there, if any Edge with any engine got popular then they could choose to go this route and then maybe we'd have an antitrust case on our hands. Unless the argument is "Microsoft should stop making browsers altogether", not sure what the point of this is (maybe that is the thing that is being proposed?).

1. https://en.wikipedia.org/wiki/Microsoft_Edge#EdgeHTML

> Unless the argument is "Microsoft should stop making browsers altogether"

Of course MS should keep making browsers. That gives them control over the UX, just not over the rendering engine.

My point is that assuming that Blink Edge means that there is now a variant of Blink not controlled by Google is optimistic.

> Its been either through exploiting an existing monopoly (IE, Safari on iOS) or merit (FireFox).

Yes, but which way is Chrome winning? I don't think it's merit, at least not solely.

The entire reason they adopted blink was YouTube putting invisible divs over the video and breaking edge’s hardware acceleration for video.

They rewarded googles shitty behaviour by becoming dependent on them for a rendering engine, and any chance of forking is pointless because they’ll be back where they started: using something different than google, and thus ripe for shit code on google properties.

A browser that can't hardware-accelerate <video> if there's an invisible <div> above it is broken. It's a perfectly reasonable thing to do and any other browser can handle that.
> how long its taking Firefox to get their Rust rewrite going

Nobody is rewriting Firefox into Rust. Servo is a new research engine not intended to replace Gecko, and some Servo components are being reused back in Gecko (Stylo and WebRender). These are fairly self-contained. The bulk of Gecko is still that C++ codebase and it's here to stay.

Allow me to restate:

"Look how long Servo, one of the few examples of a mostly-from scratch browser engine that we can look to and thus compare (although technically some components of Servo are borrowed from Gecko so even it is not fully a from-scratch effort), is taking to write."

The point was to find any comparable effort to demonstrate what an undertaking this is. Servo was started 7 years ago by one of the few companies with engine expertise. Although, granted, I agree that perhaps framing it as a rewrite might lead you to believe more effort is being placed there than actually is (although I don't think it's totally unfair to look at it that way given their original embedding goals).

MS are able to maintain a browser engine, it just isn't worth them to do it when IE compatibility is an afterthought for a great many sites. Maintaining a fork of Blink would be a lot more worthwhile.
There's a big difference between writing their own engine from scratch and forking Blink. For starters, even if they fork, they can still keep cherry-picking fixes and new features from Google's Blink. After all Webkit is under the GPL so they can't just close the source.
> There's a big difference between writing their own engine from scratch

That's a strawman. Microsoft already had a browser engine, no one's talking about writing one from scratch. They are unable to maintain one.

> For starters, even if they fork, they can still keep cherry-picking fixes and new features from Google's Blink.

Yes. All of them. Because otherwise they aren't compatible with the Google-controlled web anymore. That kind of "fork" is pointless.

They were able to maintain and extend it. But they were starting from way behind while Google was rapidly adding new features.

Microsoft had to choose between adding their own enhancements and standards (the reason for having an engine into the first place) and playing catch up to Google. With Blink they can have both.