Hacker News new | past | comments | ask | show | jobs | submit login
Microsoft Edge and open source collaboration (windows.com)
376 points by xPaw on Dec 6, 2018 | hide | past | favorite | 292 comments

I'm still shocked that they went the Chromium route here. This would have been their chance to really, well, for lack of a better way of putting it:

stick it to Google [0]

I think it would have been far, far more impressive to use Quantum (https://wiki.mozilla.org/Quantum) or WebKit (https://webkit.org), with the added benefit that nw.js is already up and going for the Webkit engine (and likely would have sufficed as an Electron replacement that they could drive forward, but I suppose they own Electron now with Github acquired)

For its not Apple anymore and certainly not Mozilla that is the prime competitor nowadays to Microsoft, its Google (With Chromebooks in the schools, and their small business and cloud offerings) and Amazon's Web Services division that are their main competitors now.

While I don't know how all the business logic went into this and ultimately came up with this being the best calculation at hand, I think this would have played better in the media too (especially if they leaned on Mozilla)

[0] I know Chromium != Google, but its pretty hard not to see that most of Chromium's development is downstream from Google and Google employs and/or otherwise has had some direct influence over the core team

Google does an insane amount of very deep work all the ways down to the compiler level getting Chromium compiling on Windows and compiling on different architectures. These teams are very well staffed.

It makes strategic sense to go with Chromium if they're aiming for ARM64 support if they can get a huge amount of work for free directly (as opposed to incidentally) from Google to support clang on Windows – which is a much bigger undertaking than it seems at first glance.


The technology that article mentions is Microsoft's Intel->ARM translation, which is surprisingly good, and entirely unrelated to Firefox.

The "optimized" build they're talking about is almost certainly natively-compiled ARM64, and the reason it's hard is because Rust is built on an older llvm version...which doesn't have Google's patches that improve support for Windows ARM64.

Firefox's internal code is a dumpster fire. I say that in the nicest way possible. Look at their 'jsapi' mailing list, they just break compatibility at will and don't properly version things. It doesn't have the same features v8 has with regards to isolation.

I'm not sure if quantum is actually all that different from pre-57 minus servo, however servo isn't magic, and only a small portion of that is really rust.

Overall firefox's codebases aren't meant to be used by anyone else. Chromium and v8 are.

V8's API is also highly unstable.

So much so that the Node developers now maintain a separate project dedicated to providing a stable wrapper API around it, now dubbed N-API:


I'm pretty sure Microsoft has done their homework and evaluated the performance, portability, code base, etc. It is a big change after all, and they probably have carefully planned it.

With a strong Microsoft voice on the Chromium project, it will probably act as a counter to the Google voice. And Quantum and WebKit are nowhere close to Chromium, they're picky to a fault about HTML and CSS, it's just annoying to develop for them.

Nobody is competing on browser market share any more, that's a lost cause. With so much traffic going to mobile and apps now, it just doesn't make sense to be re-inventing the wheel when they could be investing in features that actually matter.

Google forked Blink off of WebKit because they couldn't dictate the pace. I highly doubt that Microsoft is going to have much of a voice in the matter.

I imagine they'll appreciate Microsoft essentially making Chrome work better within Windows, but that's about it. They'll accept pull requests, but doubt they'll give up much of anything in the way of control.

Microsoft is always free to fork Chromium.

Given how nodejs is still not fragmented (remember io.js), and things are getting along well, I am positive it can be done.

Microsoft has really shown it can do Open Source well and is willing to let go of its ego if it means more developers/users on their platform.

Also Google makes a shit ton of money off chromium through the search bar. Edge is chromium + bing bar.

If Edge doesn’t do stupid shit like log you in the browser, blast ads in your face, I am very willing to consider another browser.

Chromium won. It has the largest market share. V8 powers both chromium and nodejs. Google showed Microsoft that Open Source can be insanely profitable if there is a money making engine complementary to it.

Microsoft’s money makers are Azure, Office, Bing and surface devices. Open source software brings them a ton of good will and new users.

I don't disagree with anything you're saying here, but I don't know what it has to do with Microsoft having a say in how Chromium/Blink is developed or what directions it may take.

This move is about electron. Offering a drop in replacement that doesn’t brutalize you on perf and battery life

Is quantum that much closer to chromium than edge?

Shocked? Really? Everyone seems to be choosing a Chromium base lately, including Opera and Brave.

One thing that’s worse than Microsoft not adopting a technology is Microsoft adopting a technology.

Historically, they’ve used the “Embrace, Extend, Extinguish” strategy quite often, and maybe that’s what’s happening here. But maybe I’m being overly skeptical/borderline cynical...

The opposite is happening. They have such a small market share that developers didn't have enough incentive to actually support/test on their browser so all their work was just trying to get edge to be chrome-compatible. Turns out making your browser a chrome clone is an easier way to do that.

This would be the situation where EEE would be a good thing for the community. Now if you were talking about Firefox, then I'd agree that that would be bad.

EEE only works when you're much bigger (or flexible, if you're a snake) than your target.

Microsoft was 2-5-10x the size of its EEE targets. Oracle, Google, Apple, Amazon, etc. these days are equals. And equally ruthless.

Old quotes need to be adapted for the present day.

I'm assuming I'm not the only one who's afraid of Blink becoming the new Internet Explorer; instead of people following a web standard, they'll follow what's Chrome-compatible.

It's still better because Chromium is open-source, but I do worry that we're going to have a problem in the future with a lot of broken sites (YTMND-style).

> I'm assuming I'm not the only one who's afraid of Blink becoming the new Internet Explorer; instead of people following a web standard, they'll follow what's Chrome-compatible.

This is already the norm. I use Safari and find many sites have issues. Before that I used Firefox and many sites had issues.

Typically the JS works, but styling often looks different (and worse) on Safari and Firefox.

I can say wholeheartedly that it's Safari that's the problem, not Firefox or Chrome. I develop for Firefox first and have no issues with Chrome but Safari is requires some special tricks repeatedly.

I'm the same way. Firefox first, then Chrome. If it works on Firefox, it will work on Chrome (and least that has been my experience).

There are occasional inconsistencies. Just this week I fixed a small styling issue that differed between Firefox and Chrome.

I develop for Firefox first as well.

Just wanted to say thanks to everyone targeting Firefox first.

We all probably have Firefox DE for the Dev Tools. And main browser is Chrome or Safari.

I'm not saying that Safari is correct, just that developers often already develop for just Chrome.

Do you have examples? I use Safari and don’t find this to be true. Given Safari is what people use in iOS, id expect this to be rarely the case (most sites will test on an iPhone).

I have personally experienced this bug https://stackoverflow.com/questions/46309641/what-happens-in....

That's not a bug.

"transparent 0" is not a standard way of defining things, and bad use o CSS in production.

It works like that regardless of presence of percents, I had it with "linear-gradient(transparent, white);".

Same here; I don't know if I've ever seen a site that works in Chrome but not Safari (I don't doubt they exist, I just don't tend to come across them).

As a MacOS Safari 12 user, I've recently come across several important sites where some functionality fails hard in Safari yet works in Chrome ie barclays.co.uk and easyjet.com

I don't have any proof but my suspicion is that I've seen more sites failing Safari since Mojave.

I really dislike (& distrust!) using Chrome now, especially for e-commerce sites or anything with SMS based 2FA as Safari's ability to pull codes automatically from messages is a godsend.

In my experience it's easy to brick Safari and other WebKit-based browsers with CSS animations that run at 60fps and <10% CPU on Chromium and Firefox.

Yes, I really wish Webkit, or may be Safari improve on this.

I created an internal application for our company to use that is essentially a directory of staff members. I do most my development in Chrome but the bulk of the users are on iOS (Safari). I always find little nuances that I need to tweak for things to be "just right" on Safari. One example is that in all other browsers (including Safari Desktop) a <input type="search"> will show a little clear button ("X") at the end of the input. Some bug removed it from iOS Safari and we're still waiting for them to resolve the issue. It was reported in 2016 and was acknowledged by Apple [1]...

[1] https://stackoverflow.com/questions/35583503/input-type-sear...

There's nothing in the spec that promises you a little "x" to clear the value: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/in...

Chrome also frequently attempts to cover up incorrect code with what it thinks the author probably meant. Firefox tends to be much better than Chrome at following the actual spec.

I tend to develop primarily with Chrome first for some different reasons (ability to disable CORS, support for self-signed certs with WebSockets, and its better debugging of WS frames), but I always make sure to test later with Firefox and Safari, and occasionally find code that worked in Chrome, but doesn't elsewhere, and the reason is almost invariably always that Chrome didn't follow the spec.

