[LWN Logo]

From: Guido van Rossum <guido@CNRI.Reston.Va.US>
Subject: O'Reilly's "Open Source" summit
Date: Fri, 10 Apr 1998 17:49:12 GMT

This Tuesday was the date for O'Reilly's Freeware^H^H^H^HOpen Source
summit and press conference.  I promised a few people a trip report,
and decided I might as well post it to the Python newsgroup.  Warning:
this is biased and may occasionally be mistaken where facts are
concerned -- read at your own risk!  It's also longer than I planned
-- we did cover a lot...


Background
----------

Tim O'Reilly realized that freely available software is much more
important for the Internet than most people, especially many of the
higher level decision makers and their informers (e.g. the press)
think.  The common perception is that the Internet is mostly built on
proprietary software, e.g. Solaris, Netscape, and Microsoft products.
But in fact, many crucial pieces of software are in fact not
proprietary: sendmail delivers 80% of all email mail, BIND (the
Berkeley Internet Name Daemon) does most of the name-to-IP-address
translations, Apache is the #1 web server, the most popular encryption
software is PGP, the three most commonly used scripting languages are
Perl, Tcl and Python, and so on.

All these great pieces of software are freely available in source
form!  What's going on here?  Of course, we all know why this is --
this is a great software development model.  But corporate America is
slow to discover this.  The release of the Mozilla sources by Netscape
was the first hint that this may be changing -- and once this was
announced, O'Reilly started to receive calls from the press about this
mysterious "freeware", and realized there was an opportunity to
increase the press's awareness of open source software.

The meeting had two distinct parts: first, the invited software
developers discussed the merits and problems of open source software,
their plans, and so on.  Second, at the end of the day we held a press
conference.  I'll report on both events separately.


The summit
----------

Basically, the gathered software developers talked amongst themselves
from 9 till 5.  It would have lasted all week if it weren't for Tim
O'Reilly's talent as a moderator!  Most participants were from the Bay
Area; I flew in from Washington DC, and John Ousterhout (who normally
also lives there) interrupted his vacation in Hawaii for a day.

We started off by a round where everyone was asked to mention their
motivation and positive experiences: why did make source available,
what worked well, what do you like about the process.  In the end we
agreed on two main reasons why the open source development model works
so well.  Most other reasons can be reduced to a special case of
either of these.

