Writing Software, hardest job in the world, 40 years man and boy…
Writing software that meets people needs, that is.
What’s the problem with just talking to people to find out what they want?
When we talk to people, we use shortcuts that help us to understand. We assume that what the other person means by, say ‘website’, ‘connection’, ‘usability’ or even ‘tested’.
Shared understandings can work fine, but very often problem arise when we think we have an understanding that isn’t there. Meetings can start and finish without the attendees really understanding the models in each others heads, and spend time discussing their unknown lack of understanding, rather than the pressing concerns.
Perhaps the HIPPO (HIghest Paid Person in the rOom) gets the last say, based on their unexplained model?
We let the things in our head get in the way of understanding the things that we’re trying to understand in other people’s heads. It’s our brains relentlessly finding patterns and connections to make life easier for itself. We need to act differently.
Clean Interviewing, rooted in David Grove’s Clean Language, is a way of structuring conversations in a way that is incredibly effective in finding out the information inside someone’s head, without influence from the stuff in your head.
Alongside the questioning is the approach to questioning that is best describes showing curiosity towards a person or situation.
When talking to other people we often think that our stuff is like their stuff. Our idea of something is the same as theirs. This is great quick social glue, but if we are coaching someone, or trying to find out something in particular , our unknown lack of understanding can get in the way.
Think of an Elephant. (Or a Website).
An example of this is to ask a group to “think of an elephant”, and then ask them to describe their elephants. None will be the same, some will be close up, or cartoon elephants, or an elephant in a specific place. Questions like ‘Hear Music’ or ‘Think of an ideal day at the beach’ also show how we can really not know what someone is thinking. If you asked me to organise an ideal day at the beach for you, you may not get what you like. You’d get what I like.
Unlike coaching, when we’re interviewing, the interviewer gets to decide the purpose of the conversation. There is an agreed subject to discuss, and this will often be something that has happened in the past, or will happen in the future.
In technology, I’ll suggest Clean Interviewing helps:
- Discussing the model in the customers, product owner and develops head
- In Incident postmortems to discover what happened in safe environment
- When reviewing work, looking for what went well and lessons learned
- When getting requirements from a customer for software
So what is Clean Interviewing?
Clean Interviewing is a style of asking questions that have roots in Clean Language questions designed by David Grove. Davids questions remove the model, ideas and worldview of the person asking the questions.
We can use Clean Interviewing when we want to find out about
- Someones favourite holiday destination
- The needs they would like to have met with software
- Their goals
- The way they work with others
- Their ideal
- Programming Language
- Work Environment
Examples of Clean and Contextually Clean Questions
A contextually clean question takes the basis of a clean question for example, keeping the speakers context out of the question, and adding the exact words used in the answers.
- Is there anything else about that X
- What happens before X?
- ..and that’s X like what?
Clean Interviewing adds context that is known by both parties, so you can use words used by the other person, or are known in the context of the conversation
So for discussions about developing a new website
- What happens before people get to your website?
- Is there anything else about a customers order?
- and what happens before a customers order?
- and that’s interactive like what?
- and is there anything else about that data?
- and that’s a customer journey like what?
- and that’s individual user experience like what?
- Is there anything else about individual user experience?
- (and for people who know me) ..and that’s digital like what?
The words in italics are the interviewees own words, or things that are known in context of the conversation.
Of course you cannot have all the questions lined up before you start, you’ll use the words given to you to build an understanding of someones mental model.
Writing Software, hardest job in the world, 40 years man and boy, etc
Software is a set of instructions, running on a machine that follows instructions really well. It’s the ultimate machine. The code never gets tired, or goes rusty, or deviates from the configuration. This is powerful.
People wanting software to meet their needs have models in their head of their problem and solution. Those models can be incomplete, or unconstrained by reality. In an agile Scrum team it’s the job of the Product Owner and the developers to build something that meets the customers needs.
I’d suggest that this is much harder than for example tailoring clothes or even writing a song for someone.
Bridging the gap between the models in someone’s head, and the constraints of software is a huge task. Clean Interviewing can help with understanding requirements.
This post was inspired by a session at Northern Taste of Clean, facilitated by James Lawley and Caitlin Walker..