"Open Source Guy" and the Enhydra Community Process
By Brett McLaughlin
This month, I wanted to talk to you a little bit about "Open Source Guy." Who's that, you
ask? You know the one. He's the guy that runs Linux on his desktop at work. He wears jeans
when it's business casual day, and shorts when it's jeans day. You can feel the heat from
the eight computers squeezed into his cubicle from across the office. Somehow, he manages
to always look like it's been two days since he shaved (how does he do that?). He wears
shirts with weird animals on them, speaks shell script as fluently as English, and has books with
lots of toys on them (including that blue and red thing with holes for yellow blocks). If
you're still not sure who I'm talking about, and feel vaguely uncomfortable, I might be
talking about you! By the way, I'm also talking about me ;-)
In fact, judging by your making it to enhydra.org, and reading this column by
me, a noted rebellious open source guy, you're probably this guy, at least to some
degree (yes, ladies, you can be this guy too!). And that means you have a special talent,
an ability to see a little beyond the corporate horizon, an affinity for taking a bit of
a risk, and a knowledge that openness is power. For all these reasons, I enjoy this chance
to write to you. I even would go as far as considering you a friend; and because of that,
I wanted to try and dispel some ugly rumors I hear from time to time. I'm active on most
of the open source project lists, especially the Apache projects (Xerces, Xalan, Cocoon,
Jakarta, etc., etc.), and I also still have lots of friends and contacts in the
corporate world, especially in the telecommunications industry. And I'm hearing lots of
things about "Open Source Guy" that I don't like; lots of things that are simply untrue.
The problem is that I see many open source people nodding their heads and agreeing with
these rumors and misstatements.
So what is it being said? What's a big enough deal that I sit here in my car, typing on
a little laptop, while the sun beats down and I wait for someone to look at buying my
house? It's the idea that we, the open source "revolutionaries", are actually some brand
of anarchists. That we abhor process, run wild, code recklessly, scoff at authority, and
generally live up to the careless Generation X moniker we have been slapped with. If you're
confused, astounded even, by these accusations, you may not have heard them yet; but rest
assured, you will. Pitch using an open source product to a manager who's been in IT for
20 years, or a financial officer who can't equate free with anything reliable. You'll
quickly get an earful (unless you're lucky, like we are here at Lutris!) about "Open
Source Guy."
What's even scarier is that, as I just mentioned, we often encourage these myths. Our
appearance, our slurred speech (hopefully because of lack of sleep and not an overabundance
of ... well ... liquid beverages other than Mountain Dew), our sometimes irreverance
can encourage these ideas, and the general inability to articulate what makes us tick
doesn't help either. "It's just what I like," "It's more fun this way," or "Try it. I
just can't explain it any other way," are not good explanations. You owe it to these
people, and to the trailblazers of open source, to have a ready defense for these comments.
And for those of you who think these guys are right, that we are a bunch of "Software
Cowboys," hopefully as I discuss the way to explain away this accusations, you realize
that there is more process and order here than in most corporate, commercial ventures.
Yes, that's right - even though we never meet, and most of our conversations happen
through e-mail, and "board meetings" happen through HTML on the web, open source
software boasts the fairest processes you will find.
The Enhydra project, and most open source application software projects, are run by a
limited meritocracy. This term, as far as I can tell, was first coined by the
Apache Software Foundation, some of the pioneers in application software (as opposed
to kernels and lower level services, such as Linux, sendmail, and BIND). In a nutshell,
it means that those who put forth the most work and the best work are those that most
affect a project. Did you get the significance of that? The leadership of this project
isn't in the hands of someone who was interviewed by someone else, both of which may
know nothing about software. Being able to draw the "resources triangle" or having an
MBA gets you nowhere here. The leader of a project may be a seasoned developer making
a million bucks a year, or an eighteen year old working on his college thesis, not getting
paid a dime. You want equality in the workplace? Here it is! And if you think this is nuts,
look at the most successful web server of all time (Apache), the most popular servlet
engine of all time (JServ), the new breed of servlet engine (Tomcat), the newest in
Java and XML standard APIs (JDOM), and... yup, the best application server you can find
(yours truly, Enhydra). This stuff works, because it puts the reins in the hands of folks
who can handle the horse, not those that read about it and never sat on a saddle (pardon
the metaphor - I am Texan ;-) ).
But the biggest surprise of all, the one item that blows away those who swear off open source as
"barely controlled chaos", and those that code it as "anarchists", is that it is well-defined
process that makes this work. Leaders aren't divinely appointed with a halo of light
surrounding their emails - they are voted upon. Projects don't start at the drop of a hat -
they are voted upon. Patches don't magically appear - they are mailed in, and, you guessed it,
voted upon. And underneath the votes, and majorities, and strange little "+1"s and
"-0"s, is legislation. Documents that define how voting occurs, and what an email subject
should be prefaced with, and clearly laid out guidelines for projects. Apache has its
constitution, JDOM has its specification, and I am proud to announce that Enhydra now
has its own formal process: the Enhydra Community Process. At this point (as the trumpet
fanfare dies down), you should read the Enhydra Community Process, which we affectionately
call the ECP. It's just been added to the enhydra.org website; check it out
here. This it the first draft of the very
backbone of the Enhydra project.
Detailed inside the ECP are the ways that voting should occur, both by majority and
by consensus. How a working group is created is covered, as is the decommission of one.
The responsibilities of a working group chair is laid out, and even the format of
a working group's page on enhydra.org is explained. CVS access, organization of groups under
the larger architecture group, and the placement of email addresses are more of the
goodies in this document. And this is just the beginning! Now, for those of you who are
pulling at your collar, somehow feeling cornered and over-legislated, keep reading. I
assert that, if anything, the ECP allows us more freedom than ever before.
First, the ECP being released signifies an end to confusion over many issues. No longer
does someone wonder what it takes to get committer access, or how to start a new group
if one is needed. No longer is there searching as the project chair's email address is
hunted down in some obscure corner of the site. And no longer is the governing body
of Enhydra a mystery, or a confusion. We have, in many respects, built some fences around
the project. But the good news is that these fences are very spacious, and even more
importantly, easily torn down and rebuilt. For the most important aspect of all locked into
the ECP is that it is itself governed by... well, itself. Changes to the ECP are made
through voting, and community discussion, and become part of the ECP itself. This means
that the ECP is a living, breathing thing, capable of always being current, always
being applicable, and never being stifling. Just as you get to fix broken code through
effort, you will be able to guide the process that guides the project that is Enhydra.
Excited yet? You should be!
So go read the ECP, and let us know what you think. You, "Open Source Guy," are the very
reason it exists. The ECP protects us all from the political decisions, the choices
made without experience of knowledge, and the dictatorships that are such an integral
part of corporate America (and the rest of the world). Without the ECP, we truly do
become the anarchists, the "rebels without a cause", and the malcontents that our foes,
those who would usurp the control from the people (yes, I'm laying it on pretty thick
here ;-) ) claim that we are. It gives us a common purpose, a common vision, and a common base to
understand how things work, and generally will help us take over the world. So speak up -
posts to the Enhydra mailing list
(enhydra@enhydra.org)
are welcome, and I'm always
available
if you are confused about something, or just want to get some feedback before a public post.
And most of all, remember that (as cheesy as it sounds) we are the ECP; the words that it
is made up of are our words, our thoughts, and when those words become outdated or
incorrect, we can change them. I'll be talking about the ECP again in the next several months,
but until then, I hope to see all of you "Open Source Guys" active on the mailing lists, letting
us know what you think. See you online!
Brett McLaughlin is
the author of Java And XML, published by O'Reilly. He currently
specializes in building application infrastructure using Java and
Java-related technologies. He has spent the last several years implementing
these infrastructures at Nextel Communications and Allegiance Telecom,
Inc. Brett is one of the co-founders of the Java Apache project
Turbine, which builds a reusable component architecture for web
application development using Java servlets. He also contributes
to the EJBoss Project, an Open Source EJB application server, and
Cocoon, an Open source XML web-publishing engine. His projects all
focus on XML and the J2EE platform in mission-critical, high-performance
distributed systems. Brett has recently been appointed Enhydra Strategist
at Lutris Technologies.
| |
|