Monday 17 October 2016

Debating and challenging.

“The smart way to keep people passive and obedient is to strictly limit the spectrum of acceptable opinion, but allow very lively debate within that spectrum....” 
― Noam Chomsky, The Common Good
There has been a lot of debate, posts and discussions about what is acceptable and not acceptable within the testing community recently and it makes me feel sad and unhappy.  Some appear to have disintegrated into personal attacks and the message has been lost and to me that feels wrong.  Could things have been worded differently?  Of course and hindsight is a wonderful thing.   I am not going to go into detail of these discussions or state who was right or who was wrong.  You can form your own opinions and look up the discussions yourself.

 What I will say is we have to be careful as a community of  limiting the ability to challenge ourselves and allowing others to challenge us.  This should be done respectably  and with the purpose of trying to help us all learn without it becoming a personal attack and counter attack.  As the above quote states if we want to be passive and obedient then sure let us limit what can and cannot be said.  what is seen as acceptable to someone may not be so acceptable to others.  In the same way each individual has their own perspective of what quality is:

"quality is of value to a person" - Jerry Weinberg

I am not closed to the fact that as humans we will often disagree passionately with each other and to me that is OK, however once emotions are involved it can lead to some behaviors which  are not so pleasant. Maybe if you feel in these situations it is best to step back and think before replying.  I try to do that a lot and hence my delay in writing this post.

As individuals we will see the same thing in a different way, hear the same words differently and read into what someone is doing wrongly, hence the unreliability of eye witness in court trials. We may say things which we feel is right  at the time which has unintentional results .   Allowing time for people to explain their intentions and what they meant, is to me respecting each other.   The outcome from this maybe an apology, correction of facts or better clarification of what was meant.

I have to believe that in our community people do not deliberately try to hurt or upset others  however I feel as a community we need to challenge ourselves and others to improve our knowledge and skills.

Let us respect each other even if we do not agree, otherwise people will use this to limit what can and cannot be debated and decide for us what is acceptable to challenge.  At the same time using this to limit what we can and cannot read, listen to and who we can talk to.   To me this starts to become like 1984 and big brother.

To finish we may not always agree with each other but sometimes as the song in Frozen goes we have to

"Let it go"

If the worst thing you get from this post is having that song in your head all day then my job is done. :o)

Wednesday 20 July 2016

What do we mean by testers learning to be technical?

I recently read a post by Justin Rohrman entitled "Do testers need to code".  The following line gave me some concerns:

"So, I think that testers do need to learn some programming skills now."

Now I wish to begin by stating I am not against testers learning to code  if that is something they are interested in and they want to learn.  On the other hand it may not be the best value skill you could bring to a team, especially if you already have 5-6 exceptional coders on your team.   Justin within the article tries to align to this thought with the following:

"My new feeling is that testers need to learn to program, or at least become more technical –write SQL, use developer tools effectively, read code — for any sort of longevity in the field. "

I have blogged about this in the past- 'A discussion on do tester really need to code.' in which I talk about adding value by learning the syntax of code.  I was asked on twitter by Marcel Gehlen to provide an example of what I meant by this.  I replied with the following:

'I understand the syntax of the french language but I am terrible at speaking it.'
The main point of this update to the 'testers need to code' debate is around what we mean by being 'more technical'?  To the majority of people and from the many articles I come across this implies learning to code.  I feel this is too narrow and at the same time limits the potential and opportunities testers may have.  As an example if you now have a team in which everyone can code and there is a need to reduce the team due to financial and business pressures.   If the decision being made is based upon coding skills then I feel testers could be at risk.

Where does this learning to code end?    In the modern development world of 'devops' are we now going to state that operational people and marketing people should now learn to code?  we could end up with an over saturated market of half decent coders.  What skills are going to make testers stand out and be seen to be adding both team and business value?

Taking a step back what do we mean by coding?

I can writing scripts in bash which to me is similar to writing test script in the sense of logical following steps.  At the same time I understand the command line interface to enable me to deploy a test environment.  Going forward into the devops model I can write dockerfiles to create containers..

#
# Super simple example of a Dockerfile
#
FROM ubuntu:latest
MAINTAINER Andrew Odewahn "odewahn@oreilly.com"

RUN apt-get update
RUN apt-get install -y python python-pip wget
RUN pip install Flask

ADD hello.py /home/hello.py

WORKDIR /home

Example from http://odewahn.github.io/docker-jumpstart/building-images-with-dockerfiles.html

I understand how to use ansible to deploy an environment to enable me to test and run automated checks.

These are, what many would class as, highly technical skills.  However as Jerry Weinberg just posted about 'Becoming a Better programmer; ' there are other skills that are of value to a team and to the business that many would not class as technical.  The ability to get people to work well together and collaborate and communicate is a highly desirable skill to have.  Since it is classed as a soft skill not a lot of emphasis is placed upon this as a skill testers should learn.

