Markus Gärtner has been writing a series of posts
and software craftmanship
recently. Well worth checking out.
I'm struck by his repeated use of swimming training as an analogy. It's interesting for me to read this, as my experience of learning to swim was probably a little different to Markus's pupils...
Like many British schoolchildren of my generation, sport lessons at school were intended for the already sporty kids only. Clumsy nerds were an annoyance, to be kept out of the way of the real pupils wherever possible. I reached comprehensive school (age 11-18) without having learnt to swim. Accordingly, I was, along with the other non-swimmers, banished to the far end of the school pool during swimming lessons. This was sufficiently shallow that even a small eleven year old could actually touch the bottom when trying to perform the front crawl (so of course we just walked across the pool with our hands instead), and so the swimming teacher felt safe to ignore us while honing the skills of the children who could already swim, down at the deeper end of the pool. We non-swimmers learnt absolutely nothing from our lessons, except that as long as we waded across the width of the pool in time with the swimming kids, thus staying in line, the teacher would not come down and shout at us.
Until the end of year approached, and we were all summoned to the deep end of the pool. The teacher explained that we were to jump in to the deep end, and swim to the far end using the breast stroke which we should all know after the past terms' instruction.
It says something for the power of authority that it did not ever occur to me to ask to be excused. My turn came, and I dutifully jumped in, made three flailing attempts at breaststroke - just enough to push myself out of arm's reach of the side, and sank.
As I watched the silvery underside of the water's surface receding as I sank, and the distorted form of the teacher's irate face above it, I gradually realised that I was completely on my own. Nobody was going to pull me out. There were absolutely no signs of concern or movement on the surface. Looking around I realised there was a ladder going down the side of the pool and somehow managed to get myself over to it and back up to the surface, though it took a few months. As I coughed and spluttered and spat out water while clinging on to the pool's edge like grim death, the teacher leaned over and shouted: "Go back to the other end of the pool! AND PRACTISE until you can DO IT PROPERLY!"
I don't think it will be a huge shock to readers that I never did learn to swim in school. Many years later, I learnt to swim by going swimming with a friend. A safe learning environment. I'm still not a particularly strong swimmer, but I enjoy it, and it's fun. Sometimes I go swimming with my ex-swimming coach friend, and she shouts advice to me as I splash around. I've got the hang of not sinking now, but I'm pretty sure she'd fish me out if I did.
I have, since then, been in work environments where learning new skills was approached in the way that Markus describes his swimming coaching, with patience, a gradual progression of difficulty in challenges faced, a variety of methods used to try to adapt the learning to the learner. I have also been in environments were the approach was rather more similar to that of my school swimming teacher - in at the deep end, and if you fail your task but manage not to drown, you get shouted at and sent back to the baby end, because it's all YOUR fault if you failed.
I really hope that most people reading this learnt their testing via the Markus route and not the in-at-the-deep-end-don't-care-if-you-drown route - but if you do feel that you're gasping and heaving on the poolside, what would make a safe learning environment for you to learn to swim? Would it help to go swimming with friends, in an environment where making mistakes might feel safer than at work?
Edited to add: if a safe, friendly environment to practise your testing skills sounds interesting, then keep an eye on Markus's blog
over the next few days...