The more I see of IE 7 the more I think its going to make a big splash when it hits the scenes. Even though its a better browser on Windows Vista than on earlier versions of the operating system, its got some impressive features on Windows XP as well. Many of them come from Microsofts willingness to adopt a Firefox feature or abandon something thats been in IE for years. Consider the way IE 7 starts what I think is a long-term shift away from ActiveX.
Ive always thought ActiveX got a bum rap, all things considered. From Day 1 it has been the subject of dire predictions and warnings, and a conventional wisdom has emerged among some that its a major source of vulnerability and an object of attack. None of this is true, but truth isnt the only thing that matters.
My interest in all this was piqued by Microsofts announcement (typically, for these days, through a blog) that IE7 will have a native XMLHTTPRequest object as opposed to one implemented in an ActiveX control, as is the case with IE 6.
XMLHTTPRequest, which allows Web-based scripts to themselves perform HTTP transactions, is one of the main enabling features of AJAX, a new generation of Web applications with rich (for a browser) user interfaces. Microsoft really is the pioneer of such things starting with their Outlook Web Access.
The fact that XMLHTTPRequest in IE 7 will be a native control will matter very little to programmers who will simply need to include a few lines of script to test for the native control and use it, or the ActiveX version of it isnt. This is something that needs to be done only once, and so can be done once in a central include file or a global.asa, and the bulk of the software will remain unmodified. Actually, they dont even really need to do make that change. If your program uses the ActiveX version it will continue to work, but you will have new possibilities.