Helpfulness a thing of the past within FOSS projects?
Posted 21 Jul 2005 at 20:11 UTC by Svartalf
How should one handle situations in an IRC channel or a discussion list? I just encountered one of those "classic" situations where someone new to a program or project "did something 'WRONG'" and got attacked for it instead of politely told what he/she'd done wrong and then got the help they were looking for- I didn't use to think that it was a big problem, now I'm not so sure.
I just went into #oe in Freenode to ask about a problem that I was having with a bitbake run with a freshly pulled version of OpenEmbedded. I posted about 12 or so error lines directly to the discussion (which IS acceptable in many IRC channels...) and got promptly attacked for my trouble. Thankfully for the project and myself, mickeyl gave me a decent answer to my problems (Again, THANK YOU for your handling of the situation if you're reading this- you did the right thing, even if the rest didn't...)- but not before a bunch of the dezinens started whining about me flooding the channel and wanting to kick-ban me and /ignoring me. When I pointed out that I didn't know what the rule was (honestly- it's not even mentioned anywhere what 'flooding' is...) and that the attitude wasn't becoming of them, they started getting uglier and called me a "troll", etc. I wouldn't have done this ever- but is this becoming par for the course with projects out there?
I always thought that helpfulness was the watchword for Open Source and Free Software developers and users- have I missed the memo that we've become 'leet and don't care about anything but ourselves? Does nobody believe that everyone that is willing and able to help is welcome? I used to not understand the complaints of people going into IRC, USENET, and Web board discussions and getting hammered for being stupid, etc. for asking honest and non-stupid questions- because I'd never do something like that to someone with legitimate needs and questions. Now, I have first-hand experience with it- and with what I consider an important project; one I would have done a lot to further it- now I'm NOT so sure I want to help out.
How would YOU all have handled something like this?
When people starts describing someone else talks (or way of talking), there are already closed to debate. Using the term troll is quite useful, since it's more or less meaningless, it can be almost anything. People should restrain themselves from using such stupid word. If they are not interested in what someone have to say, they can as well shut the *** up, nobody will notice and it won't be a big loss.
I'm not sure you can really handle this but you should at any cost avoid public discussions in such circonstances with these persons. More persons you have around, higher are the risk of stupid non-discussion. Isolate the trouble, put the troublemakers aside.
While maybe not as ubiquitous as what we've commonly come to know as the "rules of etiquette", most FOSS IRC channels and mailing lists abide by a similar set of rules. Most of the rules amount to simple politeness, and since you're asking for help/a favor, the onus is on you to be polite. While these guidelines aren't published everywhere, most of us didn't pick up our real-world manners from a book either - it happens through some trial and error, observing other peoples' behavior, and some common sense. It looks like you learned the hard way. Chalk it up to a lesson learned. If you follow a few simple rules, your experience will probably be a lot more rewarding.
- Remember to say please, thanks, etc.
- Don't ask to ask questions, just ask them.
- Don't flood the channel. If you must paste a large amount of data, ask first. But consider using Nopaste or a privmsg instead.
- Don't privmsg the developers in the channel if they aren't responding to you in the channel.
- Be patient. Sending the same message several times within a few minutes and then grumbling that nobody has answered you is unrealistic. Many people are busy @ work, sleep, with their families, etc. We'll get to you in a little bit, on our timeframe. I know you value your time. We value ours too.
- Don't use ALL CAPS or colors.
I'm going to disagree with yeupou. If someone came into a room where my friends and I were chatting, and essentially started yelling and othewise behaving like a 3-year-old, I'd ask him/her to leave. You're in my house and want to eat my food, so please abide by my rules. Keep your feet off the furniture and take your shoes off at the door, or you'll be asked to leave.
Flooding/trolling, posted 26 Jul 2005 at 12:53 UTC by lilo »
, the problem, as you've described it, seems to be something I've seen a lot on other IRC networks. Participants will set rules for their channel, and lose sight of the possibility that someone entering the channel for the first time won't have a clue what those rules are.
BTW, 12 lines is a pretty long output....most channels will find that a bit annoying. But I think the best response on the part of the channel denizens would be to just eat the annoyance and message you to ask you to avoid pasting long outputs.
Why is this better than enforcing a set of specific rules about flooding (or anything)? There's overhead in enforcing rules. You need to create and maintain a rules page, and then you need to get people to look at the rules before they post anything in the channel. That doesn't work well with new participants, who may well overlook the contents of the channel topic until they're pointed out, after there's a problem. It works okay for ongoing participants, but posting customs, or guidelines, rather than rule sets, is a lot less pushy and makes for more flexibility.
Maybe I should add an item to the freenode channel guidelines reminding people more visibly of the importance of this sort of flexibility. I allude to it in the section on support burnout.
yeupou, people use the word troll in a defensive way. It's generally used when someone feels they're being attacked. If I had to guess, I'd say that Svartalf didn't take their critiques in a very relaxed way which, if you think about it, is understandable under the circumstance. The thing to do to avoid the issue of "trolling" is to adopt a calm and non-aggressive demeanor, and not to be focused on winning an argument at the expense of good will. That's hard to do in a problem situation, but it's important to try.
If you're making an argument and your argument is valid, sooner or later you'll put it across; but if you're aggressive about it, it's likely to take longer. I think most geeky people have been in the position of having argued a point so aggressively that, even though one seemed to win, one was then asked to pick up one's toys and go play in another sandbox.
yeupou: I'd love to avoid them, but they're working on a project I have need of and I'd love to be able to contribute to. Kind of a damned if I do, damned if I don't. I'd have to agree with your sentiments other than that.
cinamod: The biggest problem with that is that some channels have no issues with it, some do. It's NOT posted that they are one and it's not readily apparent what is/isn't acceptable in the channel. Not exactly a situation that really allows for considering responses of "You Lose" right out of the gate, along with telling me that they want to kick-ban me without saying what I'd done wrong as acceptable. Simply put, the closest analogy using your's as a basis would be, allowing the house guest into your house and then promptly throwing him out for saying "it" and because it's a rule, they "lose" and there's no further discussion- nothing about the "rules" of the house or anything else. That's NOT what I'd consider being helpful, magnanimous, or even "cool". That's what happened in the channel. Not critiquing. Not even pointing out what was tolerable- just, "GET OUT" for something so minor as talking slightly louder than a whisper. As for the assumed etiquette, it's assumed, it's not a cut and dried rule- keep in mind one fact, I've been at computing, the Internet (back when it was called ARPANet...), and Open Source for over twenty years now. I've done IRC for ages, and I didn't know that it was "flooding" to post 10 or so consecutive lines. Flooding is spooging hundreds or thousands of lines to the channel. The reception I recieved was one of a pissing match the moment it happened. I'm not a grudging man, but I will make them sweat a little if I ever encounter them in a position where I'm the hiring manager (And, considering that if Coollogic gets it's funding, I am the CTO of that company and it's in the arena where they're playing- I could be funding them or employing them at some point...) and they're in front of me all the same- you just NEVER know who is on the other end of that wire and doing what they did just isn't ever justified right out of the gate. Sure, if the person's ill-mannered and persists, that's a different story- but not right off the bat.
lilo: Considering that they immediately adopted an attack posture as opposed to a critique ones (Consider "You Lose", "/me wants to kick-ban <foo>", etc. as responses- that's not critique, at least in any sense of the term I know...), I think I'm handling this in as best and relaxed a manner as most people would ever handle it. Most people would get really mad and just simply give up on the whole thing- that's where we all get the bad rep we do. That's WHY I posted this article on Advogato. I honestly think Freenode's suggestions are perfect guidelines for handling all of this- I just wish they'd adhered to them, especially in light of the fact that they're ON Freenode to begin with. They didn't private message me with the faux-pas for the channel. They adopted an elitist attitude. If it weren't for one of the CM managers for the project being on the channel and appropriately handling the issue, I'd have not even got the help I was seeking. I'd have probably muddled through it all the same; but an average person or developer would have said "F*ck this noise!" and done things in some other fashion or given completely up on Linux in favor of something like Microsoft's offerings where at least they can get helpfulness in proportion to how much they can pay. That's NOT productive or good for anyone in my not so humble opinion. It's a dead loss in my book.
Surely you must be joking - you're ranting here. There are better things to get this upset about.
If etiquette rules aren't posted beforehand, behave as you would IRL - be on best behavior. That some channels have higher standards than others isn't the problem - the problem is that you seem unwilling to hold yourself to higher standards until you find out what the forum's standards and norms are.
Flooding these days is generally considered pasting anything > than a screenful.
Regarding the house analogy, if you weren't explictly invited and the owners want you off their turf - for any or no reason - leave. There's no arguing.
I'm not saying that you did anything wrong - I wasn't there, and what you're presenting is a one-sided account of your experience. I don't care if you've been online since before the Arpanet or what you're the CTO of, nor should I. It's not germane to the issue at hand. If you want free help from the young whippersnappers, play by their rules or don't play at all. Don't gripe that you didn't get timely, polite, free support with your free product.
Life isn't fair and folks aren't always polite. That's hardly new news. Social norms change over time; the social norms of the Internet circa 20 years ago might not necessarily apply today. It doesn't mean that the past was the golden age, just that today, things are different. You'll have to learn to play by today's rules or work toward changing them. If you can't do that, chalk it up to having had met a few bad apples, or a clumsy misunderstanding that occurred over a horribly lossy medium.
What rules?, posted 26 Jul 2005 at 23:01 UTC by Svartalf »
cinamod: They didn't POST any rules- anywhere. Rules that are unwritten aren't really rules- they're the "in" crowd being 'leet. That's what I was commenting to in the first place. As for being invited or not, I believe the following says a lot: "Try to solve problems first by checking that you have done everything right, that nothing has changed from this description and that you have the latest code (see MonotonePhraseBook). Look also in the log file (referenced in any error message you will receive). If you still have problems, try checking PossibleFailures, and if problems persist, ask on IRC or to the [WWW]openembedded mailing list." I was invited, for all intents and purposes, if their Wiki is to be believed. The rant wasn't about who is what, but rather one of "shouldn't we be a little better about NOT attacking people when they might make an 'oops' than this?" as it reflects very poorly on the "whippersnappers" when they do things like this. That was what I'd said in the channel when they went off on me, and that's what I've been saying all along here. You appear to have missed the whole point- to the point of saying I was an interloper, when, in fact, I wasn't really. No problem as far as I'm concerned, we're all human and if you see nothing wrong with people making us look bad to others, that's your lookout- I just don't agree with your philosophy on things and I guess we'll just have to agree to disagree on that one.
As a postfix to this whole thing, they were a little surprised when I asked for help on a different issue with the build that I was having this afternoon and I said that I wasn't going to go about just pasting the problem in (Which was the advice of several in the channel...) and referenced this little discussion because what they'd asked me to do was to "flood" the channel- something I'd already done before. A couple tried to defend the whole thing by saying I'd pasted a lot more than 12 lines (never mind that it was no more than 12 80 column lines I'd pasted- and they defended that by saying that not all clients break at the same places, but let it go at that point...), but they generally let it go and suggested a solution to the issue of "don't 'flood' the channel" that was amenable to all parties (Why didn't they do that to begin with, instead of getting pissy, hm?) and came up with while not a fix, a good answer to what was wrong with the build run and was a hell of a lot more pleasant as things go. I'd say they handled it loads better this go around and while I'm willing to chalk it up to a misunderstanding on all parties involved, it's still of concern- it reflects rather poorly upon the FOSS community when you have someone going off like they did.
It was fairly revolutionary when rms wrote, in his guidelines for writing robust programs, "Avoid arbitrary limits ... by allocating all data structures dynamically" but by now that's a pretty well-established community value.
I think a robust community around a project is about as important as robust code in the project. A robust community not only continues to be productive when the oddball tries to tear it down, but it continuously welcomes new participants.
On the one hand, new participants really should listen for a while to pick up the norms and unwritten rules, and then try to contribute as much as they ask for help. But on the other hand, too much in the way of unwritten rules makes for a fragile community that won't grow.
I'd like to see the day when the open source community is as embarrased by flames and rudeness as it is by arbitrary limits in source code.
I think lilo has done a great job in setting relaxed but positive norms on freenode. But establishing community values is tireless work. It's much easier to teach the last member of the tribe than the first, but we can never get to the point where we can assume that everybody knows the rules without any training at all. Writing documentation isn't enough; it has to be kept alive with performance, discussion, training, whatever you want to call the learning rituals.
Unhelpfulness is definitely nothing new. There have been irritable people online for as long as I remember (15+ years). Some people are always jerks by nature, but most people are helpful most of the time and only turn angry when rubbed the wrong way. As well, a lot of time it seems like the other person is being rude, but this may only be due to language/culture differences or miscommunication. Many developers will give curt replies that seem rude, but its just because they're busy or have answered that same question a zillion times and don't feel like spending time elaborating on it.
However, I've also noticed that some projects develop a personality of their own. A given project can be full of otherwise very nice people, but just because of how the culture that developed, they can be very rude and aggressive towards outsiders as a group. I'm not sure why this happens, but it seems to be sort of a natural human grouping behavior thing.
I've found that cultural characteristics like this are difficult to change in an established project, but it's fairly easy to avoid them in new projects if you set down some rules regarding community values at the outset. For example, after founding the project, put emphasis on the importance of being polite to new developers, immediately squash flamewars before they develop, and discourage arguing simply for the sake of arguing. If you do these things early on in a project, they somehow get set in "community memory" and magically seem to get spread around to new members. Once the community has adopted a "Helpful" social style, it self-propagates, and you rarely need to step in to enforce the rule.
I followed these practices quite deliberately when establishing the Inkscape project, and to this day Inkscape is known as a fun, helpful, and friendly project. We've not really had any flamewars and arguments are rare and disagreements tend to be quickly resolved.
Anyway, my only advice for handling the troubles with the given project is to move along and find other projects to participate in. Remember, it's your own freetime, and if you're not having fun with a given project, you ought to find another project that you enjoy more. :-)