Microsoft's latest operating system has been well received, but a lot of important features, including system restore and automatic updating of third-party software and drivers, didn't make the cut.
(click image for larger view)
Slideshow: Top Features Absent From Windows 7
This makes sense -- but given that every OEM seems to be dealing with this problem in a different way (their own native update utility, their own Web site), it would make sense for Microsoft to provide more tools that close the gap.
One idea is an OEM-only toolkit, provided by Microsoft, which extends Windows Update in such a way that the needed drivers can be obtained directly from the OEM. This add-on wouldn't be in conventional boxed copies of Windows, but could be obtained directly from the OEM itself. If this sounds like the same problem all over again, keep in mind this would be a Microsoft-provided component, with only such customizations as needed by the OEM -- e.g., a manifest of files and download locations.
Whatever the case, Microsoft and the hardware vendors -- especially the OEMs -- owe it to each other to work more closely and provide a less fragmented solution for the end user.
Universal Software Updates
In addition to a proper mechanism for universal hardware driver updates, why not something for software as well? Why not have native mechanisms within Windows for updating existing software packages -- or, for that matter, obtaining and installing software, like an "app store" for Windows? Word has it that Microsoft has been contemplating something exactly like that for future versions of Windows, but the problem as it currently stands is worth looking at in detail.
Right now, a user has a few choices when it comes to updating an application. They can go hunt for an updated version of the app themselves, or they can trust in some internal updater mechanism within the app to do that work for them. The second approach has caught on with a lot of software makers, but brings its own caveats. The biggest is how each manufacturer will often try to create an updater for all of its products -- with the end result being a slew of separate update mechanisms running in parallel.
On the very machine I am typing this, I have separate updaters for Adobe, Apple, and Java that launch periodically. Adobe itself seems to have several different update systems running side by side -- one for Flash, one for the Adobe Creative Suite, and so on. It's a hodgepodge.
A few people have attempted to create applications that function as central updaters for many products from many different families. One is the PortableApps collection, a library of free and open source applications packaged in self-contained installations. The collection includes a program launcher and organizer which can look for new versions of programs registered with it and update the apps in question.
Another is AppSnap, which can search for updates to a great many common programs currently installed in a given system. (A commercial application called OilChange, released in the Windows 95 era, attempted to do the same thing as well.)