Fair enough about it not being in the spec. It does appear to be a part of Apples' "Human Interface Guidelines"[1], although these guidelines are pointed to native applications. It was just an unexpected regression that occurred during the rollout of iOS9 and is an example of one of the little nuances that caused me to do something different. I've had some other issues regarding scrolling and focus, but this one seemed to be easier to talk about.

[1] https://developer.apple.com/design/human-interface-guideline...

I have seen this many times during development. Noteworthy sites that cause problems are, well, Microsoft sites: portal.azure.com - problems downloading publish profiles. SharePoint - too many to mention

Cant come up with example but i have fixed quite a few safari issues as a web dev. Often they dont appear on iphones because the media queries for mobile are tested on iphones, but desktop layouts are tested on chrome. Safari had a few flexbox quirks that caught me out most recently.

Probably nothing, since it's more a meme than anything else.

But if they are testing on iphone they are probably writing it as a mobile page which usually suck anyways.

I run into the cause of this issue quite a bit when writing styling. The fact is that each major browser veers from the spec in its own unique ways, so if you're testing your page in a single browser (usually Chrome, though personally I use FF) the styling will often end up working differently in other browsers. As of now, the only real solution is to pick a set of "supported browsers" and to test your page in each of them before publishing, tweaking your styles to work around each engine's quirks. The problem with a browser monoculture is that it encourages developers to only test against the dominant platform, forcing competitors to be bug-compatible in order to provide a non-broken experience. The advantage is that a true and reliable standard would emerge, making developers' lives easier. Of course, the optimal solution would be for browsers to properly conform to the existing standards so that testing across browsers wouldn't be necessary in the first place, as any deviations would be a bug that would hopefully be fixed before too long.

> instead of people following a web standard, they'll follow what's Chrome-compatible

The browser vendors taking the lead over standards committees is how we got this far into HTML5, especially including Apple's/Safari's decision to ditch flash, and the WHATWG actually moving us forward vs the W3C.

Unless Blink has a history or an expectation of deprecating serious functionality in the future, is it really so bad if websites follow what's Chrome-compatible instead of 'a web standard'?

W3C might be too slow, but eschewing at least a rough consensus and instead just ramming through whatever you feel like is the other extreme end of the spectrum. And Google is no saint, so if it benefits them and only them, who cares, Chrome will support it, the community be damned. And this - of course - applies to depreciation of functionality. (Think about any web feature/standard as another Google property, like G+ ... scary? But that's where we're headed with the Blink hegemony.)

This is a good question. Let me give you an example.

Let's imagine for instance that Google develops something called "Google Pay". Let's now imagine that WHATWG works on something called "WebPay".

In a multiple-engines world, there would be pressure for Blink to support (and keep supporting) most major credit cards & payment mechanisms to let users pay using WebPay.

In a single-engine world, one single manager at Google will have sufficient power to decide that WebPay supports only Google Pay.

Feel free replace Google Pay and WebPay by any other technology strategic to Google.

Let's not get confused. Blink is a rendering engine and not an API server.

This kind of thing has stopped being true a long time ago.

For all intents and purposes, web browsers are operating systems running web applications, taking care of security, etc.

And all these Chromium-derived browsers are skins and utilities on top of Google's browser/OS.

It's still true and always will be. Blink is not a browser any more than the Linux kernel is a standalone operating system by itself with no attached software or applications.

Because then any pull request introducing something into Chromium essentially becomes the web standard. For example, Google has a ton of influence on the project. If they want to, they can introduce something that benefits their services but eschews the web standard.

but if Microsoft is moving to Blink, wouldn't they, as well, have (as you say) influence on the project?

What, really, is a downside to having an open-source web engine that all browsers use? I'm failing to see one. The web would become less fragmented; the web standard would be (only slightly) irrelevant, and we would move forward without having to deal with browsers interpreting the spec/standard differently, which is what happens currently in a lot of cases.

> but if Microsoft is moving to Blink, wouldn't they, as well, have (as you say) influence on the project?


1. Chrome will remain the dominant web browser

2. the Chromium repository itself is owned by Google

The only leverage Microsoft is in forking Chromium, but that does nothing to Chrome's market.

Google themselves forked WebKit when they couldn't get along with Apple. And that was back when Chrome wasn't as pervasive.

So what makes you think Google would give a crap about Microsoft today?

well, if you look at it now, webkit is BY FAR not the dominant engine.

So, by your own logic, if Microsoft ends up in a disagreement with Google about the direction of chromium, whats to stop them from just forking it and becoming the new dominant engine?

Chrome will only remain the dominant web browser as long as its users view it as worth the hassle. If Edge is built upon chromium in the future, I'm not going to sit here and say that Chrome will remain the dominant browser following that.

We can sit here and talk about 'what ifs' all day.

No, by my own logic Microsoft cannot win in case of a fork, because Microsoft is superficial in pumping resources into browsers, as history is showing us ever since IExplorer 6.

Them switching to Chromium is essentially admitting defeat and inability in building a modern browser.

WebKit is the dominant engine because it's what powers Webviews on Android.

> Since Android 4.4 (KitKat), the WebView component is based on the Chromium open source project. (...) Webviews also share the same rendering engine as Chrome for Android. [0]

KitKat was released in 2013[1] as well as Blink in the same year[2].

Apart from Blink being a WebKit fork, WebKit itself is not "the dominant engine" anymore at least since 2014.

[0]: https://developer.chrome.com/multidevice/webview/overview

[1]: https://en.wikipedia.org/wiki/Android_version_history

[2]: https://en.wikipedia.org/wiki/Blink_(browser_engine)

Not since android.. 6? It defaults to the chrome browser. You can choose the other chrome browsers too (beta dev canary if installed, via the developer settings) and the web view might actually also be chrome. WebKit on android is from ages ago.

Im not talking about default web browsers.

I wasn't either!

https://developer.chrome.com/multidevice/webview/overview Since 4.4 it is based on Chrome, not WebKit. Since I think version 6, on all the Google phones it defaults to using Chrome for WebView instead of the "WebView for Android" browser.

How do I convince Chromium to adopt parallel engine components written in Rust, in this world?

They won't do it, because the entire team at Google is staffed by C++ folks. How is that a better outcome?

Our team is staffed by engineers. We respond well to discussions of tradeoffs. If you'd like to present a proposal for writing parts of Chromium in Rust and speak in depth to the exact costs and benefits, we'd absolutely consider it. I know this because we _have_ been doing some of this consideration; a number of people on the team have floated the idea of using Rust for some parts of Chromium.

But a real plan to do this requires a great deal of thought and serious consideration about how you get from here to there, whether there are long-term engineering velocity costs, etc. You don't just say "Rust is more memory-safe" and let that phrase alone mean "so obviously you're a dinosaur if you don't switch to it".

Even Mozilla is taking a lot of time and effort to introduce Rust-based components to Firefox. Making big changes to enormous projects used by huge numbers of people is not something you do lightly.

Still, though, we'd happily consider it.

In late 2018, using Rust is a lot more serious of a proposal. But, in practice, I don't think the case for Rust in the browser would be nearly as compelling if we hadn't shown that it can be done. That's one strong reason for browser engine diversity: different engines can try different things.

I think it's fair to say that a Rust proposal would have been dead-on-arrival a couple of years ago. It'd be seen as far too risky. It would have remained so in a world where Blink was the only browser engine.

It's a classic innovator's dilemma: with fewer browser engines, the fewer risks the industry will take. More browser engines allow more seemingly-risky innovations (such as parallel styling/layout, or Rust) to break through.

A very nice property of open source software is that you can fork it, "show that it can be done" without having to start from scratch, and if the results are provably better, get your approach adopted.

The trickiest part is the proving that the different approach technology is enough better to warrant a switch. Very often, new approaches don't live up to expectations (not saying this is the case for the tech you're talking about).

1. This is actually discouraged for many projects (e.g. LLVM), because of the possibility that someone does a lot of work and then their results are not accepted.

2. The issues here don't have to do with whether the technology "works" (it does), but rather "developer velocity" and other more social/political concerns.

I understand your points, but I would suggest to consider a different point of view:

1. When you're experimenting with a seriously new technology or approach, the most likely outcome is that you'll fail, especially at the market adoption level. Being able to conduct your experiment at a lower cost is still a net positive, except for one point: having invested less, you are more likely to abandon the experiment early, because of the sunken costs fallacy. That doesn't necessarily need to be the case.

