I’m still working my way through Jane McGonigal’s Reality is Broken. It’s a superb book. I highly recommend it. Inspired by her SuperBetter story, I thought I’d have a go at creating (ripping-off) a version for testers. First some background though.
In her book, Jane talks about how she managed to concuss herself when standing up in the kitchen, forgetting that she’d left a cabinet door open. We’ve all been there, right? Except on this occasion, she unfortunately managed to cause serious concussion, with a predicted recovery time of a month initially, and subsequently three months further down the line. Disheartened with her lack of progress, she decides to gamify her recovery by identifying a series of roleplay-esque missions that enabled her to communicate, and realise smart targets that would ultimately chart a path towards complete recovery.
I thought this was pretty cool, and easily transferable into personal development objectives. For testers or anyone really. Here’s how the game might look when mapped across to a testing context:
Mission #1: As the hero of this adventure, you can be anyone you want. Pick a story, hero or role model and identify the attributes and characteristics you admire. You’re about to borrow their superpowers and play the leading role yourself.
Mission #2: Recruit your allies. Every hero has an inner-circle, gang or side-kick to help them save the day. Pick people you trust and rely on and ask them to help you chart and accomplish your goals.
Mission #3: Root out evil in all its dastardly forms. To fight your battles and ultimately win the war, you need to identify who or what you’re up against.
Mission #4: Locate your power-ups. Make a list of tools, weapons and super-powers at your disposal that can be called upon in your fight against evil. Be sure to save some for the boss battles though!
Mission #5: Create your Super Tester to-do list. Dream big! Try to identify a bunch of targets that include things you can do right now, stuff you’ve been putting off and dreams that may seem completely out of reach. Everything on the list should be something that a) makes you feel awesome and b) shows off your Super Tester prowess. Each day, try to check-off at least one item on the list, remembering to use your power-ups from  when needed. Ask your allies from  for help and advice.
It’s fairly easy to see how you could identify a set of personal objectives using the template above. But you’re sceptical. Testers! Ok, so here’s how mine might look. Promise not laugh! 😉 I’ve always been a Batman fan. So I’m going to borrow some of his super powers (yes – I know Batman doesn’t actually have any super powers… But just for the sake of argument, let’s call them super powers for the time being. We can argue about debate the semantics later if you really want to.) According to Wikipedia, Batman has the following main attributes: His costume, his equipment, his bat-signal, and his cave. At first glance, this looks like a pretty boring list and you’re probably thinking “what about his toolbelt, and the batwing, and the really cool car etc etc. But wait. With some imagination, these attributes actually map across fairly well to some high level personal development goals:
- Costume – as a tester, you could say I’m clothed by my reputation. With my team, and within the testing community.
- Equipment – I need to understand what tools are available to me, how and when to use them appropriately.
- Bat-signal – communication. Testers need to be expert communicators. There’s always going to be room for improvement here.
- Cave – this is where Batman retires to think and analyse. Batman is a detective. Testers are detectives too. I need somewhere I can think, learn and perfect my craft. I need to fill it with appropriate resources, a bat-computer, a bat-library etc etc.
- Executable specifications implemented as part of the build and deploy process – continuous integration.
- Broader automation coverage – more browser compatibility & mobile devices.
- More exploratory testing.
- More tester involvement in the early stages of requirements gathering. Ensure business goals are explicitly stated and fully understood.
- Improved note-taking – possibly even a daily journal (dream!)
- Better communication skills – maybe present at a meetup or conference?
- Improved coding skills – I’m tinkering with Rails a lot. I could really do with studying Ruby in more depth.
- Use testing skills to specify business tests and activities, maybe in a startup context.
- Learn how to implement automation more intelligently and against a wider range of systems.
- Move into more of a strategic/management role in the testing field.
- Present at a conference.
- Publish a peer-reviewed paper.
- Go on the Rapid Software Testing Intensive.
Having now gone through this process in a kind of faux manner, I’m actually pretty impressed with list of goals I’ve identified for myself. What started off in a kind of jokey manner has actually become a set of objectives that I could very easily take away right now and start working on.
What about you? Do you think a gamified personal development tool like the above might help you become a better, more effective tester?
P.S If you're interested in learning more about performance testing, checkout my Performance Testing 101 course here.