Monday, June 7, 2010

(5/12) All I Ever Needed to Know About Testing I Learned in Scouts

This is the fifth of a 12 part series.

As many of you know, outside of testing and raising a family, my single biggest time commitment is being a Boy Scout Leader. Over the past couple of years, I’ve seen and heard various presentations regarding a code of ethics around (teaching, development, testing, governance, fill in the blank). Each time I’ve heard or read these statements I’ve caught myself saying the same thing…  “If everyone just lived by the Scout Law, we wouldn’t need this patchwork blanket of ethics rules and codes of conduct”.

My “challenge” now is to see if I really could map Testing to the Twelve Points of the Scout Law.

Note: these twelve points are those as defined by the Boy Scouts of America; while the Scout Law is similar in all countries that have Scouting movements, the wording is often a little different depending on the country.

“A Scout is Trustworthy, Loyal, Helpful, Friendly, Courteous, Kind, Obedient, Cheerful, Thrifty, Brave, Clean and Reverent”

A Tester is... Courteous

Courteous comes down to a simple phrase... be polite. That doesn't mean that you have to be a wet rag and not state an opinion, or tell it like it is, but you can and should do it in a way that shows respect and courtesy for the person or organization you deal with. The opposite of courtesy is disrespect and arrogance, and having had my share over the years of dealing with developers and testers that have exhibited plenty of disrespect and arrogance (and hey, I am certain I've exhibited my fair share a time or two as well) I'll gladly and much more willingly work on the "Courteous" side of the coin.
There are times where our best intentions come off as being rude and obnoxious. I had an experience like this regarding one of the developers on a team I was working with. I had gotten into the habit of stopping by his cube when I'd found something interesting, as this was the dynamic we had fallen into. I thought I was being helpful by telling him about the various things I was finding, and since we sat near each other, it just seemed like the easiest way to communicate the issues. Well, with time and familiarity, I continued to do this, until one day I received an IM message where the developer basically said "dude, could you lay off the snarky comments about the code? It's really starting to get annoying!"
This was an example of where I realized I'd crossed the courtesy threshold. It was unintentional, and it was all a part of "improving communication", but I realized as we worked through this his perception of my "being helpful" was turning out to be anything but. Because of that, I decided that I could do us both a favor by just using the issue tracking database (which I was doing anyway) and just leave the casual commentary about my findings out of it. Fortunately, the developer in question and I had a good relationship, and he was able and willing to come out and say I was being a jerk. I also was willing to step back and say "yeah, I am being a jerk".
Being courteous is more than just the obvious "be polite" or "be professional" stance. It's really doing our best to understand where the other person is coming from and making our best efforts to show respect and to be a help to the people we work with rather than a hindrance  It's knowing when to step in and give a hand, and knowing when it's OK to let someone work through something so that they can learn and develop the skills they need to. It works upwards and downwards, with senior staff and with junior level interns. It's having a conversation where you can disagree without being disagreeable. Mostly, it comes down to showing those you work with that you respect them, and that you deserve respect in kind.

No comments: