Re: communication
Havoc Pennington <[email protected]>
| Newsgroups | gmane.comp.xfree86.forum |
|---|---|
| Message-ID | <[email protected]> |
On Sun, Mar 23, 2003 at 07:06:54PM +0000, Alan Hourihane wrote:
> I will say this. You definately seem to be making demands on an Open
> Source project for someone to listen to your requirements. That's
> not unreasonable, but it is unreasonable for you to want someone else
> to code up the things you deem as needed for your own purposes for
> the desktop your striving to produce.
Here is how I think about the obligations of project maintainers. (I
maintain gconf, metacity, libwnck, pkg-config,
libstartup-notification, gnome-terminal, assorted applets,
desktop-file-utils, some chunks of gtk, freedesktop.org, and some
too-new-or-too-old-to-mention other stuff, if you're wondering.)
There is value in having free software codebases that are a community
resource. The maintainer of a community resource has certain
responsibilities - in October 2002 I wrote
http://ometer.com/features.html (unrelated to XFree86) which happens
to mention a couple at the end, just as examples.
Now, say I write a codebase that does XYZ. It is very much in my
rights to say "this is not a community resource, go away" and do
whatever I want whenever I want. However, if I'm going to say that,
then I can't complain if someone creates a functionally equivalent
codebase that *is* a community resource.
If I'm asserting that my codebase is the community resource - which is
implicit in complaining about forks - then the codebase is expected to
be maintained in the community interest, not in "whatever I feel like
doing" mode. (I am speaking in general terms here, not trying to
imply anything about the XFree86 situation.)
What is "the community interest"? It depends on how you define your
community. If you say, as GNOME has, that the goal of the project is
to satisfy average desktop users and not hackers, then our community
interest is those average desktop users. We can complain if someone
forks GNOME to do another project for average desktop users. But if
someone forks GNOME to make a cool hacker desktop with featuritis, we
have absolutely no basis to complain, because we refused to do that
ourselves. They are pursuing a different community interest.
So - I don't think Owen or anyone else is making demands on XFree86 to
implement features. I think the implicit issue in this whole
discussion is: what community interests does XFree86 include. Which
goals are you the "owners" of. Because we (we = the whole free
software community) need to know this, just for planning
purposes. Which maintainer obligations does XFree86 accept, and which
do we need to find other people to cover.
If XFree86 covers the community interest "Foo," then we (entire free
software community) have a right to expect XFree86 to make certain
efforts in that area. XFree86 "owns" that area and has
responsibilities there to do certain maintainer duties, or step aside
and let someone else do them. If XFree86 does not cover "Foo," then
XFree86 has every right to say "screw off, do that yourself" - but the
community also has every right to in fact do it themselves. ;-)
In short, maintainers have an obligation not to complain about forks
anytime they stand in the way. Standing in the way can be active ("no,
I won't take patches for that") and also inactive ("I don't have time
to review patches/discuss this issue/whatever").
As a maintainer, sometimes I stand in the way on purpose, and
sometimes because I don't have time, but either way I have to say
"sure, go nuts with your fork that addresses your problem." For
example that http://ometer.com/features.html page was written because
I frequently answer metacity feature requests with "no way in hell" -
but implicit in that is, if you want to fork metacity to add that
feature, I wish you all the best of luck. Just rename the binary so I
don't get the bugs. ;-)
In any case, back to your mail. Is it unreasonable to expect XFree86
to *implement* a feature that I or Owen or KDE or Red Hat or IBM would
like to see? Absolutely, that is an absurd demand.
Is it unreasonable to expect XFree86 to do the basic maintenance
duties that would *allow* someone to implement the feature? Not in my
opinion.
Those duties would include following best practices to ensure adequate
CVS hosting, adequate patch review, bug tracking, feedback in response
to questions on mailing lists, helping people who want to implement
their own feature understand how it should be done, and this type of
thing.
I am *not* taking a position on whether XFree86 is or is not currently
performing these basic duties - that isn't the point I'm making.
All I want to establish is that there *are* some obligations that
maintainers of software in the community interest have, regardless of
whether they are paid - simply because they have been given a trusted
community role as the owner of a particular problem. If a maintainer
isn't willing to have those obligations without being paid, then their
minimum obligation is to say so, and if they can't find someone to
pay, allow another project or maintainer to fill the gap.
If you look at Linus, he says "sure, fork anytime you want, have fun"
- and thus avoids signing up for any obligations at all. Most
maintainers don't do that, but it is an option.
Havoc