Microsoft has released the fourth Internet Explorer 10 Platform Preview. It …

Microsoft has released the fourth preview of Internet Explorer 10. As is the case with previous Platform Previews, the release is aimed at developers: the new features are important to those creating rich, complex Web applications, but will have less impact on Web users.

However, even Web developers might struggle to get too excited about the latest preview, because they probably won't be able to run it: it only works on the Windows 8 preview release that Microsoft shipped at its BUILD conference in September.

The new features include Cross-Origin Resource Sharing (CORS), JavaScript typed arrays and binary file manipulation, and HTML5 video subtitling. Typed arrays and support for binary files enable much better performance for JavaScript applications that handle binary data, such as images and audio.

CORS provides a safe way for JavaScript applications to use services offered by different providers. Traditionally, JavaScript has been restricted by the same-origin policy: a script can only have full access to content that is hosted at the same domain, port, and protocol. This provides security by preventing theft of, for example, cookies and page data by objects included from other sites.

CORS allows one application to expose its data to another application even when the same-origin policy would otherwise deny such access. This is useful for creating "mashup" applications that combine Web services from multiple different providers.

Microsoft has positioned its Platform Previews as a way to let developers test and provide feedback on new features so that they can inform Microsoft of bugs, and guide the development of new specifications. The first two Platform Previews for Internet Explorer 10 were made available to users of Windows 7. This preview, however, is not. If you want to use it, you'll have to use the Windows 8 Developer Preview.

The third preview was in the same position; Microsoft did not release a Windows 7 version of Platform Preview 3. Instead, the version of Internet Explorer that shipped with the Windows 8 Developer Preview was the third preview. Though Internet Explorer 10 will support Windows 7 when released, Web developers wanting to test the software now will have to use an unsupported, not-even-beta operating system to do so. And while they can do so using a virtual machine, doing so will disable most or all of the hardware acceleration features found in the browser, making it a second-rate experience.

This is a decidedly odd move. Internet Explorer 10 is going to be fundamental to Windows 8 in a way that no past version of the browser has been. HTML and JavaScript are one way for developers to create new touch-friendly Metro-style applications, and this support will be built on Internet Explorer 10.

But as important as Metro-style applications are to Microsoft, the browser will still have a substantial user base on Windows 7, and the Web developers of today are far more likely to be using Windows 7 than they are Windows 8. Regular non-Metro Web applications still matter. Effectively excluding this group from the preview—the group most likely to have valuable feedback and insight—makes one wonder what the entire purpose of the scheme is.

They probably want to concentrate on features and making it work with Windows 8 since that's where it's going to be most important and worry about Windows 7 later. Having it finished on W8 before they port it to W7 sounds like a good idea, apart from feedback, but it seems like the browser is viewed more as a part of W8 than a stand-alone browser capable of being installed on older operating systems.

They probably want to concentrate on features and making it work with Windows 8 since that's where it's going to be most important and worry about Windows 7 later. Having it finished on W8 before they port it to W7 sounds like a good idea, apart from feedback, but it seems like the browser is viewed more as a part of W8 than a stand-alone browser capable of being installed on older operating systems.

But... Isn't IE being less tied into the OS what people want? And sort of achieved with Windows 7? Not to mention the first two previews are on Windows 7...

This is still a very early preview. Microsoft is very likely not doing well on its Windows 8 schedule. They have limited resources and are using them in the way that helps them the most moving forward on Windows 8. Even on the assumption that Windows 8 actually does ship some year, many more people are likely to use IE 10 on Windows 7 at least for a while and quite possibly for a long while. But there will be plenty of time for developers to work with it on Windows 7 before it actually ships.

Typed arrays and support for binary files enable much better performance for JavaScript applications that handle binary data, such as images and audio.

Very true, but even apps that don't handle binary data per se can benefit from typed arrays. If you have a bunch of integers to store, it's faster to store them in a typed array than a normal one. This can help things like numerical calculations, emulators/compiled code, etc.

IE is making great strides. Only one thing is missing now: WebGL. Maybe in the next preview

This is still a very early preview. Microsoft is very likely not doing well on its Windows 8 schedule. They have limited resources and are using them in the way that helps them the most moving forward on Windows 8. Even on the assumption that Windows 8 actually does ship some year, many more people are likely to use IE 10 on Windows 7 at least for a while and quite possibly for a long while. But there will be plenty of time for developers to work with it on Windows 7 before it actually ships.

> while they can do so using a virtual machine, doing so will disable most or all> of the hardware acceleration features found in the browser, making it a > second-rate experience.