What about analytical skills, as more and more companies move to a devops model for software delivery, the skill of being able to determine patterns within the software from all the data and collate that data to help improve try and improve the quality is a highly demanding and technically challenging skill.  I can see this skill becoming highly desirable in the future.  Maybe a tester could invest their time learning this skill?

Then we have the other areas such as an understanding of human behavior to help influence the design .  Learning about social science and systems thinking to help see the big picture and overcome obstacles for the team.   I have been running a series of blog posts on skills testers should learn away from the traditional 'must code' school of thought.  Using your time wisely to practice and improve these skills can help you become a better tester and more importantly show your value to the business.

A few examples are given below (feel free to browse my blog for other examples)




Also with your testing skill set you could mentor, coach and teach others about testing and how they can use that to help improve the software.  Set yourself a goal of coaching the programmers in simple test techniques that they could look to add to their frameworks to enable you to focus more on the difficult to find issues using exploratory testing .

Again I wish to state I am not against tester learning and if they feel they have a passion towards coding then go and do it.   At the same time think about what else they could learn that adds both team and business value.




Tuesday 5 July 2016

Introverts and Extroverts - stop labeling yourself.

This post maybe a little controversial and uncomfortable to some readers.  As social creatures we like to label ourselves as certain types.  We like to be part of groups, tribes and social circles. The issue is when we, or others, use these types to defining ourselves and limit our potential.

The focus of this article is looking at two specific personality types which always seem to pop up in conversations.

'Oh I am an Introvert"

'They are they the life and soul of the party, surely they are an extrovert'

If we ignore the fact that most personality testing are flawed, especially Myers-Briggs
"Generally, although not completely unscientific, the MBTI gives a ridiculously limited and simplified view of human personality," Nothing personal: The questionable Myers-Briggs test - Bean Burnett - The Guardian - March 2013
 Then what we are left with is the human desire to 'fit in' and be part of a group.  At the same time by using these labels we can provide excuses for our behavior.

What does it really mean when we say Introvert or Extrovert.

The merriam webster dictionary defines them as follows:
Introvert -  a shy person : a quiet person who does not find it easy to talk to other people
http://www.merriam-webster.com/dictionary/introvert
Extrovert -  a friendly person who likes being with and talking to other people : an outgoing person
http://www.merriam-webster.com/dictionary/extrovert
For those people who know me personally, how would you label me?

I am sure the majority would define me as an extrovert, an outgoing person who like to socialize and talk to others.

However there are times and situations in which I can by shy and find it difficult to talk to others.  For example at large social gathering I can become very inward.  A recent example of this was at Testbash in Brighton where they organize a social event by the beach.  I find these situations very difficult and draining.  I put on a brave face but inwardly I just want to run and find a quiet corner  and be by myself.  The classic signs of an introvert?  Then the next day I am on stage in front of 200 plus people giving a talk and feeling wonderful, relaxed and enjoying the moment.  Wow now I am classed as an extrovert!

For me the key here is we need to stop limiting ourselves by defining our behavior with a label.   Depending on the context you can be an introvert or extrovert, and there is nothing wrong with that.  However if you use these labels to the extreme you could limit opportunities, growth and fulfilling your true potential.  Throw away the label and use your instinct to drive what you want to achieve and then anything could be possible.

Oh and a message to those who work in HR please stop using personality tests to meet some unreasonable arbitrary 'will they fit' tick box.  You may be excluding people just because of how they feel on that day rather than based upon the merits and skills  of the individual.

Thursday 23 June 2016

Testing Skills #10 - Persuasion and Selling

Like it or not everyone is now a salesperson.

As Daniel Pink states in his book 'To Sell is Human':

"If you spend any of your time both personal or in work "persuading, influencing, and convincing others," you're in sales."

The world of work is changing as described by Peter Drucker:

"The world of work is changing from one of manual workers to a world  of knowledge workers"
 Landmarks of Tomorrow

With this world comes the need to be able to persuade and sell to others.

“To sell well is to convince someone else to part with resources—not to deprive that person, but to leave him better off in the end.”
Daniel H. Pink, To Sell Is Human: The Surprising Truth About Moving Others

We all now have to sell our ideas and convince others that our ideas are sound and the right ideas.  How often have you needed to sell the testing you are performing?  Or persuade someone that a defect really does need to be fixed?

Having these skills is crucial for testers to be able to carry our their daily testing activities.

What follows are some tips on how to persuade and sell to others with a focal on selling testing.

The first tip is to be able to ask the right questions rather than try to provide answer.  This to some may appear simple however as Daniel Pink states:

