THE WARPED PERSPECTIVE
September 2001
There is just no substitute for the good, comforting
feeling that comes from using a reliable product. When you close the door of a quality
automobile, it makes a solid whumpf! sound. When you start the engine, it
powers up smoothly. When taking a curve, it does not shudder but smoothly adjusts
to the sideways stress. There is nothing like riding in a machine that you know
has a margin of safety in its design parameters and its craftsmanship.
In the field of control theory, we call a product with an extra margin of safety
and stability a robust system. This term implies that the system continues
to function despite being exposed to harsh treatment, to stimulus outside of its
normal design parameters. In automotive terms, it means that a summer drive through
the harsh desert is not an invitation to disaster; it's just "another day at
the office" for a robust piece of driving machinery.
Similarly, there is an element of robustness to a well-designed piece of software.
OS/2 Warp operates reliably under a wide variety of software environments -- it
acts as a subsystem for Java, native OS/2, DOS, Windows 3.1, Windows95 (via Odin),
and even some Linux applications (via Xfree86). No other operating system in the
world can act as a "substrate" or foundation for such disparate software
modules. When an OS/2 application is closed down, there is a snappy immediacy to
it -- it does not linger on the screen in pieces, desperately attempting to clear
out clogged pathways the way Windows platforms tend to run.
In the realm of hardware variations, OS/2 similarly shows a robustness that allows
it to run on a wide variety of hardware. There are still 386 and 486 PCs successfully
running OS/2, and outperforming expensive, bloated Windows machines on the same
networks. People who run OS/2 get more "bang for the buck" and longer
life from their hardware than people who suffer the indignities of the Windows "upgrade"
treadmill. I have seen OS/2 machines run successfully after being submerged in floodwaters
and then air-dried; I have seen them crank out fax after fax despite operating with
the power supply fan frozen in place; I have heard of them operating on networks
while the neighboring Windows machines on the same networks were taken down by viruses
or erroneous network messages.
Speaking of viruses, it may be useful to understand the structure of natural, organic
viruses to see why robustness is not a feature of Microsoft products. Scientists
who study the AIDS virus have found that it has a very "sloppy" and unstable
structure. As a result, it is extremely difficult to "piggyback" on the
virus or to build an attacking anti-virus. This means that the AIDS virus can spread,
but its many mutations and instabilities make it a poor host for other life-forms.
It mutates rapidly, changing its "interface" to the outside world.
Guess what -- Windows is just like that.
Microsoft changes the software design APIs in subtle ways every few years, so that
older versions of Windows products do not always run reliably on more recent versions
of Windows. I suppose they think they are doing software vendors a "favor"
by force-feeding new software versions onto consumers, since all new computers will
be force-feeding pathways for the most recent "mutation" of Windows. Meanwhile,
rival software coders who wish to establish a "colony" on top of the Windows
"host" environment may find that without insider clues from Microsoft
(given as favors for not developing on MS-free operating platforms), the application
software may fail to communicate correctly with Windows. This contributes to the
nasty reputation of Windows environments for poor reliability, and allows Microsoft
cronies to point the finger at the software developers who were unfortunate enough
to not get the right inside info in time.
But as a monopolist, Microsoft has no incentive to provide a reliable, consistent
platform to the world. Indeed, it has incentive not to. Constant change masquerading
as "progress" or "innovation" means that Java and Netscape and
any other environment cannot be certain to have a stable foundation for building
platform-independent applications that also run on the latest version of Windows,
because the latest version of Windows may have "evolved" (or more precisely,
been intentionally rigged) so that things are no longer where the programs expect
them to be. This means that rival software developers cannot count on a five-year
or ten-year cycle of consistent APIs to interface to, and therefore cannot mature
into self-sustaining, profitable organizations.
In other words, intentional instability and intentionally "shifting sands"
of the Windows foundation are used to keep software developers dependent
on Microsoft for constantly-changing specifications. The term "ISV" or
Independent Software Developer is a complete misnomer. These people are no more
independent of Microsoft than an apartment dweller is independent of his/her landlord.
If the landlord decides to change the terms of the next year's lease, the tenant
must either pay the piper or find a new pad. With Windows controlling 95% of the
PC preloads, there is precious little real estate for the jilted developer to migrate
to.
OS/2 applications (particularly mature ones) tend to be rock-solid, because they
are not playing a constant game of catch-up with ever-changing underpinnings. Stable
and predictable APIs are a hallmark of stable, reliable platforms. This is normal
and natural. Would civil engineers produce solid bridges with the law of gravity
being revised every two or three years? Would electrical engineers produce reliable
radio circuits with Maxwell's Equations getting shuffled on a whim?
The biggest problem with the Department of Justice's prosecution of Microsoft is
that it fails to perceive that software interfaces are fungible, not static. Microsoft
can play "Simon Says" with each generation of Windows, or even with point
"upgrades" using the Internet to distribute changes. With the drive to
provide increased security, Microsoft issues patches almost weekly. Who knows which
APIs are affected by these patches? Does the DOJ expect to set up an observation
team to examine each patch to ensure it is not targeting a rival developer's products??
The only enforcement that is certain to work is
to bypass the APIs competely and get to the real foundation of Windows: the BOOT
SECTOR. The cold, hard truth is this: the collective boot sectors of all the world's
PCs make up the most expensive piece of real estate on Earth. They are the Boardwalk
and the Park Place of Microsoft's monopoly. Until legal mandates evict Microsoft
from the boot sector of PC preloads, Microsoft will be able to dictate the direction
of all software development. And quality and reliability are not on the agenda.
Most recent revision: August 28, 2001
Copyright © 2001, Tom Nadeau
All Rights Reserved.
E-MAIL: os2headquarters@mindspring.com