I'm not sure this is an accurate statement. Both VMware Fusion and Parallels support enough of the DX10 API to enable the true hardware-accelerated Aero Glass experience in the guest VM and last I checked that was true for Windows 8 guests as well.

Are you sure that IE10 uses specific DX10 (or DX11, or whatever) APIs that are not hardware accelerated in either of these VM platforms?

At least for VMware Fusion, AFAICT this worked with IE9 as of KB2448827:

Are references to Windows 8 throughout meant to include both the desktop version and the tablet version? Presumably there's a different codebase for the two different platforms, even if the interfaces/features etc. are similar, correct?

The move isn't odd to me. MS is forcing web developers to use Windows 8 developer preview to get more developers to try windows 8 and to hopefully start writing apps for it. It reeks of desperation to me, developer support for the windows 8 developer preview may be below MS expectations.

Also to some degree it may be MS marginalizing Windows 7 and trying to push Windows 8 as inevitable and the "haterz" should just learn to love it.

Are references to Windows 8 throughout meant to include both the desktop version and the tablet version? Presumably there's a different codebase for the two different platforms, even if the interfaces/features etc. are similar, correct?

There is no separate tablet and desktop version, MS put them both in one version. Windows 8 is built for tablets, and touch controls, the desktop you access as a tile on the metro ui. The desktop is treated pretty much as a legacy item in Windows 8, at least that is how I feel after using the developer preview.

Whenever you go into Metro from the desktop and it does replace the start menu, it runs in full screen and yanks you out of the desktop.

Does this mean a requirement of Cross-Origin Resource Sharing (CORS) is to use https? Otherwise, how would someone prevent code injection that could modify the sharing rules to allow someone to steal information? I thought this was the basic reason this was never a feature before...

Are references to Windows 8 throughout meant to include both the desktop version and the tablet version? Presumably there's a different codebase for the two different platforms, even if the interfaces/features etc. are similar, correct?

There is no separate tablet and desktop version, MS put them both in one version. Windows 8 is built for tablets, and touch controls, the desktop you access as a tile on the metro ui. The desktop is treated pretty much as a legacy item in Windows 8, at least that is how I feel after using the developer preview.

Whenever you go into Metro from the desktop and it does replace the start menu, it runs in full screen and yanks you out of the desktop.

Respectfully, I'm not talking about the unified user experience. I'm talking about the underlying APIs and system resources which are built on different processor architectures.

> while they can do so using a virtual machine, doing so will disable most or all> of the hardware acceleration features found in the browser, making it a > second-rate experience.

I'm not sure this is an accurate statement. Both VMware Fusion and Parallels support enough of the DX10 API to enable the true hardware-accelerated Aero Glass experience in the guest VM and last I checked that was true for Windows 8 guests as well.

Are you sure that IE10 uses specific DX10 (or DX11, or whatever) APIs that are not hardware accelerated in either of these VM platforms?

At least for VMware Fusion, AFAICT this worked with IE9 as of KB2448827:

You could also probably use a RemoteFX-enabled RDP client to connect to the guest.

^^ What he said. I have been running Win8 in Fusion 4 and acceleration works quite well. It's not WDDM 1.1 (just 1.0), but the only thing I've had difficult running is the Win phone 7 emulator running xna apps (which makes sense). Not sure it's much of an issue really.

I'm talking about the underlying APIs and system resources which are built on different processor architectures.

Win32 and the NT kernel was built for and ran on multiple different architectures. However, they will be limiting ARM to WinRT and Metro APIs (beginning the deprecation of Win32,) and access to those APIs will be restricted to software distributed through their app stores.

I'm talking about the underlying APIs and system resources which are built on different processor architectures.

Win32 and the NT kernel was built for and ran on multiple different architectures. However, they will be limiting ARM to WinRT and Metro APIs (beginning the deprecation of Win32,) and access to those APIs will be restricted to software distributed through their app stores.

Ugh, so IE8 is already locked in as last windows xp browser. Will IE9 be the last Windows Vista browser? And IE10 The last Windows 7 browser? This would mean I have to support all these versions forever (or foreseeable future)

Ugh, so IE8 is already locked in as last windows xp browser. Will IE9 be the last Windows Vista browser? And IE10 The last Windows 7 browser? This would mean I have to support all these versions forever (or foreseeable future)

Really bad.

Ha, well, Vista will be in the sub 10% market share zone soon. XP is sub 40%, and sliding. Within a couple years for IE 8, it will be the same question it is now for IE6: How important are Chinese users to you? That'll be where the majority of XP users reside.

What kind of differences are there between IE7, IE8, IE9, and IE10 for a developer?

