Dealing with unhelpful comments on your open source software

Posted 31 Jan 2003 at 00:02 UTC by ploppy Share This

I have received an email from a user using some of my open source software. The email is ostensibly suggesting some improvements, but in my mind, it goes beyond acceptable comments, to be rather offensive. Though I have had open source sofware available for many years, this is the first really unhelpful email I've received. It is not directly offensive, and so I cannot dismiss it as a troll.

This makes me wonder, what you should you do when receiving email suggesting improvements that you feel are unhelpful? Simply ignore the email, courteously reply stating you do not agree with the comments, or point out you get what you pay for? Should you ever think about implementing some of the comments, even though you disagree with them?

In my case, the person complained the README was difficult to understand for people not acquainted with the area (filesystems), and then having gone through the source code, complained about the lack of comments, and asked for some of the README to be included in the header files, amongst other more useful comments, which I still don't agree with, such as making the software compilable without requiring kernel patching, but which make various things impossible.


If you can't say something nice, posted 31 Jan 2003 at 00:37 UTC by mbrubeck » (Journeyer)

I try to respond politely to all email about my projects, no matter how rude. Ignore the flames and respond only to the substantive content of the message (if there is any). Often someone who receives a courteous, helpful response to their vicious flame will cool down a bit, and sometimes even apologize.

Flaming back is the worst response. A user who gets flamed by a developer will make all sorts of trouble -- badmouthing the project in public forums, spreading misinformation, and worst of all starting flamewars on your mailing lists. A flamewar can sap all the usefulness out of a list in a matter of hours. Useful contributors will unsubscribe. Everyone will feel bad. If you can't bring yourself to write a polite response (and I don't blame you), just stay silent.

Please Send a Patch, posted 31 Jan 2003 at 06:00 UTC by ncm » (Master)

I agree with Matt's remarks above. In addition...

You can answer almost anything with a question. Sometimes they learn something, sometimes you do. Sometimes what they want is not bad, but way more work than you want, or can afford, to do. Other times you just don't agree that what they want would be a good thing.

To anybody who is particularly demanding of your time, the magical formula is "please send a patch". If it's somebody who will certainly never send a patch, that's the end of it. The danger is, you might get a patch. Most patches can be rejected for crappy coding. In the end, you might have to reject a patch because it is really not an improvement, but then you can honestly say you have tried it out. By then, you may have developed enough of a relationship to be able to discuss things better, and they have had more time to think about how to satisfy you.

The one time never to ask for a patch is when the discussion is about policy. Then, the goal is a civilized negotiation about the goal, and how it is to be achieved comes later. If it turns out, later, that nobody can afford to implement the ideal, then there's no hard feelings when you do what you can afford instead.

If all else fails, they can fork their own version, and good luck to them.

Show Me The Code, posted 31 Jan 2003 at 10:11 UTC by bagder » (Master)

There are ungrateful people everywhere.

If you're able to, politely ask the person to provide fixes for the problems he sees or possibly file bug reports for the project to deal with accordingly.

Also, stress the fact that it is open source, depending on volountary efforts, a spare time project etc (whichever that apply to your project) as many people seem to forget this very easily.

In the end, there will always be those who don't like the way you do your things, your docs, your manual and your project management. Some of those will tell you, the rest will go away silently. Learn to live with/ignore them. Remember the ones that do appreciate your project, your friends and fellow contributors etc. They're the ones you do it for.

lead by example - remain silent, posted 31 Jan 2003 at 15:00 UTC by lkcl » (Master)

i found that when working on samba ntdom and samba-tng that whenever someone was offensive and demanding i didn't have to tell them where to get off.

... the other people on the list tended to do that _for_ me, for which i was extremely grateful.

the kinds of comments/response that they made were along the lines of those that people advised here: you're making demands on volunteers; you're demonstrating an incredible lack of sensitivity and yet are not paying or contributing or even _offering_ to pay or contribute: why should anyone have to respond to your demands?