“In the new world of sales, being able to ask the right questions is more valuable than producing the right answers. Unfortunately, our schools often have the opposite emphasis. They teach us how to answer, but not how to ask.”
Daniel H. Pink, To Sell Is Human: The Surprising Truth About Moving Others

When selling testing it is not that important to explain the technicalities of testing and how you go and do this.  This is vitally important when talking about testing to senior management.  Instead ask questions such as:

  • What do you see as the biggest risk for this product?
  • Where is our revenue going to come from with this product?
  • Is there anything about this product that gives you sleepless nights?
By asking these types of questions you can then use the information provided to reassure the person how testing may be of value in this situations. Sell less about testing and more about what it may do to support the business needs.

At the same time their is a need to be able to persuade people about doing the right testing.  This could be other peers and colleagues.  In these situations it is not about selling but about showing to people the value of testing by doing.  Working closely alongside people so they can see in real time the benefits of the testing that is being performed goes a long way to helping to persuade people. The art of persuading is more based on showing by doing rather than by trying to sell an idea.  If you are in a situation as a tester to be given an opportunity show the value of testing, lead by utilizing practical examples rather than explaining theory.  People are more easily persuaded by examples they can relate to rather than a theoretical example that has no relevance to them.

To conclude it is important for testers to have the ability to sell the benefits of testing and the skill to persuade others of these benefits.   Selling testing will normally mean not talk about testing but the value testing can bring in terms of bottom line and risk.  Persuading others of the benefit of testing is more about showing what testing is and how it can add value.  To get better at either of these skills you need to practice and practice and practice even more.  Try and get others you are comfortable with to help you to practice and give you feedback on your selling and persuasion skills.

Tuesday 26 April 2016

Stuck in Limbo

It has been awhile since my last post.  There are many reasons as to why:



That last one has really concerned me over the past month, I am unsure if it is due to not making the time available to write stuff down or the lack of testing content that may be useful to others.  My role within the organization is changing, I still have my eye on testing but mainly at this time my focus is on getting the checking elements right. At the same time I am being utilized as a scrum master, I seem to be good at empowering people to work well together!  I am soon flying to India to connect the distributed team together to act and be one team. Maybe this will soon inspire me to write about this experience no matter if relevant to testing or not. 

I still have some ideas on the backlog and maybe during the long flight I will flesh out these ideas.  The reason for this post is to remind me to get these ideas into a publishable format and give myself a kick up the ass to do something about it.

  • Testing skills - Persuasion and selling
  • Introverts and Extroverts - its about the context not the label
  • Beyond the models
  • Using docker containers to assist testing (I plan to produce a series of blogs about this)
  • Making distributed teams work
  • Fooled by what we see and what we hear.
  • Automation and what it is replacing
It would be good to get some feedback from readers as to which topics they feel would be useful to them.  Please use the comments section to let me know.



Wednesday 16 March 2016

A list of games taken to Testbash

Testbash in Brighton was yet again a highly organised and community based testing conference.

Signup for the Ministry of Testing Dojo to see the talks, which should be available soon.

At a pre-testbash meetup in Brighton I was asked by Rosie if I would not mind bringing some of my collection of games along. That may have had something to do with having a big interest in games and how they can be useful for testers to improve creative and critical thinking skills.

After the conference I had a few requests for a list of the games that I brought along to the Testbash gaming evening.  To provide a reference I have created this page to list the games I brought along and some I did not due to limited luggage space.  All the links are for the UK version of Amazon unless otherwise stated.

Dixit

A wonderful abstract communication game with highly detailed artwork.  The purpose of the game is to describe the card you have to enable some of the players to have a good idea of what your card is.  There is a twist, you want to communicate so only a few people get it, but provide enough information to make sure that no-one does not get it. If everyone guesses your card or no-one guess your card then no points are awarded. A useful game about communication and providing enough information. It comes with many expansions which can be seen when looking at the main link.

Quirkle

Quirkle is a cross between dominoes and the card game SET (See below).  You place tiles that meet a set of rules.  The tiles placed in a single line have to be either same colour, different shape OR same shape different colour.   You score double points for getting a set of six, a quirkle!  A great game but needs good lighting and a lot of space!  One of my current go to games for a bit of fun and lateral thinking skills.

Quirkle Cubes

Quirkle cubes takes that concepts of quirkle and adds a random element and the ability to use a different strategy.  Unlike the original quirkle you can now see other players hands and can choose on your turn to roll some of your cubes to change the hand you have. This version require a lot more thought about tactics.

SET

This seems to be the 'go to' testers game of choice.  A game of visual perception, where you have to find a set of three that matches the rules of the game.  A set is three cards where either the feature is the same or the feature is different on all cards. A feature is either colour, shape number or shade.

Fluxx & Star Flux

A card game of ever changing rules where the object is to have cards, keepers, that meet the goals.  However the goals can and do change along with the rules as well. I do have the board game version of this which is fun since the board changes as well as the rules and goals.