IE7/8 and IE 9/10 might as well have been developed by separate companies. However 7 and 8 are fairly similar and 9 and 10 are fairly similar (in the grand scheme of things). 7/8 are horrible at standards compliance, but 9/10 are quite standards compliant. 10 adds a lot of new features though over 9 which I am looking forward too (yay web workers and web sockets!)

I'm talking about the underlying APIs and system resources which are built on different processor architectures.

Win32 and the NT kernel was built for and ran on multiple different architectures. However, they will be limiting ARM to WinRT and Metro APIs (beginning the deprecation of Win32,) and access to those APIs will be restricted to software distributed through their app stores.

Please point us at official docs stating that Win8 ARM devices will not support Win32 apps. There has not been any such official statement as far as I know.

Further, all the ARM bits in the dev preview fully support all Win32 features I've tried to find.

Supporting WebGL means supporting OpenGL current winning rival of DX on mobile platforms, and getting batter and better support on Win too! (Yes, Linux and Windoze drivers share much of OpenGL implementation in common!).

And Yes MS DO treat IE as *component of* Windows. Thats why they do not support Windoze versions that are no longer supported. Thats why you see IE10 for Win8 only

On the other hand IE team IS (*must be*) part of Win8 team. Whole UI depends on it!

Thats why FF, Chrome, Opera are better web browsers. They are standalone products. They support platforms as long as there is demand for it. They provide as much as possible on every platform! FF and Chrome have reliable betas as well!

Oh and maybe some recent changes to IE10 require some update on Win7? MS do not want any longer to bundle any updates to IEs. (remember that IE9 Preview which required RESTART to install?)

WebGL is prone to kernel hacks via GPU driver. Which is why MS is staunchly against it and will not support it, and not because it is a competitor to its DirectX APIs.

Except that this is a good reason not to enable WebGL by default, and a good reason to ask some kind of confirmation before running WebGL code, but not much of a reason to refuse to implement WebGL *at all*.

They probably want to concentrate on features and making it work with Windows 8 since that's where it's going to be most important and worry about Windows 7 later. Having it finished on W8 before they port it to W7 sounds like a good idea, apart from feedback, but it seems like the browser is viewed more as a part of W8 than a stand-alone browser capable of being installed on older operating systems.

The version of IE10 that they've released is just a bare-bones browser with virtually no "features". For example, there's no url bar, instead you get a dialog box, no forward/back buttons. This is solely a debug release. The only reason to release a version of a browser at such an early stage is for developers to check its compatibility.

However, even Web developers might struggle to get too excited about the latest preview, because they probably won't be able to run it: it only works on the Windows 8 preview release that Microsoft shipped at its BUILD conference in September.

Can't see where this is coming from. Are you saying that developers (which is the target of this IE10 preview) can't figure out how to dual-boot Win8 developer preview or run it in a virtual machine? As has been pointed out, VM software currently supports acceleration. Is there any feature of IE10 in particular that wouldn't run inside a VM?

przemo_li wrote:

And Yes MS DO treat IE as *component of* Windows. Thats why they do not support Windoze versions that are no longer supported. Thats why you see IE10 for Win8 only

On the other hand IE team IS (*must be*) part of Win8 team. Whole UI depends on it!

Thats why FF, Chrome, Opera are better web browsers. They are standalone products. They support platforms as long as there is demand for it. They provide as much as possible on every platform! FF and Chrome have reliable betas as well!

Agreed, except for the grammar and the unnecessary "Windoze". Browsers are commodity products now. It makes no sense for MS to still be pushing the browser as part of the OS. An essential component (an app) to be included, just like Notepad or Paint? Sure. But to make it some kind of system process is really unjustified.

By the way, you know those programs that insist on launching IE instead of your default browser? I'm thinking specifically about the Runes of Magic launcher. I mean, WTF? Are they making some kind of system call that's routed to IE and only IE? Or maybe they're actually *running* some sort of IE process under the hood? Whatever the reason, I hate it.

Browsers are commodity products now. It makes no sense for MS to still be pushing the browser as part of the OS. An essential component (an app) to be included, just like Notepad or Paint? Sure. But to make it some kind of system process is really unjustified.

By the way, you know those programs that insist on launching IE instead of your default browser? I'm thinking specifically about the Runes of Magic launcher. I mean, WTF? Are they making some kind of system call that's routed to IE and only IE? Or maybe they're actually *running* some sort of IE process under the hood? Whatever the reason, I hate it.

This is the reason:

With HTML/CSS/JS "applications" given the spotlight, the HTML/CSS/JS rendering engine must be deeply embedded in the OS, right?