There is a very simple way to "break Microsoft's monopoly" -- invest
the time and dollars to make a better product and give it away. Oh
wait! Isn't that what the *nix companies have been doing for the past
several year?
But then I remember a time before Windows, a time when there were
several OS's (CP/M, MP/M, TRS-DOS, AppleDOS, Amiga DOS etc, etc. etc)
A time when you had to carefully research every piece of hardware and
software to ensure that it worked together. A time when it was
necessary for a developer to write his application for every OS that he
wanted to sell it on. A time when every application worked slightly
differently on each computer.
This was true even of the early days of what is now known as the PC.
There was PC-DOS for IBM, Compaq DOS for Compaq, generic MSDOS was an
infant, and modified to work on computers from Commodore, KayPRO, Tandy
(Radio Shack for you youngsters). You could not go and buy a bunch of
components and build your own computer, or order one from Dell or
Gateway. Why not you ask? Mostly because there were no economies of
scale. A peripheral manufacturer could not count on producing say a
graphics card that would sell a million units, he may have to have
production runs on 3 or more variations of a single card and hope that
he had guessed right on the numbers.
When IBM started building PCs they published a hardware specification,
and that helped. Lotus helped with its Lotus 1 2 3, which it wrote to
work on the IBM version of PCs. Hardware manufacturers started to
build their boxes closer and closer to that spec. But even that did
not do the final job. When Windows came along Microsoft said to
software developers, here is all the information that you need to make
your programmes work on any Windows based PC. Microsoft took care of
the under laying hardware complexities. At the same time Microsoft
said to hardware developers here is all you need to do to have every
programme written work on your hardware platform. Then they stepped
back and waited. You may remember that IBM tried something like that
with OS/2 and the PS/2 (what we jokingly called OS too little and PS
too late), but it never caught on. Why not?
Well on the software side, Microsoft gave away development kits, IBM
charged thousands of dollars for their development kits... which
platform would you create for?? On the hardware side IBM would not
certify other manufacturers on their technology (does that sound like
another computer company out there?). Again which platform would you
build products for??
So while Microsoft is not perfect, the answer to breaking their
monopoly is to invest a couple of billion of your dollars into making a
product that will do everything Windows will do. Then make it so rock
solid that there it will never break no matter what a user does with
it. Then make it Open Source and become a service oriented company and
wait for people to sign up for service plans.
However if you built this better mousetrap, most people would not need
a service plan now would they? And if you built an Open Source product
how would you support the changes and hacks that everyone has put in
your product? How would you pay to develop the next versions of your
product to use the new hardware that is being developed everyday?
Just my take on the situation, but then I was doing software
development in the pre-IBM era, the pre-Windows era. I much prefer the
now to the then.