Your Testing is a Joke
James Thomas, Linguamatics
@qahiccupps
Your Testing is a Joke
• Testing and Joking
• Jokes
• Experiment
• Step Back
• Summary
Jokes…
–Expose an ambiguity
–Point out the thing that’s
been ignored in plain sight
–Violate some expectation
–Make a surprising connection
Making Cornections
Corny: trite, banal
Sweet: highly
satisfying or
gratifying
Husky: low-
pitched and
slightly hoarse
Get a cob on: be
or get annoyed
Context
Jokes…
–Expose an ambiguity
–Point out the thing that’s
been ignored in plain sight
–Violate some expectation
–Make a surprising connection
and Testing?
Testing… and Joking?
A Joke
• Two components (Brownell and Gardner):
– surprise: say, by a violated expectation
– coherence: how well the joke fits to the context
• But, the non-sequitur:
Q: Why was the programmer debugging at midnight?
A: Fish.
• Definition of a joke is heuristic
– Useful rule
– Fallible
An Experiment
• 2 January 2015, a joke on Twitter:
Q: Why was the web developer sent home early on new years?
A: His application needed a little REST.
• Two missions:
– "test" the joke
– "design" a joke using the same set up (Q)
Mission #1: Test the Joke
• Sufficiency, necessity – New Year
Q: Why was the web developer sent home early?
A: His application needed a little REST.
• Consistency – Dev sent home but application needs REST?
Q: Why was the web developer sent home early?
A: He needed REST.
• Balance surprise and coherence – "need" vs "want"
Q: Why was the web developer sent home early?
A: He wanted REST.
Relative Rule
For any abstract X:
X is X to some person, at some time (Michael Bolton)
• A joke is a joke to some person at some time
• An issue is an issue to some person at some time
• Have you ever had to spell an issue out?
– Sometimes they just don’t get it
– Groaning is good!
– Try thinking about surprise and coherence
Mission #2: Design
Q: Why was the web developer sent home early on new years?
• Expansion:
– Web - HTTP, SOAP, browser, internet, JavaScript, AJAX
– developer - code, script, IDE, bugs
– new year - 31st, 1st, annual, fireworks, resolution
– home - home page, house, street, homing pigeon
– work - job, position, meetings, requirements, responsibilities
Expansion
New year
Home
Developer
Web
Work
resolutions
GET, POST, PUT …
Mission #2: Design
Q: Why was the web developer sent home early on new years?
A: Was he sent home or did he desert his POST?
A: Hopefully he was PUT in his place.
A: He's now considering his OPTIONS.
• Fault vs Failure
– These "failures" stem from the same underlying "fault"
• Stopping strategies
– Time, deadline, other work, risk, value, statistical test, …
• Plunge in and Quit
– But I can always come back!
Mission #2: Design
• Expansion
– JavaScript: common libraries such as node.js, jQuery, D3
– node: sounds like "knowed", "no-ed"
– Ajax: sounds like "Hey Jacks", "Age Axe", "A Jacks"
• Lateral Thinking
– Be open to, and provoke, off-track thoughts
– Example: decomposition
• Expansion
– jQuery: sounds like "Jake weary"
• Now work back from result to context
eleph-ant - the biggest insect in the world
unpleas-ant - the worst insect to be around
deodor-ant - the nicest smelling insect
Mission #2: Design
• Iteration, rote generation
– Jake said he was weary
– The boss saw that Jake was weary
– The boss saw Jake weary
• Oracles
Q: Why was the web developer sent home early on new years?
A: The boss hated to see Jake weary
• Negate the premise
– What if we had not X or no X?
Really?
• Lateral thinking is closely related to insight, creativity and
humour … (de Bono)
• … of variable reliability [the models] need to be subjected to
frequent "reality checks" (Hurley, Dennett, Adams)
• we … keep finding deep parallels between humour and scientific
investigation. (Hurley, Dennett, Adams)
But, Really?
• Hurley, Dennett, Adams:
– Humour comes from the realisation that a committed
belief in someone’s mental model is incorrect.
• Joking
– Injects a committed belief
• Investigating
– Proposes an uncommitted belief
So?
• Investigation
– Ambiguity spotting
– Idea generation, Lateral Thinking
– Functional fixedness
• "Humour allows us to explore alternatives" (Weinberg et al)
• Category switching (Miller)
• Reporting
– Telling the testing story
– Bug advocacy
But, So?
• Social
– Getting along
– Gallows humour
• Keeping Loose
– When I think of a corny joke …
– … I force myself to find two more …
– … with some aspects in common …
– … and then tweet them.
• Training, Coaching
– Describe and illustrate techniques
Summary
• Parallels between testing and making jokes:
– Surprise: identifying some aspect of a situation which is
incongruous.
– Coherence: placing these observations in a context which
makes their effect clear.
– Delivery: making sure that the story is put together
convincingly and told well.
And the Punch Line?
• I was asked to organise a parachute jump. People
kept dropping out.
• My dad was an unusual barber. He worked
exclusively on root vegetable farmers from a shop
called Pa Snips.
• I went looking for religious ladies. Found nun.
• The best thing about my partner at Origami Club?
We're on the same page.
• I'm just never sure what that pig means.
Hambiguity.
Your Testing is a Joke
James Thomas, Linguamatics
@qahiccupps
Selected References
• Lateral Thinking, E. de Bono, Penguin (2009)
• The Gift of Time, F. Charles, Dorset House (2008)
• Laughing Matters, J. Durant and J. Miller, Longman (1988)
• Inside Jokes, M. Hurley, D. Dennett, R. Adams Jr., MIT Press (2013)
• How I Escaped My Certain Fate, S. Lee, Faber & Faber (2010)
• What Did You Say? C. Seashore, E. Seashore and G. Weinberg, Weinberg &
Weinberg (2013)

