re: the right way to do things (probably not investor info)
With 18 years of software development of commercial products, including 15 years in software test, I believe that this still is the right way to do things for mass-market products. In my view, "right" means practical, cost-effective, and expedient.
Disclaimer: I do not work in the Operating Systems development area, and do not have specific information on the decisions made by the Microsoft Windows groups, and am not speaking for Microsoft (my employer).
1) There will be bugs. Small ones we know about that it does not make sense to delay releasing the product for. Larger ones that did not get shaken out by beta programs and hardware compatibility testing. You gotta plan for some kind of tuning. See the prior discussions about "point" releases.
2) There will be features and device drivers added to operating systems to support hardware that was either not available in time for the initial release or not on the priority list. Again, there is a tradeoff made for adding this stuff and slipping the schedule, or adding the stuff after release as service packs. Code for additional hardware support can be distributed by individual hardware vendors or bundled into centralized releases of operating system service packs. This is standard.
3) Unless a company only sells its operating systems on its own hardware, the operating system and hardware vendors are partners; the OS must work well with the hardware vendor's BIOS in order for everything to work correctly. There are relatively few OS upgrades but many BIOS versions and upgrades. It is very difficult to test all combinations in advance of releasing a new OS. Given the overlapping lifetimes of BIOS and OS code, a BIOS may need to implement features before there is a real OS to support them (fully), or may not implement features described but not yet implemented. When the OS finally gets the feature implemented, we may find out that a particular BIOS is not completely in synch with the OS implementation. It is up to the BIOS vendor to make a patch if necessary, unless the OS wants to tax all users to fix the bug affecting only some machines.
So what is a (home user on non-computer-professional) customer to do? - Don't be first in line for upgrades, unless you understand the risks; - Check with your hardware vendor for compatibility statements before upgrading operating systems; - Wait to buy a new machine with a new vendor-supplied and vendor-tested OS unless you need the new OS feature immediately.
What is a hardware/software vendor to do? - Stop propagating the idea that installing hardware and software is as simple as playing a music CD or a videotape, unless you can guarantee that it really is that foolproof; - Remember that customers installing software may not be as sophisticated as your employees, and that you should make installation and upgrade be easier to understand than figuring out how to program a VCR. - Figure in the support cost of incompatibilities into your price, bug-fix criteria and release schedule.
(Just needed to get that off my mind.) |