2. Developer velocity/productivity is something that you can demonstrate - as long as the difference is consistent, like, not 10% faster, but 80% faster. Other social/political concerns are a different thing, but really, gaining market adoption based only on those is VERY difficult - if that wasn't the case, I don't think we would be having this discussion at all, because Firefox would have a much higher penetration.

So, the point is, how is having a completely separate codebase going to help with having success? It could attract a higher number of idealistic developers, but the additional work required is very likely to negate that advantage.

Rust as a language was significantly less mature a few years ago; I think that's the bigger factor here.

It certainly doesn't hurt to do compelling things in Rust in a browser engine, but doing compelling things in Rust in some other project entirely would also be motivating.

To look at it from another angle, Mozilla itself had a reason to try to tackle some problems with Rust. It didn't need a competing browser engine using Rust in order to move forward with that plan. And the plan wasn't "well, we'll try this because we can somehow fall back on a competing engine if this doesn't work". So if your argument were true, I don't see how Mozilla could have moved on this either.

In the end people do things because the potential benefit justifies the costs and risks, and having a competitor do something is not the only way of determining potential benefit.

Would Google consider using Play Ready on Windows instead of Widevine? Widevine perf is worse on WIndows, because it's all software frame decoding, and because of that, doesn't support 1080p or 4k Netflix videos on Windows.

Edge does. I'm curious to see how this will work.

The same way you would convince any other browser vendor to do the same thing. Good luck with that. But let's not forget that Firefox, Opera, et al, are not going away and no one is forcing you to use Chrome or chromium and there probably won't be any real downside either.

Well, Opera uses Blink, and apparently according to some folks in this thread that is equivalent to using 'big bad Chrome'

As a web developer, why would I even care about that? I care more about whether it adheres to web standards; or in the absence of a standard, whether it is in-line with other leading browsers.

If all of our leading browsers use the same engine, the answer to that is one and the same.

I mean, I get the point you're trying to make, but the argument doesn't really fit with what I'm saying. As far as I'm concerned go ahead and rewrite Blink in Rust or Go or Common Lisp. As long as it is the main engine, or adheres to the web standards, it really makes no difference to me.

I generally agree with your sentiment on this. The only real downside I can think of is similar to the issues that motivated the renewed investment in OpenBGPD recently: that standards and ecosystems are made stronger when there is some level of competition and diversity.

For example, a security bug in chromium becomes vastly more dangerous if everyone is working off that code. That said, hopefully there’ll be fewer of those because everyone is focused on the same codebase.

The questions seem to be “how many browser engine implementations is truly necessary for a healthy ecosystem?” And “has the spec gotten so bad that it’s not feasible for the ecosystem to support a sufficient number of independent implementations?”

Seems like <5, and maybe <3 is the answer to the first, and the answer to the second is we’ll see what happens to servo in 2019...

> The browser vendors taking the lead over standards committees is how we got this far into HTML5, especially including Apple's/Safari's decision to ditch flash, and the WHATWG actually moving us forward vs the W3C.

That takes a somewhat limited in scope view as to what a web standard is; by most measures, what the WHATWG produces is as much a standard as anything the W3C does, and is certainly comparably useful to other implementers.

> Unless Blink has a history or an expectation of deprecating serious functionality in the future, is it really so bad if websites follow what's Chrome-compatible instead of 'a web standard'?

If someone wants to build a new web browser, can they do it without having to spend huge amounts of money on reverse-engineering Chrome and being bug compatible with it?

I don't think you can conclude from "things got better when browser vendors took over" that it'd be the same if there was one vendor dominating. They keep each other honest at least to a degree, forcing that issues are discussed and things thought out instead of someone in a browser team coming up with an idea and shipping it the first way they can come up with.

This is not even close to comparable. I’ve said in other threads the issue with IE and really IE6 - was for multiple years Microsoft did zero development. The browser didn’t patch zero day exploits for months or even a whole year. Fundamentally IE6 was an extension of Windows via ActiveX controls. The layout bugs were permanent. Remember zoom:1, hack to fix a layout issue or just float:right etc...

Blink is open source- you want to encourage innovation in the usability and utility of the browser and let people compete on market share of their browser product not how people’s web apps that run on that platform work or don’t work - The key is it’s open we’ll never have another IE6. Anyone can compile Blink. Look Microsoft is focusing on getting it to work on arm- cool. This is the opposite of locked to windoze only.

I can't find any current stats in ie6 but the delay to upgrading was a pain point. While I wanted to just blacklist the browser from websites I was responsible for with a gigantic banner. I unfortunately didn't get that latitude. I just stopped caring if it worked or not for them. If a user complained I directed them their tech department. At a certain point I'm not supporting your internal outdated website because it requires an outdated browser.

Blink already works on arm. Microsoft is working on getting it to work on the arm version of Windows.

I think the bad state to be in is:

* There is a number of implementations of the same platform.

* Those implementations are competing and the market encourages them to be in-compatible with each other.

You can avoid that bad state by having an explicit standard and applying pressure on all implementations to meet that standard. It usually comes at the expense of slower innovation.

But another viable way to avoid that bad state is to simply not have competing implementations. A single canonical implementation also solves the problem of ensuring all users get a compatible experience. It can come at the expense of evolving in a way that doesn't meet user needs because there isn't a competitive incentive to win users.

I don't think there are perfect solutions, but I also don't think it's the end of the world if this becomes a monoculture. There are tons of "platforms" that are effectively mono-cultures and seem to be OK. Every rechargeable tool company has its own battery pack form factor. Up until recently, each laptop company had a different port for the AC adapter.

What I think this is really showing is that the market size of the web is shrinking relative to the size of the browser standards. Mobile apps have eaten up so much user share and HTML+CSS+JS+etc. has gotten so big and complex that the desktop web market can't effectively support multiple independent browser implementations any more. It's just too much work for too little return.

There's maybe an interesting lesson here in not letting your platform get too complex. New features are always nice, but they have a cost. If you pile on too many of them, you may undermine your platform's ability to support multiple independent implementations.

So whether the Web can run on Rust-based parallel engine components should be beholden to the reporting structure at Google?

Let's be clear: that is the future you are advocating.

Wow, easy there.

I'm guessing this is a stressful day around the Mozilla watercooler. This is bad news for Mozilla. Web authors will target the behavior supported by a majority of user browsers. With many independent browsers, there is no implementation majority, just a plurality. Majority behavior only comes from a standard and all implementers are incentivized to work with that standard.

When there's only a few, it's possible for a single one to become the de facto "standard". The web is effectively moving to a first-past-the-post election. Because Microsoft is adopting Chromium, Mozilla's engine and Safari may very quickly become minority ones.

This might suck for users, but that's not entirely clear. Obviously, in a perfect world, there would be infinite engineers building infinite implementations of every platform. In reality, every engineer-hour spent working on, say, a new implementation of COBOL is an hour not spent on software that might impact more users' lives in more important ways.

Maybe a couple of commodity web browsers and engineers working on other more important stuff is better for society? How many implementations of CSS does the world really need? <shrug>

Either way, I'm not advocating anything. I'm more interested in understanding what are the causes and effects — both bad and good — of a platform going from three implementations to two. I'm approaching this as sociology, not as someone who has skin in the game.

I do work for Google and did work as part of the Chrome org, but I don't have enough expertise to make any claims about whether this is an overall good or bad thing for the world. I'm just interested in all of the consequences.

> Maybe a couple of commodity web browsers and engineers working on other more important stuff is better for society? How many implementations of CSS does the world really need?

Shouldn't users have the best possible CSS engine? If there's only one, and it's beholden to the reporting structure at Google, then disruptive innovations are less likely to happen.

People who don't work at Google should be allowed to develop the Web platform, without asking Google for permission.

> Shouldn't users have the best possible CSS engine?

Shouldn't they have the best possible COBOL compiler? The best possible VRML renderer? The best possible ICQ client?

Obviously CSS is way less dead than those, but there is always an opportunity cost. It's not a valid engineering argument to say "we should spend resources on X" without considering what else those resources could be spent on.

My initial comment is really just observing that maybe Microsoft's move actually does imply that they believe, no, the world doesn't need another CSS engine. I don't know if that's true or not, but I think it's interesting to ask the question.

We sort of a tacitly assume that the web will grow and grow forever and ever. But maybe that's just because we've only seen the first half of its life cycle. Maybe it is reaching a plateau and becoming a commodity. There are good questions about whether that's true and, if so, whether that's a good thing.

