For some months now, Microsoft has been promoting the use of standard HTML5 that avoids targeting specific browsers—particularly WebKit-based browsers like Chrome and Safari—and instead works well in any browser, including its own. The company today launched a new site, modern.ie, to further promote this agenda and provide tools to help Web developers.
One slight peculiarity of this system is that if the scanner detects certain compatibility issues, rather than reporting them directly it requests that you get in touch with Microsoft engineers after demonstrating that it's your site, apparently for "security and privacy reasons."
The second component is a tie-in with a company called BrowserStack. BrowserStack offers a service that lets you view your site in different browsers running on virtual machines hosted in the cloud. It's a commercial service, but through modern.ie developers can sign up for a three-month free trial.
If you'd rather do your cross-browser testing in-house, Microsoft is providing a bunch of virtual machines for various virtualization platforms (Hyper-V today, VMware, Parallels, and VirtualBox coming soon), each containing Windows and Internet Explorer, with VMs for Internet Explorer 6, 7, 8, 9, and 10 all available.
Third, the site is providing guidelines on coding best practices.
Underscoring all this is Microsoft's continued push to get Web developers to start thinking about Internet Explorer 10, while at the same time not giving Internet Explorer 10 special treatment. That's not a contradiction; Microsoft wants developers to stop doing things like detecting specific browsers and instead detect the presence of specific features.
Internet Explorer 10 has better standards compliance than any of its predecessors, but sites doing browser detection will ignore its new features and capabilities, because they'll implicitly assume that Internet Explorer 10 offers the same functionality as version 9 or older. With feature detection, sites will automatically take advantage of newly supported features, whatever browser is being used.