OSCon: Developers and testers as heroes

by Andy Oram

Related link: http://conferences.oreillynet.com/os2005/

The software developer is the hero of our day. This is not only
because of what developers have accomplished, but because of their
integrity and transparency. They can't fake what they do.

A developer can't make his code perform better by ingesting dangerous
medicines. He can't improve benchmarks by carrying out shady
accounting deals. He doesn't get anywhere by wearing glitzy clothes
and appearing on TV shows after two-hour make-up sessions. He's not
likely to make his project progress by splitting and polarizing a
population with appeals to deep-seated fears. We're disgusted by all
the other public figures society has thrown at us; only software
developers are pure.

The developer as hero was celebrated several times over in the morning
keynotes at href="http://conferences.oreillynet.com/os2005/">OSCon. Tim
O'Reilly and conference coordinator Nat Torkington shared a
presentation celebrating the progress of programmable Web
services, popularly called Web 2.0. Tim pointed out that major Web
sites such as Apache, Google, and eBay have provided programming
interfaces (Web Services) for a while, but that now we're seeing "the
first true Web 2.0 applications"--meaning applications that create
something new rather than just enhancements to the underlying web
site. He illustrated the trend with a hack that combined craigslist
with Google maps to show real estate offerings for given

But another set of heroes emerged in the next keynote, given by Kim
Polese of

SpikeSource and the ascent of testing

Polese started with some crackling one-liners illustrating the trend
she's seen in the evolution of open source: From DIY to DIT (do it
together). From Egosystem to Ecosystem. From an architecture of
participation to building of participation.

Basically, Polese said businesses have come to accept open source and
are performing their own integration in order to get it to work for
them. She recognized and articulated a concern I've had for some time,
and which by chance I tried to turn into a blog last week but never
quite pulled together. So I'm going to plunk down that
not-yet-published blog right here and then return to her view of the

The lament of the Linux knowledge worker

I've been living with and struggling with a mental disconnect in the
free software arena for several years.

On mailing lists, news sites, and trade journals I read glowing
reviews (or anticipations) of wonderful new packages and support for
the most advanced computing uses. Then I return to my little desktop
systems, where my wireless card and power management still don't work,
my GNOME desktop often thinks my left-most mouse button is depressed
when it isn't (leading to wild errors), and remote file transfers have
been crippled by an apparent bug in the latest distribution. (I'm
always trying new distributions in the hope of finding a happy moment
where some version has all the critical functions I need. The closest
I came was a year ago when I paid $99 for the first version of Red Hat
Professional Workstation.)

These are just the problems that hold my productivity back every day;
there are others I haven't bothered to list.

I'm not surprised at the configuration problems on my system, and I
don't blame anybody. It's the fallout from open source development.
I'm getting the kernel from one project, the desktop from another
(both KDE and GNOME--I'm desktop fluid), drivers from still other
projects, middleware such as the ESD sound daemon from their projects,
and of course, applications from their various producers. No matter
how stable and carefully developed all this software becomes, getting
it to work together is hard.

GNU/Linux is the most volatile of the major operating systems. That's
partly because it's the youngest (certainly compared to Unix and BSD,
and even compared to NT and its derivatives). But it also attracts a
user community that's always pushing it ahead; this is what brought it
to the astonishing success it has today.

Most major distributions have come to face the tension that rapid
development produces between the goal of widespread adoption and the
goal of continuous improvement. Debian split into a stable and
unstable distribution, Red Hat split into Red Hat Enterprise Linux and
the more community-focused Fedora project--even Gentoo is considering
an Enterprise version.

Maybe I should just go ahead and pay $99 a year for a commercial
distribution, but I think there would always be something out of sync.
You can never rest with the system you've installed: before the CDs
were even shrink-wrapped, some of their contents had become
out-of-date, and the user must routinely update a system for the sake
of security as well as functionality.