But I don't think it's illuminating to just assume the best way to improve the world is to have as many browser implementations as possible. Like an entire Dyson sphere populated solely by engineers each writing their own HTML parser.

> then disruptive innovations are less likely to happen.

Maybe the disruptive innovation has happened and the disruption was to move off the web. The Internet and HTTP is doing great. What mobile app isn't on the Internet? Maybe HTML+CSS+JS is no longer the optimal user interface language for it.

> People who don't work at Google should be allowed to develop the Web platform, without asking Google for permission.

I guess I don't see what you're getting at. Browsers don't write themselves, so if you don't want to ask one of a couple of giant rich corporations to do something, that means you better have deep pockets yourself.

Even if Microsoft kept their web engine, how does that help? Now instead of asking Google, Mozilla, and WebKit for permission, you have to ask Microsoft, Google, Mozilla, and WebKit for permission and then get them to all agree on it.

Also, congrats for Rust 2018 :)

Your comment isn't too far away from accusing GP of shilling. I think probably it would be more productive to discuss any of the points he made about platform complexity or technology homo/heteroculture without going full Mozilla v. Google here.

Is Microsoft not capable of adding whatever they like to Chromium? I don't understand.

Why would they be?

The owner of the repo is Google. Google gets last word on anything Microsoft wants to include in Chromium/Edge.

> The owner of the repo is Google

That has no impact on what MS can do downstream as long as it's an open license.

If Microsoft, or Opera, or anyone else downstream wants to pull out parts of Chromium and replace them with Rust components (including a parallel renderer), they are free to do so. It increases their maintenance cost to maintain the unique components, but so would maintaining a whole separate from-scratch project instead of being downstream.

...or whether the web can/should support any technology that could possibly threaten Google's dominance.

I mean, I don't know that I'm afraid of it, in the sense that it's clearly already been here for a few years now. Microsoft is one of the wealthiest companies on Earth and decided they didn't have the resources to compete with the web's Chromium monoculture.

Don't people follow standards-compliant HTML/CSS/JS and compile to the browser of their choice? How often does a standards-compliant site work on Chrome but not on Firefox, assuming that all the targeted features you want are there?

In reality, none of the browsers are quite standards compliant, and developers don’t know the standards by heart, so they often go with what works on their setup, which usually means Chrome.

Any self-respecting and experienced developer who is worth his salt writes his code towards the standards and not toward a browser. If one needs to adjust his code because it doesn't work in a particular browser, then he's adjusting for the browser, not the standard.

Given the amount of devs that mix gcc or Linux for what ISO C or POSIX actually are, I would say the situation is not much different on the Web.

I am starting to think we need an additional layer that compiles to HTML and CSS, and guarantee to work across all the browsers.

If Microsoft knew that Edge in its current state is inferior, why did they try so hard to make every windows user switch to it? I mean there was this "startup growth hacking" kind of craziness from a corporation and sudden admittance of defeat... It's very confusing.

Edit: We all know why they want everyone to switch don't we, but think about all the now admittedly false marketing! It's not like they stopped the aggressive marketing for a few years and now saying that they can no longer keep up. They probably are doing it now still and implying that Edge is better. Is the marketing really so uninformed about such big decisions?

Microsoft is trying to drive traffic to Bing (and their other services). The rendering engine doesn't actually matter. Microsoft could just bundle Chrome with Windows but instead they are specifically taking the Chromium engine and putting it in an Edge shell. The only reason for that is to maintain control over the user to drive them to Microsoft properties.

> The rendering engine doesn't actually matter.

It does matter. From the comment above "browser vendors taking the lead over standards committees" means influence on where the technology is heading, specially for rendering engines. Remember how long it took IE to implement canvas? This was a way to avoid a new "OS" over a OS (Windows)

This decision is perfectly in line with Microsoft's shift in focus -- Windows is no longer the hill they want to die on. Microsoft is all about services.

Also I suspect Microsoft will have far more actual influence by driving development of Chromium than with their own rendering engine. It's pretty hard to drive new standards when you are barely achieving the current ones. Microsoft's focus on Electron for cross-platform development kind of informs this move as well.

I get that Microsoft is trying to reinvent itself, but at the core they are (were?) a software development company. It kind of looks bad when you throw your hands up and say “this is just too complicated, we’ll replace it with an OSS component”. Don’t get me wrong, there is no love lost for IE or Edge from me, I’m just baffled at this move.

I think it speaks of a maturity not common to this industry. Pick your battles and battlefields (mutables) after considering resources and the environment (immutables). Conceding Edge will doubtless let them divert focus and resources to areas that are of greater strategic value.

I'm sure they'd also prefer not to give a competitor too much influence and, for example, be able to make Google Docs work better than Office 365.

(Not saying that Google will necessarily do such a thing, but I think Microsoft would prefer them not even having the option.)

Exactly. That's also the reason of bringing Edge to macOS.

Users don't care what's inside. Brand awareness is important. Edge will live on, even if it's just a Chromium skin.

And if Google abandons/closes Blink, MS will be forced to spend a bit on browser development again. (Or they'll just fork Firefox.)

Currently it's a win-win for them. They need the web to deliver their services (outlook, office365, azure), now they can develop those cheaper, as they don't have to spend that much on testing as Edge and Chrome will be likely very close.

Maintaining an independent browser has been of no benefit to Microsoft for very very long time. It has actually been an extremely costly effort with almost no result. That's my opinion.

The CEO Nadella however has no interest in this kind of thing carrying on, hence the Axe.

Pay attention:

With hindsight, perhaps the recent "crazy" efforts of the Edge team to increase usage and prove some kind of value were in-fact a last-ditch effort by sections of Microsoft to maintain a high-level of browser investment.

Big companies have lots of stakeholders. The person whose job it is to grow Edge's user numbers isn't the person whose job it is to make the call on the rendering engine. I don't know if their interests really conflict in this case, but in general it wouldn't be surprising if those two people/orgs sent mixed messages sometimes.

> f Microsoft knew that Edge in its current state is inferior, why did they try so hard to make every windows user switch to it?

Because it's not inferior in all ways? Edge has far better support for anything touch (Firefox and Chrome as still awful in this respect) and the battery life using Edge is far better than any of the other browsers.

I'm always forced to use Edge at times because of how much better those aspects are, even though other things are worse.

I also wonder if this is why they're going with Chromium; they can work on getting better touch and battery life on Windows built into the thing.

I agree with this. Edge isn't really inferior in terms of capabilities - the problem is market share, and Microsoft simply has no answer to Chrome on this.

I don't think this is an admission that Edge's engine was inferior, just that it might be easier to convince people to use Edge if it used the same engine as Chrome. Using Chromium is just one less reason to not use Edge.

I mean if Microsoft can somehow shed the "Windows 10 spies on me" sentiment echoed so much around these parts then they might be able to capture some market share from Google who is more and more being perceived as big brother spying on you.

I doubt this move will help them but it will definitely make the justification for Enterprise adoption of Chrome a little harder.

They still want you to switch to Edge - they just are admitting that having a NIH syndrome is from a business use case not useful here.


Isn't that kind of exactly how a "nimble startup" would want to operate? Push push push, and then when it doesn't work "pivot". At least that's what a startup would say in a very grandiose blog post about "strengthening our core and starting a new exciting chapter." It seems to me like the Microsoft Edge team is trying to operate as nimbly as they can inside the giant and were given latitude to do so. I say good on them for regcognizing the situation and having the fortitude to make the decision that is probably best for MS's customers.

If your product is inferior, what do you do until you can make it better? Shut down your company?

Because it is not about edge being worse or too expensive, is in good part about having electron apps run better and with more battery efficiency. so the choice is to either implement the whole v8 API on their engine or use v8.

Remember when Apple switched from PowerPC to Intel?

That’s not a correct comparison. They did not make PoeerPC CPUs. But if we will follow this analogy, Apple is expected to switch to their own CPU soon, getting independence and increasing their intellectual investments. Very different from MS who just gave up having a huge advantage of being able to ship anything on a main OS.

That's not what I meant by raising this incident. The top-level reply spoke about marketing something as better than a competitor, then switching to that competitor, and the cognitive dissonance involved. The PowerPC to Intel switch is another example of that pattern: marketing your option as superior to a competitor up until the moment you discard your current path for the competitor.

It's meant to illustrate that this is hardly the only time this has happened, and that one should think carefully about not only whether marketing is accurate but whether it's comprehensively addressing everything you might care about.

> If Microsoft knew that Edge in its current state is inferior, why did they try so hard to make every windows user switch to it?

Because the quality of the product has nothing to do with Microsoft wanting to maintain dominance at all costs. But don't worry, they will continue to try this with the Chromium-based browser, too.

Man, this sucks. I really wish they had open sourced their new engine and stuck with it. I would have volunteered time porting it to Linux/POSIX as well.

This is probably going to get a bit "rant-ey", it's not directed at you, but at the ecosystem at large (and kind of at myself).

Everyone keeps saying this, but nobody is actually doing anything about it. People (myself included) talk about how a monoculture is bad, but we still don't use Edge. We talk about how more competition in the browser space is a good thing, but we still complain when the latest features or security benefits are missing from a browser. And then when the feature lands, nobody cares.

We complain about how bloated and slow browsers are getting, but completely ignore those which are/were slimming that down. And we talk about how Chrome and V8 are taking over the world, but we won't use tech like node-chakracore[1] despite it being a very positive experience when I last used it.

I'm assuming that Microsoft is spending a shitload of time and money on their browser engine, and it was still getting very little usage. They have great performance, some really cool security features, lots of great user-oriented features, and it very rarely gave me issues as a developer, but still nobody (again, myself included) used it. Can you blame them for not wanting to continue?

I feel the same as you, this sucks. But I can't blame anyone but myself, because I don't use Edge (despite using Windows as my daily-driver), and I most likely won't switch to it, and it has very little to do with its capabilities as a browser, and more to do with network effects (i'm used to chrome, my information is in chrome, I'm used to the dev tools in chrome, and I personally and selfishly have no reason to switch to Edge, even if it's technically better)

