Two years ago I was your typical product of public school art class. Which is to say I didn’t draw all that well.
Ten years ago I was your typical taught-myself-programming developer. Which is to say I didn’t test all that well.
I decided to teach myself to draw because I had all these house designs which I wanted to get out of my head and onto paper. I approached learning to draw the way I approach learning anything: I read gobs of books about drawing, and I practiced and practiced and practiced. My first drawings weren't anything to write home about. Eventually, however, I started creating drawings which I thought were worth saving.
I decided to teach myself to test because I wanted to find problems in the applications I wrote before they reached my customers. I approached learning to test the way I approach learning anything: I read gobs of books about testing, and I practiced and practiced and practiced. My first tests didn’t find many problems. Eventually, however, I started finding issues which mattered.
One day, after completing a drawing I was particularly pleased with, I reflected a bit upon the things I had learned. As I did so I discovered many parallels between what I had learned about drawing and what I had learned about testing. Hence this series of posts.
I do not claim to be a great artist. Nor do I claim to be a great tester. One thing I have learned is that being great is not necessary in order to be effective at drawing , nor at testing.
Over the next several posts I will discuss five points I have learned about drawing, and how each of them applies to testing. As I do, look for ways to draw them in to the way you test.
Much of what I am about to say applies to many other endeavors beyond drawing and testing. I make art, and I test software, and so I am drawing parallels between those two pursuits. If you play basketball, or build bridges, or write code, you may find that the parallels I draw apply to those activities as well.
I do not claim these are the only parallels between drawing and testing, or even the most important. They are simply five I thought of as I wrote these posts.
[See all my art at http://www.freelyoffered.com.]
*** Want a fun job on a great team? I need a tester! Interested? Let's talk: Michael dot J dot Hunter at microsoft dot com. Great testing and coding skills required.