like with CDs that are offered direct from the artists, the mind-set is that some big company must be making a fortune therefore anyone that does different just... automatically gets treated with the same shit attitude that record companies and proprietary software companies deserve.

"i pay you money therefore i demand you give me what i want."

perfectly reasonable... _if_ you're actually paying them money...

lead by example - remain silent, posted 31 Jan 2003 at 15:05 UTC by lkcl » (Master)

i found that when working on samba ntdom and samba-tng that whenever someone was offensive and demanding i didn't have to tell them where to get off.

... the other people on the list tended to do that _for_ me, for which i was extremely grateful.

the kinds of comments/response that they made were along the lines of those that people advised here: you're making demands on volunteers; you're demonstrating an incredible lack of sensitivity and yet are not paying or contributing or even _offering_ to pay or contribute: why should anyone have to respond to your demands?

like with CDs that are offered direct from the artists, the mind-set is that some big company must be making a fortune therefore anyone that does different just... automatically gets treated with the same shit attitude that record companies and proprietary software companies deserve.

"i pay you money therefore i demand you give me what i want."

perfectly reasonable... _if_ you're actually paying them money...

lead by example - remain silent, posted 31 Jan 2003 at 15:05 UTC by lkcl » (Master)

i found that when working on samba ntdom and samba-tng that whenever someone was offensive and demanding i didn't have to tell them where to get off.

... the other people on the list tended to do that _for_ me, for which i was extremely grateful.

the kinds of comments/response that they made were along the lines of those that people advised here: you're making demands on volunteers; you're demonstrating an incredible lack of sensitivity and yet are not paying or contributing or even _offering_ to pay or contribute: why should anyone have to respond to your demands?

like with CDs that are offered direct from the artists, the mind-set is that some big company must be making a fortune therefore anyone that does different just... automatically gets treated with the same shit attitude that record companies and proprietary software companies deserve.

"i pay you money therefore i demand you give me what i want."

perfectly reasonable... _if_ you're actually paying them money...

lead by example - remain silent, posted 31 Jan 2003 at 15:05 UTC by lkcl » (Master)

i found that when working on samba ntdom and samba-tng that whenever someone was offensive and demanding i didn't have to tell them where to get off.

... the other people on the list tended to do that _for_ me, for which i was extremely grateful.

the kinds of comments/response that they made were along the lines of those that people advised here: you're making demands on volunteers; you're demonstrating an incredible lack of sensitivity and yet are not paying or contributing or even _offering_ to pay or contribute: why should anyone have to respond to your demands?

like with CDs that are offered direct from the artists, the mind-set is that some big company must be making a fortune therefore anyone that does different just... automatically gets treated with the same shit attitude that record companies and proprietary software companies deserve.

"i pay you money therefore i demand you give me what i want."

perfectly reasonable... _if_ you're actually paying them money...

... then again, despite the tone of the person's message, if you strip away the offensive bits, you _need_ to ask yourself this question:

- are their comments (not the tone) correct in any way?

apologies, posted 31 Jan 2003 at 20:06 UTC by lkcl » (Master)

sorry about the number of reposts: combination of advogato delays during a tmetric recalc, and mozilla screw-up / failure showing existing pages and not fetching new ones. normally i refresh viewing http://advogato.org/ and it showed "no change" so i refreshed the posting page too...

Nature of Non-Constructionism, posted 3 Feb 2003 at 19:29 UTC by scrottie » (Journeyer)

