Microsoft's Big "Crime"
December 30th, 1999
The software developer's story of 1999 is clearly the Justice Department's prosecution of the case against Microsoft. I'm no lawyer and will not attempt to comment upon the legal aspects of the case. Nor will I take a position on the morality (or lack there of) shown by Microsoft in their dealings with competitors and partners.
But one part of the case should concern all developers: when does solid product evolution become market piracy?
The primary charge against Microsoft in the case as presented by the states is described in the press as "embedding a browser as a integral part of Windows." This is also one of the top five incidents listed in the federal case. I agree that this action derailed Netscape's attempt to dominate the market for Internet browsers, but how do we legally define the boundary between an Internet browser and a file browser? Does it serve the public good to outlaw the presentation of data from local files on Internet browsers and the presentation of Internet data on file browsers? Or is the data format the distinguishing characteristic? But isn't HTML an "open" standard, free for all to use? There is potential for a legal decision here than could impact the competitiveness of the broader software industry far more seriously than export regulations on encryption technology ever can.
When is an OS a browser and when is a browser an OS? These terms (OS, browser, etc.) are merely "handles" by which we can hold in our minds the functionality that we find interesting and useful. Raising them to the level of defining a unique and distinct "market" seems to fly in the face of the history of software development. Let's consider the specific history of the Windows browser wars in the context of what is traditionally accepted as the popular archetype for all modern operating systems: UNIX (or it's most recent reincarnation, Linux.)
UNIX includes a program called LS(1) used to "LiSt" files. This program allows a user to explore the contents of the hard disk, displaying file names and other file properties. Is it part of the UNIX operating system or is it purely an application?
Most UNIX (Linux) advocates believe it is an essential part of the OS as well as being a prime example of how UNIX supports applications. It is considered to be part of the OS because many scripts used to maintain the operating system depend upon LS(1) being there and working as specified. It is not essential to the kernel, however, and runs totally at the application level as a user and/or script command. In spite of this, it would be hard to run a practical site without LS(1) or it's equivalent. I therefore concur in the generally accepted view that LS(1) is an essential part of the UNIX (Linux) operating system product.
What if I were to make a Visual LS? Would VLS be part of the OS? Rather than spewing text strings, VLS would pop up a window with the files listed. Now assume an industrious kid built VLS for UNIX and decided to integrate it with the shell (SH(1)) such that clicking on a file listed in the window would cause an editor of that program to be launched. For example, clicking on a text file could/would launch VI(1) to allow the user to edit it. The shell features of VLS could easily become a popular shell replacement for interactive users. Should a UNIX or Linux vendor be prohibited from including VLS functionality in their product?
Note that the original Windows Explorer in Windows 95 has functionality essentially identical to the proposed VLS. Reviewing the history of development you see this is a clear extension of what Microsoft was already doing in Windows 3.1 and earlier windowing systems. It implemented very common technology that was demonstrated in virtually all windowing systems, dating from Xerox PARC research forming the foundation of the Apple Lisa and other early windowing systems. The Windows Explorer was a relatively tame and obvious extension to Windows 95 and in no way a theft of patented technology from Netscape, Xerox, Apple or any other developer or researcher.
Windows Explorer was also clearly integrated into the Windows 95 operating system at least as well as LS(1) is integrated into UNIX and Linux. And like LS(1) in some forms of UNIX, the Windows Explorer was capable of following links to remote file systems on computers connected via networks. Further, it was able to recognize devices other than disks and "explore" these virtual file systems, displaying the properties of devices attached to the computer and to the network.
Then came December 7th, 1995. On that day, which will live forever in the annals of computer industry history, Bill Gates admitted he made a mistake: Windows 95 was written ignoring the single most important invention in computer technology since the invention of the PC. Gates had come to realized that after a half-billion dollar investment and years of work by his best engineers on Windows NT and Windows 95, his company was about to miss the Internet Revolution!
Microsoft personnel at every level were directed to incorporate every Internet protocol and significant feature into the Windows 95 platform ASAP and for FREE. Obviously, this extrapolates to extending the Windows Explorer to view HTML files and explore networks of computers connected with the HTTP protocol, among many others. Thus the Internet Explorer was born of the Windows Explorer by the well recommended process of modifying proprietary software to use open standard protocols and file formats. As further evidence of this move toward Internet standards, Microsoft junked it's old help file format and adopted HTML, thus merging the help system of the OS with IE, eliminating the overhead of launching yet another file format viewer whenever a user calls for help. Windows 98 was further optimized by merging the Windows Explorer, the Internet Explorer and the Windows Help viewer into the same program. And like LS(1), no sane user would want to buy the OS without IE supporting help and file browsing services.
My point: Internet Explorer is a natural extension of Windows and in no way a "rip off" of Netscape. Further, it is at least as well "integrated" with Windows as the LS(1) command is integrated with UNIX.
Meanwhile, Netscape and others were pounding the desks of every forum on Internet technology declaring the World Wide Web as the revolutionary new platform for application development. Sun argued that the "network IS the system" and readily agreed with Netscape that PCs and Windows were doomed to forever be toys, incapable of dealing with the new revolution. I'm reminded of Khrushchev's shoe and the "we will bury you!" language.
My point: If Netscape was free to evolve a browser into an OS, why is it wrong to allow Microsoft to evolve an OS into a browser?
In short, history does not support the argument of the states that in some way a "line" has to be drawn between browsers and operating systems. It may very well be that Microsoft was far too aggressive in some of it's marketing and partnering arrangements. But is a GROSS misreading of history and very misleading to suggest that the merging of OS and Browser was some type of Frankenstein "genetic mutation" that must be burned at the stake! The idea is a good one and will forever be with us.
Possibly Netscape and Sun deserve more credit for promoting the idea originally, but Microsoft deserves some significant credit for recognizing their original mistake and out-doing their completion at their completion's own game.
An early reviewer of this article commented that "integration per se" is not the issue: "monopolies are held to a higher standard!" Once Judge Jackson declare that Microsoft was a monopoly, the rules for Microsoft changed? Is there some rule that integration must only be done by weak competitors to incorporate the features pioneered by the market leader while the market leader must stand still until no longer in the lead? This certainly guarantees a "well stirred pot" from which to draw products, but is this always the best outcome for the customer? What of the customer's investment in training, need for long-term support, backward compatibility and a commitment to integrate new technology into the product?
We need to find some way to balance these needs with the need to support an open and competitive marketplace. However this case is resolved, there is the potential for serious down-side consequences for all developers, large and small. Ask yourself the type of world you want to develop software, websites and e-business in: do you want to have the limits of your imagination defined by lawyers? Will we need to have labor union like "work rules" to define what we can and cannot do? That's not the world I'm looking forward to working in.
Return to this site next Thursday for more ideas on how developers can form open and dynamic alliances to counter both the imperial monopolies dominating one side of this issue and the legalistic bureaucracies on the other. Got an opinion or an idea? Provide feedback below or join the discussion group sponsored by Active Windows. And THANKS for your interest!Copyright © 2000 Information Security Analysis LLC. All Rights Reserved. http://www.infosecana.com/flinkink
This site is not related to the Microsoft Corporation in any way. Windows and the Windows logo are trademarks of the Microsoft Corporation. ActiveWindows is an independent site. The information and sources here are obtained from series of hard work & research.