context-driven
A Very Happy Marriage between Agile and Context-Driven
16.04.15 - 13:28 - Filed in: Software Testing
image credit: https://www.flickr.com/photos/wenzday01/6027317553
My Beliefs
I believe the agile and the context-driven communities are highly compatible and should make every effort to get married at once. The two communities have not been too close in the past and I believe they have not yet appreciated each other's value. My experience has shown that it becomes a winning ticket as soon as the two communities are exposed to each other in a professional setting. When it comes to education I believe demonstration is far more powerful than presentation. And that is exactly what we did at eBay.
Initial Setting
At the European Product Development organization at eBay we had five scrum teams located in London, Berlin and Zurich. They consist of highly skilled developers most of whom believed that if they applied all good development practices there would not be a need for any testers. Hence, they did not have testers aboard their teams. In parallel I lead a team of testers who occupied themselves in more waterfall projects offering testing services to other parts of the organization. No professional contact between the two teams. We decided to do something about it.
Transformation
About mid-year in 2013 we started to change the set up and place testers into the teams. It started with a first experiment, where Jan Eumann commuted between Berlin and London to offer his services to a specific project. Jan has vast experiences as a software engineer and consultant from his days before eBay and that certainly helped him to establish a service culture towards the team and boosted his acceptance. He later joined the team in Berlin and actively helped to bridge the connection to the business units in Berlin, with whom he already had good relations.
Earlier that year I hired Ben Kelly, who was one of the first testers getting himself fully involved into one of the teams in London. Since Ben is a master in finding words for what he is doing, he was able to convince the team that there was far more to testing than they initially believed. Ben has a rare talent of being humble and assertive at the same time.
We then expanded to the team in Zurich with Daniel Moennich early 2014. Daniel has a sound background in software engineering, which helped him a lot with gaining acceptance with his team. He introduced a lot of critical thinking at the beginning of the project and his approach of solving problems for the team in a calm way demonstrated his value.
At Let's Test in 2014 one of my missions was to identify yet another tester to hire for one of the teams in London. I spoke to many attendees and tried to evaluate who could be a match, which was difficult because the profile I was looking for required a sound level of software engineering knowledge and a ruthless mind of inquisitiveness and deep understanding of testing.
I then stumbled across Ioana Serban. I recommend you meet Ioana if you get the chance to do so. She's one of the most energetic testers I have ever met. Ioana is smart, technically proficient, inquisitive and will certainly not take shit from anybody.
Of course I made mistakes, too. At one point I hired somebody with whom I did not clarify what it means to be embedded as a tester in one of the teams. We both soon became unhappy and our paths went into different directions again.
Hiring the right people
Hiring people is a tricky matter because it is tremendously difficult to evaluate people in the artificial setting of an interview. Our process evolved over time and we found the following approach to be suitable for our needs.
I talked on the phone for about 30 minutes to applicants who passed my first screening of their CVs. I wanted to establish their general views on testing and get a feel on whether or not they could fit into our teams. Then they had to write a little application incl. unit tests. We evaluated their work in terms of elegance of their solution and the quality of their tests. If they passed that, we invited them for a full day at the eBay office and we did something we called "Sprint in a Day". The applicants were exposed to the teams we were hiring for and they had to solve some hands-on problems. In between senior people talked to the applicants and established an impression by doing behavioural interviews. All this helped us to gain a rich impression on applicants and if they did well, we hired them.
Uncertainty
When we decided to place testers aboard the teams I had no idea of how that was going to work out. It was a path of little experiments and learning as we went ahead. Our set up was that all testers were reporting to me but their day to day accountability was towards the team they were in. This meant that I kept my hands off the operational level and let the testers do what they were doing. As a manager this can be uncomfortable, since it is a loss of control and I as a manager — like many managers — like to be in charge.
I discovered that the "be in charge" had to take another form. Rather than involving myself in the day to day matters, I took responsibility to hold the community of practice together and make sure the testers in the teams exchanged their ideas on a regular base.
Outcome
Currently none of the teams would ever want to do without their embedded testers. Their opinion shifted not because I tried to convince them of the value of a tester, but because the brilliant people I talked about above demonstrated their value. Not only are the teams operating very smoothly with the current setup, but parts of the rest of the organization have suddenly become interested in learning how the European Product Development Teams handled their testing. What we have established is an incubation cell that will have significant influence on the whole organization. This is much more than I expected to achieve.
Learnings
Leadership is not control. It is also not about me. It is much more giving people the liberty to shine and not to take a center position, but to support the flow of what is happening by offering assistance where it is asked for. At one of our workshops the team came up with an Agile Testing Manifesto, which gave us an outline of how we work.
The experience with the European Product Development team of eBay has demonstrated to me that the context-driven way of testing is indeed highly compatible with the agile mindset. It is an encounter between two tribes, which both strive for craftsmanship and high quality of work. I hope the two communities move closer together in the future. People using software will gain from it.
Geen Fietsen Plaatsen - Excursion to #DEWT2
17.10.12 - 13:58 - Filed in: Software Testing
I have always enjoyed the sound of the Dutch language; for one, because there is a proximity to Swiss German and also because it sounds friendly: ‘GEEN FIETSEN PLAATSEN’ - not here, put your bike elsewhere.
Schipool welcomed me with enthusiastic rainfall and energetic wind blows. It was Friday, 5 October 2012. I decided to have a walk in Amsterdam. Jordaan is a good place to drink coffee and contemplate. Later the day I met Joep Schuurkes and together we drove to Driebergen, which is about a 50min drive south-east of Amsterdam.
The DEWT guys had found a great place for a peer conference. Hotel Bergse Bossen is located in the middle of a forest and there is a lot of space to sit together and confer. And what would be a better start of a conference than have some beers together.
We had a relaxed evening, and Jean-Paul Varwijk gave a short lightning talk which resulted in a discussion whether the club of testers, who subscribes itself to the context-driven school, was too elitist. I believe this is a question that needs some more thinking.
The testers I know from the context-driven school all have at least two character traits. They all are very eager to learn as much as possible, and - and this is important - they also want to share it with anybody who asks. Yes, there is a relentless urge to become better, and that might put off some people. Should we care? Yes, of course we should. But under no circumstances would it be justified to move in the direction of mediocricy. And what we shouldn’t do neither, is become a club of arrogant pricks, frowning at everybody else.
The second day was filled with talks I won’t go into in detail because they have already been elaborated on here. Instead, I want to mention our walk in the woods, honoring the peripatetic school. I had an engaging talk with Jean-Paul Varwijk about dysfunctional management systems. Why not establish regular walks at conferences? I have always enjoyed concurrent thinking, talking and walking.
To finish up here, I think Simon Peter Schrijver deserves a special mention, as he found a healthy middle ground between assertiveness and humorous coolness as a facilitator of DEWT2. Well done, man!
I enjoyed coming to Driebergen, and I hope to come back soon. DEWT3 will take place on the weekend of 20/21 April 2013. Would be happy to join the Dutch crowd again.
Eating my own Dog Food and thereby Wandering off from Time to Time
16.08.12 - 14:38 - Filed in: Software Testing
image credit: http://j.mp/M6d8JY
Some time ago I posted a set of questions. Some of my fellow testers posted their answers. Some of them were really good. Let’s see what my own reasoning is.
1. Is there a moment when asking questions becomes counter-productive?
a) If yes, when exactly and what does happen then?
b) If no, how do you know?
This immediately triggers a follow-up question. What do I mean by ‘counter-produtive’? A productive outcome - after having asked a question - would be: 1. the question resonates with the receiver and 2. generates an answer that helps the questioner to reduce uncertainty within the context of the question asked.
By ‘resonate’ I mean the receivers willingness to give you an answer. By ‘reduce uncertainty’ I also include an answers like ‘I don’t know’ or ‘ask somebody else’.
A counter-productive question either produces a failure with the former or the latter or both. In order for a question to resonate, the receiver needs to be ready to listen to you. If the receiver is in a mental state which incompatible with your need for an answer, the question becomes counter-productive. There is no use in asking anything if the receiver is stressed, does not feel competent or if the receiver is in an annoyed state of mind.
Some questions produce surprising answers. It may not be what you expected. Given that condition 1. is met, you should continue with refining your question until a productive answer is given.
In my perception the context-driven crowd describes itself as above average smart. This can result in asking questions just for the sake of it. It can be observed regularly on e.g. Twitter. I am guilty of it myself. I think we should exercise good judgment when asking questions. Am I just asking because I like my über-smart question, or do I really want to know?
2. Does puzzle solving make you a better tester?
a) If yes, what exactly is the mechanism?
b) If no, is the effect neutral or negative?
My answer to this question is: I don’t know. It could be the other way round. Good testers just like to exercise their brains and therefore like to solve puzzles more than others. Deliberate practice results in mastery.
Now, a good puzzle often asks for lateral thinking skills. Lateral thinking skills are good for general problem solving. And there is a lot of general problem solving in testing. Hence, exercising on puzzles might help to become a better tester.
3. Should we bash certified testers who are proud of their certifications?
a) If yes, what do we want to achieve with that action?
b) If no, why do we let these people spread ideas about bad testing?
No, we should not. There are many reasons why somebody has a certification and maybe it was hard work to obtain it and the hard work result in the tester being proud of his/her achievement. Also, attacking people hardens the relationship and certainly does not change the opinion of anybody.
What we should put our energy in, is, in the following order: 1. set a good example ourselves by demonstrating what good testing is 2. argue against the certification and the certification providers. The certification industry is driven by monetary ambitions and not by the urge to enhance testers’ skills. That is what we should point out. We should not let the certification industry spread bad ideas about testing.
I very much believe in nurturing positive alternatives. Let us show what good testing is and let us concentrate on building a valid alternative to certification. A tester generally has two possible paths: Be employed or be independent.
When a company hires a tester, they want to know if he or she can do the job. Current certification schemes not being an option, then how exactly do we meet that need? Peer certification? A general ‘reputation score’? How? I do not have a good answer to that.
4. Is having a high intelligence level a prerequisite for being a good context-driven tester?
a) If yes, what definition of intelligence is applicable?
b) If no, how can it be substituted and by what?
Software testing belongs to the knowledge worker domain. The acquisition of knowledge depends on your ability to do so. The Cattell–Horn–Carroll theory lists ten general areas of intelligence:
- Crystallized Intelligence
- Fluid Intelligence
- Quantitative Reasoning
- Reading & Writing Ability
- Short-Term Memory
- Long-Term Storage and Retrieval
- Visual Processing
- Auditory Processing
- Processing Speed
- Decision/Reaction Time/Speed
If you go through this list, you will probably agree that all are applicable to software testing to some extent. The better you are in each of these dimensions, the better your testing will be.
5. Is it true that many tester struggle with what a heuristic and an oracle are?
a) If yes, what is your explanation that it is so?
b) If no, where is your data?
What is an apple? It is a fruit that grows on trees. It is round-ish, edible and has either a green, yellow or red color or a mixture of these. And here is one. Have a bite.
Some things are easer to understand and to explain to others. Other things - and especially concepts - are more difficult. Generally, the more abstract a concept, the more difficulty people have with understanding it.
So, yes, heuristic and oracle are abstract concepts and therefore more people struggle with understanding what they are than with understanding what an apple is.
6. Can YOU give a quick explanation to somebody who doesn’t understand the concept?
a) If yes, how do you know you were understood?
b) If no, what part are you struggling with?
Ahem, let’s try a definition without referring to the existing ones of e.g. Michael Bolton:
Heuristic: A problem solving strategy that produces an answer without guarantee of neither its absolute correctness nor its best suitability nor its applicability for the task one is confronted with.
Oracle: Any valid reference used by a software tester in order to evaluate the observed with the desired.
And now comes the disclaimer: By just giving these one-sentence definitions I would not have any guarantee that I was understood. In order to know that, I would have to be in a dialogue for a longer period and observe if I was really understood. So, no easy and quick path here.
7. Is there a subject/topic that has no relevance whatsoever to the context-driven software tester?
a) If yes, can you give an explanation that entails detailed reasons of its inapplicability?
b) If no, how come?
I do not think so. There is the fantastic power of analogies. You can take any A and B and make a connection through an analogy. In my experience it is very fruitful to sometimes force analogies. When trying to connect two domains that appear to not be connected at all, the outcome can be rather surprising. Deliberately forcing analogies more often than not results in surprising insights and new ideas.
Why Factory Schoolers Duck and Cover behind Secondary Work Products
07.07.12 - 15:57 - Filed in: Software Testing
There was a civil defense educational film back in the 50s that taught children to duck and cover in the event of an atomic attack. People lived in constant fear of annihilation and searched for behaviors that could be helpful. Although, in the face of the enormous destruction of such an attack, the behavior they were taught wouldn’t probably have been of real use.
But that was not the point. As the real problem was outside the capabilities of the people, the belief in the effectiveness of the behavior was good enough. The advocates of this educational initiative must have known quite well, that there was no point in ducking and covering. But it was much easier to achieve than to really solve the problem.
Such was the world in the times of the cold war.
In the testing world, the factory schoolers also do their ducking and covering by focusing on secondary work products such as reports and plans and test case counting and not on the testing itself. Same here, it is much easier to create templates, processes and standard operating procedures than acquiring the skills of an excellent tester. It is much easier to proscribe actions that can be followed like check lists. And the production of piles of paper is intimidating, it covers your ass and it bores intelligent people.
If you cannot do the real thing, engage in ersatz behavior instead. That would be cute, if all this testing was just a game and software was something that was presented as a spectacle in a circus. But there are many areas - especially in the medical software domain - where people’s lives might depend on the robustness of applications. That is not something to be handled with a cover-your-ass mentality.
Just recently, there have been two elaborate blog posts by Huib Schoots and Johan Jonasson on the subject of adaptability vs. context-driven. Quite interestingly, a discussion between a TMap advocate and Huib evolved. As expected there was no agreement because both spoke about different things.
As an example lets take the word ‘test’. In the context-driven world ‘test’ is a verb. It is an action that yields information. The factory schoolers understand ‘test’ as ‘test case’ or ‘test case document’. A test is something that is handled in a tool and proves coverage of something. So, when a factory schooler discusses testing with a context-driven person, they won’t understand each other because they speak about different things.
Whenever we do testing, let’s never duck and cover.
Major Consensus Narrative, Asking Supposedly Hyper-Smart Questions and Being Context-Driven
18.05.12 - 23:44 - Filed in: Software Testing
image credit: http://j.mp/JSuYkO
As the title might suggest, there is a mix of different ideas and questions in this post. We may even have Virginia Satir coming for a short visit. But at the end you will see - I hope - that everything is connected.
Very recently
I am not the only one who is convinced that reality is a social construction. There is no truth as such in pure form. Or as the saying goes, there are 4 truths; mine, yours, “The Truth” and what really happened. For those among you who understand German, I highly recommend episode 23 of the excellent Alternativlos podcast. You may listen to “Verschwörungstheorien, die sich später als wahr herausstellten” here.
What concerns me, is the major consensus narrative. It is what the majority has agreed on to be true. To link that to the context-driven school of software testing: Are we in love with the idea of having found “The Truth”? Do we run in danger of reciting self-enforcing mantras that might be wrong? How do we know if we wander astray?
These are important questions that need to be asked. Martin Jansson - on the other hand - reported on his test lab experience at Let’s Test conference and told how some of the more seasoned testers almost brought his efforts to a halt by not stopping to ask questions. Paul Holland told the story of James Bach having become an unstoppable questioner at a peer conference.
Is it always good to ask questions? How long and how many? When do I stop? Is it a “Just because I can” attitude to prove that I am hyper-smart? I have a potpourri of questions I recently asked myself:
1. Is there a moment when asking questions becomes counter-productive?
a) If yes, when exactly and what does happen then?
b) If no, how do you know?
2. Does puzzle solving make you a better tester?
a) If yes, what exactly is the mechanism?
b) If no, is the effect neutral or negative?
3. Should we bash certified testers who are proud of their certifications?
a) If yes, what do we want to achieve with that action?
b) If no, why do we let these people spread ideas about bad testing?
4. Is having a high intelligence level a prerequisite for being a good context-driven tester?
a) If yes, what definition of intelligence is applicable?
b) If no, how can it be substituted and by what?
5. Is it true that many tester struggle with what a heuristic and an oracle are?
a) If yes, what is your explanation that it is so?
b) If no, where is your data?
6. Can YOU give a quick explanation to somebody who doesn’t understand the concept?
a) If yes, how do you know you were understood?
b) If no, what part are you struggling with?
7. Is there a subject/topic that has no relevance whatsoever to the context-driven software tester?
a) If yes, can you give an explanation that entails detailed reasons of its inapplicability?
b) If no, how come?
I have my answers to the questions. But, please, my friends, post YOURS in the comments below. I would love to see a variety of reasonings.
You may have asked yourself at the beginning of this post what the fragment “Very recently” was doing there without culminating in a full sentences. That is a valid question. You might even have formed a hypothesis about what it was doing there. “Just an editing error”, “probably a section title”, “haven’t noticed”, “maybe it is clickable”, “semantic ambiguity of hypnotic language” could have been some of the guesses.
I promised in the entry sentences that at the end everything will be connected. Actually, it is not at all; this post is very messy. Please, don’t shout at me because of that. And Virginia Satir might be in one of the next posts. I’d definitely like to talk about her.
What Is the Secret Sauce that Made Let's Test Such a Great Conference?
11.05.12 - 09:31 - Filed in: Software Testing
Many of us have put on weight during Let’s Test because of a combination of fantastic nordic cuisine and an abundant availability of Swedish micro-brewery beers. For me it has been an overwhelming experience and I feel very privileged to have been part of the first Let’s Test conference.
But, what is it that made it great? What’s the secret sauce?
One approach could be to list elements such as:
- fabulous location and facilities
- good food
- great beers
- interesting sessions
- format of the sessions with facilitated discussions
- cool people
- the nicely foldable program
- perfect WIFI coverage
- friendly approachable organizers
- the sunny weather
Only that I don’t think that explains anything. In order to perceive it as great, there must be something else. And I think it is the dynamics created by a combination of factors. Like a tasty sauce, it is the balanced combination of ingredients in interaction with each other, which makes it mouth-watering.
Many of us know each other on Twitter, we have had conversations on blogs and discussed stuff on a Skype chat. At Let’s Test I have met many of my tester peers for the first time in person. There was already a lot I knew about these people. Some of them had sessions and my excitement about it was already great before they started. Also, during a session it was well possible to have e.g. my BBST Foundations instructor Ru Cindrea to the left and Anne-Marie Charrett, with whom I have discussed Skype coaching a lot, to the right. Hence, it was like a family & friends gathering.
A unique aspect was the extensive evening program with art tours, test lab, social gathering, XBox games, free beer and a mind blowing band that played some sort of beautiful eastern style klezmerish music and had a violin player who made my jaw drop. Now, this was combined with having taken place in a room that looked like a massively oversized living room with candles on the tables. At the same time there were Oliver Vilson’s metal and wood puzzle making turns among the people. Hence, it was like a family & friends gathering.
Free beer can help to become sociable. The guy at the bar was a friendly tall Swede with a goatee and oversized earrings. I am no longer in my 20s, but Let’s Test made me behave like one who is. Long, beer-saturated nights that created difficult mornings, where people were glancing at each other knowingly. Oh, man, what a laugh we had during the late night conversations. Hence, it was like a family & friends gathering.
If you gather a group of people and everybody just wanders off after the sessions, then there is no soul to it. Runö is somewhere out in nowhere and it kept the whole group together. Interaction was inevitable. Wherever one walked there were people to meet. Smiling was a facial activity that was used extensively. Hence, it was like a family & friends gathering.
Are there dangers for the future?
I guess there were roughly 150 people at this year’s conference. Many of them will go back to where the come from and tell their friends and colleague about their positive experience at the conference. People following the #LetsTest hash tag on Twitter also mentally constructed their impression of the conference. They will all want to come to next year’s conference. In my opinion the success of Let’s Test may become a liability.
Why so?
I think that what I perceived as the soul of the conference - a friends & family gathering - may get lost if there were twice or three times more people. I am not sure if bigger is always better. The conference would suddenly become more anonymous and that could destroy the dynamics mentioned above.
How to avoid it?
Surprisingly there is a beautiful and straightforward solution to it: Do it at Runö again. Just checked their website and it says there are 228 beds, which quite effectively limits the number of participants.
Anyway: Ola, Henke, Henrik, Tobbe, Johan & all participants, I love you all for having made this conference possible. You guys rock, and hopefully see you next year.
Let's Test Conference - Update #5
08.05.12 - 17:43 - Filed in: Software Testing
Have a look at Paul Holland’s facial expression. it makes you chuckle, doesn’t it? That is because Paul has not had a long enough rest. And that is because we had a joyful night at Runö. Let’s continue this post with some images and have the text for another time.
Ben Kelly had a both very entertaining and troublesome presentation on the testing dead.
Alan Richardson talking on testing hypnotically.
Anne-Marie and me injected a coaching session into the test lab assignment.
Runö is such a beautiful place.
Let's Test Conference - Update #3 + a bit of Update #4
07.05.12 - 11:36 - Filed in: Software Testing
I initially planned to write this update before the conference started but I achieved to deactivate my alarm clock at 7am when it rang and fell asleep again. That resulted in me waking up again at exactly 9am. That’s the official starting time. I jumped in my jeans, grabbed my messenger bag with my stuff and ran. I managed to arrive exactly at the time when Ola started talking.
Yeah, well, who is perfect. Perfection is unappealing anyway, isn’t it? To have shortcomings is what makes us human.
Alright, we had a very good Sunday. Oliver Vilson brought some cool puzzle gadgets to play with and Runö started to fill up with testers. We seem to have the whole compound for our sole use and it is a beautiful place because it does not feel like a cold conference center at all. It’s more like being with friends at a holiday retreat.
We discovered that Henrik Emilsson is my unknown brother. Have a look at both of us here:
Paul Holland gave a group of us a very useful introduction into LAWST-style facilitation. Every session will be facilitated and I am looking forward to the session on Wednesday I am going to facilitate. Great, haven’t done that before.
Later on Sunday many of the people I converse a lot on Twitter and Skype, etc., arrived. Hello my tester friends:
Huib Schoots
Simon P. Schrijver
Tony Bruce
Anne-Marie Charrett
Michael Bolton
Duncan Nisbet
Markus Gärtner
Joep Schuurkes
Christin Wiedemann
Scott Barber
Zeger Van Hese
Alexandru Rotaru
Exellent conference and especially the food deserves an honorable mention.
Let's Test Conference - Update #2
06.05.12 - 08:41 - Filed in: Software Testing
My flight had a very interesting route display. Zurich has suddenly changed its name to Düsseldorf and Antwerpen was relocated to somewhere in the south. I just hope there is no connection between the passenger display and the pilot’s navigation system.
Anyway, we arrived well in Stockholm and I met James and Dessi Lyndsay at the airport. We shared the taxi to Runö. So, that’s the start of Let’s Test then. Runö is a nice and quiet retreat on the country side and I think it is the perfect location for a conference.
We had a nice dinner with Ola Hyltén, Henke Andersson, Henrik Emilsson, Tobbe Ryber, Johan Jonasson, James and Dessi Lynsey, Ben Kelly, Julian Harty, Paul Holland, Chris and … hm, what was his name again? (UPDATE: Thanks, Neil. Yes, it’s Neil Thompson. My memory would like to apologize for not remembering)
Honoring the Scandinavian tradition we proceeded to drinking and had a a lot of fun as can be seen in e.g. Ben Kelly’s Tweet:
After midnight I had some BBST Foundations work to do and I had a very hard time reading and understanding the text of the quiz. Shouldn’t do that likewise for the next deadline.
Let's Test Conference - Update #1
05.05.12 - 10:22 - Filed in: Software Testing
Checked in at ZRH and the check-in machine shut down with an error message while printing out my baggage tags and my boarding pass. At the baggage drop the lady asked me where my third suitcase is. No third suitcase. She apologized and said there was something wrong with the computer system.
Then going through the scanners, placed my boarding pass, my ID card and my flat cap in the bin for the scanner. After the scanner my ID has miraculously disappeared. Strange kind of bug. Disappearing objects. The security people helped me search for it but then the ID card reappeared; it was between my flat cap and my head. Embarrassing, but happy it was not caused by a bug.
Now waiting in the lounge for my plane that takes me to Let’s Test. Oh man, cannot wait.
James Bach and how I Enjoyed his Visit to Switzerland
22.03.12 - 20:36 - Filed in: Software Testing
Some weeks are boring, some weeks are frustrating, some weeks are just regular. But once in a while there is a week filled with exitement, learning opportunities, joy and intellectual challenges. I am a lucky guy because I happen to have lived such a pleasurable week recently. James Bach came to Switzerland for the first time.
His flight was coming in from England where he attended several appointments in Cambridge. I was waiting for him to exit into the arrival hall. As expected it took not long for James to drop a puzzle bomb on me. It goes as follows:
Question: What is the sum of x + y, what is the product of x * y and what are the values of x and y
A hint: It is possible to solve it by the sole use of your brain, a sheet of paper and a pencil
IMPORTANT: Please do not leave the solution in the comments below
While driving James to his hotel I tried if there was a simple solution to the puzzle but I could not find one so I decided to attempt to solve it as soon as I got home. Also, it is not such a good idea to try to solve puzzles while driving.
In the hotel we had some more testing discussions before James retired to his room and I was very eager to get back home to solve his puzzle. I think I was on a good path towards the solution but I decided to give me a break because I was stuck somehow.
Interesting enough, the brain seems to have its playful free time during sleep. My brain decided to wake me up at about four a clock in the morning giving me a hint about how to solve it. I decided to get some more sleep and just took some notes on the general idea. Later in the morning I solved the puzzle which made me kind of proud. Tricky one, this one!
Sunday afternoon I picked up James from his hotel and we strolled through Zurich while he entertained me with a lateral thinking puzzle involving a waste dump. Again I enjoyed it very much and it gave me the appetite for the dinner. James is very good at challenging your thinking.
Monday morning we took the train to my workplace Phonak AG, where James spoke all day about tester self-education and did many puzzles with the audience of about 50 people. The astonishing thing was that there were more developers present than testers. What a great success for software testing. Developers become more and more interested in what we do. We testers have won! (Just joking, I love you all, dear developers)
This year’s Swiss Testing Day saw an amazing record breaking number of 800 participants. James had the first of the keynotes in the morning (you may see the video here) and I hope he inspired many testers to become interested in the context-driven school and self-education. I expect to see more Swiss testers working on their reputation in the future.
We sold James’ excellent book Secrets of a Buccaneer-Scholar at our conference booth and every 10th person at the conference bought a copy. That, too, gives me hope that there are more context-driven people in Switzerland. If you - dear reader - are one of them, please contact me immediately. I want to get to know you and talk to you. James talked all day to many people, there were dice games and his hand must have been tired from all the book signing.
Thursday was a work day, we went through some of my Skype coaching transcripts and James gave me a lot of valuable feedback. We did that in one of my favorite coffee shop/book store Sphères in Zurich. It is the perfect place for productive work.
Friday came and James was very eager to learn about Swiss cheese. We drove to Engelberg where there is a public display of cheese making located in a monastery. In the middle of a room there was a kind of glass igloo where a cheese maker was doing his stunts while the visitors pressed their noses flat on the outside. A bit like in a zoo, but without animals.
In Engelberg we found the wonderfully victorian Hotel Terrace from where we had a beautiful scenery of mountains. Again we went through more coaching transcripts and tried to identify patterns.
After coming back to Zurich, we ended our day with a dinner at the Prime Tower on the 35th floor and challenged each other with some more lateral and mathematical puzzles. James also made fun of me because I was eating my hamburger with fork and knife. See, that’s us Swiss people behaving at a fancy restaurant. Anyway, great day, but then we were both tired at the end. It was like in Monty Python’s “Just a thin mint”-scene (Caution: this link is not suitable for the faint-hearted), one more puzzle and my brain might have exploded.
James headed off to Stockholm on Saturday, I said good bye at the airport and I hope he comes back to Switzerland soon. You’re always welcome, my friend.
BTW: Here is the link to James’ view on his visit to Switzerland.
His flight was coming in from England where he attended several appointments in Cambridge. I was waiting for him to exit into the arrival hall. As expected it took not long for James to drop a puzzle bomb on me. It goes as follows:
- You have a range of integers from 2-180
- Two integers x and y are chosen from the range (x and y may be equal or different)
- A person A is given the sum of x + y
- A person B is given the product of x * y
- First, person B says to person A: “I don’t know your sum”
- Then, person A says to person B: “I already knew that you do not know my sum”
- To which person B replies: “Now I know your sum”
- And then person A says: “And now I know your product”
Question: What is the sum of x + y, what is the product of x * y and what are the values of x and y
A hint: It is possible to solve it by the sole use of your brain, a sheet of paper and a pencil
IMPORTANT: Please do not leave the solution in the comments below
While driving James to his hotel I tried if there was a simple solution to the puzzle but I could not find one so I decided to attempt to solve it as soon as I got home. Also, it is not such a good idea to try to solve puzzles while driving.
In the hotel we had some more testing discussions before James retired to his room and I was very eager to get back home to solve his puzzle. I think I was on a good path towards the solution but I decided to give me a break because I was stuck somehow.
Interesting enough, the brain seems to have its playful free time during sleep. My brain decided to wake me up at about four a clock in the morning giving me a hint about how to solve it. I decided to get some more sleep and just took some notes on the general idea. Later in the morning I solved the puzzle which made me kind of proud. Tricky one, this one!
Sunday afternoon I picked up James from his hotel and we strolled through Zurich while he entertained me with a lateral thinking puzzle involving a waste dump. Again I enjoyed it very much and it gave me the appetite for the dinner. James is very good at challenging your thinking.
Monday morning we took the train to my workplace Phonak AG, where James spoke all day about tester self-education and did many puzzles with the audience of about 50 people. The astonishing thing was that there were more developers present than testers. What a great success for software testing. Developers become more and more interested in what we do. We testers have won! (Just joking, I love you all, dear developers)
This year’s Swiss Testing Day saw an amazing record breaking number of 800 participants. James had the first of the keynotes in the morning (you may see the video here) and I hope he inspired many testers to become interested in the context-driven school and self-education. I expect to see more Swiss testers working on their reputation in the future.
We sold James’ excellent book Secrets of a Buccaneer-Scholar at our conference booth and every 10th person at the conference bought a copy. That, too, gives me hope that there are more context-driven people in Switzerland. If you - dear reader - are one of them, please contact me immediately. I want to get to know you and talk to you. James talked all day to many people, there were dice games and his hand must have been tired from all the book signing.
Thursday was a work day, we went through some of my Skype coaching transcripts and James gave me a lot of valuable feedback. We did that in one of my favorite coffee shop/book store Sphères in Zurich. It is the perfect place for productive work.
Friday came and James was very eager to learn about Swiss cheese. We drove to Engelberg where there is a public display of cheese making located in a monastery. In the middle of a room there was a kind of glass igloo where a cheese maker was doing his stunts while the visitors pressed their noses flat on the outside. A bit like in a zoo, but without animals.
In Engelberg we found the wonderfully victorian Hotel Terrace from where we had a beautiful scenery of mountains. Again we went through more coaching transcripts and tried to identify patterns.
After coming back to Zurich, we ended our day with a dinner at the Prime Tower on the 35th floor and challenged each other with some more lateral and mathematical puzzles. James also made fun of me because I was eating my hamburger with fork and knife. See, that’s us Swiss people behaving at a fancy restaurant. Anyway, great day, but then we were both tired at the end. It was like in Monty Python’s “Just a thin mint”-scene (Caution: this link is not suitable for the faint-hearted), one more puzzle and my brain might have exploded.
James headed off to Stockholm on Saturday, I said good bye at the airport and I hope he comes back to Switzerland soon. You’re always welcome, my friend.
BTW: Here is the link to James’ view on his visit to Switzerland.
Stay Calm, Get another Beer and Keep on Thinking
02.03.12 - 17:04 - Filed in: Software Testing
image credit: http://j.mp/z6Y8PL
This week there was quite some ruckus about the alleged passing of the context driven school. All this was caused by what Cem Kaner wrote on the about page on www.context-driven-testing.com:
Oh, no! We have lost our safehouse where we found warmth and shelter. Now we insecure testers are again out in the cold and wandering about aimlessly. Let us therefore all shut down our brains and immediately join the factory school.However, over the past 11 years, the founders have gone our separate ways. We have developed distinctly different visions. If there ever was one context-driven school, there is not one now. Rather than calling it a “school”, I prefer to refer to a context-driven approach.
Honestly, I am surprised by this eruption of un-coolness. Cem just decided to do something else. He is a free man. He can do whatever he wants. That is not a problem at all. A school does not just disappear. Maybe if it is a school-“building” and you - let’s say - blow it up with a few strategically placed sticks of dynamite. And even then it does not completely disappear. On the other hand schools of thought are immune to dynamite and very rarely disappear just like that. And even less so if there are many people still acting according to the principles every day.
What is a school of thought?
A school of thought is a collection of people who share the same or very similar beliefs about something. So as an example: Zen Buddhism is a school of the Mahayana branch of Buddhism. They share some beliefs. And the context-driven school consists of people who subscribe to the following beliefs:
The seven basic principles
- The value of any practice depends on its context.
- There are good practices in context, but there are no best practices.
- People, working together, are the most important part of any project’s context.
- Projects unfold over time in ways that are often not predictable.
- The product is a solution. If the problem isn’t solved, the product doesn’t work.
- Good software testing is a challenging intellectual process.
- Only through judgment and skill, exercised cooperatively throughout the entire project, are we able to do the right things at the right times to effectively test our products.
How could these principles possibly have become invalid just because 1 person (albeit an important one) wrote the school is no longer. And now comes the crucial point: That is not even what Cem wrote. He wrote “If there ever was one context-driven school, there is not one now”. This only states that the founders have developed differently over time and may have even been different from the beginning. Not so surprising. I do not know of any two people with redundant brains. Well, maybe Thomson & Thompson from Tintin. But that is the comics world.
Stanislaw Lem said it perfectly in his advice for the future: “Macht euch locker und denkt ein bisschen!” (Take it easy and think a bit)
Therefore here is my advice: “Stay calm, get another beer and keep on thinking.”
BTW: Almost all domain name combinations of www.context-driven-school.com / .net / .org / .etc are still available. I am sure somebody among you has a good idea what to do with it.