This post has been republished via RSS; it originally appeared at: Windows Blog Archive articles.
First posted to MSDN on Jun, 21 2016One of the most common questions I’ve been seeing from folks who are migrating to Windows 10 is: “How do I go about hiding all references to Edge / removing it entirely / putting Internet Explorer front and center and ensuring that nobody ever finds Edge?” So naturally, I’m not going to answer that question. Not because I’m being a jerk (I mean, I am a jerk, but not because of this) – but rather because that’s not my area of expertise. There are blogs and articles out there that talk about doing all kinds of things, up to and including using AppLocker to block it. I’ve not tried any of them, I think the more extreme ones are a bit odd and I probably wouldn’t recommend those, but in the end that’s not what I’m an expert in. Rather, I want to talk about the web platform strategy that we have, and perhaps persuade you as to why we’ve made the product as we have. You can, of course, choose to disagree with our approach and implement your own – that’s what configurability is all about. But hopefully I can help you make that decision understanding the intent and future implications. First things first, it’s important to understand that IE is not where we are currently investing in web platform features. It’s really something we think of as a legacy compatibility feature. If we go changing it, by definition it becomes less compatible. We’ve been hearing for years that customers really want to go away from legacy features like ActiveX. And honestly it makes a ton of sense – device and OS independence was always the promise of the web, and it’s more important now than ever. How many of you can honestly say that the only device you use is a full sized computer running an x86 processor? Other devices are important, and it’s critical to break that dependency. It’s a discontinuity. (Hoping to pre-empt the snarky comments, which I likely can’t avoid: at the time it was introduced, ActiveX wasn’t as constraining as it is today. Today, it constrains your device, but at the time, it made a TON of people web developers at a time when there weren’t a lot of web developers. Now, given the benefit of 20/20 hindsight, I’d rethink that, but there are lots of other platform features I’d put on that list first, if given the benefit of a time machine.) Now, discontinuity is hard. Just take a look at Windows Vista / Windows 7. There was a HUGE discontinuity when we pushed the world away from “everyone is an admin!” to “even admins aren’t always admins” – but it was a step that was necessary. You just can’t do anything useful to secure an endpoint if the person on the endpoint (or the bad guy) can turn off all of your security! But it meant you had to make one great big jump. However, with IE, we have a choice. You don’t have to make a big jump from one world to another. In fact, we were able to implement the single most requested compat feature we ever had on IE, which is to allow you to run two side by side. (See? Sometimes you get what you ask for.) We just chose to call the new one something else, but that’s the basic concept here. (No app virtualization required!) That’s what we have now: you have two side-by-side browsers, one for legacy compat that supports the legacy features, and another that constrains to new features and continues to grow and evolve and support new technology. If you only put the old browser out, there are side effects:
- You can’t use any new features of the web as they come out – as of right now, probably not a huge deal, but over time the size of the gap increases until it gets pretty big indeed. In a few years, you’ll risk losing lots of productivity by forcing yourself to implement these features
- You’ll lose the ability to leverage third party apps that are using new web platform features – the size of that also gradually grows over time
- You’ll risk accidentally increasing the size of your application estate that depends on legacy features. (And, by risk, I mean that I’ve never once in my long and sordid history of over a decade of being The App Compat Guy not seen that happen) This makes breaking the addiction in the future way, way harder!
- You’ll miss out on the security and performance investments we’ve been making in the web platform
- Run Edge for everything – it all works! (Most customers probably have work to do before getting here)
- Run Edge by default, bounce to IE for everything that needs it using an Enterprise Mode site list (what we recommend – even if your list is thousands of items long)
- Run IE by default, let users fire up Edge or another browser to support new technology (not recommended, as it requires an externality of the user knowing when to pop the new browser and self-managing those transitions)
- Run IE always and forever (strongly not recommended for the reasons cited above and more)