What are mnemonics and how can they help with software testing?

If you’re following me on Twitter or subscribe to my weekly newsletter. You’d have seen that I recently finished reading a book titled Moon Walking with Einstein by Joshua Foer.

It chronicles the journey of Joshua Foer, an American citizen with a self-described average memory. Deciding one day to stretch his limits and join the ranks of the country’s top mental athletes. He takes on the task of competing in the USA memory championship. An event which requires participants to complete many challenges such as remembering vast amounts of digits, arrays of information. And memorizing a complete deck of 52 cards to name a few.

Something that Joshua could do in 1 minute and 40 seconds.

Spoiler alert: Joshua won the USA championships.

But don’t worry, knowing that won’t ruin the book if you pick it up. While it touches on Joshua’s own training and the techniques he used to tame his brain into being able to memorize the colossal amounts of information that he fed into it. It is also a book that is much more about the history of memory training. The systems that people have developed over time to enable these amazing feats. But also the science behind it, and the overall view of the link between people’s ability to remember, and by extension, what makes us human.

One scene in the book that will stay with me for a long time details a man who can only remember what he has been told for a few seconds. After which he automatically regresses into a state of unknowing. Every day is spent discovering the world around him for the first time. It really makes you question what memory is and what we really are without it.

Memory palaces

While the book won’t teach you to remember if you locked the front door, or where you put your car keys. It shares some techniques that we can use if we want to expand our memory, perform some cool party tricks. Or easily recall details that are important.

One of these techniques is a memory palace. Which is nothing new to the subject of memory improvement. The Romans and the ancient Greeks even used it, and originates from its own interesting, but tragic, backstory.

Essentially, it’s a place that you picture in your mind which you already know really well. Ideally a childhood home, or house that you already know like the back of your own hand. Then when you want to remember peoples faces or the first 100 digits of pi, for example. You associate each person or digit with a unique image in your mind and place it in each room around the building.

Then when you want to recall the information that you have stored away in the rooms of your mind. You take a walk through the building, recalling each image one by one, and remembering the association you made with each of them.

The trick to this technique (and one that works really well) is to make the image as unforgettable as possible. For example, your grandmother riding a unicycle while being serenaded by an orangutang in a three-piece suit could be the card the 10 of clubs.

Even though it can be difficult for us to remember bits of information without some kind of attachment. We are on the contrary superb at remembering things when we can picture it, see it and remember it vividly in our minds.

While the memory palace is a nice thing to know and possibly even useful to use. I find the other technique that described in the book as a far more practical way that people who need to keep particular information. Or details that they would otherwise find hard to retrieve.

What is a mnemonic?

Memory Palaces are essentially a mnemonic system, albeit a much more complex one. It’s not one that you can use in everyday life. Or rely on to remember the order of very specific operations.

Instead, think of mnemonics as more general techniques that can aid learning. Boost retention of said information. And increase the ability to recall it when needed.

There are distinct types of mnemonics which are used in various types of scenarios. For example, the song used to recall the letters of the alphabet is one that I’m sure we’ve all used at some point. Or the kind whose first letters make up an easy to remember phrase. Like My Very Eager Mother Just Served Us Nine Pizzas, which aids us in remembering the names of the planets in order.

There are other types and I recommend looking at the Wikipedia page if you would like to learn more.

How can the mnemonic system be helpful to software testers

When testing a new application or within a new and alien context. It’s difficult to know what to focus on. What the unique risks are, and how others have previously solved those same issues. This is where mnemonics can help.

With an easy to remember acronym or word. Testers can recall targeted information, jolt their memory into performing important tasks. And generate new and effective ideas.

While mnemonics are a learning technique which would be most useful to new testers who want to recall certain testing concepts. They can be also highly valuable to existing software testers who are looking for ways to boost their ability to remember what is important when performing their testing.

Is there a list of existing mnemonics for software testers?

I recommend looking at this blog post for examples of useful acronym based mnemonics for software testers. Or this one which features mnemonics from James Bach, Michael Bolton, and a brilliant mnemic related to regression testing coined by Karen Johnson: RCRCRC.

But these are only a flavour of the memory techniques and mnemonics at the disposal of software testers. I’m certain there are others so share them in the comments below. Also, if you want to read a superb book that is both fascinating and memorable. Pick yourself up a copy of Moon Walking with Einstein.

Here’s a talk that Josh gave at Google which is also thought-provoking. And a recording of a talk that he gave at TED.

Posted by Kevin Tuck

Kevin Tuck is an ISTQB qualified software tester with nearly a decade of professional experience. Well versed in creating versatile and effective testing strategies. He offers a variety of collaborative software testing services. From managing your testing strategy, creating valuable automation assets, or serving as an additional resource.

Leave a Reply