You can't blame the company for not wanting to continue pouring money into something which is getting very little usage or return on investment at all. At least by working with Chromium more people are going to get the benefits of their work.

[1] https://github.com/nodejs/node-chakracore

> (i'm used to chrome, my information is in chrome, I'm used to the dev tools in chrome, and I personally and selfishly have no reason to switch to Edge, even if it's technically better)

Yep, the same can be said for Firefox. There are hundreds of threads with hundreds of comments on places like Hacker News and Reddit and Ars Technica, all grousing about how Google is the behemoth that is taking over, Chrome is bloated and slowing down and e-mails all of your personal bits to Google, oh woe shouldn't there be a equal competitor in the market, blah, blah...

But too few people actually put their clicking where their talking is and switch to any other browser. People seem hardwired to say "yeah I know it sucks but I want to use Google and thus I want to use Chrome."

Far fewer people with software development skills--that I sorely lack--bother to contribute to Firefox (or, heaven forbid, Thunderbird) development to fix those problems.

Meanwhile, I hug Firefox just a little bit closer every year, wondering if this year is the year that the project fails or simply stops moving forward or whatever. I'm thrilled that companies like Privacy, Krypt.co, and even Capital One still make Firefox extensions and I use them daily. But for how long, when every technology-oriented person on the planet seems hell-bent on using Chrome, outcomes be damned?

It's also hard. Despite the complaints of Google dominance, Chrome is just a really good browser.

I tried to switch to Firefox Quantum earlier this year as my daily driver. I had some minor annoyances, but I ended up switching back to Chrome for the devtools.

Web dev tools are something I have to take people's word for (and, to be clear, have no reason to doubt) since I don't do that kind of work so I have no clue what makes for good tools versus bad ones. But, my overall point still stands: If this is such a major failing in Firefox, is there nobody passionate enough to help keep a browser--that lots of people claim to want to use but for those tools--up to par with the competition?

Firefox' devtools live in GitHub these days and can be patched without needing to build Firefox. I'm sure they'd welcome contributions from passionate developers.


The original “wow!” development tool for Firefox wasn’t event developed by them, if I recall correctly - Firebug was just an extension, developed by one guy, but the extendion system and developers’ interest in platform were in place

I use Firefox day in and day out and the only time I have found myself using Chrome is when I have to do profiling and even then that is because profiling tools in all browsers kinda sucks.

I have often wondered what is the killer feature that Chrome dev tools has that Firefox does not that forces people to switch back to Chrome as this seems to be a common refrain and while I don't work on the dev tools I sometimes wonder what awesome feature I am missing in Chrome...

In some cases, I actually find Chrome lacking. For example, the ability to see what events are attached to a dom element.

DISCLAIMER: I do not work on the developer tools for Chrome or Firefox and don't do much CSS.

Chromium is open-source too, so if there's problems with it, our hope is that people come contribute and fix them.

But that is not the point. Chromium is a very very nice browser and it is better for everyone (Chromium included) is it is not the only one.

> But I can't blame anyone but myself, because I don't use Edge

The problem is not with you or other users, the problem is with using adoption as a metric to determine success/failure of a browser. Sure FF needs adoption for funds, but for companies funded outside of that model a browser needs a BDFL not subject to the whims of adoption levels during different internet periods for us to have a vibrant ecosystem. But it won't happen because renderer implementation count is the least important and most costly metric.

IMO, what's happening here is not based (mostly) on adoption, rather it's about upkeep. The level of effort for browser maintenance outweighs its value for most regardless of user count. Hence the want to leverage existing codebases, share code, and add little flexibility that would exponentially expand the maintenance surface area. This will remain the general trend until a new form of hypertext (or a reduced form of existing) is in widespread use with the goal of implementation ease instead of just targeting ease. I don't suspect that'll happen anytime soon either if ever.

This is true to the level that most people are not comfortable accepting.

Yeah, I don't like monoculture.

Even if Edge did run on Linux and were open source . . .

. . . and I'm just being honest here, and I'm probably not alone . . .

I just don't trust Microsoft.

Maybe I'm wrong. Maybe they've truly changed. I'm not trying to imply anything about Microsoft, but merely express my own internal feeling about them. I doubt I am alone.

This is not to imply that I trust Google either.

If you distrust them both for sure you should prefer keeping them in competition.

There's still time to open source it. I'm confused why they don't, at this point.

Well, not that confused, I guess it ties in to Windows quite a bit and it's probably not worth it for them. Still I hope they do it.

I do not think it is trivial to port EdgeHTML. Don't forget it is a fork of Trident with the legacy parts clipped away and some cogs polished, replaced or added. Not meant to run multi-plat, not even meant to run outside Windows 10.

Wrong person to reply to :) I don't really think it's worth porting it to Linux either. Although I'm sure the Wine people would have a field day with it.

But open sourcing it for the sake of practical domain knowledge, if not history, would be good.

"There's still time to open source it. I'm confused why they don't, at this point."

can't... it's really difficult to retroactively open source something.

Only a few developers grok the code and they work for your company and are about to move on to another project.

Tooling is usually proprietary and tied into some 3rd party infra....

Look at OpenJDK... Sun and Oracle dragged their feet FOREVER on this and the project still has problems because of it...

Should have been OSSd in 2005 but Sun was insanely naive.

I don't think they can. EdgeHTML is a fork of Trident (MSHTML), and that originated from code licensed from Spyglass.

