IV. THE MIDDLEWARE THREATS
68. Middleware
technologies, as previously noted, have the potential to weaken the
applications barrier to entry.
Microsoft was apprehensive that the APIs exposed by middleware technologies
would attract so much developer interest, and would become so numerous and
varied, that there would arise a substantial and growing number of
full-featured applications that relied largely, or even wholly, on middleware
APIs. The applications relying largely
on middleware APIs would potentially be relatively easy to port from one
operating system to another. The
applications relying exclusively on middleware APIs would run, as written, on
any operating system hosting the requisite middleware. So the more popular middleware became and
the more APIs it exposed, the more the positive feedback loop that sustains the
applications barrier to entry would dissipate.
Microsoft was concerned with middleware as a category of software; each
type of middleware contributed to the threat posed by the entire category. At the same time, Microsoft focused its
antipathy on two incarnations of middleware that, working together, had the
potential to weaken the applications barrier severely without the assistance of
any other middleware. These were
Netscape’s Web browser and Sun’s implementation of the Java technologies.
The
Netscape Web browser
69. Netscape
Navigator possesses three key middleware attributes that endow it with the
potential to diminish the applications barrier to entry. First, in contrast to non-Microsoft,
Intel-compatible PC operating systems, which few users would want to use on the
same PC systems that carry their copies of Windows, a browser can gain
widespread use based on its value as a complement to Windows. Second, because Navigator exposes a set
(albeit a limited one) of APIs, it can serve as a platform for other software
used by consumers. A browser product is
particularly well positioned to serve as a platform for network-centric
applications that run in association with Web pages. Finally, Navigator has been ported to more than fifteen different
operating systems. Thus, if a developer
writes an application that relies solely on the APIs exposed by Navigator, that
application will, without any porting, run on many different operating systems.
70. Adding
to Navigator’s potential to weaken the applications barrier to entry is the
fact that the Internet has become both a major inducement for consumers to buy
PCs for the first time and a major occupier of the time and attention of
current PCs users. For any firm looking
to turn its browser product into an applications platform such to rival
Windows, the intense consumer interest in all things Internet-related is a
great boon.
71. Microsoft
knew in the fall of 1994 that Netscape was developing versions of a Web browser
to run on different operating systems.
It did not yet know, however, that Netscape would employ Navigator to
generate revenue directly, much less that the product would evolve in such a
way as to threaten Microsoft. In fact,
in late December 1994, Netscape’s chairman and chief executive officer (“CEO”),
Jim Clark, told a Microsoft executive that the focus of Netscape’s business
would be applications running on servers and that Netscape did not intend to
succeed at Microsoft’s expense.
72. As
soon as Netscape released Navigator on December 15, 1994, the product began to
enjoy dramatic acceptance by the public; shortly after its release, consumers were
already using Navigator far more than any other browser product. This alarmed Microsoft, which feared that
Navigator’s enthusiastic reception could embolden Netscape to develop Navigator
into an alternative platform for applications development. In late May 1995, Bill Gates, the chairman
and CEO of Microsoft, sent a memorandum entitled “The Internet Tidal Wave” to
Microsoft’s executives describing Netscape as a “new competitor ‘born’ on the
Internet.” He warned his colleagues
within Microsoft that Netscape was “pursuing a multi-platform strategy where
they move the key API into the client to commoditize the underlying operating
system.” By the late spring of 1995,
the executives responsible for setting Microsoft’s corporate strategy were
deeply concerned that Netscape was moving its business in a direction that
could diminish the applications barrier to entry.
B. Sun’s Implementation of the Java
Technologies
73. The
term “Java” refers to four interlocking elements. First, there is a Java programming language with which developers
can write applications. Second, there
is a set of programs written in Java that expose APIs on which developers
writing in Java can rely. These
programs are called the “Java class libraries.” The third element is the Java compiler, which translates the code
written by the developer into Java “bytecode.”
Finally, there are programs called “Java virtual machines,” or “JVMs,”
which translate Java bytecode into instructions comprehensible to the
underlying operating system. If the
Java class libraries and a JVM are present on a PC system, the system is said
to carry a “Java runtime environment.”
74. The
inventors of Java at Sun Microsystems intended the technology to enable
applications written in the Java language to run on a variety of platforms with
minimal porting. A program written in
Java and relying only on APIs exposed by the Java class libraries will run on
any PC system containing a JVM that has itself been ported to the resident
operating system. Therefore, Java
developers need to port their applications only to the extent that those
applications rely directly on the APIs exposed by a particular operating
system. The more an application written
in Java relies on APIs exposed by the Java class libraries, the less work its
developer will need to do to port the application to different operating
systems. The easier it is for
developers to port their applications to different operating systems, the more
applications will be written for operating systems other than Windows. To date, the Java class libraries do not
expose enough APIs to support the development of full-featured applications
that will run well on multiple operating systems without the need for porting;
however, they do allow relatively simple, network-centric applications to be
written cross-platform. It is Sun’s
ultimate ambition to expand the class libraries to such an extent that many
full-featured, end-user-oriented applications will be written cross-platform. The closer Sun gets to this goal of “write
once, run anywhere,” the more the applications barrier to entry will erode.
75. Sun
announced in May 1995 that it had developed the Java programming language. Mid-level executives at Microsoft began to
express concern about Sun’s Java vision in the fall of that year, and by late
spring of 1996, senior Microsoft executives were deeply worried about the
potential of Sun’s Java technologies to diminish the applications barrier to
entry.
76. Sun’s
strategy could only succeed if a Java runtime environment that complied with
Sun’s standards found its way onto PC systems running Windows. Sun could not count on Microsoft to ship
with Windows an implementation of the Java runtime environment that threatened
the applications barrier to entry.
Fortunately for Sun, Netscape agreed in May 1995 to include a copy of
Sun’s Java runtime environment with every copy of Navigator, and Navigator
quickly became the principal vehicle by which Sun placed copies of its Java
runtime environment on the PC systems of Windows users.
77. The
combined efforts of Netscape and Sun threatened to hasten the demise of the
applications barrier to entry, opening the way for non-Microsoft operating
systems to emerge as acceptable substitutes for Windows. By stimulating the development of
network-centric Java applications accessible to users through browser products,
the collaboration of Netscape and Sun also heralded the day when vendors of
information appliances and network computers could present users with viable
alternatives to PCs themselves.
Nevertheless, these middleware technologies have a long way to go before
they might imperil the applications barrier to entry. Windows 98 exposes nearly ten thousand APIs, whereas the combined
APIs of Navigator and the Java class libraries, together representing the
greatest hope for proponents of middleware, total less than a thousand. Decision-makers at Microsoft are
apprehensive of potential as well as present threats, though, and in 1995 the
implications of the symbiosis between Navigator and Sun’s Java implementation
were not lost on executives at Microsoft, who viewed Netscape’s cooperation
with Sun as a further reason to dread the increasing use of Navigator.
1.
Other Middleware Threats
78. Although
they have been the most prominent, Netscape’s Navigator and Sun’s Java
implementation are not the only manifestations of middleware that Microsoft has
perceived as having the potential to weaken the applications barrier to entry. Starting in 1994, Microsoft exhibited
considerable concern over the software product Notes, distributed first by
Lotus and then by IBM. Microsoft
worried about Notes for several reasons:
It presented a graphical interface that was common across multiple
operating systems; it also exposed a set of APIs to developers; and, like
Navigator, it served as a distribution vehicle for Sun’s Java runtime
environment. Then in 1995, Microsoft
reacted with alarm to Intel’s Native Signal Processing software, which
interacted with the microprocessor independently of the operating system and
exposed APIs directly to developers of multimedia content. Finally, in 1997 Microsoft noted the dangers
of Apple’s and RealNetworks’ multimedia playback technologies, which ran on
several platforms (including the Mac OS and Windows) and similarly exposed APIs
to content developers. Microsoft feared
all of these technologies because they facilitated the development of
user-oriented software that would be indifferent to the identity of the
underlying operating system.
|
|