There would have been a price to pay: as already mentioned, lots of Windows applications expect and demand admin rights and go wrong if they don't get them. This sort of fix would break all those programs, and for all its sins, Microsoft does bend over backwards to keep as much backwards-compatibility as it possibly can.
But the thing is, code that demands admin privileges is broken. It's not merely a bad idea, this is just plain wrong - and whereas Microsoft created the circumstances that led to this situation, to be fair, it didn't write all those broken apps. It really isn't Microsoft's fault if third-party vendors are supplying broken software.
Vista is a major rewrite of Windows. The new display model means that old graphics drivers don't work any more; nor do lots of other drivers. This and other changes mean that lots of programs don't work properly on Vista any more. Such as all of Apple's applications, from iTunes on down. I'm sure that was a complete coincidence.
Vista breaks lots of apps anyway. So did XP in its day, and 2000 before that, and NT before that. Indeed, the move from DOS-based Windows - 95, 98 and ME - to NT-based Windows - 2000 and XP - broke loads of old apps that relied on the DOS-based underpinnings of the old versions. It happens. It's the price you pay for improvements. Either the software vendors fix their apps, or you replace the apps - it's what anyone upgrading their OS to a new version faces anyway. But the change I propose would have been worth it. The stuff that would have been broken was already broken.
You don't get something for nothing - at least, not from a commercial outfit like Microsoft. No pain, no gain.
So much for the user account thing. The other big hole in Windows is Internet Explorer. IE7 is an improvement. It's got a lot of beneficial changes: things like tabs and RSS support make it more powerful and usable and things like the built-in phishing protection are a step in the right direction.
But the big problems with IE are still there. For one, ActiveX. It was a bad idea in 1995 and it's a worse one now. No other browser works this way. The Mozilla family is derived from Netscape, which has its own plugin system and uses relatively safe, "sandboxed" environments for running interactive content, such as Flash and Java. In the beginning of the Web, Netscape was the dominant browser, and though I bet few people remember it now, the up-and-coming Internet Explorer supported Netscape plug-ins so that users moving to IE didn't lose all their advanced features. That support was dropped around the time of IE 5.5, as by then IE had triumphed and was the new power on the Web.
It used to do it. I'm sure it could do it again. ActiveX should never have happened, but it's not too late. It still could be banished. Sure, it would break quite a lot of websites, but thanks to the success of Firefox and Mac OS X, there are fewer and fewer sites around that are completely specific to IE running on Windows any more. For all the gains in security, it would be worth forcing some web designers to rework their sites.
Microsoft has, belatedly, realised that the "safe sandbox" approach is the way to go - it's the basis of the "managed code" of .NET. All .NET programs run in a sort of protective sandbox. It's time to banish unmanaged code from the Web, too. Just slapping warning notices all over it - "Did you notice the Information Bar at the top of the window?" - is not enough.
The other problem with IE is also fixable: its shell integration. Internet Explorer first appeared as an optional extra for Windows 95. (NT3 never got a 32-bit version of IE. If you downloaded IE for NT3, what you got was the 16-bit version for Windows 3, with the Windows 3 bits that didn't work on NT taken out.) It only got bundled with Windows 95 OSR2 and became integrated into the Windows shell with Windows 98.
Funnily enough, this is around the same time that Netscape was suing Microsoft for anticompetitive practices - viz., unfairly bundling its free browser with Windows to displace the commercial Netscape offering.
Microsoft's defence was that IE wasn't a standalone product, it was part of the OS, a component of Windows. (Although Windows 95 didn't actually come with it originally - and neither did any older version of Windows. And that you could install Windows without it, or remove it from Windows once it was installed.) Right after this, Microsoft integrated IE deeply into Windows 98. The new and improved "Active Desktop" in Win98 was driven by IE: Explorer window contents were generated in HTML which was rendered by the core DLLs of IE, as were JPEG images. Remember that message when setting a JPEG as your wallpaper? "To display this image, Active Desktop must be enabled." If you use a Windows Bitmap (BMP) as the wallpaper, Explorer can display it itself, because BMP is a native format. JPG isn't, it's a Web format, so IE is used to display it.
2/3
|