Fluxx Dice

Fluxx dice is an expansion for the fluxx card game which adds an extra dimemsion. By rolling the dice you change the draw and play rules every single hand. Adds a great new random dynamic to the game.

Ice Dice

Ice dice or ice pyramids is a set of dice and pyramids which can be used for a variety of games. The most common one for testers is to play Zendo. This game is where a master sets a rule and shows an example of the rule and an example that does not meet the rule.  The student has to try and work out the rule by building their own pyramids and ask if it meets the rule or not.  A wonderful deductive game to challenge the mind and expand the investigative skills of testers.

Colt Express

One of my favorite games at the moment.  Each player has a bandit trying to take loot from a train whilst avoid the marsh and other bandits.  Each player has aset of action cards that they select at random.  These actions cards such as punch, fire, move, steal and so on are player during a round.  A round has a series of turns.  Some of the actions are played face up for all to see and some are placed face down.  At the end of the turn section, the action cards are played one at a time and the action carried out for that player.  It is fun to watch as some thought goes into what actions to play depending on where your bandit is, however it never quite works out as your expect.  This to me has alot in common with coding, we create what we think works only to find it ends up in a big mess.  Highly recommend this game for all testers!

Blink

A fast paced game where there are no turns.  You try to place your cards down that match the play decks by matching either colour, shape or number.   The first to get rid of there cards wins.  An ideal game for improving your pattern spotting skills.  One of the reasons I got this game was based upon an article by James Bach - Quick Oracle - Blink Testing.

Frenzi

This card game needs a lot of space to play and can become very hectic.  All the cards are placed on the table and then they are turned to the other side, they are double sided cards. Each player gets a rule card which shows what they need to have facing up at the end of the round.  They could be looking for a color, number or shape.  The first round is colour, then shape and finally number.  A timer is set and everyone starts to turn cards over using one hand.  The aim is to have as many of the cards facing up that matches your own rule. This is a quick and face paced game where it quickly becomes manic! You need lots of room to play this game and it is based on quick visual perception.

Rory Story Cubes

Rory story cubes are little dice with pictures on each face.  The dice are rolled then the players one at a time pick up a cube and using the picture that is face up start to tell a story, they leave it on a cliff hanger for the next player to pick a cube and continue the story.  Once the last cube is selected the person who picks this provides an ending to the story. These cubes are great for creative play and improving story telling skills.

Story Wars

A wonderful game in which two teams battle it out to convince an impartial judge why their character(s) should win. They is magical lands, characters and special weapons to use.  This game is useful for those wanting to improve their influencing and convincing communication skills.

This is quite an expensive game at the moment, I picked it up in the USA for $15.   You can obtain a PDF to printout for free from the manufacturers website see here.

Disruptus

I have previously done an in depth review of this game on this blog spot. See here.

Dobble

A quick game of spotting the same item on a different card.  You place two cards face up and the first to spot the same image on both cards wins those cards.  A clever game where every card has an image that is on another card. What makes it tricky is the images could be bigger or smaller or rotated.  Another game that improves the visual perception of the players.

Loonacy

This is another visual percetion game where the players try to match one of the two characters in their hand with the game cards.  There are no turns and the first to get a match keeps goig until they have no cards left and are declared the winner.

Cubu

Cubu is an intense game of following a sequence of colours and numbered squares with the aim to get rid of all your cards before the other player does.  This game requires a lot of concentration to be able to workout which way would be best for your sequence and to throw a proverbial spanner in the works there are action cards which can force you to miss turns, pick up more cards and other actions that inhibit your chances of winning.




Monday 11 January 2016

Interviews and Videos

I thought I would start the new year with a brief post about what I have been up to over the holiday period.

I was approached by the editors of Teatime with Testers magazine seeking permission to publish my current series of posts on testing skills - the first one has been published and you can download the magazine for FREE from here - http://www.teatimewithtesters.com/ .

During December Matt Young got in touch with me from the company Functionize to see if I would be willing to do a podcast with their CEO Ray Grieselhuber about "Why automation will not replace manual testing."  This ended up being a really good discussion in which everything from why automation can be useful, to a philosophical debate about what being human means.  We ended up chatting for so long that the article had to be split into two parts.  The podcast and articles can be found at the links below.



During this period Richard Bradshaw started a great new concept of Whiteboard testing.  Considering I do not live that far from Richard I decided to pop over and we recorded a couple of sessions.  Links to these session can be found below:

A look at the test automation pyramid
Test Execution Model

I intend to record a few more whiteboard sessions in the near future.  If you have any great ideas for whiteboard sessions then please do record them and help support this wonderful initiative.

*EDIT*

Oh and I will be speaking in Brighton on March 11th at Testbash.  Hope to see you there.