In his keynote today, Andrew Morton (former Linux kernel maintainer) pointed out that the readiness
of Linux for the desktop is routinely underestimated because the
people who evaluate and report on it are the power users or knowledge
workers. Naturally, they have the most varied needs and are the
hardest to please. He repeated the generally accepted view (see, for
instance, my

report from the Desktop Linux Conference
that desktop Linux will start with kiosk application, move up to people
using one or two major applications, and gradually continue up the
knowledge chain as it appears in more and more places and companies
have reasons to enhance it.

So I wonder whether the computer industry will pass through a period
during which people see it as prestigious to have a PC running
Windows. ("I see you're stuck with Linux, Jones, but after all, you
don't have documents to post through SharePoint.")

More on Morton's talk
later in this blog.

The SpikeSource approach to free software inconsistency

Large organizations like open source, but they find that it takes a
lot more internal support, especially for precisely the problems I
encountered on my desktop: the integration of components that weren't
previously tested together. According to Polese, companies are
internally creating "formalized processes" such as review boards,
support desks, and incubation centers. But it's time-consuming and
takes away attention from whatever their core business is.

SpikeSource aims to improve the situation by recruiting volunteers to
do this drudgery, and providing better tools to help them do it. To
see whether they were really following through on this tall promise, I
visited their demonstration center, which was quite fancy (it
shouldn't be a surprise, given that they're partnering with O'Reilly

Their work did look pretty spiffy. Their download and configuration
utilities for selected stacks of products, such as the servers and
language tools in a LAMP system, were very easy to understand and well
integrated. Their automatic test generation utility for Java code did
a very full job (producing comprehensive code coverage in a set of XML
files) but it seemed to me it could serve only as a first step for
programmers who customized the XML to run the tests they really need.

More keynotes

The morning was rounded out by several other presentations, each
interesting for very different reasons.

Andrew Morton

Morton gave a short speech in a manner so low-key and unprepossessing
that one could miss his irony and incisiveness unless one listened
carefully. He struck a balance between praising the contributions of
the large companies participating in OSDL (the company that pays his salary, as they pay Linus Torvalds), and acknowledging the
importance of the wider free software community. The latter folks are
often suspicious of OSDL, rarely for any well articulated reason.
Morton labeled the OSDL member companies "blundering elephants" but
insisted they were dealing sensitively with the Linux community.

The same winning cynicism came out when he explained why Linux was
spreading everywhere. He was almost dismissive is saying the operating
systems and other infrastructure had become "commoditized," that their
implementation was "common knowledge," and that they "have no
intellectual property value left in them." (So why was there so much
argument about implementing features at the
Ottawa Linux Symposium
reported on
two weeks ago?)

He also claimed that free software developers are "significantly
better programmers on the whole" than their equivalents in proprietary
software companies. But he pointed out that OSDL member companies
contributed very important developers to Linux.

He made three major comments on the development process. (He wrote me email to help clarify his statements.)

  • First, any major kernel developer practically has
    veto power over any decision, but they manage to move ahead

  • Second, he validated the complaints of some people in the wider
    community that Linux was being loaded down with enterprise features.

  • He said that the free software community was not good at collecting
    input from end-users (by which I assume he meant unsophisticated
    end-users among the general public), and that companies had processes
    in place for doing that.

Jeremy Zawodny, Yahoo!

Jeremy gave a brief talk on two themes: how Yahoo! makes use of free
software, and what it's doing these days.

The role of free software at Yahoo! is pretty much the same as in
other organizations. They have lots of servers, and lots of desktop
users running the usual office suites and other things. The servers
mostly run FreeBSD, but they use Linux to run commercial software
packages because these tend to be ported to Linux rather than FreeBSD.
Jeremy reeled out the usual list of benefits of using free software:
flexibility (it's easy to change), quality (it's reliable), good
documentation (including often the source code), availability, and
support on community forums.

He said not to worry whether free software is scalable. Yahoo! is handling billions of page views per day, and a hot item can get a million views in the hour after it first goes up.

He also promoted Yahoo! for opening up its APIs with the goal of
becoming a full-fledged participant in Web 2.0. The Yahoo! Developer
Network and Yahoo! Widgets (originally Konfabulator) are the main

Jonathan Schwartz, Sun

I was nervous about attending Schwartz's presentation, partly because
I've been annoyed by a lot of his published statements (as I pointed
out in
one blog
which happened to be written when I was feeling relatively kindly
toward Sun) and partly because I was afraid of what the audience would
do to him.

Everything turned out fine: Schwartz was personable and
natural-looking, and Nat Torkington carried out an informative
interview. Nat gave Schwartz plenty of room to make his points, while
lassoing him on his occasional slipperiness, such as sliding from
discussing "free as in speech" software to "free as in beer"
software. Another example was an exchange about software patents,
where Schwartz played to the audience's abhorrence of the patents
(saying they're "largely inapplicable") while allowing that patents
could be used both to promote innovation and to squelch it.

I would have liked an exploration of Sun's relationship to the
OpenOffice.org project and their controversial decision to include
some Java code in it.

I was impressed with Schwartz's defense of Solaris. He said Solaris
should not be compared to Linux (a software project) but rather to
particular distributions of Linux being offered in the marketplace. I
can acknowledge his proud claim that OpenSolaris could provide
competition that spurs other free operating systems to improve. He
also vigorously defended OpenSolaris's CDDL license, saying their
license is open to linking with other software and that it's the GPL
that it is prohibiting collaboration. And he claimed that a large
community of contributors were flocking to OpenSolaris.

He said that "just because the software or service is free doesn't
mean it doesn't have value," and pointed out that it can provide value
by becoming a substrate for support, update networks, and ads. He also
boldly declared that "ultimately, every single product at Sun will be
free and open"--but of course, his definition includes the current
state of Java.

Notes on other sessions

I got around to at least parts of a number of sessions today.

Theo Schlossnagle on database replication

During the part of the talk I attended, Schlossnagle made the
interesting point that database administrators really want to
replicate only the results of an update, not the update itself. He
used, as an example, a complex query that involves a huge search
bringing in multiple databases, potentially requiring hours--but
ending up with a change to only five records. I didn't stay to find
out whether he had a way to propagate the five changes rather than to
rerun the update.

Ted Leung on Chandler

I sat with about 18 attendees for the beginning of Leung's
demonstration of how to build a new component (called a "parcel," just
to be different, I suppose) for the emerging Chandler office suite
from Mitch Kapor's
Open Source Applications Foundation.
I didn't find out the answer to the main question I've had all along
about Chandler--why? Why start a whole new project from
scratch to produce yet another office suite?

I can guess the answer, though, from the little that I saw. I imagine
that anyone who learns Python could extend Chandler (the point of the
talk) and therefore provide new features to the community fast. The
parcels are supposed to allow easy integration with Web Services and
other web sites. Chandler's visual components remind me of XUL.

Some general notes

Various O'Reilly staff and Safari staff held well-attended sessions
today. I was pleasantly surprised by the interest attendees had in our
work and thinking. But I realized it made sense, given the strong
interest in search engines nowadays. The very same needs--that is, the
aspiration toward reliable sources of knowledge in this chaotic
information world--also leads people to look for high-quality

But there are others making advances in the publishing industry. One
up-and-coming organization is
makers of ThoutReader, whose extraordinarily clever designer Gary Varnell

posed with me in a photo