"Rude" behavior by developers

New Message Reply Date view Thread view Subject view Author view

From: Jonathan Guyer (jguyer@HIS.COM)
Date: 11 Oct 98, 04:08 EST


From: Jonathan Guyer <jguyer@HIS.COM>
Subject: "Rude" behavior by developers

Much to my consternation, I've been having an abominably lengthy
correspondance with Roland (now over; don't bother writing directly to me,
Roland, because I won't answer). Most of this has consisted of us talking
past each other. It should come as no surprise that Roland finds us rude
and unresponsive (it may come as a surprise that he has seen fit to say so
on oztex-info and perhaps elsewhere). To the extent that this problem is
limited to Roland: oh well. He claims, however, to represent the views of
other Alpha users who, for whatever reasons, do not voice their opinions
themselves [Whomever you are, I urge you to speak for yourselves; Roland
has not convinced me that I am rude, but rather that he is. Perhaps you can
succeed where he has failed].

One particular behavior which Roland finds so "rude" is that he doesn't get
a post from the person "responsible" for fixing a reported bug, saying that
they "intend" to work on it. I have tried to explain to him that this does
not happen out of rudeness, but for good reasons, but he either flatly
disagrees with my assertions or does not give any indication that he
understands what I'm saying. Although Roland agrees that nobody here owes
him anything, he still thinks it's rude when he doesn't get what he wants.

The reasons I've given him are as follows:

* There usually isn't anybody "responsible". Vince could arguably be
"responsible" for the bulk of the Tcl core code, but Tom Fetherston, Johan
Linde, and I have made major contributions and numerous others have made
less significant or less recent ones. Frequently, people other than Vince
fix bugs in "Vince's" code before he does. If the reverse is less often
true, that is only because Vince has written so much more code than the
rest of us.

* Having anybody (whether they originally wrote a particular package or
not) post "I intend to look at this problem..." _reduces_ the chance of a
bug fix. If I see a bug that I think I can fix and say so on the list, I
guarantee that nobody else will try to solve the problem. Why would they?
If Vince or Johan say's he's going to look at a particular problem, I
certainly don't put any time into solving it. I have enough other things to
do on Alpha and in my life. So long as nobody claims "ownership" of a
particular problem, it remains open, and various people attempt to deal
with it as they can [No, Roland, you have no way of knowing this except
that I'm telling you that that's the way it _does_ work].

* I can only speak for myself, but I'm pretty sure that other Tcl
programmers work this way, too: If I "intend" to fix a problem, I sit down,
fix it, and post the solution. If I _cannot_ fix it (not to be confused
with "I don't intend to fix it"), I post that too and explain why. I don't
post anything until I know something (or unless I want to know something).
"I intend to fix this" is just noise.

* If I read a problem that I do not "intend" to fix right then, that
doesn't mean that I throw away the message or that I never plan to revisit
the issue. Sometimes I'm reading my mail via pine on a eunuchs account.
Obviously I can't do any work on Alpha then. Sometimes I'm reading my mail
when on the way out the door. Again, no chance of solving the problem then.
Sometimes I'm in the middle of something else and have no time to mess with
Alpha (possibly because I'm using it and need it to be productive right
then). Sometimes, on initial read, I just don't know what to do with a
problem. In all of these cases, minutes/hours/days later, I may sit down
and figure out a solution. When am I supposed to post that I "intend" to
fix a problem? At the initial point, when I do _not_ intend to fix it? As I
said above, if I do this, then nobody else will work on the problem; it
could take me a week or more to revisit the issue; you might well have
received a solution in a day if I'd kept my mouth shut. Should I post my
_intention_ at the point that I _do_ fix it? This is silliness. If you get
a solution, then the problem is solved. If you do not, then it is not.
Regardless, your post to Alpha-D means that the problem is reported, by
definition.

* Frequently, the person with the knowledge to solve a problem is not
reading the list right then (I've been in and out of town all summer. So
has Vince). It's pretty hard to say "I intend to fix that problem" when you
don't even know there _is_ a problem. When I return to town and read the
list, I post solutions where I can; my _intentions_ are irrelevant. Vince
and others clearly do the same. Roland is of that belief that, when he
posts a bug and doesn't receive an immediate response, he's being ignored.
Often, in the interim, others report that they too observe the bug or
clarify its symptoms. When someone eventually does address the bug, Roland
is of the belief that he's being snubbed and it was the other posts which
provoked a solution. He has flatly denied the logical (and accurate)
assertion that the respondant only responded when they could; he's
apparently much more comfortable with the paranoid view that he's being
ignored. Since he _does_ get responses from a lot of different people,
that's obvious hogwash.[**]

* I believe Roland has created a false dichotomy between "users" and
"developers". We are all users. Some of us happen to write Tcl. I fiercly
reject the notion of being saddled with the responsibility for being "in
charge" of Alpha's Tcl code.[***] (Vince or others may feel differently; I
don't know) I simply help when I can, whether by writing new code, or
fixing old code. It's no accident that every one of my Tcl files has the
GNU disclaimer:

 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

This does _not_ mean that I don't keep a sharp eye out for problems in my
code. I consider it a matter of pride that my code not cause problems for
others. I don't make any promises, though.

Perhaps this last problem could be resolved by a change to the Alpha-D
charter or name itself. The list has been explicitly open to all of Alpha's
users for quite some time, whether or not they wrote Tcl. Regardless, we've
never been "developers" in the sense of developers of closed, proprietary
applications. Pete used to fill that role and he was never an active
participant on Alpha-D. Pete once indicated that he was exploring the
establishment of a general Alpha list through Kagi, but that never
happened.

What do others think of explicitly changing Alpha-D's name or charter to
indicate that it is a forum for users to talk to other users, not a place
for "normal users" (Roland's words) to come as supplicants to some Tcl
Olympus (my words)? If I'm going to be forced to be a god, then I demand
the right to smite Roland with lightning bolts at my whim. Alternatively,
can Tom Scavo set up another, more general, list? I would offer to do it,
but my ISP charges quite a bit for list hosting and my Mac is not on the
net full time.

In contrast with the preceding proposal to make Alpha-D's name and charter
reflect what the list, in fact, _is_, I am rather offended by the notion of
one person joining a group that has existed for more than two years (and,
informally, much longer than that) and demanding that its behavior be
changed to suit his peculiar desires. Roland is of the surreal view that
Alpha-D is not like other lists and, so, should not work like them. He's
never been on such a list, but he's absolutely convinced that he knows how
it should work. I advocate Occam's Razor: Alpha-D works just like other
lists because it _is_ just like other lists. Nonetheless, if Alpha's Tcl
authors can establish better communication with the users of our code
(whether they write Tcl or not) that's a good thing. If Roland's not an
isolated case on this issue, then perhaps there's something to look at; I
bring it to everyone's attention for that reason.  If it appears that I am
posting for the sole purpose of bashing Roland, I am not (you should see
what I _cut_).

I am hesitant to raise this prospect until more has been decided, but in
the context of working on the core Alpha application, those of us doing
that work are developing a master bug list, consisting of everything listed
in "Bug Reports and Debugging" and all the unresolved issues from Alpha-D.
It is possible (and I stress _possible_) that this list will be made
available, maybe via the web, to any interested parties. This is still in
the discussion stages and it's not yet decided what form it will take or
whether this will be limited to core code problems or if it will include
Tcl problems. If and when this happens, this is as close as I ever intend
to come to any sort of public acknowledgement of bug reports. The initial
bug report to Alpha-D is more than adequate in my opinion.

In conclusion, I have no intention of making "I intend to fix this" posts
because, as I have outlined above, I am firmly convinced that this will
actually reduce the chances that bugs are fixed by _somebody_ and will
delude bug reporters into believing that progress is being made when it is
not. I never "intend" to fix Tcl bugs. I either fix them or I don't. Just
because I don't fix them today doesn't mean I won't fix them tomorrow. If
other Tcl authors see some merit in making such posts, however, I'd like to
hear why. If non-Tcl authors feel they'd benefit from such posts, despite
my explanation of their likely effects, I'd like to hear that, too. There
is no reason for Roland to explain to _me_ what he thinks, because he's
done that ad nauseum. I understand him; I just disagree with him. If he
feels I've misrepresented him, he's of course welcome to clarify the record.



[*]As distinct from problems with Alpha itself. There are obviously a
number of reasons why Alpha is very difficult to approach as a neophyte.
Johan's reworking of the documentation should hopefully help that. Some of
the changes to the core application planned by the Alpha 8 team (AppleGuide
has been discussed), will hopefully address this as well. To all Tcl
authors, I encourage you to spend some time on your packages (or on anybody
else's, for that matter), making them more approachable by people who have
no clue how they're supposed to work.

[**]Roland has had recent problems with Alpha crashes and he as received a
total of at least thirteen responses from Me, Vince, Moritz Borgmann,
Philip Aker, and especially Mark Nagata. He's been getting extensive
troubleshooting advice, which is the _most_ important part of fixing the
problem. Until it's clear exactly what the nature of the problem is, it
can't possibly be solved. None of this, however, is what he wants. I did
not tell him that I was looking at memory management issues in the core
code because I did not _have_ the core code. Even now that I do, I can say
nothing other than "it's on the list". The fact that Roland posted it to
Alpha-D already meant that.

[***]The core Alpha application is a different matter. Only five of us (in
addition to Pete) have access to the code and we certainly therefore _are_
responsible for it, because nobody else can be. Anybody can tinker with the
Tcl if they have the knowledge and inclination.


__________________________________________________________________
  Jonathan E. Guyer
  <http://www.his.com/jguyer/>


New Message Reply Date view Thread view Subject view Author view

This archive was generated by das@users.sourceforge.net with hypermail 2b29 on 31 Mar 01, 11:50 EST