Note they dropped the Spyglass licensing thing from the about prompt in IE7 (8? I don't quite remember), following an internal audit of the codebase. They certainly believe it to be free from Spyglass at this point.

This is step 2: Extend.

Oh enough of this meme, please. It should be required that anyone who tries to be clever with it actually justify it with a full explanation on what they think the three matching steps are/will be.

Extraordinary claims require extraordinary justification.

EEE, astroturfing and similar bait and switch tactics has been so common for decades that some companies are guilty until proven innocent.

I disagree that EEE has been "so common for decades". It's a tactic Microsoft employed for some time and, as far as I can see, hasn't used since (not as a common strategy at the very least).

The only company I can think of that EEE-as-a-strategy might apply to is AWS, and I say this with huge reservations because their priority is still their customers.

It's step 1: embracing the open standard. They'll extend it next. Another commenter already pointed out that could be as easy as just using Bing to send revenue to them using Google's tech. They'll come up with other ideas.

Far as open-sourcing their stuff, I think they're holding off on that to preserve their profitable lock-in in legacy market. Harder to clone their key dependencies if the code isn't open. Even opening the data formats like for Office wasn't enough to make a copy that renders all existing documents perfectly. That was by design, too.

I think it makes more financial sense for them to keep existing stuff closed followed by Embrace with Microsoft-oriented Extend on open stuff. I doubt they'll Extinguish since they don't have enough clout to do that in this market. Probably in most markets now.

> Even opening the data formats like for Office

Ah the only second ISO Standard for the same thing. With transparent definitions like: if option XYZ is set, render the output like Word 97.

Blatant corruption by a standard gremium.

I'm a bit sad by the announcement. I quite like edge, and now the browser ecosystem is getting narrower.

What should Mozilla do now? Should they just give up? Now that everywhere except ios/macos is blink (and v8 i think, i'm not sure after reading the announcement) why should anyone care for firefox?

Should also Mozilla start using chromium as a base? Mozilla will still be able to add quite the value in term of functionality, and with a bigger focus on privacy than google. I'm honestly not sure anymore.

Maintaining a browser is a hard work and it's getting harder, so it's (i think) unlikely a new player will ever enter the game, and having one engine where to test thing will make the job of creating websites and webapps simpler, on the other hand a monopoly can be a very bad thing for the web.

I like firefox a lot, and it's my daily driver, but if tomorrow they change the engine, i probably won't even notice, and not having to maintain the entire stack may allow them to better focus on other area, like decentralization, privacy, addons and services (firefox send is amazing), and may even allow a easier experimentation with new webapi.

I'm really not sure how to feel about this...

On a side note: I really do hope they make chromium and especialy CEF more modular. it's amazing to embed a web browser inside a app, but it's very hard to override some of his behavior, for example: while it's easy to have a custom cookie management system, there are no api to override localstorage or the chronology, only some workaround.

In a past work project we needed to build a thin client for a intranet and one of the requirement was, basically, an encrypted browser profile, custom CA management, client certificate and some other things, doing that using cef was very hard and it used a lot of hacks.

edit: correct some grammar

Honest question: what is the population of committers (not contributors) on Chromium? Is there any significant number outside of Google?

Is Chromium de-facto controlled by Google, or more community driven?

Chromium is completely controlled by Google. The key decision makers are all in the Google reporting structure.

There are a significant number of committers outside Google, yes.

The main part of Chromium that matters here is the content layer and below. The biggest single piece of that is Blink, which already uses a governance model with public intent-to-implement/ship notices that anyone can propose or give feedback on.

The single largest group of committers are employed by Google, but there have been increasing contributions, including to core function and direction, from external people; for example, Opera folks were key in helping change the memory model in Blink ("Oilpan").

Considering that Samsung Internet, Brave, Opera, Electron etc is based on Chromium and at least Samsung Internet adding new features of their own to it, there are at least many other people working on the code base.

I would guess that Microsoft would keep using Chorus rather than adopting V8, but if they aren’t, then V8 has contributions from eg. Node.js

And as states in the article: Edge on Android and on ARM seems to already be Chromium based

There's a crucial difference between "working on the code base" and having commit access. The committers are the gatekeepers and the steamrollers.

What I'm effectively asking is this:

1. If Google opts to steer Chromium in a way that the community finds objectionable, could the community stop it?

2. If the community opts to steer Chromium in a way that Google finds objectionable, could Google stop it?

In the past, some Opera employees do have commit access to Blink. When I was working on the content layer of Chromium (and some other parts) as an Opera employee I never had commit access, though I do get bug editing access (which is for triaging bugs).

Overall, it doesn't feel like there is a community at all, it's more like Google deciding everything then tell external contributors as a courtesy. I believe there can be technical influences driven by non-Google contributors but that's pretty rare.

That said, perhaps Microsoft can be an exception if their participation is big enough.

> "1. If Google opts to steer Chromium in a way that the community finds objectionable, could the community stop it?"

The answer to that is obvious. Of course not.

Google owns Chromium's repository. Even if the "community" decides to fork Chromium, Google owns Chrome, so any fork of Chromium is completely irrelevant. That's because people download and install Chrome and not obscure Chromium forks.

And that is why web standards are important ;-)

“Obscure Chromium forks” – like Samsung Internet and Edge?

Remember: Chromium itself is an “obscure fork” of WebKit...

>> "“Obscure Chromium forks” – like Samsung Internet and Edge?"

Yes, exactly like those two.

>> "Remember: Chromium itself is an “obscure fork” of WebKit..."

Actually when Google forked WebKit, Chrome wasn't obscure at all. But yes, that's the perfect proof that Google doesn't want to cooperate when they aren't pulling the strings.

Don't forget Opera is a re-skinned Chrome.

Right, at which point Opera too became completely irrelevant.

First they switched their engine to Blink, then predictably after 3 years sold out to an obscure Chinese private equity fund.

I mean it's re-skinned in the same way as Samsung Internet and I believe Edge will be: a totally different browser UI implementation around the same browser engine.

Samsung Internet has their own implementations of quite a few web standards - calling it a reskin isn’t very accurate

Yeah, but if many people are working on the browser code and those people don’t like what Google is doing anymore, then they individually or collectively could fork the code, just like Google forked their engine from WebKit when they wanted to move in a different direction than apple

If google is a jerk to Microsoft, you can always fork. That is the beauty of open source software. The destiny is in your hands if you’re willing to put in the work.

1. No.

2. Yes.

A lot of you guys are lamenting this decision.

I'm insanely excited about it!

I've been working on a new reader and documentation manager for PDF and cached web content:


It's based on Electron and targets Chromium.

What I'm hoping happens here is that this means more focus on Chromium and potentially more work on Electron + Carlo.

Electron is amazing but it's pretty bloated per app. If it's made lighter weight and something like Carlo can just use the OS installed browser in an isolated process you'll have the best of both worlds.

You can use web standards to build your apps and at the same time dock into native OS features without the massive bloat.

Right now Polar is about 100MB to download and uses about 200MB of RAM. Not the end of the world but also not super fun.

There's the issue of one central monoculture but there's still the opportunity to fork if chrome/edge gain too much market share.

The fact that projects choose to target a specific rendering engine as opposed to just writing web standards compliant code and having it work in any browser that follows those standards is precisely the reason why people (me, at least) are lamenting this decision.

With Edge, Blink, and Webkit competing for marketshare, app developers are forced to at least think about sticking to web standards or risk losing a chunk of potential users. In a world where only Blink exists and all developers care about is that things work in Blink, any new browser entering the market now not only has to worry about compliance with official web standards, they also need to worry about emulating the idiosyncratic behavior of Blink that developers have discovered and started abusing or taking advantage of. The actual standards essentially become moot and Blink becomes the real standard. And while, sure, Blink/Chromium is open source, with both Google and Microsoft heavily invested in its development and direction, who do you think is going to have all the power in making the important decisions?

The problem is versioning. Chromium jumps major versions in releases very very often. This often includes security updates. Microsoft isn't going to keep old versions of the browser around nor are apps totally not going to break when the chromium version gets a bump.

I feel like I should be happy as a web dev to hear that I no longer have to support a browser engine made by Microsoft (which has been a huge pain and despite this will be a huge pain for a while due to people still using old browsers) but this feels bittersweet. It feels like we're taking the engineering out of everything because companies can make more money by not innovating.

They want short term wins and gives away long term ones.

I guess the Chrome team itself aren’t happy about this. Will make standards work harder for them. Better to have the Edge team build alternative implementations of standards in their own engines than to implement even more stuff in Chromium.

Chrome already has a hard time not running ahead of the rest of the web, they don’t need more people to speed it up even further.

There's a new GitHub repository for Microsoft Edge:


The readme goes into more detail than the blog post announcement, including emphasis on Windows on ARM, information about WebRTC for UWP, and explicit confirmation that they plan to bring Edge to Windows 7 and 8 as well as macOS.

Also, looks like they're using the MIT license.

Will Microsoft use V8 as the javascript engine then as well or continue to use Chakra?

If they won’t continue to use Chakra, what happens to that project then? It is open sourced and there’s work to make Node.js use it: https://github.com/nodejs/node-chakracore

All the more important to support Servo and Gecko – we can’t have all browsers be of WebKit origin – we rather need more initiatives like Servo, that reinvents the engine from scratch, optimized for modern environments.

They will be using Chromium (blink+V8) but intend to continue the open source development of chakra, but I suppose edgehtml is dead.

Source: https://twitter.com/bterlson/status/1070754781822574592

When Microsoft released Edge, they claimed bugs plagued IE because they couldn't update IE without OS updates. Edge as a "store app" would receive frequent updates, independent of Windows OS updates. They ended up tying Edge to Windows. And kept promising but never delivered. Instead of small frequent browser updates, we got large frequent OS updates. Maybe now that Edge's dead, they'll slow down the frequency of Windows update a bit.

In the beginning, IE was speedier than Edge. Had more features too. Edge was fragile and froze often. Updates fixed some of the speed issues. I froze my windows update so, I don't know how it stacks up right now.

To increase Windows store usage, MS also decided to tie Edge extension to the Windows store. This wouldn't have been a problem. In fact, I like the idea of getting all my stuff in one place. However, MS decided to create the annoying store app. I'm on a desktop, a real computer. Why on earth can't I open the store on a browser and have the installer do its work in the background? This is where I drew the line with Edge.

I'm not surprised that Edge's marketshare declined with increased Windows 10 marketshare. Edge is Microsoft's second Windows 8. They are both PC software designed to please mobile users and infuriate PC or touch-less users. And both hide settings - make it a chore to change minor settings.

I believe throwing Windows Phone under the bus has come back to bite Microsoft in the ass and Edge is just a trailer.

Microsoft is still gutting Windows 10 - turning it into a phone OS for desktop users, replacing working software with incomplete toys.

As far as I'm concerned, Google didn't beat MS in the browser game. MS simply frustrated IE users over to Chrome by forcing Edge on them.

Windows is the next software MS will abandon for Google's alternative. All Google has to do is not mess up android.

If you remember Nokia/MS's failed fork of Android you'll feel the chill. Microsoft now sells android smartphones in both its online and retail stores.

I predict MS is not done with Edge. At the end, they'll abandon that too for Chrome. And all they'll do is change the default search engine to Bing.

> MS also decided to tie Edge extension to the Windows store.

I think this was a big mistake. I hope they mirror what Google is doing with the Chrome store. As a developer, I had to: 1) Port my Chrome extension into a UWP app 2) Embed another win32 exe to read/write SQLite databases because UWP don't do that. 3) Pay $100 to open a developer account 4) After compiling the extension, reading blogs to figure out how to even upload the correct files 5) Have Microsoft deny my extension because it required special permissions (the win32 exe) 6) Still no extension uploaded.

