Subject: Re: Diaspora, politics, and MI
To: None <jmarin@pyy.jmp.fi>
From: Thor Lancelot Simon <tls@panix.com>
List: current-users
Date: 09/19/1996 12:39:22
Jukka writes:

>Better not write any code for NetBSD at all.  For example, I _paid_
>someone to get a working Cyclades driver.  The driver does work indeed,
>but it doesn't look correct enough to some people, so they are laughing
>at the code now and telling me "it needs work" before it can be included
>in the tree.

Oh, I can tell who's been whispering in _your_ ear. (1/2 :-)

Just who, might I ask, has been "laughing" at the Cyclades driver?  I could
swear I noticed a member of core apologizing to you in public for not having
had time to even look at it sooner.  I don't think it's really reasonable to
construe the passing mention that the driver needs some work such as splitting
into bus-dependent and independent potions as "laughing at the code now".

Most code passes through the "it needs work" stage before being included in
the tree.  This is one of the prime characteristics of NetBSD, and something
I've certainly been scolded myself for not paying enough attention to:  code
should be polished and cleaned up _before_ it goes in the tree, not
afterwards.

I know that various members of core have useful but unpolished bits of code
lying around that they intend to see in the tree at some point, but don't
want to commit until they're cleaned up; some of them pass through this very
list as patches.  The fact that the members of core practice the same type of
restraint with their own code that they're practicing with that of others
should be plenty of indication that nobody is insulting you when they indicate
that a given piece of code "needs work".

[snip]

>Now that I'm talking about these things I'm receiving personal flame mail
>from the Ones Who Know Better.  Very incouraging.  Someone says "he has

I don't know who the "Ones Who Know Better" are, but certainly nobody should
be sending you flamage.  It's hardly something that I for one have any control
over, but I'd like to apologize if that's actually going on; I feel bad for
you.  On the other hand, it seems to me like you might be misinterpreting some
of what you're hearing.  I _know_ that there is an intention to get a working
Cyclades driver into the tree, and I certainly have not heard anywhere that
yours is fundamentally unsuitable; in fact, the only negative things I have
heard about it have been very clearly indicated as being relatively minor.

>heard that the Cyclades code is bad".  Instead of telling me WHAT is wrong
>and should be changed, they're just flaming me because the code is "bad".
>Well, that "bad" code happens to WORK - something that the cy.c in the
>source tree does NOT.

I think the problem is that the people who have actually looked at the code
are so busy that they haven't even yet had time to produce a coherent list of
suggestions.  As I noted above, a member of core has already personally
apologized to you for this; that alone should suggest to you that nobody is
laughing at you or your work.

I'd also like to point out that this whole argument is going on during the
final few days of a long-delayed release cycle, which probably accounts for a
great deal of the delay which is frustrating you.  I don't think many of the
developers even have time to read this list, much less participate in it.

Perhaps you should ask for CVS access to the source tree in order to integrate
your driver.  Note that I am *not* speaking for the project, and that I have
*no* control over this; I am just suggesting that you ask the people who do,
because AFAIK they are reasonable and, actually, rather nice people.

>I'm not going to follow this much longer.  Fortunately, there's an
>alternative OS which accepts improvements and new drivers even if they
>weren't written by the Perfect People with the Highest Standards.

>I guess this mail will be censored and I will be banned from the lists
>or something.  In that case, thanks to all the people who have offered

Jukka, I saw your message just fine, as did the other people on this list.  I
think you should reconsider the reasonableness and motives of some of the 
people you're talking to, considering that whoever suggested to you that you'd 
be censored was clearly wrong.

>me help.  I wish all the NetBSD developers were like you.  I haven't
>been talking to anyone personally, but it seems that some people just
>think I'm talking to _them_ and flaming them.  I don't know WHO are
>responsible of the NetBSD policies and I don't CARE.  I just get the
>feeling that this group can't understand the end users at all.

Some of the NetBSD developers are highly argumentative, and some are not.
Some can be more difficult to deal with than others; of course this is true of
people in general, not just the NetBSD developers.  I think you're giving too
much weight to the personal opinions of a few people who I would expect are
not intending to speak for the project as a whole.

I think that most of your substantive complaints are accounted for by lack of
time, not malice aforethought.  Philosophically, "the NetBSD way" is to spend
time fixing things up before they get in the tree, so that they don't have
to constantly be fixed up afterwards.  I know all about this because I largely
blew it in this regard while integrating Kerberos; I and others spent far more
time fixing than I would have just ensuring that it was ready in the first
place.  Some of the 4.4-lite integration suffered from the same problem, and as
we've migrated many programs to lite-2, we've tried to avoid making the same
mistake; I hardly have anything to do with the kernel, but I know that the
people who do have similar experiences and sentiments.

Nobody is out to get you; nobody is out to ignore what the end-users want;
IMHO many people just have seen the consequences of hasty integration of
code already themselves, and are consequently very cautious about integrating
code that they suspect may need significant work _after_ it's integrated.

There is a lot to do, and there are not always enough people with time to do it 
right. "Do it right" is an integral part of the NetBSD ethos, so sometimes 
even important projects can simmer for a long time.

I still think that this is the best way.  I understand that you may disagree,
and I respect that, but please do realize that nobody is out to ignore the
users, and certainly nobody is out to personally insult or attack you.

Thor