Frustrated people take things out on those in immediate reach - those in proximity physically, and those likely to be hurt by an assualt. It is trivially easy to include "Thanks for your hard work on this". Neglecting to do so when sending bug reports is usually a form of emotional dumping, in my experience - folks who casually neglect this curteousy are almost always the ones to later unleash a full barrage. It's easier to take out your frustrations driving like a jerk when things in your life are going bad rather than voluntering yourself to make it better, or voting, or going to the root of the problem. It's a form of spoilt-child egomania that tells us that everyone in the world is to blame if things are out of place in our life. That wasn't your question, though, and I tend to flame on a bit myself. Sorry. I'm also posting because I have a different take on it than the last few folks, who also have good points to make. I throw it back in their face. I post the post in public with a stright face, and reference it often when the state of the project comes into topic. That helps keep from taking the project too serious - as mutt says, "all mailers suck, mutt just sucks less". Thats a punk-ish philosophy, and for a lot of people, a good way of dealing with things. Not taking things serious is vitally important - egomania distracts you from your purpose of having fun and flexing your mental muscle. It closes your heart from cooperating with people and other projects, and closes your mind to those areas where you really do suck. Speaking of fun, I often - and often have to - disclaim myself as just experimenting, just having fun, just making a quick hack to suit some purpose for myself, just taking a shot at learning something, which leads to my second mechanism for dealing with these kinds of letters: I thank them for their concern on the project, but remind them that code exists for my own amusement, and any value they derive from it purely coincidental. Cut the root of the matter - I have my problems and you have yours - but politely. Has modesty been a thorn in the side of Free Software? Yes and no. You need product before hype, but it isn't wrong to tell people about what you have - as long as you maintain a healthy relationship - something users of closed software aren't used to. 2cents. -scott

Ohh, I'm posting again, someone stop me, posted 3 Feb 2003 at 19:36 UTC by scrottie » (Journeyer)

Sitting on a certain irc help channel, I've noticed two distinct kinds of newbies.. those that just want to complain and those that are trying to complete a college assignment. The ones that are just out to unload are easy to spot: they won't answer your questions. If they say, "nothing works!", and you ask them, "how far do you get before you have a problem? The computer boots, right?", they won't answer, or they'll ignore you. College students will take a while to cool off and get some perspective back, so they will veer off topic and give you far more or not exactly the information you asked for, but they will communicate two-ways with you. Allocating a tiny amount of attention towards helping everyone with what they're trying to do reguardless of how their cry is phrased can diffuse the flamers - sometimes - and give people who really need help a lifeline. 2 more cents. Thanks, -scott

Mild sarcasm works well for me, posted 3 Feb 2003 at 19:52 UTC by robilad » (Master)

When I'm not sure if someone is trolling or seriously interested, but just linguistically challenged, I use mild sarcasm. If it's a troll, the person will flame away and be politely introduced to the virtues of my killfile. If it's a sane person, she'll have a laugh, and we'll continue the discussion without the excess energy.

Stinkin' Titles, posted 4 Feb 2003 at 18:25 UTC by robocoder » (Journeyer)

Given a broad spectrum of users with diverse backgrounds, experiences, needs, desires, and motivations -- all of which change over time -- you cannot expect to satisfy the request of every potential/actual user -- and realistically, you shouldn't even try.

For example, some requests may be out of scope. A customer once complained, "your product doesn't do X." While true, we never claimed our product did X. And our product would never do X because it's not core to our product's functionality (e.g., your project management tool doesn't interface with my coffee maker) or target market (e.g., your sports car doesn't operate well on off-road terrain).

Graciously accept the input and consider using:

  • a ToDo list - you dictate the priority of requests
  • a bug tracker - you can use WONTFIX and explain why in the bug description
  • polls - let your user base decide
  • documentation tools - to extract formatted documentation from source code

IMHO, documentation, in terms of quantity, quality, content, or presentation, is all subjective. It may be too terse for some, and too verbose for others. It's more important to ensure that documentation doesn't get stale (e.g., mismatch changes in implementation) or contain errors.

Don't be afraid, posted 4 Feb 2003 at 22:42 UTC by djm » (Master)

Tell the person who sent the email exactly what you think: tell them why their ideas make no sense and why you are unlikely to respond to demands. But, be sensitive to language issues too: sometimes poor translation can make requests sound like demands.

&quoThank you for your comments&quo, posted 6 Feb 2003 at 01:05 UTC by ask » (Master)

Three ways to be nice and get the user to not waste your time,

o) Ask for patches. Sometimes you don't want patches though.

o) Suggest to the user to just change their local copy for now.

o) Say thank you for the suggestions and that you'll look into it when you have time.