Microsoft.Data.SQLite [1] is baked into the UWP for reading/writing SQLite databases, and has been since the Fall Creators Update last year (and that library exists in a backwards compatible way all the way back to the 2015 November Update if you have LTS support needs).

[1] https://docs.microsoft.com/en-us/windows/uwp/data-access/sql...

Funny that minor side project of KDE is now responsible for the vast majority of today's Internet traffic. Did the original authors of KHTML ever receive a single dime for their work?

> Did the original authors of KHTML ever receive a single dime for their work?

Why would they? That's not how open source works. If the KDE devs that made Konqueror wanted to capture value or do it for monetary gain they would have made a closed source browser and I doubt Apple would have then picked it to build WebKit.

Apple is what made WebKit predominant, the KDE devs simply did a great job and should be very proud of what they've done, but it doesn't make sense for there to be policy change around open source for recompensating devs when their projects take off.

> Why would they? That's not how open source works. If the KDE devs that made Konqueror wanted to capture value or do it for monetary gain they would have made a closed source browser

Making something open-source does not mean you don't want to make money off it.

> Did the original authors of KHTML ever receive a single dime for their work?

Many, AIUI, were employees of Trolltech, and I assume Trolltech paid its employees.

I wonder how much of KHTML is even left in WebKit/blink.

That's common story. SQLite began as TCL extension. And who uses TCL these days compared to SQLite?

There is almost nothing left of it for years.

EdgeHTML is also used for embedding HTML into UWP, and controls have been released for WPF and Win32. I wonder what will be the story of that. Will that be transparently changed to Chrome, can it be changed to Chrome or will EdgeHTML be used only for that?

I suspect the rise of Electron apps, including Microsoft's own applications like Visual Studio Code, are actually driving this decision. Effectively within Microsoft, Chromium has already won over EdgeHTML for desktop applications.

This is so important to consider, chromium is more than a browser these days

Tweet from journalist Simon Le Gros Bisson:

EdgeHTML and Chakra will still be maintained; I was told that the transition to Chromium for web views in UWP and the like is a longer term plan.


New controls for Chromium coming, but for now EdgeHTML controls will remain and get serviced. No major features.

I'm doubtful they would/can change the controls over transparently. My guess is that once the Chromium engine is ready, binaries built against new Windows SDKs will use Chromium, and existing binaries will continue to use EdgeHTML.

On that note- what is the engine used by outlook, word et al.? I seem to recall outlook used something different from trident back when ie was the main browser.

Yes, and was ironically more standards compatible than WordHTML they use now. AFAIK they changed to WordHTML with or after Outlook 2007 [0]

[0]: https://www.howto-outlook.com/faq/wordhtml.htm

On one hand, this creates a platform that is more or less the standard of the web. On the other hand, this only gives Google more control of the web.

I really wish that instead of doing this Microsoft would just stick with EdgeHTML and maybe open-source it.

The monoculture is the main issue here.

Google should not be happy about this.

Makes it harder for them and everyone else to push web standards forward.

What I find a bit curious is that's a fully Chromium based browser, it's not simply based on the Blink rendering engine. So, it will be much closer (probably) to Chromium/Chrome than other blink-based browsers like Brave or Opera.

I'd really like to understand the rationale behind this choice. What they'd like to leverage from Chromium that Blink alone wouldn't have?

Opera and Brave are both chromium-based, rather than just using the blink engine. The official webdriver plugin for opera [1], published by opera, refers to their browser as "chromium based". The brave browser [2] is open source and you can see it syncs from Chromium

[1] https://github.com/operasoftware/operachromiumdriver

[2] https://github.com/brave/brave-browser

Opera's built on top of the Chromium content API (approximately Blink plus things like networking, some OS integration stuff, etc.), rather than a fork of all the UI code; the UI is a completely separate implementation and shares nothing (and this is very obvious if you look at early releases of Chopera, with it having much fewer features than Chromium of the same period).

> UI is a completely separate implementation and shares nothing

Not completely true, many "model" part is shared with Chromium code (given the liberal license) while "view" part can be different.

It's likely because of Electron. Microsoft already creates applications for Electron (which is Chromium) so maintaining that compatibility is likely a high priority.

I'm not aware of any third-party browsers using Blink that aren't actually using it via part of the Chromium stack, usually by including the content layer. Blink doesn't officially support direct embedding by anything other than the Chromium content layer.

It's hard to glean technical details from the post, but "We will move to a Chromium-compatible web platform for Microsoft Edge on the desktop" indicates to me that this will be Edge based on Blink, not the full Chromium shell renamed/rewritten to be Edge. Hard to tell though

Or it could be the other way around: a Chromium shell still calling EdgeHTML render processes?

It's really not clear in this blog post. What does "Chromium-compatible web platform" mean? Which part of Chromium is the "platform" in question? This blog post doesn't have enough answers.

Pointed out in other threads, the GitHub README has more details: https://github.com/MicrosoftEdge/MSEdge

I still feel like I've got a ton of questions left unanswered, but the README helps.

As impressive as chakra is, V8 is the same in contrast to edgehtml to blink, they don't see the value of fragmenting support, and V8 really is getting very powerful, a blink+chakra browser would likely be more of a nightmare to developers

I disagree. Chakra is a lot more js spec compliant and close to v8 than edgehtml and blink.

They already had chakra working with nodejs.

Rendering engines are mammoth projects. I’ve contributed to Chakra, v8 and nodejs. They are somewhat manageable codebase. Blink codebase is insane.

It's crazy! This is not the Microsoft from ~5 years ago. They have really changed! Opening up to linux, cross-platform apps, open sourcing tech, open sourcing their patents(!), and now using open source chromium for MS Edge? Dam. I never thought I'd see the day...

It is an interesting time to be alive, that is for sure.


Could this be a bad thing for Firefox? Seems like Microsoft + Google is quite a rival to go against?

Firefox (by that I hope you mean Mozilla Project) cares about diversity and choice. Our Mozilla Manifesto [0] describes our vision of the balance between corporate and civic value of the Internet.

I speak for myself - I believe that decrease in diversity of implementations of the Web standard and drift toward a monopoly is harmful to our vision of the Internet and ultimately will hurt the Open Web.

[0] https://www.mozilla.org/en-US/about/manifesto/

I mean, in all honesty, EdgeHTML wasn't ever really an engine that had much hope. IE has always been loathed, Edge just continued that trend. Their marketshare wasn't great, and tying browser updates to the OS as they did with IE was irresponsible for how browsers are shipped these days.

If Edge had 35% marketshare I'd be more concerned, but nobody was using it, and web developers hated trying to make their sites compatible.

Good riddance to IE/Edge of old :)

