Sign In/My Account | View Cart  

advertisement

AddThis Social Bookmark Button

Open Source Needs Leadership?

   Print.Print
Email.Email weblog link
Blog this.Blog this

Tim O'Reilly
Aug. 06, 2001 05:05 PM
Permalink

Atom feed for this author. RSS 1.0 feed for this author. RSS 2.0 feed for this author.

Jay Greenspan's Webmonkey article, Where Do You Want to Go Today, Open Source?, suggests that the open source community needs a higher level of leadership if it is to succeed in the face of Microsoft's strategic plans to take over the next-generation Internet. He says:
The most recent Microsoft initiatives (.NET and Hailstorm) will change the way applications are delivered over the Internet. If the open source community does not directly respond to Microsoft's plans, it is likely that open source software, which has been such an integral part of the Internet's infrastructure, will have a diminished role in this next phase of the Net.

But how can a group as large, diverse, and happily anarchic as open source muster a coherent reply to something as focused as .NET? Open source can't seem to finish a browser, upgrade a Web server, or manage the development of a database server, so how can it concentrate on something as far-reaching as .NET? The answer, I believe, is with leadership. The right kind of leadership.

When it comes to implementing a specific strategy, Microsoft has the advantage of a top-down structure. Senior management establishes a vision for the company, then the various divisions of worker bees try their damnedest to implement that vision. Whatever its crimes or problems, there can be little question that Microsoft has a highly effective management team--as millions of shareholders will attest.

Greenspan goes on to contrast this top-down organization with the divergent points of view in the open source and free software communities, and concludes:
...only a unified plan of attack will be strong enough to weather the difficult situation ahead. Then they'll have to convince a legion of coders to pursue this path. And that isn't going to be easy.
While I agree that the development of a next-generation Internet operating system is just about the biggest challenge facing open source today, I am not convinced that the open source and free software communities need a single unified strategy like Microsoft's .NET. Far from it. I'm convinced that the existing open source strategy, to encourage bottom-up competing solutions to real-world problems, connected by an Internet-style architecture that allows those independent solutions to interoperate, both with each other and with proprietary offerings from the likes of Microsoft and AOL, is the way to go.

There is a history of battles between Microsoft and other companies, from Novell to Netscape, where each competitor's "top-down strategy" has foundered on the rocks of Microsoft's entrenched monopoly position and superior execution of a winner-takes-all strategy. The technologies that have done best are those that avoid that game entirely, and counter Microsoft's "embrace and extend" strategy with one of "open up and connect." Netscape abandoned the open protocols of the early Web with an embrace-and-extend strategy of their own, which failed, despite a staggering early lead in the browser market. By contrast, Apache, which hewed strictly to interoperability and open protocols has maintained and even extended its lead over Microsoft's competitive offerings.

Perhaps I seem to be mixing two issues here: top down versus bottom up, and open versus proprietary. However, I'm convinced that the two are inextricably linked, because open architectures, like those of Unix/Linux and the Internet, are what make bottom-up technology development possible. As I've tried to point out on other occasions, well-designed open source projects define what you might call an architecture of participation, one in which the protocols between participating programs are well defined, so that the individual programs can work together despite being developed independently. Contrast this with the code "commingling" that judges have found so troubling in the Microsoft antitrust case.

The Internet as it now exists has laid down the fundamental rules of such an interoperable system. One key element of the Internet approach was first articulated in 1980 by Jon Postel in RFC 761, TCP, and repeated and expanded in RFC 1122, Requirements of Internet Hosts. It is known as the "robustness principle": "be conservative in what you do, be liberal in what you accept from others."

Overtones of the golden rule aside, this is a cornerstone of interoperability, and the opposite of the games we've watched for the last few years, as vendors have built competing implementations that are reckless in extending standards, but parsimonious in recognizing competing variations.

In short, the strategy already exists: it is to follow the credo of interoperability, and eschew the credo of competitive advantage based on proprietary and exclusive data protocols and data formats.

And because open source is, well, open, it's tough for its protocols and data formats to be anything but open as well. Even if someone produces a new one, it can, if widely adopted, be copied by anyone else. And for the most part, open source does embrace and even "enforce" interoperability. So, for example, it is sendmail that has enforced the continued use of RFC 822 as the standard for email messages, and Apache that has kept HTTP from going the way of HTML.

Many open source projects have worked to create interoperability where it was not planned. Jabber has been at the forefront of efforts to bring interoperability to Instant Messaging systems. So far, AOL, the market leader, has tried to stop Jabber and similar efforts to open up IM, but I believe that they are coming to realize that interoperability may be their only successful weapon in the coming battle with the next generation of Microsoft Instant Messaging software.

It is in this same context that we need to understand Mono, Miguel de Icaza's effort to reimplement parts of the .NET Framework. Some critics have complained that Mono is bad because it aids Microsoft's plan to make the .NET Framework ubiquitous. But that's precisely the point. The framework will become ubiquitous to the extent that independent implementations can be interoperable.

Once you accept the idea of interoperability as the cornerstone of the Internet architecture, and measure projects by the degree to which they work well with others, you see that the diversity of open source is a strength, not a weakness. Where a top-down approach limits you to one evolutionary track, a bottom-up approach allows for rapid, parallel evolution.

And there are many fascinating open source projects (as well as projects from independent developers who are either contemplating open-sourcing their work outright, or have incorporated elements of open source into their strategy.) As has been the case from the beginning, these projects are driving the industry, including Microsoft, forward. After all, it was Dave Winer's XML-RPC that gave rise to SOAP, now a cornerstone of Microsoft's .NET services strategy. (Incidentally, both XML-RPC and SOAP are well-supported by open source programming languages like Perl and Python.)

The one thing that the open source community and its media boosters could do better is to recognize and embrace its innovative new projects, rather than keeping so much of the focus on the established projects. One of the things I've tried to do in conferences such as the Open Source Convention and the upcoming Peer-to-Peer and Web Services Conference in Washington D.C., is to highlight some of this new and exciting work. Freenet, some of the Gnutella projects, Jabber, JXTA, BEEP, Alpiri, and others, should be as familiar to open source developers (and to proprietary software developers) as Linux, Perl, and Apache.

The one thing that's important to remember is that in an interoperable world, it's not necessary for a program to "win", to achieve dominant market share, to have an impact. In fact, the essence of interoperability is choice. If developers honor the robustness principle, and make software that works well with the software of others, it's ultimately the users who win.

In the end, then, the leadership we need is one that continues to embrace and exalt the values that have been so central to the evolution of the internet thus far, and not to jump ship in hopes of gaining some temporary advantage over rivals.

Tim O'Reilly is the founder and CEO of O'Reilly Media, Inc., thought by many to be the best computer book publisher in the world. In addition to Foo Camps ("Friends of O'Reilly" Camps, which gave rise to the "un-conference" movement), O'Reilly Media also hosts conferences on technology topics, including the Web 2.0 Summit, the Web 2.0 Expo, the O'Reilly Open Source Convention, the Gov 2.0 Summit, and the Gov 2.0 Expo. Tim's blog, the O'Reilly Radar, "watches the alpha geeks" to determine emerging technology trends, and serves as a platform for advocacy about issues of importance to the technical community. Tim's long-term vision for his company is to change the world by spreading the knowledge of innovators. In addition to O'Reilly Media, Tim is a founder of Safari Books Online, a pioneering subscription service for accessing books online, and O'Reilly AlphaTech Ventures, an early-stage venture firm.

Return to weblogs.oreilly.com.



Weblog authors are solely responsible for the content and accuracy of their weblogs, including opinions they express, and O'Reilly Media, Inc., disclaims any and all liabililty for that content, its accuracy, and opinions it may contain.

Creative Commons License This work is licensed under a Creative Commons License.



-->