In any case, be sure to be polite and say thank you.

- ask

some fun with language, posted 6 Feb 2003 at 22:55 UTC by jbuck » (Master)

A couple of common issues with language translation can cause lots of friction, because of "false friends": common words in two languages that seem to line up but that do not. If a native French speaker demands that you do something, perhaps he's just asking that you do something: "demander" means "to ask". Likewise, if a native German speaker says that you must not do something, he may be trying to say that you don't have to do it: "Ich muss nicht" == "I don't have to", not "I must not", and I've met some otherwise-quite-fluent-in-English German speakers who were tripped up by that one.

More fun with language, posted 7 Feb 2003 at 03:46 UTC by dark » (Journeyer)

Another one I've seen often is that people show up on the project mailing list to express "doubts" about the project. This can sound pretty insulting until you realize they mean that they have "questions". Strangely, this mistake doesn't seem tied to any particular language.

Tell him what you think, posted 9 Feb 2003 at 14:11 UTC by exa » (Master)

Tell him that you think his comments are being unhelpful.

You can say that you don't think those improvements are going to be worth your time. Add that he can fork the code or have somebody fork it if he thinks the improvements are worthwhile.

If you think the improvements are way over your head for volunteer work you can tell him that you can implement them in favor of a moderate fee.Or if you think they are too complicated for you, you can say that, too. There is no harm in it.

Just telling him to send a patch isn't a good idea if he isn't a proficient programmer (just an ordinary user) AND if you are going to reject such a patch NEVER say "send a patch" (That's an important one) Then you would be the one who's being unhelpful.

In summary, you don't have to ignore somebody. Maybe he is just inapt at expressing himself (he just wanted to help), or he had a bad day, etc. etc.

If you tell him that you think there is something wrong with his email then he will have a chance to take appropriate action. And if he comes around shouting at you then you can safely ignore him. On a public forum, you can state that you will not indulge yourself with teen-flamery and close the subject.

I think having a positive attitude towards the intent of the message (improvements) would be a good thing. Who knows? Maybe he'll fork the code and come up with some good stuff.

Thanks,

Eray

Polite honesty, posted 9 Feb 2003 at 21:38 UTC by imp » (Master)

"Thank you for your kind comments about my program. I will take them into consideration as I move forward with future versions. As I receive many contradictory comments from people, often times I'm forced to choose between them, or synthesize my own direction from all the input I receive. It is gratifying to know that my little project is being used outside my circle of friends."

Short, polite, to the point. If you are interested in pursunig points that are brought up, then have a second paragraph saying what you liked about his suggestions. Gentile criticism is also constructive here "I'm not sure I agree that this is the best thing, can you elaberate on why you think it is good."

Don't flame. Better to blow off the poor soul than to just flame back.

Don't beg for money directly. If you don't have time, say you don't have time. IF they are interested enough, they'll approach you about funding the work. "My other obligations preclude me from investing the time this sort of enhancement would require." From there they'd likely inquire if there's some way to rearrange your priority, or if you were available for funded work. But if you aren't say so.

Try not to play "This is a volunteeer thing, so get bent" card. Even if true, it turns people off.

Sarcasm is a bad idea.

Being Generous, posted 13 Feb 2003 at 23:18 UTC by crackmonkey » (Master)

When I get a lot of "What YOU should do with your project" mails, I tend to respond to them with something along the lines of:

Wow, I'd love to see how you implement that. Make sure you use diff -u, as I'm not a big fan of reading context diffs.

This shuts up an overwhelming majority of users, and the minority whine about how they can't program. The trick is to be warm and inviting, and still highlight the fact that you're not going to implement their suggestions yourself.

I'd wager that some of these folks actually do delve into the code and try to hack up their own ideas. Some of them likely give up because the idea was foolish, and those that don't may actually submit a useful patch to you. If you don't like their submission, you can say "wow, that sounds like a very different project than what we're working on, but look: yourotherproject.org is still open for the taking. You should publish it!"

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

X
Share this page