One, from the developer's point of view, there's the advantage of
*massive peer review* (also formulated as "debugging is
parallellizable").  There is no other methodology for software
development that yields software that is as reliable and robust as
open source.

Two, from the user's point of view, the big advantage of open source
flexibility.  Linus Torvalds emphasized this with the following
example: he is generally quite happy with Netscape's browser, but he
has one wish: to disable animated GIFs, which are used almost
exclusively for advertising.  Without source, he couldn't do this!
(Jamie Zawinski of Netscape called this "scratching itches." :-)

Other advantages of open source software development that were
mentioned included low cost technology transfer, and the use of a
reference implementation to help develop a standard.

As far as the initial motivation for making source available, a
(surprising, to me!) large number of developers said their initial or
ulterior motivation was moral/ethical: they believe that it is "the
right thing to do" to make source available.  RMS (GNU's Richard M
Stallman) will be smiling in his grave!  (Oops, he's not dead yet. :-)

In the next round, we discussed our negative experiences -- what
doesn't work, what are your biggest problems, and so on.  Apart from
some joke entries like "our biggest problem are stupid people" and
"the relationship with RMS", two problems were common.

One, as a package becomes more popular, the developer spends more time
on helping users than on developing software.  While there are ways to
avoid this (e.g., don't answer email), it remains a problem -- without
a support organization, you're it!  This can be summarized as "you're
crushed by your own success."

Two, it's often a problem to get the people who want to contribute to
do so in a meaningful manner.  The darkest picture was painted by John
Ousterhout, who claims that a contributed patch saves him only 50% of
the development time compared to writing it himself from scratch.
Some agreed; others (like me) rebutted that it's a sliding scale --
yes, for the core of the package, this may be true -- but there are
many peripheral items where much contributed code can be accepted "as
is" -- even if it doesn't work -- since the massive peer review /
debugging once it is released will eventually fix it.  Linus has an
extreme but clear point of view: the *interfaces* need to be designed
carefully by the main developer; the implementations may be buggy.
For example, Linus doesn't mind at all if there are some buggy device
drivers -- that only affects a small number of people, and only until
they get fixed -- while a bad design will haunt you until the end of
times.  (This matches my own experience, but Linus said it clearer.)

This boils down to a matter of control.  It was noted that almost all
systems represented have a core that's kept under (relatively) tight
control by the main developer, and a well-defined and flexible
extension mechanism which is used by most contributors, where control
is less important.

Other problems that were mentioned included the current intellectual
property laws and the way the legal system is abused to enforce them
in strange ways, and unfair "badmouthing" of open source software by
competitors trying to peddle proprietary solutions.  Also, the
distribution model (revenue model) isn't ideal -- you can't buy most
freeware packages at your local neighborhood software supermarket,
even in Palo Alto.  (You can buy RedHat Linux there, though!)  Code
bloat was also mentioned (but the Netscape boyz pointed out that this
is not a unique problem of open source software :-).

After lunch, we discussed what to do about the problems.

We didn't say much more about the control issues, except to note that
managing a distributed development team like the contributors to the
average open source package is a bit like herding cats.  (The first
time this came up I heard "hurting cats", which I found a bit strange
-- luckily Tim or other O'Reilly people made copious notes on a
flipboard. :-) The best contribution (for me) came from Eric Raymond
and Cygnus' John Gilmore, who noted that it's possible to train your
contributors, (e.g. through style guides, coding standards etc.), and
that this is actually an effective way to improve the quality of the
contributions.  One way to go at it is simply saving scraps of
"internal documentation" as you are producing them, e.g., in response
to email questions from other developers, and in a couple of years,
voila, an internals manual!

The rest of the time (and also interspersed throughout the rest of the 
day) we discussed various business models that may make open source a
sustainable activity, rather than a hobby or a questionable skunkworks 
activity.

It turns out that almost everyone present was involved in an attempt
to commercialize their software -- and *everyone* wanted to do so
without making the sources proprietary.  Everybody's situation is a
little different though -- sometimes because of the user base of their
software, sometimes because of the competition, sometimes for legal
reasons, and sometimes simply because they have different motivation.

For example, John Gilmore told us how Cygnus is successful selling GCC
ports to the embedded systems industry -- a small niche market that,
before Cygnus came in, was monopolized by a small number of compiler
companies who'd charge a million to retarget an existing compiler to a
slightly different chip.

Another success story was told by Sameer Parekh of C2Net, who are
selling Stronghold, a commercial, secure version of Apache.  Because
of the patent situation on encryption software, there is no free
encryption code that can be used for commercial purposes, so companies
in need of a web server with encryption have to pay *some* vendor.
Note that C2Net provides their customers with the source for their
version of Apache, but only with binaries of their encryption library.

Yet another story was told by Paul Vixie of the Internet Software
Consortium, a non-profit that's maintaining BIND.  Some big computer
vendors paid the ISC a lot of money for Paul to further develop BIND,
and didn't mind that Paul would make the sources available for free to
others, as long as the work got done.

There were also those for whom it was too early to declare success (or
failure): Larry Wall and Linus Torvalds aren't making any money
directly off selling copies of Perl and Linux.  Others are though, and
of course O'Reilly makes a lot of money on the Perl books -- as are
other publishers.  Linus has an exciting non-Linux related job at
Transmeta, and has no plans to personally commercialize Linux; Larry
however is working for O'Reilly and there are some plans to
commercialize at least the Windows port (which is done by an outside
company with some kind of license agreement from O'Reilly).

John Ousterhout has just made the jump to the commercial world for
Tcl/Tk with his new company Scriptics, formed after Sun canceled its
plans for producing Tcl/Tk products.  John is planning on a mixture of 
open source and proprietary software: Tcl and Tk themselves will
remain open source forever, but Scriptics plans to make money off
proprietary tools like a debugger and a source analyzer.  One reason
to keep Tcl/Tk free is to ensure that nobody has an incentive to "fork 
off" an incompatible version.

Eric Allman of Senmail, Inc told a similar story -- he had first hoped
to create a consortium but found all doors closed, so in order to
remain in control he quit his job and formed Sendmail, Inc. with Greg
Olson.  He promises that a free version will remain available, but
seems to aim at licensing it to the big computer vendors.

While everybody's story is different, there's one common line:
everybody is working on a *sustainable* business model that produces a 
sufficient revenue stream to pay for developers and a support
organization, without giving up the advantages of open source
software.  As Netscape's freeing of the Mozilla source shows, this
idea is even getting some attention amongst traditional proprietary
software vendors!


Freeware, Open Source or Sourceware?
------------------------------------

We spent some time discussing the terminology of choice.  Tim took a
straw poll.  Free software or freeware got almost no positive votes
the cutesy "freed software" even got many negative votes).  The winner
was a tie between open source software (favored by Eric Raymond) and
sourceware (which has been used by Cygnus).

I've had some reservations about "open source", but I like it better
than the too-cute sourceware, and I agree with the perception that
freeware has a bad reputation -- and of course, much "freeware" comes
without source, while the common factor of the software represented at 
the summit is the availability of source code.

Eric Raymond has trademarked the term "Open Source" (capitalized) and
has a somewhat precise definition of what is or isn't Open Source on
his website (see below).  I sometimes worry that this can become a
limitation: what if I call my software Open Source, with his approval,
and later I change the terms and conditions, or Eric changes his
definition -- I could be sued by someone who says I have to stick to
the Open Source rules.  Eric believes that this won't happen, and
besides says that everyone is free to use the "open source"
(lowercase) without sticking to his definition.  We'll see -- for now, 
I'm favorable to the concept, but we won't put "Open Source" on the
Python website yet.  (Note that we don't use "freeware" either.)


Where next?
-----------

We briefly discussed how to approach the press and possible follow-up
meetings.  The general conclusion seems to be that the time is ripe to
try and get the message to the next level of managers in companies
that are already using the products of open source software
development -- the CIOs who don't even know that their developers are
using Perl or Python, and only listen to their peer CIOs, the Wall
Street Journal, and the expensive consulting and market analysis firms
that haven't discovered open source software yet either.  How we're
going to do that?  Clearly the press conference is a step in the right
direction, and O'Reilly will be following up to the press.  Eric
Raymond is very active in talking to corporate people.  Sarah Daniels
of Scriptics has some big ideas for a joint ad campaign (we'll
see...).

What I got out of it?  Lots -- more clarity about why open source
software works so well, and how to make it work even better, as well
as motivation to try and find a revenue stream.


The press conference
--------------------

The press conference started around 5.30 and lasted until 7.30 or 8.00
pm.  All developers sat behind a long table behind name tags, with Tim
O'Reilly in the middle.  There were about 20-30 reporters; the first
hour we had our pictures taken about twice a second.  Tim O'Reilly
gave a short introduction (see URLs below) and then let the press go
loose.  They mostly picked the better-known names, so I didn't get to
say much (of course, much attention went to the two guys from
Netscape).

As predicted, it was at times difficult to divert the subject away
from "how are you taking on Microsoft" or "clearly this can't work".
With some journalists, you can give a perfectly clear answer to the
question, and all they do is give you a blank stare and ask the same
question again with slightly different words.  But most of them were
really trying to understand the message (and some clearly had already
gotten it before they came).  Once the formal part of the press
conference was over, everyone stuck around and many one-on-one or
two-on-two interviews were carried out.

All in all it was an interesting and useful event; see below for the
first results.  Of course, we'll have to see if we really change the
pperception of the open source software development model as a fringe
freak issue...


References
----------

(These predate the summit.)

O'Reilly's original press release, listing some key participants:
	http://www.oreilly.com/oreilly/press/freeware.html

Tim O'Reilly's opinion of freeware:
	http://www.oreilly.com/oreilly/news/freeware.html

Eric Raymond's paper The Cathedral and the Bazaar:
	http://www.earthspace.net/~esr/writings/cathedral-bazaar/

Eric Raymond's Open Source web site:
	http://www.opensource.org


Press coverage
--------------

(As forwarded to my by O'Reilly's PR team.)

Before the summit, Tom Abate wrote a column in the SF Chronicle,
"The Brains Behind Freeware to Meet." It's at:
http://www.sfgate.com/cgi-bin/article.cgi?file=/
chronicle/archive/1998/04/02/BU71924.DTL

"Open source gurus convene"
at http://www.news.com/News/Item/0,4,20913,00.html?st.ne.fd.mdh

Wednesday's San Francisco Chronicle had a full page piece by Tom Abate
on the Open Source story, containing interviews with (and pictures of)
Larry Wall, Linus Torvalds, Paul Vixie, and Tom Paquin.  The online
version, sans pictures, is at
http://www.sfgate.com/cgi-bin/article.cgi?file=/chronicle/ar
chive/1998/04/09/BU94387.DTL

Also, NPR ran a long piece on Linux Wednesday evening.  There's a
RealAudio version at:
http://www.npr.org/programs/atc/archives/1998/980408.atc.html

Judy DeMocker's piece in Meckler's internetnews.com is at:
http://www.internetnews.com/bus-news/1998/04/0802-netscape.html

John Markoff is planning on running his piece on the summit in next
Monday's New York Times.

--Guido van Rossum (home page: http://www.python.org/~guido/)