Microsoft still can participate in the WhatWG discussions, they can still try to exert some kind of influence over where Blink goes. (In the most expensive way they can just put a lot of "if"-s in the code to make Edgemium work differently from Chrome.)

Microsoft is not an active rival - at least not from a technical perspective.

It is probably up for Mozilla to make a choice: will we implement the standard or will we mimic the behavior of Blink for compatibility reasons (which may be incorrect in some cases).

I understand adding bug compatibility in the days of IE6, but in the days of Chromium, why not just fix the bug in Chromium source?

Having more chefs in the kitchen is not necessarily a better thing.

Excellent news. Google mostly does not have their own desktop OS to "protect", so they are probably incentivised to make the browser and the apps running in it feel as "native" as possible, with proper access to important local resources when relevant. Considering how Apple is dragging their feet with service worker and offline support on Safari (where they have a monopoly on iOS), this is probably a good thing overall. Fingers crossed!

> "Google mostly does not have their own desktop OS to "protect""

But they do and they are actually Microsoft's biggest competitor on the desktop:


In short. Edge engine is dead. Based on Chromium. Not an UWP. Will be on Windows 7 and Mac.

This is hilarious to me. When Edge was just a rumor and before Windows 10 was released, I said here that I hope Microsoft will not repeat the mistake of tying this new modern browser to Windows 10 like it has done in the past with Internet Explorer and prior Windows versions.

Microsoft, in its short-sighted way, thought that tying the browser to Windows would be an "advantage," because of things like "better integration with the OS" and throwing the Edge updates in there with the Windows updates, without needing a different update channel.

However, this was short-sighted was because of the following reasons:

- Edge development would remain very sluggish compared to the development of Chrome and Firefox, as new major features would have to wait until Windows itself gets new major features (which happens every 6 months, rather than 6 weeks).

- It would mean Edge would not be cross-platform, a huge strategic mistake on Microsoft's part. People want to use the same browser across devices.

- The proprietary "features" Microsoft would build in Edge over time that only work with certain versions of Windows will come back to bite it in the ass in the future.

>"- It would mean Edge would not be cross-platform, a huge strategic mistake on Microsoft's part. People want to use the same browser across devices"

Realy? Id prefer different browsers optimised for the device. I don't even think theres much similarity between the desktop and the mobile browser anyway.

Any benefits other than bookmark sharing etc?

I didn't see any mention of Windows 7 or that it won't be a UWP on Windows, are there more details somewhere?

The GitHub readme is more explicit:


> We will evolve the Microsoft Edge app architecture, enabling distribution to all supported versions of Windows including Windows 7 and Windows 8, as well as Windows 10. We will also bring Microsoft Edge to other desktop platforms, such as macOS.

Agreed. I see zero chance that Edge will suddenly be ported back to Windows 7. And it would be almost as big of a shock if the Chromium-based Edge is not UWP.

I stand corrected--this is exactly what they're going to do. Take Win32 Chromium, rename it Edge, and build it for Win7, 8, and 10. What a huge blow to everyone at MS who believes in UWP.


Why should it be a blow?

The fact is that if they want to support Windows 7, 8.1 and macOS it naturally cannot be kept as UWP app, as their infrastructure requires Windows 10 features.

UWP includes Win32 apps, as well (if they play well with appx/ MSIX).

> What a huge blow to everyone at MS who believes in UWP.

That may be so, but is there anyone outside of MS who believes in UWP? Not even stalwart MS exclusive devs seem to do so.

Adobe XD is a UWP app.

It's important to remind folks the Universal Windows Platform includes Win32 apps.

Maybe there will still be a UWP version on Windows 10?

The blog post says it's coming to all supported versions of windows. Until 2020, that includes Windows 7 and 8

In this case, I think "supported" means what Microsoft calls "Mainstream Support" (1). Windows 7 and 8.1 are both in "Extended Support", which only gets security updates.

Mainstream support for Win7 ended in 2015, for Win8.1 in January 2018. The only mainstream supported versions of Windows are various Windows 10 editions.

(1) https://support.microsoft.com/en-us/help/14085/microsoft-bus...

And the updates won't be tied to Windows versions anymore.

If Edge comes to Linux it will be the second ice age in hell.

Once upon a time there was an IE version for Solaris.


Why? Other Microsoft software runs on Linux.

In their defense, they did specify it being the second.

Aww man... I can't help but reminisce about how it would've been if they'd decided to become significant contributors to Gecko.

So the web is now going to be even more Chrome-centric than it is...

I wonder if they thought about picking Gecko instead.

Another "if you can't beat them just join them"? In fact Edge is 99.9999% irrelevant at least to me, all my time with Edge added up to be less than 5 minutes over the years, I only need it to download chrome(or firefox).

This is actually great for the web. Having two competitors like Google and MS contributing to a single rendering engine, and competing on the actual browsers means less fragmentation without the single-entity-control problem.

I think Microsoft made already a deal with Google about the control of chromium. It would be endless naive otherwise.

Do not forget that this is a full development stack within Windows. UWP has a JavaScript/HTML runtime and Microsoft's recent pwa visions both need to earn money.

My bet is that Google will announce in the next weeks or at the next io a foundation for dealing with chromium. The only thing which itches me with that a bit is ChromeOS. But maybe that is more a plugin thingy.

Some people are saying this is not good for competition.

I see it as a positive for keeping Google in check.

Chrome's marketshare is insane. Google could autoupdate Chrome overnight push out some wild update like requiring you to sign in to use their browser or something else like default rendering everything to AMP wrappers for example... who knows / tinfoil hat time.

Now there's a solid and non-disruptive quick switch default that is already installed (sorry FF, Brave) on Windows machines similar to what Apple has with Safari.

Wasn't an original idea of Edge that it would have several different quirks modes where it would use the old IE renderer to work with old corporate websites and such to be extremely backwards compatible? Could this break things for some companies with old IE-only internal websites etc? (Not that I don't think these should have all been made to work with chrome long ago.) If they are going to try to maintain some kind of quirks mode, would that be open sourced?

IE only websites are added to the Enterprise Site List[0] by the sysadmin and will be opened in IE11, just like now. Edge has never dynamically switched engines, it just opened IE.

[0]: https://docs.microsoft.com/en-us/microsoft-edge/deploy/emie-...

I'm wondering why they decided to keep the Edge brand. It seems dropping it and the "e" logo all together would be ideal. The logo beit IE or Edge has negative emotions for many users. I am excited for this though, because I will probably make the Microsoft browser my default once it launches since it will finally have access to the vast Chrome extension library. But, I still think they will struggle with adoption just from a branding standpoint.

There was a blog post I can't find now when they announced Edge that they had to pick a E- name and an E logo otherwise literally millions of people would no longer know how to access "the internet".

Really wish Microsoft would open source the Edge renderer.

Good development. Now we need more open source collaboration in MS gaming branch. Let MS back Vulkan instead of continuing DX12 lock-in.

I am super excited about this. I work on an open source tool to automate chromium browser https://github.com/getgauge/taiko and the Chrome Devtools protocol makes it really easy to do so. With edge using chromium Cross browser testing will suck less.

Recipe for success: Take chromium and make it super private. Put a moat up for identity, add a VPN (if that makes some people feel better), encrypt traffic etc.

You could even charge people for the heavy duty version that might use some Azure services. The only issue with this is charging people requires tying their browser to the payment method.

I hope this move changes the hostile amount of google services that are baked into Chrome and Chromium. Not saying MS is any better, but at least there will be more choices for users and where before everything was hardcoded, now there will be an option to select and potentially expose more customization for us morals.

Which Google services are baked into Chromium?

There are several services and binaries. Some examples are Google host detector, Google URL tracker, Google cloud messaging, Google hotwording, Safe browsing, password saving feature naggs you to sign-in, translation etc. There are also a lot of binaries that are bundled, but im not really an expert on those.

The store comes to mind, but see, for example, the inox patchset[1], part of ungoogled-chromium[2], which tries to minimize what Chromium calls home for (e.g. a bunch of extensions, Google accounts, and a few services which sync data with/ping the Google servers).

[1] https://github.com/gcarq/inox-patchset

[2] https://github.com/Eloston/ungoogled-chromium

WebKit Scrollbars by attrition rather than specification is an odd way to go about things, but I for one will take it!

They could've chosen to go with Safari webkit. Since on the desktop it's pretty standards compliant. & it's pretty fast & power efficient too. But they chose Chromium, because they now own Electron. Also fuxk apple for having Safari on iOS being shitty, but good at protecting privacy

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact