Educational reflections of a fairly successful tester

Experience in any field comes through learning and perfecting the skills and knowledge you apply in many different areas. Working in the software testing industry has taught me a lot, over the years I have gained quite some programming skills, analytic skills, people management skills, learned a lot about all the different testing theories, read a boat load of books about testing, programming, test automation and quality assurance, heard a lot of people speak about it and gained quite a broad general knowledge of testing, or so I hope. All of this knowledge I apply, fairly successfully, on a daily basis in my job.
So what would it take for me to go from fairly successful to very successful? Do I need to gain some more specific knowledge? If so what exactly?

I love learning new things overall and related to my job in particular, i enjoy studying to get new ideas and get my mind challenged making space for the most unexpected and fresh approaches, perceptions and solutions.

Working for Polteq gives me an advantage of my employer providing quite a lot of trainings I can sign up for. Unfortunately when going over that list there is not all that much I would want to study at this point. I have studied books on TMap and ISTQB, ITIL, Prince, TQM and many other subjects, why would I now all of a sudden need to do courses in it?
Agreed, it might give me some new ideas, but it will not really challenge my mind I believe, especially since the courses are mainly oriented towards gaining certification in these subjects.

A while ago I needed to hand in an overview of my “educational needs” to my manager in order for the company to see how many people have desires in a similar direction and thus which courses they can arrange with a fair sized group. My answer to this request went something like this:

I feel a need in further education, however, at the moment I have no clear ideas in which direction I would want / need this education to be.

I am inclined however to say that my education should be oriented more towards gaining skills, both testing skills and softskills, given the frame of work I am being inspired by at the moment. This will help ensure moving test automation within Polteq and the testing community to the next level, the thing that i am aiming to in my professional life at the moment.

Is it more difficult to learn something new as an adult than when we were kids

Over the last 3 years I have continually been amazed when watching our son learn new skills. It seems to come so natural to kids, learning. They go about it with extreme ease and are absolutely not dissuaded by initial failure, or even by repeated failure, in stead, they change their approach and try again, but now from a different angle or point of view (usually literally a different angle or point of view).

This has kept me thinking,  why is it so difficult for adults to learn something new?

Experiential learning

Experiential Learning Model

Kids have a big advantage when trying to learn things, they (often) look at them for the very first time. This helps them to not worry about what it is supposed to do, but to instead figure out what it does do. Whether it is the intended function or not, the child learns what the object can and cannot do in a rapid and fun way.

Whenever us adults encounter something new we always will try to draw from the past, look for something that may have been similar and go forward based on assumptions rather than intuition. In quite a few things it helps, but in as many things I also believes it hampers us. Most adults have a form of built-in “best practices” which they will use when they encounter something new (as described in the concept of experiential learning).

So how can we, as software testers try to not use our default boxed-in thinking? Is there a way to break through the barriers experience builds and look at something as if you see this truly for the first time?

One way I try to ensure I do not get blocked by my knowledge when starting on a new piece of software is by exploring it as I believe my child would do it. Rather than guess what it is supposed to do I try to figure out what I can do with it.

Fairly soon however, I tend to run into the feeling I have seen something like it before, or the feeling of recognizing a pattern which then triggers all kinds of things I have learned in the past. So, how do you get past this? Or should you want to get past it?

The fact that our mind works based on boxes seems a limiting factor, but apparently these boxes do come fairly natural for the human mind. One way I try to use for the so called “thinking outside of the box” is to expand the boxes in my head to contain several different boxes.

In the example above, where I start recognizing a pattern or have the feeling I know what I am looking at, I try to combine the two feelings, or hunches, and through that push my mind into a whole new trail of thought, thus breaking out of the original boxes, and shoving all of that into a bigger one. On top of that I try to change the context in which I know these patterns, transplant the feeling to my current situation and see how this could apply here, since I have to deal with a different situation, with different circumstances; different data, different programming language, different developers and designers, quite likely a totally different objective of the software I am looking at etc.

There have been all kinds of studies and theories that should help one think outside of the box, but what seems to work for me is a combination of things:

  • try to apply knowledge I gain from reading books (and I read a fair amount) into a practical situation
  • try to combine the new experience and the “learned” responses into its own, separate context of the here and now (e.g. the context in which I am currently working)
  • try to find several points of recognition or deja-vu if you will, and mash these ideas together into a whole new thing, within the current context
  • and to top this all of: I try to think of what my son would do to figure out what this object (or software) can do for him.
This approach may not always be the most efficient or for that matter the most effective, but it does ensure that whenever I try to learn something new, new software when testing it for example, that I expand my horizons yet a bit more beyond just this object under investigation. I quite often even get new insights into how I could have tackled a previous problem more effectively as well. Which then gets stored in memory and at some point gets reused yet again.
The vicious circle of learning is great, and finding new ways to expand your knowledge and the ways of learning new things is even greater!