Your Testing is a Joke

  • 1.
    Your Testing isa Joke James Thomas, Linguamatics @qahiccupps
  • 3.
    Your Testing isa Joke • Testing and Joking • Jokes • Experiment • Step Back • Summary
  • 4.
    Jokes… –Expose an ambiguity –Pointout the thing that’s been ignored in plain sight –Violate some expectation –Make a surprising connection
  • 5.
    Making Cornections Corny: trite,banal Sweet: highly satisfying or gratifying Husky: low- pitched and slightly hoarse Get a cob on: be or get annoyed Context
  • 6.
    Jokes… –Expose an ambiguity –Pointout the thing that’s been ignored in plain sight –Violate some expectation –Make a surprising connection and Testing?
  • 7.
  • 8.
    A Joke • Twocomponents (Brownell and Gardner): – surprise: say, by a violated expectation – coherence: how well the joke fits to the context • But, the non-sequitur: Q: Why was the programmer debugging at midnight? A: Fish. • Definition of a joke is heuristic – Useful rule – Fallible
  • 9.
    An Experiment • 2January 2015, a joke on Twitter: Q: Why was the web developer sent home early on new years? A: His application needed a little REST. • Two missions: – "test" the joke – "design" a joke using the same set up (Q)
  • 10.
    Mission #1: Testthe Joke • Sufficiency, necessity – New Year Q: Why was the web developer sent home early? A: His application needed a little REST. • Consistency – Dev sent home but application needs REST? Q: Why was the web developer sent home early? A: He needed REST. • Balance surprise and coherence – "need" vs "want" Q: Why was the web developer sent home early? A: He wanted REST.
  • 11.
    Relative Rule For anyabstract X: X is X to some person, at some time (Michael Bolton) • A joke is a joke to some person at some time • An issue is an issue to some person at some time • Have you ever had to spell an issue out? – Sometimes they just don’t get it – Groaning is good! – Try thinking about surprise and coherence
  • 12.
    Mission #2: Design Q:Why was the web developer sent home early on new years? • Expansion: – Web - HTTP, SOAP, browser, internet, JavaScript, AJAX – developer - code, script, IDE, bugs – new year - 31st, 1st, annual, fireworks, resolution – home - home page, house, street, homing pigeon – work - job, position, meetings, requirements, responsibilities
  • 13.
  • 14.
    Mission #2: Design Q:Why was the web developer sent home early on new years? A: Was he sent home or did he desert his POST? A: Hopefully he was PUT in his place. A: He's now considering his OPTIONS. • Fault vs Failure – These "failures" stem from the same underlying "fault" • Stopping strategies – Time, deadline, other work, risk, value, statistical test, … • Plunge in and Quit – But I can always come back!
  • 15.
    Mission #2: Design •Expansion – JavaScript: common libraries such as node.js, jQuery, D3 – node: sounds like "knowed", "no-ed" – Ajax: sounds like "Hey Jacks", "Age Axe", "A Jacks" • Lateral Thinking – Be open to, and provoke, off-track thoughts – Example: decomposition • Expansion – jQuery: sounds like "Jake weary" • Now work back from result to context eleph-ant - the biggest insect in the world unpleas-ant - the worst insect to be around deodor-ant - the nicest smelling insect
  • 16.
    Mission #2: Design •Iteration, rote generation – Jake said he was weary – The boss saw that Jake was weary – The boss saw Jake weary • Oracles Q: Why was the web developer sent home early on new years? A: The boss hated to see Jake weary • Negate the premise – What if we had not X or no X?
  • 17.
    Really? • Lateral thinkingis closely related to insight, creativity and humour … (de Bono) • … of variable reliability [the models] need to be subjected to frequent "reality checks" (Hurley, Dennett, Adams) • we … keep finding deep parallels between humour and scientific investigation. (Hurley, Dennett, Adams)
  • 18.
    But, Really? • Hurley,Dennett, Adams: – Humour comes from the realisation that a committed belief in someone’s mental model is incorrect. • Joking – Injects a committed belief • Investigating – Proposes an uncommitted belief
  • 19.
    So? • Investigation – Ambiguityspotting – Idea generation, Lateral Thinking – Functional fixedness • "Humour allows us to explore alternatives" (Weinberg et al) • Category switching (Miller) • Reporting – Telling the testing story – Bug advocacy
  • 20.
    But, So? • Social –Getting along – Gallows humour • Keeping Loose – When I think of a corny joke … – … I force myself to find two more … – … with some aspects in common … – … and then tweet them. • Training, Coaching – Describe and illustrate techniques
  • 21.
    Summary • Parallels betweentesting and making jokes: – Surprise: identifying some aspect of a situation which is incongruous. – Coherence: placing these observations in a context which makes their effect clear. – Delivery: making sure that the story is put together convincingly and told well.
  • 22.
    And the PunchLine? • I was asked to organise a parachute jump. People kept dropping out. • My dad was an unusual barber. He worked exclusively on root vegetable farmers from a shop called Pa Snips. • I went looking for religious ladies. Found nun. • The best thing about my partner at Origami Club? We're on the same page. • I'm just never sure what that pig means. Hambiguity.
  • 23.
    Your Testing isa Joke James Thomas, Linguamatics @qahiccupps
  • 24.
    Selected References • LateralThinking, E. de Bono, Penguin (2009) • The Gift of Time, F. Charles, Dorset House (2008) • Laughing Matters, J. Durant and J. Miller, Longman (1988) • Inside Jokes, M. Hurley, D. Dennett, R. Adams Jr., MIT Press (2013) • How I Escaped My Certain Fate, S. Lee, Faber & Faber (2010) • What Did You Say? C. Seashore, E. Seashore and G. Weinberg, Weinberg & Weinberg (2013)