To: all@microsoft.com
Subject: Ghosts, Goblins, and Linux.
Happy Halloween, everyone! It is the time of year where we review the
Linux operating system's position again, so I thought I would sit down and
pass on my thoughts for this year.
A lot of buzz has been generated in the past 12 months about Linux; notably
thanks to the popularization of more robust graphical environments. In this
case, I am referring to the KDE and GNOME projects, which I will focus some
time in this email on. Before KDE and GNOME, Linux was considered a server
OS, and now, Linux has capture 5.6 percent of the desktop market. While 5
percent is not a threatning number to Microsoft, it is important to remember
that Linux is sitting on more desktops than MacOS at this point. MacOS never
really concerned me very much, but this should give everyone some perspective.
It is also important to consider that Linux is still a "fad" at this time, and
that number will probably drop back to less than one percent.
Why will it drop? Finite resources. Linux prides itself on the "open
source" model, which counts on programmers around the world contributing to a
product. In theory, the idea of free labor is wonderful. In reality, there just
are not that many skilled programmers willing to work for free. The open source
zealots always try to suggest that there are thousands of talented coders just
lying about waiting for a good project to work on. Any one that has programmed
professionally knows that at the end of a long day of coding, the last thing
you want to do is go home and program more for free. I am a programmer myself,
and I feel I am accurate in that statement. Turn your Internet Explorer to
http://www.mozilla.org/, and laugh. This is the product of "thousands" of
hard working open source coders. We did that same work, and more, in-house with
less than 50 people working on the codebase. You can not get eight, let alone
ten or twelve, hour days out of open source coders. No one has that sort of
free time. And you can not expect 10,000 people to offer a few lines of code
each and have a coherent codebase. That is mere insanity, and you can see
examples of such failures all over the internet. There is a big collection of
them over at http://www.sourceforge.net/. The lucky projects get a couple of
programmers, not an army, and the really lucky ones get a couple of
programmers with more than a little spare time. This is a shame, since a lot
of pretty innovative ideas tend to just fizzle and die.
So, a Linux effort has finite resources to start with. Eventually a good
idea is conceived, and executed, and on the rare occasion that it produces
quality results, there is a split. In this case, I am referring to KDE. For
several petty reasons I will get into later, GNOME was started in direct
response to KDE, and began duplicating its functionality.
The Linux pundits look at competing projects and applaud. "Competition is
great!" they cry. I am sure everyone agrees that competition is an ideal that
is not as glorious in reality as those sophists make it sound. In reality,
competing projects serve only to split a finite resource further.
I wonder if I would be writing a different letter right now if all those
developers could focus on one system, and debug and enhance that. Competition
is, according to the spokesmen of Linux, is supposed to encourage improvements
to both systems in a darwinian fashion, but in fact both systems are still
struggling to implement features we introduced in the first release of Windows
95. There is not much hope for these projects to merge. The fools are content
to have theme and drag-and-drop compatibility and argue about the finer points
of the GPL, while crucial elements like component subsystems grow more
incompatible as time goes on.
This brings me to the next point: infighting. The primary spokesmen for
Linux are Richard M. Stallman, a professor, and Eric S. Raymond, a
(self-proclaimed) writer. I won't waste your time on each's inflexible opinion
of what Linux should be, except to note that both have a variation on the
messages of open source's charity and selflessness. Give away your source code
to make a better product? Doubtful. Give away your source code to protect your
freedoms? Hardly. Ironically, both need to defend their feel-good mantras for
purely selfish reasons. And, while both desperately need Linux to thrive for
shameless self-promotion, the two spokesmen spend their time trying to show
that the other is not just incorrect, but downright evil. They probably do as
much harm as good for their cause. How can anyone be productive when one has
to expend energy to argue the fundamentals of such artificial concepts as
"Free Software" and "Open Source?"
To continue my example, GNOME was started because KDE, an open source
project, used an open, but not "free" library of custom controls called "Qt".
Qt was not acceptable to the free software movement, so therefore all of the
work done on KDE was "tainted" in their eyes. Their solution? Rewrite the whole
thing. As GNOME work commenced, another faction began work on "Harmony" with
the goal of replacing Qt at the API level with a "free" implementation.
Threefold duplication of effort is, as you can see, Linux's answer to
everything. Do not forget that they are doing all this work on finite
resources, still under the false impression that this will build a better GUI.
Since nothing ever really gets accomplished in the Linux market, the poor
zealots need to celebrate every small victory. This is a community of self-
proclaimed "hackers" that are still celebrating the successful reverse
engineering of those silly CueCat scanners. Therefore, as soon as a company
mentions Linux in a positive way, regardless of how insignificant, the
slashdot.org crowd throws a virtual equivalent of Mardi Gras. More GNOME
examples here: the creation of HelixCode, a company that has an income of zero
dollars, and the official announcement of GNOME support by Sun Microsystems.
In the former case, everyone will gasp when HelixCode goes away (after all,
didn't Mr. Raymond say that Open Source could be profitable?), and in the
later, everyone forgets immediately how they felt about Sun's handling of Java
last year. Despite this, Mardi Gras rages on.
Let me dwell a little longer on the topic of corporate acceptance. Years
ago, the "problem" with Linux was a lack of hardware drivers. Today, that
problem still exists, and even though many people seem to think otherwise,
I've yet to hear reports of a working, let alone robust DVD player for this
"desktop" operating system. I hear horror stories about incompatible and
difficult to configure 3D accelerators. Linux has not gotten to the point where
you can walk into CompUSA and grab something off the shelf and expect it to
work in any form with the OS. This is not a new story, but it is downplayed
more today. I can not pretend that the Linux kernel has not improved, but it
has not improved at the rate that Torvalds and his bunch of merry men pretend
it has, and that's largely due to companies that will not release hardware
programming information. They aren't interested in Open Source, and they don't
want to be troubled by it.
Want more concrete examples? At LinuxWorld in San Jose only a few months
ago, SGI had to find a way to explain how Linux is great while they showed off
their IRIX technology. The magician they brought helped, I hear. Michael Dell
can not stop babbling about this exciting new Linux while meanwhile, Microsoft
operating systems power the computers that keep his company afloat. It is
always good, in a truely Machiavellian sense, to pay lip service to industry
buzzwords like "Linux", but most companies will not bet their payrolls on it
when push comes to shove. That's why we avoid future bad press in our standard
manner; when we announced that we would port Internet Explorer to Solaris, we
always used the term "Unix" in our press releases, to give Microsoft a safety
buffer. I think that's wiser in the long run.
Officially, Microsoft has always kept at a safe distance with Linux. We
leave the actually muddying to others, like Mindcraft. The average Linux user
has a much more direct response. Generally speaking, if you were to ask a
Linux user the benefits of Linux they will not tell you about its merits,
but rather Windows's flaws. I am generally distrustful of anyone that defines
themselves by what they are against and not what they are for.
This attitude is pervasive in the community: even the leaders of this
counter-culture act like children! If they aren't making fun of our pleads for
Freedom to Innovate (something they do themselves, when legal processes stop
them; ask the people at linuxvideo.org what they think of their "freedom to
innovate" with their DVD player), then they are fighting over the open source
license of the week, or having a spat with each other, or forking Samba or
whatnot.
In years past, we've discussed various ways to stop the Linux wave; we
have considered everything from FUD to mud slinging to benchmarks to
proprietary "standards" to force them down. The next step is usually what the
Linux community refers to as "embrace and extend," where we make our own
proprietary version of Linux, brand it with our trademark, and improve it
until people would rather use our flavor than any other. At that point, we can
lock everyone else out of the market.
However, I don't think that will be necessary. Why on earth would Microsoft
want to embrace this virtual kindergarten? I don't think we need that sort of
trouble. My honest opinion? Let's do nothing. I think that sooner or later,
these Linux fools will self-destruct without our influence. We'll see who has
the Mardi Gras celebration then. In the meantime, I hope they enjoy their 5.6
percent of the desktop. It won't last.
That's my "Halloween document" for 2000. Nothing to worry about. And for
crying out loud, don't leak this memo this year. We all remember what happened
to Vinod, right?
regards,
billg.
----------End Forwarded Message----------