Have I Become A Grumpy Old Programmer?

My long-suffering wife often tells me to "stop being grumpy". What she calls grumpy I call annoyed, but perhaps she does have a point. As a member of several mailing lists for open-source projects, I find myself getting grumpy over the type of questions that I see asked. It started me to wonder if I've become a grumpy old programmer. What causes me to age prematurely and transform into a Grumpy Old Programmer? Questions on mailing lists, that's what.

Oh, not just any question mind you. There are lots of good questions being asked. Questions about how is the best way to do something, or how to take a particular component in an unexpected direction. Those are good questions, because they make you think about how you are doing things. But then there are the other questions. The questions that you often wonder if the person asking the question is a troll. Questions where you wonder if the person asking the question had ever heard of a search engine. Questions where you wonder if the person asking the question has even bothered to read the documentation for the area they are asking a question about.

Now at this point I can imagine people labeling me as a snob or elitist or some other derogatory label that implies I think I am smarter than everyone else. I am smart enough to realize that there are plenty of people smarter than me. I benefit from the tools they've created every day. So please, no name-calling. Ask anyone who knows me and I think one of the last labels they would apply to me is 'snob' or 'elitist'. 'Grumpy', maybe. Anyway, back on topic.

I understand that many people are just beginning out as programmers. I was once one of those people, and I spent (and still do spend) lots of time using search engines to find answers to my questions. When I ask a question on a mailing list, I try to have done all sorts of research that led me to the point where I couldn't find the answer without asking directly on the mailing list. That's pretty acceptable behaviour, wouldn't you think?

Now I'm not interested in pointing fingers or providing examples. That would be picking on people who might not have a concept of what could be called "mailing list etiquette". If I had to guess, I'd say once a month the administrators of the CakePHP mailing list have to remind someone who is causing problems to be quiet and abide by the rules (unspoken or otherwise) of the list. So, in the interest of providing some helpful tips for getting the most out a highly-technical mailing list, here are some pointers:

  • There is a proper way to report bugs
  • Asking people to provide you with fully-written solutions to your problem is not only rude, but shows that you aren't willing to learn anything yourself. The mailing list is not a substitute for a consultant
  • Please do some work before you ask your question
  • Don't assume everyone thinks your problem is as important as you do
  • Provide as much info as you can: code samples, good descriptions of the problem, things you have tried as solutions. The more you give, the more you can get back
  • People are providing answers because they want to help, not because they are trying to make you look stupid. People do a good enough job of making themselves look stupid (me included) without needing extra help

    Failing to do any combination of things listed above is very likely to turn me into a Grumpy Old Programmer when I read your question. However, I'm not off the hook yet. There is the proper way to answer questions as well. I generally try to provide helpful answers if I know something about the problem, but I prefer to send the harsher messages (variations on RTFM and STFW) via private email.

    I hope the stuff in this post helps people looking for help on a mailing list get more out of their questions. In the meantime, look for me on the CakePHP mailing list and call me out if you see me not following my own advice...