Welcome to Q&A! Each month we catch up with someone (from the testing community or beyond) with an interest in quality in software development and technology.
Some guests you may know well, and others might be less familiar. I hope you will learn something new about each of them, and something new from each of them. Each will bring their own perspectives and insights on quality and testing.
The format will be the same each time:
- a little information about this month’s guest and what they are currently up to
- some questions for them to answer
- some answers for them to question (the ‘Jeopardy’ section where I will provide the answer and ask the interviewee to give me the question)
- finally, the ‘Pass it on’ section with a question from last month’s participant and the opportunity to pose a question for next month’s guest
Our guest this month is David Greenlees, who is Principal Test Consultant with Innodev.
David has been testing software for over 15 years, many of these spent in one of Australia’s largest government departments, while more recently undertaking a consultant role in multiple organisations. He is a vocal and valued member of the Context-Driven Testing Community and is extremely passionate about the betterment of the software testing craft, with a keen interest in usability and how it impacts people’s experience – the dance between the human and the machine. He has published several articles, and blogs regularly. In 2012, David founded the Australian Workshop on Software Testing (http://ozwst.wordpress.com/), Australia’s first Software Testing Peer Conference, and has recently completed his book Software Testing as a Martial Art (https://leanpub.com/softwaretestingasamartialart).
First of all David, would you like to tell us about anything interesting you’ve been involved in recently, any exciting upcoming ventures, or just what you are working on at the moment?
Define ‘recently’ 😉
Well, I did recently return from a stint living and working in New York, but I’ll talk about that, and how it came about, further down.
One thing I have been doing recently which I really enjoy is book reviews. As you know Rich, I’ve been reviewing your book, and at the same time reviewing Katrina Clokie’s book, both of which I am really enjoying and will offer a lot to their readers. In the past I also reviewed Peter Koevari’s wonderful fantasy series Legends of Marithia, and Jonathan Kohl’s gem Tap Into Mobile Application Testing.
There is one obvious benefit in doing this; you get to be one of the first to read it. Beyond that you also get a chance to shape the content, and perhaps provide the author with fieldstones (see Weinberg on Writing: The Fieldstone Method) that they can use while developing the book. I also find myself learning a great deal while reviewing. I’ll often follow the links provided via resources to double check they are correct, or check on my understanding of a particular term, and find myself reading the content of those. It really is worth the time is takes.
It can also be quite challenging. Sure, reading a draft is easy, but providing feedback can be hard, especially if it’s critical in nature. It’s akin to letting developers know about bugs in their code, but even harder as it’s really just your opinion when it comes to content in a book. Also, you need to context switch often while reading. For example, if I focus on grammar and typos then I can’t offer as much feedback on the intended message of the content. So what I’ll normally do is review for grammar and typos first, then review for the content’s message via a second pass.
I hope to do more in the future!
If you encountered a version of yourself from earlier in your career, and talked about how you approach your work, what would you disagree on?
I would have to go back a long time, but at some point in the deep dark past I would have put up an argument against ‘no prescriptive test cases’. I would have thought you really needed them.
Armed with the knowledge I have now, I could have really kicked butt back then, but I guess you could say that about almost anything!
I was new to the field. I was being told prescriptive test cases were required by the people around me. I was being told they were required by ‘expert’ consultants. So of course I agreed, for a while.
I’m not going to get into the debate, but there is a message here – don’t immediately dismiss others if they believe in something you don’t. Have a conversation with them about why they believe it, let them know why you don’t, and you may learn from each other.
When you look back at your career so far, what do you consider to be the highlight(s)?
The one the stands out the most is the opportunity to live and work in New York. What a crazy love/hate kinda city the Big Apple is!
I owe this opportunity to the testing community. By being active within it I got to know some really wonderful people, got to attend some really amazing conferences, and have a conversation in the Swedish countryside that ended up with Paul Holland saying, “Do you want to work for me in New York?” The rest is history as they say.
The testing community is a very powerful thing… get involved and you’ll find out just how powerful.
When you think back to these highlights, what were the most important lessons you learned?
America’s working culture is VERY different to that of Australia’s!
Seriously though, you have to take risks, albeit measured ones. Push yourself beyond your comfort zone so that you can experience new and amazing things. Moving your family to the other side of the globe is a scary thing, but I’m very glad we did it. The experience is a once in a lifetime.
This message also carries into work. If you don’t push yourself then how are you truly going to improve and prepare yourself for your next big opportunity. If you get stuck, or are a little anxious about it, all you have to remember is that, in the age of the WWW, there is always someone out there willing to help you.
When you consider technology and software development around the world, can you pick out an example of an organisation who really focus and deliver on quality?
I don’t think you can truly know if an organisation focuses on quality unless you work for them, and even if you did, how would you classify the organisation as a whole? Organisations are made up of individuals, and no matter which way you swing it, individuals will all be focusing on something different.
For example, I recently got a new Samsung Galaxy S8+, and I’m absolutely loving it! The screen is amazing, the processor is crazy fast, and the camera is super sharp. Could I then say that Samsung is an organisation that focus and deliver on quality? From my perspective, with this particular product, for the time I’ve had it (just under a week), and for the features I’ve used (minimal)… yes. Could the person sitting next to me have a completely different experience and answer the question with a no? Of course they could.
So the answer to your question is probably no.
What do you think is the most common misconception about testing?
That it’s easy and anyone can do it. Hang on, I need to clarify… that’s it’s easy and anyone can do it well. We all test, all the time, but to test well is more often than not, hard. “It’s only a website, how could that possibly be hard to test?” If I had a dollar for every time I heard that, I’d be responding to this interview from my yacht.
In part I see this as a failure on us. How often do we (the collective thousands of testers across the globe) take the time to really explain what it is we do and how we do it? Not often enough. Not to be critical of us wonderful testers, I know we’re not always given the opportunity to do this, but I do think we could do it more, and be better at it.
Also, there is crappy testing being done all over the place and it’s damaging our collective profile as a professional capability. If all people know is bad testing, then of course they are going to think they could do it just as well as, if not better than, the testers.
Along with talking about good testing and how we do it, one of the best ways to show how hard testing can be is to find those complex bugs that can only be found by doing, yep you guessed it, good testing!
And now, the Jeopardy section. I’ll provide you with some answers and ask you to give me the questions…
What is so simple to define, yet so difficult to understand?
Insert missing word: What is my daughter doing to me when she procrastinates going to bed each night? ___________ my patience!
Lastly, the ‘Pass it on’ section. The question posed last time out, by Cassandra H. Leung was:
“Do you think it’s possible to teach critical thinking; why, and if so, how?”
To a certain extent, yes. However, what does ‘critical thinking’ actually mean? Is there one agreed definition, and therefore an agreed goal to aim for which sets the foundation for good teaching? No.
Having said that, there is one that I do like; “Thinking about your thinking while you’re thinking to make your thinking better.” – Richard W. Paul
Such a simple yet powerful definition, which is accurate (I think), and yet so broad it could be interpreted in many different ways. I’m reminded of Weinberg’s definition of quality; “Value to some person.”
Anyway, where was I? Ah yes, it can be taught to a certain extent. I think there is a certain amount of natural ability required to think critically about things, and much of that relies on the person’s level of passion for that thing. If you’re passionate about something, you’ll naturally spend more time thinking about it in different ways. The drivers for that passion are many and varied according to the individual, so let’s not go on that tangent here.
Perhaps an example of when I’ve learned more about critical thinking…
I was once asked the question, what is half of 13? I immediately answered 6.5 (yes, my math game is on point!). Almost before I’d finished my answer I was asked, is that the only answer? Hang on, what just happened? After attempting to clarify several times what the person meant, only to be met with the same question after each attempt, I decided to come up with some different answers…
• 8 – Write 13 in roman numerals and half it horizontally (the top half is VIII).
• 49.5 – Take the written form ‘thirteen’ and assign an alphabet value to each letter, add them (99), then half it.
• A number of pixels – 13 could be displayed on a monitor using a certain number of pixels, half that number.
• Half of the number 13 as it’s displayed to me.
There are more of course, and with a little critical thinking I’m sure you can come up with some. Yes, this may seem silly, however who says that 6.5 is the only answer?
My daughter has a little trick she uses on people. She asks them what 1 + 1 equals. They answer 2, and she states that it actually equals window. Yes, window. She then asks for a pen and piece of paper and shows them that by using all lines required to write the question you can draw a window…
Neat huh? I have only ever seen one person not answer with 2. He actually said to her, “It can equal whatever you want it to equal.” He gets it.
That was a long way to say that in order to teach critical thinking, you need to teach people how to question the norm, question their biases, and to think about things in different ways. You need to teach them to not be bound by the rules of society, or even the rules of math (sorry Neil deGrasse Tyson). How you teach someone to do this very much depends on them, but starting with simple little exercises like above may help.
Oh, one more. I like to do word analysis with people. You can take a statement, any statement, and analyse each word individually. What does the word mean? Does it have a different meaning when taken out of the context of the statement? Is there a better word that could be used? This is not only a great exercise in critical thinking, it can also help identify issues and clarify what someone is intending by using that particular statement (requirements analysis anyone?).
And finally, what question would you like to pose for next month’s participant?
Can you measure quality, and if so, how? Oh, counting bugs doesn’t count (pun intended)!
Thank you David for taking the time to answer participate in Q&A… see you next time!