T H E   M I C R O S O F T   C A S E   S E M I N A R :

UNITED STATES Home Syllabus Discussion Trial Archive MICROSOFT

United States v. Microsoft: Trial Summaries (page 3)
[Transcripts]   [Direct Testimony]   [Exhibits]   [Archive of Motions Filed]   [Reference Material]  

Trial Summaries
Jim Barksdale US, MS   |   David Colburn US, MS   |   Bill Gates US, MS   |   Avie Tevanian US, MS
Steven McGeady US, MS   |   Glenn Weadock US, MS   |   John Soyring US, MS   |   Frederick Warren-Boulton US, MS  
James Gosling US, MS   |   David Farber US, MS   |   Edward Felten US, MS   |   William Harris US, MS   |   Franklin Fisher US, MS  

United States: James Gosling
DOJ Gosling from Chris Parry (cparry@law.harvard.edu)

Before I get into what DOJ and Microsoft have established through Gosling's testimony, I want to briefly discuss what Judge Jackson appears to have understood of the testimony. Mr. Burt (attorney for Microsoft) began his cross-examination by asking Gosling to explain the basic Java concepts in laymen's terms - which Gosling did. However, after this initial stage, Burt began to use a number of product names, trade terms and abbreviations (e.g., JNI, VM (Virtual Machine), HotJava, Java Beans, Javagator, compiler, etc.) in his questioning and likewise Gosling used these terms in his answers. Judge Jackson appears to have been lost during most of this testimony. On redirect, Mr. Boies (DOJ's attorney) asked Gosling to explain the cross-platform features of Java and the reasons that this was important in the marketplace. This time, Boies and Gosling went through the explanation in simpler terms using the illustration of buying software off the shelf. Judge Jackson interjected with questions which suggest that he understood their points. Judge Jackson then stated that he understood the gist of Mr. Burt's argument to be that Microsoft was just faster at implementing improvements to Java and that Sun was upset that it was getting beat in competition. At this point Gosling reiterated a point that he frequently made during Mr. Burt's cross-examination: Sun was not upset that Microsoft was making improvements in its version of the Java VM. Sun was upset because some of the changes that Microsoft made created incompatibilities with other platforms - destroying the goal of cross-platform interoperability. Gosling also explained that part of the reason that Microsoft could implement its improvements so quickly is that MS was acted unilaterally, whereas Sun was trying to implement changes to Java through a community-standards process. Gosling acknowledged that the latter process was slower, but argued that in the long term the latter approach reached a better outcome. When I discuss the points covered in Gosling's testimony (particularly what was discussed in cross-examination), keep in mind that Judge Jackson might not have understand all of the points - or their significance.


1. Unlawful preservation of a monopoly (i.e., defensive monopolization under Sherman Act §2)

The bulk of Gosling's direct testimony mirrors the discussion that we had in class about Java and its potential for opening the PC OS market to competition. Gosling first described the barriers to porting software to different platforms and how this led developers to write apps for the OS with the largest market share. He described how this problem effected Sun; Sun had trouble convincing developers to port Window's apps to Solaris. Gosling then claimed that this problem has reinforced the dominance of Windows in the market for operating systems on Intel x-86 hardware. Gosling described Java, emphasizing its cross-platform goals. Gosling showed that cross-platform software would threaten Microsoft's dominant position in the PC OS market. Finally, Gosling described a number of actions by Microsoft that threatened the cross-platform features of Java ( 58-62). Among other things, Microsoft added keywords to Java and added compiler directives which allowed its Java Virtual Machine to call Window's APIs. As a result of Microsoft's actions, (1) programs written to MS's implementation of Java are tied to Windows, (2) programs written for MS's Java Virtual Machine would not run on other VMs, and (3) programs written on other Java implementations will sometimes fail to run on MS's VM. A point that Gosling repeatedly emphasized on cross-examination and direct was that Microsoft had greater marketing power than other distributors of Java technology. Microsoft flooded the market with its version of the VM by including it in Windows 98. Gosling argued that it was impractical for developers to include copies of the VM with their apps for two reasons: (1) the VM and accompanying files are about 3-8 MBs, which take a long-time for some users to download and (2) The VMs are written to a specific OS; therefore, the developer would have to either include copies of VMs for each OS, or package his product for only one operating system - destroying Gosling's cross-platform goal. In the model that Gosling envisions, the end users would have a copy of the VM on their machine before they downloaded the apps, and the apps would run identically on each VM. Because apps are running differently on Microsoft's VM, it threatens the cross-platform goal. On re-direct Gosling claimed that if Netscape could no longer ship Java VMs (i.e., if MS had put Netscape out of business) it would cut off an important source of Java's distribution. Mr. Boies also used redirect to ask Gosling to offer his interpretation of internal Microsoft documents that described the effort to introduce polluted Java. On re-direct Gosling also discussed Microsoft's decision to package RMI (one of Sun's Java technologies) separately from Microsoft's STK. The separate packaging of RMI is one of the factors that Gosling mentioned earlier which threatened Java's cross-platform features. Gosling noted that packaging RMI separately raised Microsoft's costs. Mr. Boies called attention to this part of Gosling's answer and asked whether there was any advantage to Microsoft in doing this. Gosling couldn't identify any technical reason for doing so. (Dec. 10. PM p.11) DOJ might use this segment of Gosling testimony to establish that Microsoft's conduct lacked a compelling business justification. See Aspen (using lack of compelling business justification as one of three factors to decide whether a monopolist's conduct constituted unlawful exercise of monopoly power). On re-redirect Gosling claimed that Microsoft's actions by destroying the cross-platform features, hurt consumers by locking-them into Microsoft's VM. See Aspen (using effect on consumers as one of three factors in evaluating whether monopoly's conduct constituted unlawful exercise of monopoly power).

2. Gosling's testimony strengthens a predatory pricing claim against Microsoft.

Gosling testified that Sun at one time made a web browser called HotJava. Sun decided not to pursue further development of this project because it concluded that it made no business sense when Microsoft was distributing a browser for free (Direct, 37).

Under the Brooke Group test for predatory pricing, I believe that evidence that a potential competitor was deterred from entering the market strengthens an argument that Microsoft had a reasonable prospect (if arguing under Sherman Act §1) or dangerous probability (if arguing an attempted monopolization claim) of recoupment.

Microsoft's attorney disputed Gosling's explanation for HotJava's demise. Mr. Burt attempted to show that Sun ended development of HotJava as part of an agreement with Netscape to refrain from entering the browser market.

On redirect, Gosling also claimed that Netscape was having difficulty keeping up in its Java development because Microsoft's browser pricing strategy was adversely effecting Netscape's earnings - limiting the amount of resources that Netscape had for engineering efforts. Combined with Barksdale's testimony, Gosling's testimony shows that Microsoft's pricing strategy hurt Netscape's ability to compete in the browser market (suggesting that Microsoft was coming close to recoupment).

3. Gosling offered expert testimony supporting DOJ's tying claims.

Gosling argued that browsers and operating systems are separate products, and that there was no technical reason for making the browser and JVM non-removable from an operating system. (Direct, 37). Gosling testified that standard programming practice would be to specify a standard interface, so that any browser could fit. The approach that Gosling advocates is the same as the approach the Supreme Court used in analyzing quality defenses in earlier tying cases. See International Salt Machine; IBM . However, Gosling later admitted that it made sense to include the Java VM as part of the operating system. (Dec 13 PM p.71) (responding to question from Judge Jackson). If DOJ uses its tying claim as part of a larger monopolization claim (as opposed to a Sherman §1 vertical restraint claim), then Gosling's testimony could help establish that there was no legitimate business justification for Microsoft to tie the browser and OS in Windows 98. See Aspen (using lack of legitimate business justification as one of three factors used in evaluating whether monopolist's conduct was illegal exercise of monopoly power).


1. Mr. Burt asked Gosling about benefits that Java offered other than cross-platform features.

Gosling described all Java's other benefits - security, reliability, and garbage collection (Dec 2 PM p.24) Microsoft might later use this section of the testimony to support an argument that it had a legitimate business justification for offering Java products - even if those products could only develop to the Windows platform.

2. Mr. Burt tried to show that Sun competes with Microsoft's Windows and NT products.

Mr. Burt showed that Sun was interested in making operating systems and that Sun wanted to use Java to compete against Microsoft and Intel. Gosling's testimony on cross, supported these claims. Gosling used this opportunity to reiterate his point that by encouraging cross-platform applications, Java opened up competition in the OS market. This line of questioning struck me as an odd strategy for Microsoft. Mr. Burt clearly wanted to show that Sun was a competitor to Microsoft. But in doing so, he helps strengthen the government's claim that Java opens up potential competition in the OS market - a fact that the government must prove to show that Microsoft's conduct against Java excluded competition. What Microsoft appeared to be doing is laying a foundation for a claim that Microsoft does not have monopoly power because Sun competes with it and there is all sorts of innovation. However, Gosling repeatedly argued that cross-platform application development (through Java) was the mechanism through which Sun hoped to compete. So in the end, Mr. Burt's questions on this subject help strengthen the government's claim that the OS market is not currently competitive and Java opens up potential competition.

2. Sun and Microsoft were in a competition for the hearts and minds of developers.

Most of Mr. Burt's cross-examination dealt with the competition between and Sun and Microsoft for ISV support. Again, the presence of this competition supports DOJ's story, so it seems odd that Mr. Burt focused on this. It appears that Mr. Burt was using this line of questioning as an excuse to introduce magazine articles into evidence that discussed the merits of Microsoft's and Sun's Java products. For the most part, Mr. Burt tried to use these articles not to support a claim that Microsoft made better products, but to support an argument that the information available to the developer community suggested that Microsoft was making better products. However, Mr. Burt also mixed in documentary evidence (e-mails) from Sun in attempt to show that Java had problems. One of Gosling's reoccurring themes was that Java is a work in progress, and that most of the problems Mr. Burt discussed were fixed in JDK 1.2 which was recently released. At which point, Mr. Burt would point out that the installed base used older versions of Java. Some of the problems with Java that Mr. Burt discussed were: (1) Write once, run anywhere doesn't work in practice. (2) Lack of backwards and forwards compatibility between different releases of the JDK. (3) Java is slow, and MS's JVM is much faster than any other VM.

3. Sun engages in the same practices that the government alleges is anticompetitive behavior by Microsoft.

Mr. Burt tried to get Gosling to admit that the real reason that Sun abandoned its browser project was that Sun made an agreement with Netscape not to compete in the browser market. Mr. Burt could not establish this point because Gosling is a techie and was therefore not involved in business negotiations with outside parties. Mr. Burt tried to introduce depositions from other Sun executives that were taken as part of the Sun v. Microsoft trial, but Mr. Boies was successful in keeping most of this out of evidence. Clearly, Mr. Burt was trying to show that meetings between software companies was a common industry practice. (Recall DOJ is accusing Microsoft of attempting to divide the browser market with Netscape.) I think that this line of questioning was a dead end. Even if Microsoft could show that other companies horizontally divided markets, it would not justify its own attempt to do so. (Horizontal agreements to divide markets are usually per se illegal.)

4. Mr. Burt attempted unsuccessfully to justify the incompatibilities that Microsoft created in Java.

In part of his questioning, Mr. Burt tried to show that other software companies were guilty of the same practices that Sun accused Microsoft of engaging in, and that Sun was singling-out Microsoft for criticism. Perhaps, Mr. Burt fails to appreciate that conduct that is lawful when done by competitors can be unlawful when done by a monopolist. In any event, Gosling distinguished Microsoft's conduct from that of other licensees. For instance, Mr. Burt argued that Netscape also failed to adopt Sun's JNI standards. Gosling noted that Netscape was making a good faith effort to implement the new standard but was facing financial difficulties (brought on by Microsoft's browser pricing policies) that was limiting their engineering resources. Mr. Burt noted that although Sun accused Microsoft of adding words to the language, JDK 1.2 adds words not contained in JDK 1.1 (i.e., Sun adds words to the language). Gosling distinguished between the process of adding new words through a collective-standards-setting process and Microsoft's unilateral decisions - in which Microsoft was trying to use its marketing power to force the changes on the community. Gosling also noted that the Java community would face huge engineering costs if they tried to redesign their products to adopt standards that Microsoft unilaterally decided upon.

5. At the end of his questioning, Mr. Burt tried to show that Sun still had channels to distribute its versions of the Java technology despite Microsoft's actions.

The most important response that Gosling offered during this questioning was that because of Microsoft's marketing power, Microsoft could distribute far more copies of its version of Java than Sun could. If Microsoft flooded the market with Java that did have cross-platform support, then there was a danger that developers would write to MS's version and Java would lose its cross-platform features.

Microsoft: James Gosling
from Andrew Bloch (abloch@law.harvard.edu)
Over six sessions of cross-examination of Gosling, but what did it gain Microsoft? Was the court even paying attention until the final session?

Dr. James Gosling, PhD., created the Java language. He is now Vice President, a Sun Fellow, and the Chief Scientist of the Java Software Division. He maintained throughout his testimony that he performed a primarily engineering, technical role and was not directly involved with the Java licensing negotiations with Microsoft, the 100% Pure Java marketing program, or other high-level strategic or marketing decisions in Sun. This allowed him to evade directly answering tough questions about Sun's strategy when dealing with Microsoft and Sun's general Java strategy. He had been so busy with the trial that he had detached himself from a Java industry debate over adding a new keyword to the Java source code language, 10am29, and his preparation showed throughout his testimony. He was very good at deflecting criticisms of Java and concentrating on its strengths, and was unequivocal when stating and restating his position that he could think of no technical reason that a browser should be part of the operating system. Dr. Gosling is a very knowledgeable, experience engineer, perhaps the most qualified of the witnesses to date, and, unfortunately for Microsoft, Judge Jackson will probably give his testimony some weight, despite its evasiveness.

Dr. Gosling's testimony and cross rehashed much of the Sun v. Microsoft Java case. For us in this class, it might have been repetitive, but for Jackson, most of it may have been new or necessary reiteration. Yet, with all the acronyms and technical terms, Jackson allowed Microsoft to finish its long cross before asking any clarifying questions. One of Jackson's questions was "What's the compiler do?" 10pm23. This is so basic and essential to understanding the relationship between Java source code and Java bytecode that if Jackson really didn't understand what a compiler is up until this point, I seriously wonder how much of the cross examination he could have followed. Maybe at this point Microsoft would have been better off if Jackson could have consulted a special master to answer technical questions.

If one could only read one section of Dr. Gosling's transcripts to read, it should be the last session, particularly some of Judge Jackson's questions. These provide valuable insight into what is on his mind and what he may think are the real issues in this case. His first question was, "Do you regard the Java Virtual Machine, itself, as an application to an operating system?" 10pm20. This question is a lot more probing than his compiler question. Gosling explained that he didn't consider it an application in its usual meaning. Jackson asked a follow-up question, and Gosling elaborated that to applications, the JVM looked like an OS, but to the OS, the JVM looked like an application, sort of like an electrical adapter plug, which looks like a socket on one end and a plug on the other. This analogy makes the JVM look almost harmless, and I think Microsoft needs to counter it by explaining how harmful the "adapter" can be to its business. An "adapter," even if it doesn't make competitors compatible, instantly doubles the number of competitors; every competitive OS effectively now comes in a second version. Second, it can open up the door to competitors. Third, if the adapter makes several competitors compatible, it could create a combined power large enough to threaten Microsoft's monopoly.

The cross-examination was not completely detrimental to Microsoft. Microsoft made headway in two main areas. First, Java was shown to be still far from living up to its hype. "Write Once, Run Anywhere" was convincingly shown to be little more than advertising, despite Gosling's frequent reminders that Java was a young language still under development but improving rapidly. Speed has been a major issue, with Microsoft's implementation "blowing away" all others.

The second area that Microsoft gained, was in what I would call it's "self-defense" defense. Microsoft presented email which showed that Sun's Java strategy was to destroy Microsoft, the "Evil Empire." Sun's licensing of Java to Microsoft may have been a "Trojan horse." Many of Microsoft's questions suggested that Sun consciously ignored Microsoft's plans or suggestions for Java, practically inviting Microsoft to go its own way. Once Microsoft developed its non-standard Java, Sun broke out of the Trojan horse and attacked Microsoft for violating its Java license and ignoring the Java "community." Unfortunately, Microsoft was not able to advance this theory beyond a point owing to Gosling's claims that he wasn't directly involved in such strategy decisions.

However, these arguments don't seem to have piqued Judge Jackson's interests yet, perhaps because Jackson wasn't technologically prepared to understand them fully. Microsoft's biggest mistakes with Gosling's might have been spending too much time on cross examination revisiting the same topics and not enough time building the technical foundation.

United States: David Farber
from David Melaugh (dmelaugh@law.harvard.edu)
Farber is a Professor of Telecommunications at University of Pennnsylvania. He is involved in high speed network research with an emphasis on its impact on hardware and operating systems, focused on the areas of high speed networking and the implications of that networking on interconnections, protocols and computer hardware and software architecture.

The thesis of his commentary: it is more efficient to program modularly (as opposed to the bundling evidenced byMS's inclusion of the browser). An OS benefits from minimal functionality. There is simply no good reason to include the browser in the OS, and, in fact, such inclusion results in inefficiencies.

I will address each element of this thesis with quotations and paraphrasing from his testimony. . .

More specifically, Mr. Farber was asked to testify on:
"(A) the software development process and its implication for software products;
(B) the relationships between operating systems and application software, including Web browsers (as defined below);
(C) the significant inefficiencies in designing so-called operating systems which include inappropriate functions such as software applications (e.g.Web browsers); and
(D) the negative consequences of permitting Microsoft to add what are now applications to create an ever-larger, monolithic software package which Microsoft calls its "operating system" for personal computers."

He addressed these from the viewpoints of software developers, original equipment manufacturers ("OEMs") and retail end users.
[as I am sure MS will note, he was rather effectively cross-examined on this point]

Modular Development
"Modern software is developed in small modules . . . which are aggregated into larger modules, which are in turn aggregated into software products." ". . . software has an inherently malleable and modular structure which gives software developers broad freedom in combining (i.e. bundling) different functions into software products." "software malleability provides a developer with the freedom to choose whether to incorporate a particular application (such as a Web browser) into a software product or sell that application separately for later combination by another software developer or retail end user with other software."

Advantages of modular development:
-Reduced errors in the development process;
-Easier testing of products, reduced cost and complexity for maintenance and upgrades;
-Greater possible sharing of software modules among separate products.

Minimal OS
Useful to note: His definition of an OS -- Software that controls the execution of programs on computer systems and may provide low-level services such as resource allocation, scheduling and input-output control in a form which is sufficiently simple and general so that these services are broadly useful to software developers.
The most efficient OS is one that includes only such functions -- only those which will be used by large numbers of application and component software development projects or are, by their unusual and peculiar nature, required to be at the operating system level.
Example: Network software that regulates the transfer of information to or from an Ethernet card is normally part of an OS while the file transfer client, which is further up the chain of routines, should not be in the OS.

Inclusion of Web Browser Not Necessary
While the combination may offer certain efficiencies, these same efficiencies can be achieved without bundling of the Web browser software with what Microsoft calls its Windows OS. I understand that Microsoft claims that it should be permitted to include any software it chooses in its Windows product so long as some efficiency can be articulated as a result of the "integration" of that software into that product. But if that standard were adopted by this Court, then any application could be bundled into Microsoft's Windows product.

I will address the cross-x in class (as, I suspect, the MS rep will, as well).

Microsoft: David Farber
from Owen Cyrulnik (ocyrulni@law.harvard.edu)

Farber is an expert in the fundamentals of computer science and software architecture and engineering. Curiously, he seems to know rather little about any Windows incarnation and his testimony is hampered by a rather superficial understanding of its structure. His testimony is, therefore, extremely general and vague – presented at a very high level of abstraction – and his inability to illustrate his general ideas with specific, relevant Windows-related examples, lessen the impact of his expert opinions.

What follows is first a summary of the highlights of the direct testimony and cross-examination, followed by some analysis and ideas.

Farber's basic point, and, presumably, the reason that he was called to testify, is a simple four-step argument.

Premise 1: Given the inherent malleability of software today, it is necessarily possible for Microsoft to separate Windows and IE.
Premise 2: Since Windows and IE are separable, they should only be 'integrated' if such integration generates some efficiency gain.
Premise 3: There is no efficiency gain, and indeed there is an efficiency loss generated by binding together Windows and IE such that the end user cannot have Windows without IE.
Conclusion: Microsoft should remove IE from Windows 98 and offer IE as a separate product to be installed either by the user or the OEM.

Farber speaks extensively of the prevalent programming method today which stresses modularity – individual procedures are written and tested independently; only at the very end of the software development process are they combined into dynamic link libraries, or DLLs. It is this modularity which lies at the heart of Farber's claim that software is 'malleable.' DLL composition is somewhat arbitrary – and easily be changed by the software designer.

Farber seems to claim that Microsoft has created DLLs that contain both IE functions and ordinary Windows functions – forcing users who do not plan to use IE to nevertheless load those procedures into memory every time the other features are needed – which Farber believes to be dangerous and potentially destabilizing.


Much of Steven Holley's cross-examination was marked by Farber and Holley talking at cross-purposes. Holley was constantly asking Farber specific Windows-oriented questions, and Farber continually stressed his unfamiliarity with Windows 98 and its components. The sessions can be broken down across several different topics:


Farber claims to be analyzing the issue from the perspective of OEM's, developers and end users. Holley spends a good deal of time at the beginning of the cross examination grilling Farber on his expertise with respect to the preferences of these groups. Farber is familiar with certain developers and OEMs, and is, himself, an end user, but he has conducted no systematic study or survey of these groups in order to determine their true preferences.


There are a few phrases and ideas that Farber came back to on a regular basis in answering nearly every question. The first is the 'malleability' of software. For Farber, the specific composition of any DLL is virtually arbitrary – and can easily be changed.

This area is of note because it highlights a breakdown in communications between witness and attorney. Holley spent a whole lot of time showing Farber that any DLL that had IE functionality was also used by the other Windows components, such that to remove the DLL would hamper the functioning of Windows, making life harder for the end user and the independent developer. And that makes a lot of sense.
Farber's answer to that claim is not particularly brilliant; he essentially argues that he does not know enough about Windows to comment. But Farber has a much better answer which he never really spells out – perhaps he was having too much fun in the witness box. His real answer is that the fact that removing a specific DLL that is accessed by IE might hamper Windows functioning might well be an accurate statement of the current Windows composition; but that need not be the case. If Microsoft were to choose it could, very easily, according to Farber, separate out those features and create a set of DLLs that are entirely specific to IE; those DLLs could then be removed and distributed separately for eventual end user integration.


Farber has a very narrow definition of an OS. He limits it to the very bare minimum possible – the set of functions that provides low level functionality, controls the execution of programs and exposes APIs to other, higher level middleware and applications. Farber does not include DLLs at the OS level – those are middleware. Certainly, IE would not be a part of the OS – it is an application.
There is much confusion over Farber's distinction between an OS and an OSE – an operating system environment. It seems that he has designated the OSE to include the middleware – to include the DLLs and other higher level functions that do not rise to the level of applications.

Holly spends a lot of time showing Farber various OS packages that purport to be selling an OS – and include such things and web browsers and function libraries. Farber dismisses these instances as marketing hype that simple obscures true technical reality; he seems to really resent those pesky, dim-witted consumers from getting in the way of his research.

Holly's point, however, is well taken: There is no particularly compelling reason that Farber's technical, counter-intuitive definition of an OS must govern – perhaps the Court should look at an OS as just about every business customer does, rather than through the eyes of Professor Farber.

Farber seems to limit his conception of the Windows OS to the kernel – which may or may not consist entirely of kernel32.dll file. There is some confusion with regard to file management – although Tevanian had clearly included file management in the OS, Farber believes that the capability to interface with a file management system is a function of the OS – but the actual functionality is outside the OS – probably in middleware.
There is also some confusion with regard to networking. Farber has touted MS's TCP/IP implementation in Windows as having forwarded the internet and networking in general. He is not entirely clear on what part of the network interface should be in the OS – clearly the higher levels of the stack would not be – e.g., telnet, FTP because a user might want to substitute his own versions; the lower levels of the stack might be within the OS definition.

Holly scores a minor victory by getting Farber to admit that he was in favor of having the TCP/IP stack in the Windows OS – but that leads to the same inefficiency that Farber had criticized in other contexts. If Netscape creates its own stack, that still requires that the MS stack be present even though it is not necessary. Holly's point is that even Farber would admit that sometimes those perceived inefficiencies are justified by the other benefits that they provide.

One interesting point: In his deposition, Farber testified that an extremist would claim that it would be efficient to include within the OS any DLL that will be accessed by more than one application; at trial, he says that he is not in the mood to be an extremist.

GROCERY STORE: It is here that Farber introduces his favorite metaphor. An individual who goes to the grocery store would prefer to be able to buy the one item that he needs, rather than an entire, pre-packaged grocery bag that he would then have to carry around just for that one product. Farber loves that image and comes back to it several times throughout his testimony.


Any DLL which is accessed by more than one file, Farber categorizes as middleware, included in the OSE. All of the files indicated by Pavorti during his deposition as those accessed while searching the web from Windows Explorer are accessed not only by IE but also by other Windows applications – some, like kernel32.exe are essential to the OS itself.


Holly's last point here is rather interesting. Microsoft suggests here that given the fact that the DLLs used by IE -–that represent the core of IE functionality – are also used by Windows, IE is only a sort of invoking switch – that runs them in a certain way to access the web. Holly analogizes the situation to a radio that has one circuit board for both AM and FM. He suggests that to delete iexplore.exe in order to separate IE from Windows, would be like breaking the AM/FM switch on the radio – disabling AM access even though the radio is still perfectly capable of getting AM broadcasts. Alternatively, Holly analogizes it to a robot capable of performing riveting and welding where the switch is purposely broken in order to limit it only to welding.

Holly implies that there could not possibly be any efficiency in breaking the radio or the robot – and thus there could not be any efficiency in deleting IE from Windows if its core functionality is included in Windows because it is essential to its functionality. Farber has no good answer to this claim, and appears flustered. He does suggest, perhaps, that one advantage to breaking the robot would be avoiding any danger that could arise out of an accidental switch into riveting mode.
He mentions his own experience in attempting to install Netscape and running into some difficulty with IE constantly popping back into the picture and ''reminding" him that it was there.


Holly makes the interesting point that Farber has written and spoken extensively about his vision of the future in which high speed networking gradually makes the current hardware and software obsolete, requiring a whole new architecture on both end. Holly suggests that given Farber's vision of the future, MS's current market share should mean very little – given that its eventual success will depend upon its ability to adapt to the new computer world.


There is some interesting confusion with regard to what Faber wants MS to do. At some points it seems as if he actually wants MS to remove IE from Windows and offer it separately. Holly is puzzled by that suggestion – wouldn't that mean that Windows would be missing some pretty important components?
Farber responds that he would not remove anything that would also be referenced by other programs. But then what would he remove? Is there any such file?
Farber cannot point to any. Apparently Professor Felton did succeed in some such project – although Farber does not know exactly what he removed – only that he did not remove any of the DLLs that might be shared.
Farber stresses that he wants all of the libraries to remain within Windows – they should just be more individually accessible, to prevent the shopping back or book stack problem.
Holly argues that such a move would create much more work for Microsoft – in designing and testing. Farber has no real answer to that, except to claim that most testing occurs at the module level – before any modules are combined together into DLLs, and, therefore, additional testing would be minimal.


1. MS & Aspen: At first glance, it is not entirely clear what Holly was trying to do by continually pointing out that users want integration, users want simplicity, users do not want too much choice. Clearly Farber is not the ordinary user, nor an expert on user interest. But consider Holly's line of attack in the context of Aspen. Aspen has justifications for its decision to cut off dealings with its competitor; the other side has no technical justifications, but it has lots of evidence – evidence of actual skiers who preferred the combined ticket. Aspen, on the other hand, had no skiers who were happy about its separation. Professor Kaplow suggested that the users – the skiers – are what persuaded a pro-business court to find for the plaintiff in a monopolization claim in which they were seeking to force the continued cooperation of a competitor in a cooperative practice that itself seemed like a possible Section 1 violation. In the same vein, it would be odd for the Court to order MS to separate IE and Windows if most customers would be upset by the change. Perhaps Holly is playing to the fact that often all the technical justifications in the world do not outweigh the simple desire of the consumer.
2. One thing that Farber's testimony does is to focus attention squarely on Professor Lessig's suggested reading of the Jefferson Parish case. The idea was that the Court would be willing to break up a tie – or in this case force MS to separate the two products – so long as the efficiency risk was relatively small and the two could be combined into virtually the same united entity by a consumer who chose to put them together. Farber presents exactly that case – he claims that software, given its nature, is by definition easily separable. And not only is there no efficiency loss, but there is actually an efficiency gain in separating the two. Farber even touches on the idea of fixing the problem by simply unlocking the bolt – by providing a DLL structure that can be easily separated, thus allowing a user to choose to have IE or not to have IE.
Holly's broken radio analogy, despite Farber's cursory treatment, is a serious challenge to that conceptualization of this case, however. If it is really the case that removing IE specific files would still leave almost all IE functionality still in Windows, the efficiency loss might be greater – a user would have to buy a whole separate product just in order to get the couple of lines of code that call the procedures that he already has on his machine.
3. Farber's testimony raises interesting questions about our original discussion of the Court of Appeals definition of integration. One key issue there had been the notion that when IE was installed it changed some of the preexisting DLLs, integrating itself into Windows such that removing everything installed by IE would cripple Windows. At the time a question lurking in the background was whether the current system was a necessary one. Farber suggests that it is not – that MS could easily change the IE and Windows code in order to ensure that when IE installs it does not alter or change any Windows DLLs – but just installs its own, separate DLLs.

United States: Edward Felten
from Ken Murata (kmurata@law.harvard.edu)

Edward Felten is a computer science professor at Princeton University. His areas of research include operating systems, internet software and internet security. Felten was retained by the Department of Justice to examine the structure and function of the Windows 98 operating system, Internet Explorer and the relation between the two products.
According to Felten the bundling of IE and the Windows operating system is undesirable because the arrangement is inefficient. Felten defines inefficiency broadly to include factors such as user confusion and the costs of undesired computer behavior. The inclusion of IE in Windows 98 is particularly problematic because it prevents users from using Navigator in all situations. "Hardcoding" access to IE gives rise to situations where Windows launches IE despite the user's efforts to use Navigator. For example, if a Windows 98 user were to install Netscape Navigator and set it as the default browser, IE will be launched in some applications contrary to their wishes. Felten adds that these bundling arrangement cannot be justified by technological necessity.

In the absence of justification, Felten believes that the cost of inefficiencies can be minimized through user selection of browsers. Although products such as IE4 may contain features such as the embedded sub-window which are absent in other products such as Navigator, consumers will choose among competing browsers to obtain the features they seek. In Felten's opinion, the compulsory bundling of products consumers may not want with the Windows operating system is undesirable.

The feasibility of Felten's position is established by the following results:

1. Web browsing with IE 3 can be removed from Windows 95.
2. Web browsing with IE 4 can be removed from Windows 95.
3. Web browsing with IE 4 can be removed from Windows 98.
4. Web browsing with IE 4 can be replaced with Navigator for web browsing functions following the removal of IE 4.

Results 1 and 2:

According to Felten, the process of removing Internet Explorer from Windows 95 is relatively straightforward. Both versions of Internet Explorer can be removed using the "Add/Remove Programs" function. Once Internet Explorer has been removed in this manner, it is no longer possible to launch the application.

Result 3:

Although the web browsing in Windows 98 is functionally similar to web browsing with IE 4 in Windows 95, one significant difference is that users no longer have the ability to delete the web browsing function in Windows 98.

In order to demonstrate the feasibility of removing the web browsing functionality provided by IE 4 from Windows 98, Felten developed a prototype program that is activated from the "Add/Remove Programs" control panel. The program modifies two existing shared program libraries, removes a number of files and directories, and alters the Windows registry. The program removes all of the methods by which the user can browse the internet using IE - none of the files comprising IE are actually removed by the program.

The only method available to a user who seeks internet access is through the "Windows Update" selection in the Start menu. Selecting "Windows Update" takes users to a Microsoft web site. Although it is possible to access the internet in this manner the user cannot browse the internet from this site. Furthermore, this function could be deleted with minor changes to the prototype program. One reason Felten preserved this method of accessing the internet is that the "Windows Update" web site has been structured to refuse access to any non-Microsoft browsers.

Felten's demonstration proves that a process for removing web browsing from Windows 98 without endangering non-web browsing functionality is feasible. It should be noted that removal of IE using the prototype program does not prevent reinstallation of IE 4 or IE 5.

Result 4:

Following the removal of IE with the prototype program, installation of Navigator, the Windows 98 user experiences web browsing with Navigator in a "substantially similar" to the web browsing experience with IE. It is important to note that running the prototype program does not prevent later reinstallation of IE 4 or IE 5.

Felten's testimony also casts light on the appropriate method of conceptualizing products. Microsoft has attempted to define IE as consisting of four files. This definition is inadequate because of the malleability of computer code. The process of sorting code is not unlike packing groceries into bags. The inclusion of different lines of code within a file does not necessarily reflect anything about the structure or relationship between the code. Felten suggests that we conceive of a product in terms of its functionality. According to Felten, the tied product in the instant case is a web browser product that is defined by the ability it provides the user to browse the web.

The Department of Justice has succeeded in advancing its case on a number of different fronts.

With regards to the tying theory, Felten's testimony will be important. Felten's testimony directed the government argument along the well-worn path of tying jurisprudence. By characterizing the inclusion of IE web browsing function with the Windows operating system as an unwanted forced sale, Felten defined Microsoft's business arrangements in terms of the 'forcing' doctrine that has been favored by courts.

For the purpose of determining whether separate products exist, Felten's testimony provides the Court with a reasonable method of determining whether Windows 98 is a single product. The Court should prefer a definition of separate products that emphasizes the functionalities sought by consumers, rather than groups of files containing disparate lines of code that are packaged together for a number of reasons. The emphasis on consumer demand is consistent with the demand-based test for separate products set forth in Jefferson Parish. Felten's approach also addresses the concerns set forth in J. Wald's opinion in U.S. v. Microsoft, 147 F.3d 935 (1998). Wald evinced a concern that firms would simply commingle lines of code in an attempt to integrate two separate products. By drawing attention to this possibility Felten's testimony may cast doubt on Microsoft's claim that the web browser and the operating system are integrated.
Felten's evidence also ensures that Microsoft does not find a safe harbor in 'technological tying' doctrine. By demonstrating the absence of a compelling technological or economic justification for the bundling of IE and Windows operating systems Felten removed the possibility of satisfying the requirements of the Elhauge standard. The combination of web browsing with IE and the Windows operating system apparently does not offer any advantages that would be unavailable if the items were bought separately and combined by the purchaser.

Adoption of Felten's conception of a product may be critical to the government's case. If the Court were to accept Microsoft's definition of IE, the tying theory could be undermined because it may be impossible to remove the four files which comprise IE 4 in their entirety without 'breaking' Windows 98.

Finally, Felten's testimony also advances other Sherman Act §2 theories that may be presented by the government. The business practices described by Felten are akin to those of the appellant in Aspen Skiing. In Aspen Skiing a monopolist made an "important change" in the character of the market by engaging in exclusionary conduct. In the instant case, Microsoft has made a dramatic change by altering the relationship between IE and the Windows operating system. In Windows 95, users could remove the web browsing function provided by IE. In Windows 98, users do not have this option. Furthermore, competitors such as Netscape are precluded from displacing IE because of 'hardcoding.' Like the appellant in Aspen Skiing, it appears that Microsoft was not motivated by efficiency concerns, and that it was willing to sacrifice consumer good will and efficiency in exchange for a perceived impact on its rival.

Microsoft: Edward Felten
from mdannunz@law.harvard.edu

I understand that everyones supposed to read Felten anyhow, but heres my summary of the substance of what he said, and what Microsoft tried to assert on cross-examination:

Felten generally tried to show that Microsoft could give users a choice of web-browsing software in Windows 98, whether that choice is IE, Netscape, or no browsing capability at all. He first demonstrated four situations where IE would launch even if Netscape were installed and set as the default browser. He called this hardcoding of IE. Then he demonstrated a prototype program that he had written. It evidently works by deleting iexplore.exe and then taking care of some scary error messages that would normally result from that deletion.

By using this prototype program, Felten asserts, he removed all web browsing functionality from W98 without affecting the other features. Felten equated removing web browsing functionality with removing the browser, because he defines a browser in terms of its functions rather than in terms of the underlying code or files. Feltens point, which he repeats several times, is that it would have been technologically feasible for Microsoft to offer a version of W98 that had no web browsing capabilities, or offered users a choice of which web browser to use.

In response, Microsoft asserted that Felten did not remove, but merely hid, IE. Microsoft asked Felten to identify any W98 files that are exclusively used for the web browsing function, which could presumably be completely deleted by a user who doesnt want a browser, and Felten could not. (Does anyone know why iexplore.exe wouldnt be such a file?) Instead, Felten pointed out that it is inefficient to package code into these composite files, because the entire file gets loaded into memory whenever a program calls any of the code in the file.

Microsoft also evidently found a way to browse the web with W98 even after Feltens prototype had run, without installing another browser. This method is so obscure that its funnyit involves dragging an internet shortcut into a help window. If you drag a shortcut to a search engine, then type a url into the search bar, you can navigate to any site on the internet using the help window! I dont think this revelation is especially significant, because its so obscure, but it does show the length to which Microsoft has gone to integrate IE with W98.

Finally, Felten provided an analogy that seemed to resonate with the judge. He compared a web browser to a screwdriver, and said that while a screwdriver is a useful thing, you wouldnt want one glued into your hand. Microsoft, by hardcoding IE into W98, had essentially done just that, because it didnt leave the user free to put the screwdriver down or pick up a different one.

Overall, Felten seems to have been effective in conveying his point that Microsoft could have feasibly designed W98 without including IE web browsing functionality. Microsoft could point out how the underlying IE code is thoroughly tangled up with the W98 code, which would be enough to satisfy an engineers definition of integration. Browsing the internet, however, remains a distinct function that doesnt necessarily need to accompany W98. This point seems obviousan easier way to disable web browsing in W98 is simply to unplug the darned modem! That would sure ensure that the user wouldnt be able to browse the internet, and certainly wouldnt disable the other functions of the operating system (except the various online update features, I guess).

Although Felten effectively showed that W98 doesnt necessarily have to include a browsing function, he was less effective at demonstrating why it shouldnt include that function. Microsoft claims that by compartmentalizing IE and making its various procedures available to other programs, it had designed a better operating system. Other programs could, for example, use the IE html rendering engine, a feature that might be useful to some programmers. Once these IE procedures are included in the operating system, the cost of adding browsing functionality is a few kilobytes of hard disk space.

Finally, it is refreshing that we are finally defining products in terms of their function rather than the way the code is packaged into files. I suspect that Judge Jackson wont have a lot of sympathy for a Microsoft response arguing about integration in engineers terms. So the question that remains after Feltens testimony is not whether Microsoft could make Windows without a browser. Clearly they could. The unanswered question is why they should be required to that. DOJs argument that it would make a more efficient operating system doesnt seem convincing. Sure, it would get rid of some clutter on the various menus, but the users can already do that themselves. And because Microsoft has relied on IE code elsewhere in the operating system, removing browser functionality while preserving the other functions of W98 doesnt save much hard disk space.

United States: William Harris

Microsoft: William Harris

United States: Franklin Fisher

Microsoft: Franklin Fisher

The Berkman Center for Internet & Society