Learning from Linux
OS/2 and the Halloween Memos
PART 2 - Halloween II
Sponsored by
The Linux community has recently posted a number
of leaked memos that Microsoft admits are internal MS documents. These papers
are Microsoft analyses designed to summarize the Linux phenomenon and help Microsoft
focus on how to attack this alternative platform and prevent the public from
enjoying it. Prominent Linux people have also commented on these memos and how
they reveal Microsoft's internal culture and world-view.
But interest in understanding the Microsoft ethos is not limited to Linux supporters.
OS/2 users and advocates can learn a great deal about Microsoft's inner workings
and how to take advantage of their smug neglect of the OS/2 community. For example,
the articles show a pervasive amnesia about OS/2 as an available option for computer
users. These memos also confirm that such tactics as FUD, the threat of lawsuits,
and the corruption of open standards are all normal, everyday tactics in the
Microsoft repertoire. Let us analyze the memos and see what we can learn about
"The Microsoft Way" and how to overcome its intentional obstacles to
progress.
HALLOWEEN II
The Next Java VM?
Executive Summary
The Linux OS is the highest visibility product of the Open Source Software (OSS)
process. Linux represents a best-of-breed UNIX, that is trusted in mission critical
applications, and - due to it's open source code - has a long term credibility
which
exceeds many other competitive OS's.
Linux poses a significant near-term revenue threat to Windows NT Server in the
commodity file, print and network services businesses. Linux's emphasis on serving
the hacker and UNIX community alleviates the near-medium term potential for
damage to the Windows client desktop.
In other words, the home
turf is safe for now, Microsoft believes. But future growth is threatened.
In the worst case, Linux provides
a mechanism for server OEMs to provide integrated,
task-specific products and completely bypassing Microsoft revenues in this space.
Why "worst?"
This would be the BEST case for everyone else -- better performance at lower
cost. Once again this shows that for MS to win, its customers must lose.
Linux History
What is it?
Linux (pronounced "LYNN-ucks") is the #1 market share Open Source OS
on the
Internet. Linux derives strongly from the 25+ years of lessons from the UNIX
operating system.
History
An excellent piece on the history of the Linux Operation system is provided by
Wired
Magazine at http://www.wired.com/wired/5.08/linux.html. I've paraphrased some
of
the key points below.
For the sake of brevity,
we shall skip the details of the historical summary which follow. The article
then continues with a discussion of the code management system used by the Linux
community.
Management Structure
After the release of version 1.0. The Linux developer community adopted a
management structure to control what is added to the kernel with even numbered
releases as stable, production release branches and odd numbered versions were
"developer" branches.
While major areas of the kernel have "owners" which maintain their
areas, Linus
remains the final say on what does and does not go into the kernel. In large
part, this
structure remains in place.
In other words, a combination
of centralized decisionmaking and decentralized code variations is the key to
fast revision cycles and high probabiliites of any particular challenge being
solved quickly. The difference in the OS/2 arena is that the decisionmaking and
the core coding are both internal to IBM; we have no visibility into this process.
Also, the process is inherently slower due to the demands of avoiding regressions
at all costs. Linux currently lacks a large installed base of enterprise systems
to deal with; likely, as such a base of preexisting customers develops, revisions
will have to be maintained more carefully.
It is important to distinguish
that this management structure only controls the actual
kernel and does not include supporting areas like the GUI, system utilities and
servers,
and system libraries.
This could be a key issue
for OS/2 OSS development, too. If the GUI, system utilities, and other features
of OS/2 are built in OSS fashion as replaceable modules over the core OS, then
OS/2 may be able to grow a similar community of open-source supporters.
Process Slowdown
With the growth of the kernel, Linux's release frequency has slowed measurably.
There is growing frustration about when 2.2, the next "stable release"
version will
ship. The sheer size of the codebase has begun to overrun the resources of Linus.
There is a backlog of patches to be merged and often, Linus is becoming the choke
point.
Any organism which cannot
overcome the growth of overhead, strangles on its own wastes. "Wastes"
is this case are bad code branches that must be processed and weeded out by Linus,
or by someone else.
The current release tree, 2.0.x
has iterated 34 versions in 2 years. The development
branch, 2.1.x, which will eventually become 2.2 has been going on since 9/96
spanning 108 versions and no ship date in sight.
Even though the feature freeze is declared, major changes continue to get integrated
into the kernel. Most merges seem to be due to fundamental bug fixes and or cross
platform issues.
Organization
An analysis / description of the OSS development organization and process is
in a
second memo titled "Open Source Software." This section describes attributes
of OSS
that are unique to Linux.
Wired Magazine ran a recent story chronicling the history of Linux "The
Greatest OS
that (N)ever was" http://www.wired.com/wired/5.08/linux.html.
The growth of the development team mirrored the organic, not to say chaotic,
development of Linux itself. Linus began choosing and relying on what early
Linux hacker Michael K. Johnson calls "a few trusted lieutenants, from whom
he
will take larger patches and trust those patches. The lieuts more or less own
relatively large pieces of the kernel."
As with other OSS projects, the General Public License ("CopyLeft")
and it's
relatives are considered instrumental towards creating the dynamic behavior around
the Linux codebase:
In a sense, GPL provided a written constitution for the new online tribe of Linux
hackers. The license said it was OK to build on, or incorporate wholesale, other
people's code - just as Linux did - and even to make money doing so (hackers
have to eat, after all). But you couldn't transgress the hacker's fundamental
law of
software: source code must be freely available for further hacking
Linux Technical Analysis & OS Structure
Anatomy of a Distribution
"Linux" is technically just a kernel, not the entire supporting OS.
In order to create a
usable product, Linux "distributions" are created which bundle the
kernel, drivers,
apps and many other components necessary for the full UNIX/GUI experience.
These subsystems are typically developed in an OSS manner as well and several
of
them - e.g. the Xfree86 GUI - have a codebase size/complexity that exceeds the
Linux
kernel.
These external components come from many sources and are individually hand
picked by the distribution vendor for a particular product. A frequent source
of
controversy stems from distribution vendors bundling non-GPL code with the Linux
kernel and mass distributing them.
This is an interesting
opportunity in the OS/2 area that has been neglected. It would be a great boost
to OS/2 and computer users everywhere to be able to produce custom-tuned OS/2
"distributions" that were targeted to specific sub-markets. For example,
a home user OS/2, an accounting OS/2, a factory-control OS/2, a developer OS/2,
a Point-of-Sale OS/2. This is where IBM and BestTeam probably make most of their
money, but the process does not appear to be visible to the OS/2 community at
large. This would not require a kernel change as much as changes in features
such as GUI, bundled device drivers, installation routine, licensing, etc.
A list of major Linux components
follows, which we shall skip here. The article then continues:
NatBro points out:
An important attribute to note which has led to volume drivers is the ease with
which you can write drivers for linux, and the relatively powerful debugging
infrastructure that linux has. Finding and installing the DDK, and trying to
hook
up the kernel debugger and do any sort of interaction with user-mode without
tearing the NT system to bits is much more challenging than writing the simple
device-drivers for linux. Any idiot could write a driver in 2 days with a book
like
"Linux Device Drivers" -- there is no such thing as a 2-day device-driver
for NT
Interestingly, OS/2 has
a similar ease of development for drivers. IBM has encouraged and even paid for
drivers to be developed for key hardware devices. The problem with getting drivers
is not technical, but rather a matter of perception on the part of hardware makers
that it's just not worth it. This erroneous perspective must be quashed.
Recently, a small number
of hardware vendors have begun to provide Linux drivers
for their NICs (3Com) and SCSI adapters (Adaptec). These drivers are believed
to be
protected by the Library-GPL and are consequently not open source (the
Library-GPL is described later). It remains to be seen whether this will create
the
momentum to develop more commercial drivers for Linux.
After noting some of the
major Linux development tools and components, the article gets more interesting....
Widgets & Desktops
There are multiple widget sets which exist in many applications, so all X applications
do not look the same or act the same ways like in Windows. Motif is considered
the
defacto Unix widget set, but since it is not freely distributable, it is contrary
to the
Linux model.
Consequently, Linux distributions usually choose one of several similar, but
not
completely compatible Widget sets.
Motif
LessTif
Xaw3d (3d athena widgets that look like motif)
QT
Obviously, this mess has spawned several efforts to unify the "desktop"
as well as the
widget sets. In typical Linux fashion, there are several competing efforts:
Gnome/totally new
KDE
FreeQT/KDE
CDE/commercial
This set of interfaces
roughly corresponds to the WPS, Filebar, Object Desktop, and other add-ons and
replacements for the WPS. What is lacking is the momentum to make these varieties
available to a growing base of users.
Commercial Linux OS
Binary Compatibility
Server
Almost all of the system components necessary to run server applications are
part of
the core distribution maintained by Linus. Consequently, for a given hardware
type,
almost all Linux server application binaries will natively run. Across hardware
types
(e.g. x86 vs. PPC), generally only a recompile of the application is necessary.
There is essentially 100% source code compatibility for system application code.
Unfortunately, OS/2 for
PPC has been put in the closet. Fortunately, x86 is a huge growth market in terms
of cheap, ever-faster processors. Therefore, this is not a significant limitation
on OS/2 for the foreseeable future.
Solaris / SCO x86 Compatibility
Via compatibility libraries, Linux on x86 is able to natively execute most SCO
UNIX
and Solaris x86 binaries. Oracle on SCO is widely cited as an example (although
Oracle does not "officially" support SCO binaries on top of Linux -
also Oracle has
recently announced development of a native Linux version of Oracle 8 to ship
in
March 1999)
Client
Client distributions, however, are a different story stemming most directly from
the
current "mess" in X-windows / GUI systems for Linux.
Note the dismal tone that
Microsoft takes toward variety and freedom of choice -- calling it a "mess."
MS believes in a "one size fits all" approach, where everyone must
settle for the same GUI whether they like it or not. Everyone must use the same
Windows GUI even if that person's mind works differently; many people are more
efficient and enjoy computing more if they can use a text-based interface while
millions of others prefer OS/2 WPS or Mac. MS wants to brainwash everybody into
thinking that the Windows GUI *is* the computer, and therefore, that you can't
have a computer without Windows.
Binary compatibility issues
generally stem from differences in non-kernel code that's
required to turn the kernel into a full OS.
Binary Incompatibility: Netscape Communicator
One example of this incompatibility is Netscape Communicator for Linux. The
released versions of Netscape Communicator for Linux are built based on libc5,
instead of the newer glibc which Caldera supports. RedHat, however ships glibc
instead of libc5 requiring users install libc5 as well as glibc.
At least OS/2 doesn't
have to worry about code forking.
RedHat
http://www.redhat.com
RedHat Corporation was founded in 1995 by a pair of Linux developers/enthusiasts
with the intent of creating a commercially supported, "cleaned-up"
Linux distribution.
The company currently has ~35 employees. Financials and some run-rate information
is available in an interview with their CEO in Infoworld
(http://www.infoworld.com/cgi-
bin/displayArchive.pl?/98/23/e03-23.102.htm):
Bob Young, president of Red Hat expects the 3-year old company to earn
revenues of $10 million this year and to ship about 400,000 copies of Linux,
ranging from $50 to near $1,000 for a supported version.
Why not have a repository
of OS/2 open-source products, drivers, apps, tools, etc., called "Project
Blue Hat?"
Commercially-Developed Extensions
Perhaps the most interesting aspect of Red Hat's business model is their extremely
active and continuing contributions to the Linux community. Several prior initiatives
spearheaded by RedHat have been released as OSS for modification. In most cases,
these code releases were simple fixes or additional drivers.
Redhat actively employs several key Linux developers and pays them to hack Linux
fulltime. Some of the components which have been "donated" back to
the Linux effort
include:
RedHat Package Manager - RPM is Linux component which provides application
install / maintenance facilities for Linux similar to the Application Manifest
being
developed by Microsoft.
Pluggable-Authentication Manager - PAM is similar to the NT SSPI / SAM system
and
allows for componentized plug-ins to handle the authentication function (RedHat
provides
an LDAP plugin). PAM was originally available on Sun systems.
One of the larger "grants" however has been the now universal "Redhat
Package
Manager" or RPM which ships with almost all Linux distributions. RPM creates
the
concept of an application manifest which simplifies the job of installing &
removing
applications on top of Linux.
Redhat's current development project is a new GUI for Linux call "Gnome".
Gnome is
a response to latent concerns with non-GPL versions of the X-windows user interface.
Okay, see how a "Project
Blue Hat" might blossom into something really great?
Product Features
Of the Commercial Linux Distributors, Redhat has the largest array of SKU's.
At the
highest end, Redhat bundles the following with their distributions of Linux:
Apache Web Server
Corel WordPerfect
DBMaker DBMS by Casemaker
Xfree86 window server
Caldera
Caldera is Ray Noorda's latest company with its eye on the operating system
marketplace. Caldera's financials and sales are unpublished but it is widely
believed
to be the #2 commercial Linux vendor after RedHat.
I wonder if Mr. Noorda
would be interested in sponsoring Project Blue Hat....
Caldera bundles several components
with their version of Linux including:
StarOffice 4.0 by Germany's Star Corp.
Adabas SQL Server by Software AG
Netware client & Admin
Netscape fasttrack server + communicator
Xfree86 and MetroX X-window systems
Others
Other Linux distributions seem to be falling by the wayside of RedHat and Caldera.
They include SlackWare, SuSe, and Debian to name a few. A comprehensive list
of
distributions can be found on http://www.linux.org.
This follows the MS party
line that variety and freedom of choice are impossible in the long-term marketplace.
Having been indoctrinated by MS upper management into believing this fallacy,
MS wonks now promote it mercilessly both internally and externally, hoping it
will become a cultural and legalistic fixture. This erroneous, self-serving agenda
is one of the biggest dangers that consumers face in the software business.
Commercial Linux ISV's
There are currently no major ISV's who derive a significant percentage of their
sales
from the Linux platform. A somewhat complete list of the commercial apps available
on Linux can be found on: http://www.uk.linux.org/LxCommercial.html.
Reasons for this include:
First-use Linux apps are free - most of the primary apps that people require
when they
move to Linux are already available for free. This includes web servers, POP
clients, mail
servers, text editors, etc.
Linux market is still immature - the Linux market is still in its infancy and
the current
state of Linux commercial software may change radically in the coming months
A similar situation exists
in the OS/2 marketplace -- most of the biggies have foolishly abandoned it, only
to flounder in the waves of MS products and marketing hype that govern the Windows
platform. Those vendors who have stuck with OS/2 for the long haul are doing
quite well, according to the messages we got at Warpstock. However, the existing
base of cheap Win16 and DOS apps acts as the equivalent of freeware, limiting
the interest in full-blown commercial OS/2 apps by newbies and low-budget users.
OS/2 is in a sense a victim of being "too compatible" and running too
many good apps from too many different platforms.
Current Linux users are wary
of commercial products - you can scout any of various
Linux discussion and mailing lists and quickly run into users admonishing commercial
software providers and trying to launch a jihad against category X via open source
software (at the time of this writing, Lotus Notes is a popular target)
Interesting that the writer
would never call Microsoft's religious fervor against all other platforms a "jihad."
Library-GPL
Unlike the GPL (General Public License - described in depth in "Open Source
Software") which forces all derivative works to be free, Linux software
libraries have
the more limited "Library GPL" which allows applications which merely
link to Linux
to be considered non-derivative.
The Library-GPL removes a key impediment to commercial software vendors
developing products on top of Linux.
The Library-GPL is defined at http://www.fsf.org/copyleft/lgpl.html
Binary Unix Compatibility
Linux adheres to several UNIX standards most notably POSIX 1003.1c. When
compiled and running on it's various CPU platforms, Linux is generally binary
compatible (more so on the server than on the desktop) with the primary commercial
UNIXs including:
Solaris/SunOS on SPARC
Solaris on x86
SCO on x86
Digital UNIX on Alpha
SGI IRIX on MIPs
Microsoft
Microsoft's current involvement in Linux is limited to distribution of client
code for
strategic services such as Netshow as well as helping SAG port DCOM to Linux.
IE is
currently not officially supported on Linux.
Note well: Netshow is
apparently not a consumer product, but rather a "strategic service."
This is a codeword that means MS wants to use Netshow to control the market for
Web-based consumer entertainment. Naughty, naughty, Microsoft. This is leveraging
the O.S. monopoly (and the hoped-for result of a browser monopoly by I.E.) to
monopolize another market. Go directly to jail, you MS morons. Do not pass go.
Do not collect two billion dollars.
Intel
Intel is directly involved in helping port Linux to Merced. Intel is also involved
with
the GCC over Merced development efforts.
If software undelivered
is "vaporware," does that make Merced "sandware?"
Netscape
In the press, Netscape is sited as the #1 commercial provider of software for
Linux.
Marc Andreeson has been extensively quoted as saying that "Linux is a tier
1 platform
for Netscape".
Until recently, however, the only server product that Netscape explicitly sells
for
Linux is their Fasttrack server with other servers merely being licensed to the
respective Linux vendors for their own redistribution. On July 21st, however,
Netscape formally announced intentions to port all of their server application
products to Linux starting with Mail and Directory services.
All of Netscape's client products are available on the Linux platform.
Oracle
Oracle recently announced (7/18/98) their support for Oracle 8 on top of Linux
to be
shipped in March 1999.
{ Oracle 8i for Linux has been shipped. In fact, Oracle is giving away copies
free for
personal use. }
Sun
Sun's involvement in Linux is inconclusive. Early this year (1998), Sun joined
the
board of Linux International which is one of many user groups representing Linux.
At one level, Linux competes (quite favorably) against Sun's own Solaris x86
port.
At a secondary level, Sun may view Linux as a strategic ally b/c it generally
represents the low-end of the software market and could therefore arguably hurt
Microsoft more than it hurts Sun.
SoftwareAG
SoftwareAG has ported it's ADABAS database server to Linux and is currently
bundled with Caldera's distribution.
Corel
Corel has ported their WordPerfect Suit to Linux and is currently offering it
bundled
with several of RedHat's SKU's
Interesting that this
summary postpones discussion of IBM's growing moves into the Linux area until
the conclusion. MS continues to reinforce their self-imposed "blind spot"
with regards to IBM. MS wants desperately to see IBM disappear; IBM plays "Moby
Blue" to Bill Gates' "Captain Ahab." Everything else is just a
sideshow or an obstacle, MS believes, to the *real* target they are after --
which is why Microsoft pushes Compaq as an equal partner at its travelling software
carnival shows.
Market Share
Linux's exact market share is very difficult to calculate because:
The majority of Linux installations are downloaded from anonymous FTP sites -
NOT purchased. Consequently, there are no published sales figures to track.
Whereas OS/2 market share
is difficult to discern due to:
a. lack of clear IBM reporting
b. large number of embedded or "invisible" installations
c. unknown defection rate to other platforms
d. no clear figures published on piracy rate for the O.S.
(Some) Commercial Linux purchases
can be used to install multiple machines
Because Linux revs so often, there's a very high likelihood of double-counting
actual installations vs. downloads/purchases
There are no separate client & server distributions. Consequently, it's difficult
to
compare Linux numbers wholesale to NTS / NTW numbers without accurate
usage data from the Linux community.
Below I include data / pointers from some of the more prominent attempts to isolate
the number of Linux users.
Installed Base
The most comprehensive Linux market share survey was published by Red Hat in
March 1998: http://www.redhat.com/redhat/linuxmarket.html
Using available data collected from other distributions, RedHat calculated a
retail
CD sell rate of :
1996: 450,000
1997: 750,000
RedHat's estimate of the growth of the Linux installed user base (which includes
CD
purchases as well as downloads as well as clent + server) is:
1993: 100k
1994: 500k
1995: 1.5M
1996: 3.5M
1997: 7.5M
Other estimates put the Linux installed base from 5 Million (Ziff Davis), to
10 Million
(Linux advocates).
Meanwhile, OS/2 installed
base may be anywhere from a low-end figure of 3 to 5 million (media pundits)
to as high as 25 or 30 million (1996 numbers plus two years of sales at rumored
rates). The "real" number is nebulous: Do ATM's count? Do multiple
PCs used by one person at home and at work count double? Do bank networks count
per-terminal, if the server runs WSOD (WorkSpace On Demand) and the diskless
stations each boot an OS/2 session? This confusion about numbers may be one reason
IBM doesn't broadcast the figures so loudly. This way, there is nobody FUDding
that IBM is intentionally overinflating them.
Server
IDC's most recent "Server Operating Environments" report provides the
following breakdown of shipments in the Server OS space.
Using the 240K number shipped in 1997, IDC seems to be estimating ~750K total
installed Linux server systems. Compared to other market share studies, IDC's
may be
underestimating the actual new Linux server installations - I believe IDC may
be
counting only top distributions in their survey.
Client
Starting with Dataquest's market share figures published in June '98, I injected
the
incremental Linux numbers derived from RedHat's market survey (showing 7.5M users
at the end of 1997).
The writer's own personal
experiences with Linux are then recounted. Skipping the small stuff, the following
comments were particularly notable:
The latest generation Xfree86
+ CDE was slick and definitely represented among the
best-of-breed in UNIX GUI's. A SUN desktop user would be perfectly at home here.
An advanced Win32 GUI user would have a short learning cycle to become
productive.
Betcha that viewpoint
never makes the editorial section of PC Computing.
Following UNIX philosophy,
however, mastery of the GUI was not enough to use the
full system. Simple procedures such as reading a file from a floppy disk required
jumping into a terminal window, logging in as administrator, and running an arcane
"mount" command.
Note that OS/2 can be
run either 100% from the GUI, or practically 100% from the command line, or anywhere
in between, depending on what the individual user prefers. This means OS/2 is
ideally suited to blend into any environment and to be matched to any kind of
user. The fact that most PC industry pundits have failed to explain this to the
public over the past three to five years is a tribute to Microsoft's masterful
control of the industry media.
Apps
Caldera bundled StarOffice from Star Corp in Germany. The Office team is quite
familiar with StarOffice as a "second-string" contender in the suite
category after
Corel (which is bundled with Red Hat) and Lotus.
Interesting. An MS executive
admits internally that Lotus and Corel suites are "first string" on
par with MS Office, yet they would never admit this to their customers or in
a public interview. This is yet another example of MS hypocrisy.
Perceived Performance
On a negative note, after I had instantiated 3 instances of Navigator on the
box,
performance came to an almost complete standstill, the mouse become unresponsive,
none of the keyboard command sequences worked and I had to reboot the box.
Anybody try this with
OS/2? I don't think it would be a problem, given sufficient RAM.
Conclusions
Skilled users with modest developer backgrounds are probably delighted to use
Linux due to the endless customizability afforded by Open Source. The simplicity
and
consistency of the process to modify the system presents a very low learning
curve
towards "joining" the Linux process.
Long term, my simple experiments do indicate that Linux has a chance at the desktop
market but only after massive investments in ease of use and configuration. The
average desktop user is unfamiliar with "make".
Linux Competitive Issues
Consumers Love It.
A December 1997 survey of Fortune 1000 IT shops by Datapro asked IT managers
to
rate their server OS's on the basis of: TCO, Interoperability, Price, Manageability,
Flexibility, Availability, Java Support, Functionality, and Performance. RedHat
provides summary info at: http://www.redhat.com/redhat/datapro.html.
I could not find the details
of this survey. However, Mike Persell tells me that OS/2 has a 72% retention
rate among home users who have it preloaded by someone with an OS/2 background.
Based on personal experience, consumers *LOVE* OS/2 as well. They simply have
not had enough opportunities to try it and accept it.
When overall satisfaction with
the OS's was calculated, Linux came out in first place.
Linux was rated #1 in 7 of 9 categories in the DataPro study losing only on:
functionality breadth, and performance (where it placed #2 after DEC)
Linux vs. NT
Windows NT is target #1 for the Linux community. To characterize their animosity
towards NT (or, for that matter, anything Microsoft) as religious would be an
understatement. Linux's (real and perceived) virtues over Windows NT include:
Well, what should we then
call Microsoft's goal of absolute control of all software? If the writer's analogy
is correct, that would make Microsoft no less than a cult.
Customization - The endless
customizability of Linux for specific tasks - ranging
from GFLOP clustered workstations to 500K RAM installations to dedicated,
in-the-closet 486-based DNS servers - makes Linux a very natural choice for
"isolated, single-task" servers such as DNS, File, Mail, Web, etc.
Strict
application and OS componentization coupled with readily exposed internals
make Linux ideal.
OS/2 is also good for
single-service apps, but it is too expensive for most people to use this way.
Spending $200 for the O.S. to run a freeware app is a hard sell.
The threat here is even
more pronounced as over time, the number of
servers (and consequently dedication to specific tasks) will increase.
Customers enjoy the simpler debugging and fault isolation of
individual servers vs a monolithic server runing multiple services.
In other words, the writer
actually admits that customers do NOT want a "one size fits all" solution;
yet, Microsoft continues to design this kind of kludge. Apparently, giving people
what they really want and need is not part of Microsoft's agenda.
Availability/Reliability - There
are hundreds of stories on the web of Linux
installations that have been in continuous production for over a year. Stability
more than almost any other feature is the #1 goal of the Linux development
community (and the #1 cited weakness of Windows)
At least, the most obvious
shortcoming of Windows.
Scaleability/Performance - Linux
is considered faster than NT in networking,
and processes. In particular, as a server, Linux's modular architecture allows
the
administrator to turn off graphics, and other non-related subsystems for extreme
performance in a particular service
"Considered?"
The writer here dares not admit that NT is low man on the totem pole.
Interoperability - Every open
protocol on the planet (and many of the closed
ones) have been ported to Linux. In a Windows environment, work from the
SAMBA team enables Linux to look like an NT Domain Controller / File Server.
OS/2 likewise has excellent
interoperability. About the only issue I don't see regularly addressed is how
to make Warp Server coexist in a small Novell environment. Perhaps it is so easy
that nothing needs to be said?
Recently, the NT performance
team ran their NetBench file/print test
against a recent Linux distribution. Results indicate that although NT
slightly outperforms Linux, Linux's performance is still quite acceptable and
competitive considering the years of tuning that has been applied to the NT
SMB stack.
Probably this is another
rigged test like the ones that certain computer magazines use....
Linux vs. Java
Linux developers are generally wary of Sun's Java. Most of the skepticism
towards Java stems directly from Sun's tight control over the language - and
lack of OSS.
The Linux community has been asking Sun to treat the Linux platform as a
tier-1 Java platform almost since the dawn of the language. However, Sun
does NOT support the JDK for Linux.
It is only a matter of
time. Sun will open up as its court victories against Microsoft build a wall
of legal protection for its superior products.
Interestingly, in order
to develop the Linux JDK, several Linux developers
signed NDA's to develop the port (http://www.blackdown.org). These
pressures have also spawned several OSS JVM clones including
http://www.kaffe.org.
Linus comments in (http://www.linuxresources.com/news/linux-expo.html)
While Linus would like to see an officially supported Java
Development Kit from Sun, he is still not impressed with Java and
would prefer to stay out of the Microsoft/Sun clash over Java purity;
I'm sure Linux was not
nearly as impressive at age 3 as it is today. Imagine how great Java will be
in another three years!
After a short discussion of Linux vs. Solaris in which the writer does not see
a clear winner, the article continues.
Linux on the Server
The vast majority of Linux's installed, production base is projected to be in
servers.
Reasons why Linux is strong in this market include:
Unix heritage - the server market, especially at the high-end, is already
familiar & comfortable with UNIX, Internet-based freeware, etc.
Professional users - high end server administrators are often
developers/power users themselves and are therefore comfortable with
recompiling apps, etc.
"Generic" services - these are services defined via open,
lowest-common-denominator protocols such as DNS, SMTP, etc.
Functional differentiation is lower in the server market than it is in the
client market. There is a lower bar for experimentation with servers
since it disrupts downstream client activity very little.
Dedicated Functionality - because servers are typically tasked with a
single function (e.g. mail, file/print, database, etc.), the level of
required integration with other services and devices in the
organization is much lower.
Meanwhile, IBM is pushing
OS/2 for similar reasons into similar tasks, but to markets that do not typically
accept the notion of OSS. Thus, OS/2 and Linux are for the time being more or
less complementary instead of competitive. This is also true from a user perspective:
the typical home user is much happier with OS/2 than with Linux, whereas a lot
of hackers prefer Linux. It will be interesting to see what level of cooperation
and/or competition develops between OS/2 and Linux. Of course, the MS writer
failed to address this issue -- another example of their blind spot regarding
OS/2.
After more server details, the writer focuses on the client side.
Linux on the Client
Due to it's UNIX heritage and Hacker OS background, Linux is a weak
client-desktop OS. Additionally, the OSS paper points out why, in a broad
sense, OSS is much more of a server threat than a desktop threat.
"Weak" in this
case means "varied." Microsoft continually misinterprets "freedom
of choice" as a weakness.
There are, however, several
initiatives attempting to push Linux as a viable
desktop replacement. Each of the various Desktop environments (GNOME,
KDE, CDE) come bundled with basic productivity applications and there
are 2 full fledged office suite products (from Corel and StarOffice) which
provide varying degrees of file format compatibility with Microsoft Office.
App / GUI Chaos
Unlike the Kernel - where Linus Torvalds maintains the core source tree,
the Linux GUI has NOT been singularly managed and consequently has a
highly forked tree.
Yet another repeat of
the erroneous assumption that all user interfaces must conform to a single GUI.
I certainly would not want my ATM to look like MS-Paint. The author reviews some
of the various alternatives, and then ends this section with the following nonsense
conclusion:
The lack of singular, customer-focused
management has resulted in the
unwillingness to compromise between the different initiatives and is evident
of the management costs in the Linux process.
The writer reviews a few
of the planned extensions to Linux, and then delves into more interesting stuff.
"Parity Growth"
The biggest future issue for Linux is what to do once they've reached parity
with UNIX. JimAll used the phrase "chasing taillights" to captures
the core
issue: in the fog of the market place, you can move faster by being "number
2 gaining on number 1" than by being number 1.
If Microsoft really believes
this, then they are condemning their own market position and lying when they
claim to be innovators.
Linux has now reached parity
/ incrementally ahead of other Unixes.
Consequently, it will be much harder to achieve the big leaps the
development team is accustomed to.
From Wired's piece on Linux:
This two-track development process has made Linux probably more
advanced and yet more stable than any other version of Unix today.
"Linux is now entering an era of pure development instead of just
catching up," says Jacques Gélinas.
Strengths
A second paper on "Open Source Software" goes into depth on the generic
advantages of the Open Source Process.
Unix Heritage & Fast Copying
Linux unabashedly steals the best ideas from the various UNIX flavors. This
means free R&D. Recently, Linux has begun to copy NT-ish features such as
transmitfile(), a hacked form of IO Completion Ports, etc.
Established / high-visibility bazaar
Linux is the most often cited example of a "credible" open source project.
By being the largest OSS project today, it's the most sustainable in the
future.
Dominance In Education / Research Markets
New ideas from academia + new computer scientists are being trained
wholesale in the Linux OS. In particular, Europe and Asia are very hooked
on the Linux OS. Email from BartelB (Marketing Manager EdCU):
For higher education in particular, Linux represents an alternative to
the Commercial demons of software, (not a quantitative statement but in
talking with many CS students who supply 60% of the labor for higher
education IT departments, they have express these feelings and its a
problem). They feel that once they commit to a windows platform there
creativity will be lost. Money is not there driving force, they don't
want to be "Borged".
So wanting to maintain
one's credibility, individuality, and creativity is a "problem?" I
think it's Microsoft who is the "problem."
Weaknesses
The paper on "Open Source Software" provides general process
weaknesses. Here, we'll try to list only the weaknesses that are unique to
Linux.
Unix Heritage
Linux's biggest advantage can also quickly become a disadvantage -
particularly in volume markets where ease of use is paramount. Some
nascent efforts have been launched to make Linux friendlier but they are
generally receiving relative apathy from the dev community
(http://www.seul.org).
The "ease of use"
issue never harmed DOS's long-term growth; why should it harm Linux's long-term
growth? Or is that just because Microsoft was better at forcing people to ignore
these issues when DOS was their market-grab vehicle?
Too Many Managers
In a typical Linux distribution, the majority of the code comes from sources
outside of the main Linux tree. This piecemeal approach will make it
especially hard to solve architectural problems and launch new,
cross-component initiatives.
Only if we assume that
Linux folks are not unified by common goals. Their common love of good code and
disgust with bad code (Microsoft products) are two VERY unifying forces.
Worst case scenarios
This section is pure speculation. What are some of the worst case scenarios
for Linux to hurt Microsoft?
Customer Adoption - It gets good enough
Using today's server requirements, Linux is a credible alternative to
commercial developed servers in many, high volume applications. The
effect of this on our server revenue model would be immense.
Our client-side revenue model is still strong however for a variety of
reasons including switching costs for the entire pool of win32 source code.
Linux advocates, however, are working on various emulators and function
call impersonators to attack this cost.
This is the equivalent
of the WinOS2 initiative. By tearing down the win32 "Berlin Wall" that
Microsoft has built around its victims, freedom of choice is available at lower
cost, which bothers Microsoft a great deal. Microsoft cannot compete on product
quality issues, and it cannot compete cost-wise, either. This does not bode well
for Microsoft. If you cannot gain the high-end with good code, and you cannot
maintain the low-end with cut-rate products, you lose everything. IBM has not
been able to compete on the low end because of the preload issue, whereas Linux
uses alternative distribution and zero-cost strategies to circumvent the MS preload
monopoly.
This points back to an obvious
solution - innovation in the core platform is
an ongoing requirement.
Codeword alert! "Innovation"
means "absorb somebody else's great idea and give it away free." Microsoft
intends to compete by continuous leveraging of its monopoly to destroy emerging
software markets by giving away cheap knock-offs as part of its product-tying
strategy. In other words, Microsoft believes they need neither good code nor
cheap code, just somebody else's inventions.
Channel Adoption
The "Open Source Software" paper has a section on OSS business models.
Summarizing that section, there are 4 primary business models we have
identified for Open Source Software.
1.Secondary Services - The vendor / developer of OSS makes their money on
service contracts, customer integration, etc.
2.Loss Leader for Market Entry -- The vendor / developer of OSS uses OSS's
process advantages (in particular credibility) as a lever against established
commercial vendors.
3.Commoditizing Downstream Suppliers -- The vendor / developer of OSS is also
the producer of a product / service further in the value chain and closer to
the
consumer.
4.Standards Preemption - Because OSS process are argued to be winner-take-all,
it may suit the vendor / developer to seed the OSS market with their codebase
to
pre-empt a competitive codebase from taking hold.
Where does OS/2 sit with
regards to these four issues?
Secondary services makes up a huge untapped market on the low end; the win32
"Berlin Wall" has kept a lot of development money out of the OS/2 area.
Accountants, for one example, are absolutely furious about being forced to use
Windows. A solid push of a product like BizWiz for OS/2 (particularly if they
decide to make a "pro" version) or a port of Lacerte or Drake accounting
packages could be VERY lucrative, particularly combined with Lotus Smartsuite
1.1 for OS/2 as the replacement for MS-Office. Lawyers are probably just as frustrated
as the accountants I have met.
Using OS/2 as a "loss leader" could have worked when hardware prices
were high enough to support good hardware margins; nowadays the hardware itself
has become a "loss leader" in many cases. OTOH, Windows2000 may raise
the floor, so to speak, if its price is raised to a level similar to the current
NT pricing as expected. In that case, undercutting the Windows2000 price becomes
a realistic option with room for profit as well. The key will be IBM's price
point for the new Warp coming this year. However, it is obvious that an open-source
OS/2 would be killer here.
If there is one thing that IBM has NOT been interested in doing, that is "commoditizing"
its reps. Instead, IBM has avoided the commodity mode and consistently positioned
its products as high-margin, quality alternatives. This is one reason for the
relatively low market share, but also a main reason for the high-end IBM partners'
loyalty. What would be ideal in this case would be to commoditize the OS/2 GUI
and the OS/2 API, while leaving the network management services as a high-margin
component. Moving to Java commoditizes the API, but the GUI situation only improves
if we get a "WorkPlace Shell for Java."
Standards pre-emption has become vital for IBM (and for everyone else, too).
MS has shown that it plans to absorb all public-domain standards into its own
products, becoming the de-facto owner of the information industry. This is roughy
equivalent to someone gaining a copyright on the standard sizes of nuts and bolts
("We own the number 5/8 and the number 1/4, so you must pay us a royalty
on every screw you sell."). This is Microsoft's long-term plan to "screw"
everyone. The battle plan for IBM, Sun, etc. has shifted from pushing in-house,
proprietary solutions to promoting open, standards-based protocols as a way of
surrounding Microsoft and preventing it from making everything MS-only. OS/2
will continue to evolve more and more as an ideal open-standards platform as
IBM de-emphasizes the OS/2 API. This does not mean the API goes away, but rather
that its survival is assured by riding the coattails of open standards.
IBM Adopts Linux?
IBM is most capable at capturing revenues from all 4 of the business models
associated with Linux.
1.Secondary Services - IBM is very strong in consulting, integration, support,
etc.
This is their fastest growing business today
2.Loss Leader - IBM's client/low-end operating system business is in shambles
(remember OS/2?). Additionally, IBM has stumbled on various NC/JavaOS
systems as well. By leveraging Linux's credibility (as well as applying IBM's
development resources toward improving ease of use?), IBM would hope to
upset the status quo in the volume OS space and hope to capture revenue in the
ensuing disruption.
The writer shows tunnel
vision by ignoring IBM's immense success with OS/2 outside of the consumer arena.
However, he wisely recognizes that IBM has the resources to leverage Linux better
than anyone else.
3.Commoditizing Downstream Suppliers
- As a PC/Hardware OEM, IBM's margins
increase by commoditizing a key cost item -- the OS. In particular, the
commoditized & highly customizable qualities of the Linux OS actually provide
greater differentiation for hardware vendors.
4.Standards Preemption - The standard to pre-empt is anything Microsoft - in
particular new OS services that we integrate directly into future versions of
NT.
IBM, despite their Apache announcements, seems unlikely to advocate this
in the short run. I'd imagine that religion within their various OS
development efforts alone would provide a significant amount of near term
inertia.
That has not hindered
IBM's adoption of Java, so why would it hinder IBM in the Linux arena? The writer
should really get out more often!
Sun Adopts?
Sun's rationale for adopting Linux would be less encompassing than IBM's.
1.Secondary Services - Sun is not very strong in consulting / integration revenue.
They do, however, make significant revneue in support and maintenance.
2.Loss Leader -- Sun could market Linux as a low-end OS and try to make money
in the UNIX applications space above it. Because Linux could potentially be a
far larger market than anything Sun is accustomed to, this would be a net
positive for them.
3.Commoditizing Downstream Suppliers - Sun is also a hardware vendor (with
some excellent systems). Sun would lose their current OS revenue but the ability
to sell their hardware into a broader channel could be compelling.
Linux adoption, however, puts Sun at significant risk if their SPARC operations
cannot keep up with Intel's innovation pace.
4.Standards Preemption - Beat Microsoft Standards
PC OEM's
Other worst case adoption scenarios are subsets of the Sun / IBM case and
involve other PC vendors such as Compaq and Dell.
Note, however, that Compaq and Dell merely have to credibly threaten
Linux adoption in order to push for lower OEM OS pricing.
In other words, Linux
can hurt Microsoft's bottom line even if nobody preloads it -- by simply
providing a possible alternative. This is why Microsoft fought tooth and nail
to prevent OS/2 from being viewed as a plausible alternative O.S. for preloaders.
Server ISVs
One interesting spin on the "Commoditizing Downstream Suppliers"
strategy could be backward integration by server ISV's. For example,
Oracle could ship a version of Parallel Server for Linux that includes the
Linux OS within the distribution.
This is basically a play on the thin-server concept. Instead of integrating
multiple small business functions on a single server, this attempts to
disintegrate the features of an enterprise OS into the minimal set necessary
to run the specific server application. It plays into the business models
identified as follows:
1.Secondary Services - Companies like Oracle/SAP/Baan/etc. already make a
large percentage of their income from on-site consulting agreements
2.Loss Leader - treating the OS as a loss leader helps them concentrate revenues
for a particular hardware unit into their hands
3.Downstream commoditization - Oracle has no problem declaring the Server OS
as a kernel, memory manager, IP stack, and some disk.
4.Standards Preemption - beat Microsoft.
Next Steps & Microsoft Response
A lot more thought and work needs to go into formulating Microsoft's
response to Linux. Some initial thoughts on how to compete with Linux in
particular are contained below. One "blue sky" avenue that should be
investigated is if there is any way to turn Linux into an opportunity for
Microsoft.
A more generalized assessment of how to beat the Open Source Software
process which begat Linux is contained in the "Open Source Software"
document.
Beating Linux
Beat UNIX
The single biggest contributor to Linux's success is the general viability of
the UNIX market. Systematically attacking UNIX in general helps attack
Linux in particular. Some Linux-targeted initiatives in this space (not a
comprehensive list) include:
Improve Low-End "IAM" -- Scaleability, Interoperability, Availability,
and Management (SIAM) are the most often cited reasons for using
UNIX over NT in mission critical, high-end applications.
In today's Linux deployments however, scaleability is not the
driver as much as Interop, Reliabiliity, and Headless Management.
In other words, Microsoft
could try to make decent code for a change.
UNIX services for NT
Add-on pack
Modularize / Embed Windows NT
Relative to other UNIX's Linux is considered more customizable.
Addressing this functionality involves more than just the embedded
Windows NT project. Greater componentatization & general dependency
reduction within NT will improve not only it's stability but also the ability
of highly skilled users/admins to deploy task-specific NT installations.
This requires:
Wide availability of the Embedded NT toolkit
Greater focus on ease-of-use in the toolkit
Beat commodity protocols / services
Linux's homebase is currently commodity network and server infrastructure.
By folding extended functionality into today's commodity services and
create new protocols, we raise the bar & change the rules of the game.
Ooops! There it is --
give away substitute protocols, leveraging their OS monopoly, to take over the
Net. That is a far more likely Microsoft strategy than "make good code"
will ever be.
Some of the specifics mentioned
in the OSS paper:
DNS integration with Directory. Leveraging the Directory Service to add value
to DNS via dynamic updates, security, authentication
As I said before, MS wants
to change "DNS" to me "Digital Nervous System" instead of
"Domain Name Server." Boooo!!!
HTTP-DAV. DAV is complex and
the protocol spec provides an infinite level of
implementation complexity for various applications (e.g. the design for
Exchange over DAV is good but certainly not the single obvious design).
Apache will be hard pressed to pick and choose the correct first areas of DAV
to
implement.
Structured storage. Changes the rules of the game in the file serving space (a
key
Linux/Apache application). Create a compelling client-side advantage which
can be extended to the server as well (e.g. heterogenous join of client &
server
datastores).
Another leverage-the-client
plan. This is bordering on another naughty little episode of antitrust misbehavior.
MSMQ for Distributed Applications.
MSMQ is a great example of a distributed
technology where most of the value is in the services and implementation and
NOT in the wire protocol.
Leverage ISV's for system improvements
A key long term advantage that Linux will enjoy is the massive pool of
developers willing to improve areas of the core platform. Microsoft will
never be able to employ a similar headcount.
This is an interesting
admission: Microsoft knows they must "eat their own children" (devour
markets they create) in order to add free stuff to the base OS, putting Windows
developers out of work regularly. Since the core Linux is not run on the profit
principle, there is no reason for any Linux app developer to go out of business.
Thus, the pool of viable Linux developers never gets reduced.
A key mechanism to combat
this is to make it easy (and provide incentives)
for ISV's to extend system components in NT for custom, vertical
applications. One example here could be Veritas' specialized file system
drivers for NT.
"WinTone"
Linux's modularity and customization also implies inconsistencies in
services available on an arbitrary Linux installation. Microsoft can provide
a bundle of services that are universally available in all OS releases
(current initiatives include WBEM-based management) that generate
network externalities when combined across many devices in the network.
Put another way, the extreme modularity of Linux devalues what a
"Linux-logo'ed" app means. By contrast, Window's monolithic nature
gives
an app developer more leeway in terms of what API's are callable.
In other words, the line
between OS and app is more sharply defined in the Windows environment. This is
only a benefit in that the Windows developer will generally have a better idea
of just what resources are installed on the client machine. However, since Linux
resources are free and universally accessible via the Web, this is not really
an important distinction. On the other hand, there are more opportunities for
Linux developers to provide improvements via extensions to an OS module than
there are similar opportunities on the Windows side.
Process Vulnerabilities
Where is Microsoft vulnerable to Linux? As stated earlier, the primary threat
resides on the server vs. the client.
Linux will "Cream Skim" the Best NT Server Features
The Linux community is very willing to copy features from other OS's if it
will serve their needs. Consequently, there is the very real long term threat
that as MS expends the development dollars to create a bevy of new
features in NT, Linux will simply cherry pick the best features an
incorporate them into their codebase.
Touche'!!! What goes around,
comes around, Mr. Bill.
The effect of patents and copyright
in combatting Linux remains to be
investigated.
In other words, can Microsoft
make enough legal expenses for Linux people to drive them out of the developer
pool? That's playing dirty, of course, but that is The Microsoft Way.
Linux is recreating the
MS "3rd release is a charm" advantage - FASTER
Microsoft's market power doesn't stem from products as much as it does
from our iterative process. The first release of a Microsoft product often
fairs poorly in the market and primarily of generates fine granularity
feedback from consumers. Similarly, Linux has shown that they are capable
of iterative cycles - but at an order of magnitude faster rate. On the flip side,
however, our incremental releases are arguably much larger whereas many
of Linux's incremental releases are tantamount to pure bug fixing.
So one thing that Linux
really needs is somebody to draw the line between "little" and "big"
releases and develop a consumer marketing plan accordingly.
Continue to Part
3....
CREDITS
[ Top | Home Page | Faq
]
Copyright © 1999, Tom Nadeau.
All Rights Reserved.
E-MAIL: os2headquarters@mindspring.com