Teddy bear pair programming

Teddy Bear Pair Programming

Blog post series

This blog post is part of a series about pair-programming games. To read about more please click see more sessions on pair-programming games.

Concept

Scenario: You are having an issue and you don’t know how to solve it. You tell someone “Hey, can you help me? Let me tell you my problem!”. You start telling the problem, your conversation partner doesn’t say a word and you say “Yeees, this is it! That’s the solution. Thanks for helping me!”. But you had in fact just a monologue, and you found the solution for yourself.

What if, instead of talking to a human being, you had a constant partner whom you would explain your problems like it were a human being. This is how my teddy bear helps me:

Teddy Bear Pair Programming

Teddy Bear Pair Programming

This technique is called teddy bear pair programming. My teddy bear helps me when debugging some application. I tell him my issues, and I find the answers by myself, he’s that awesome!

. . . [an] effective technique is to explain your code to someone else. This will often cause you to explain the bug to yourself. Sometimes it takes no more than a few sentences, followed by an embarrassed “Never mind; I see what’s wrong. Sorry to bother you.” This works remarkably well; you can even use non-programmers as listeners. One university computer center kept a teddy bear near the help desk. Students with mysterious bugs were required to explain them to the teddy bear before they could speak to a human counsellor. (Kernighan, B. W. and R. Pike (1999). The Practice of Programming. Reading, Massachusetts, Addison-Wesley)

When I do TDD my teddy bear help me figure out which are the next steps. I talk with him continuously, explaining what I do now, and what are the design choices I make. I need to explain everything to him because he’s so smart that he helps me without saying a word.

When my IDE annoys me I tell my teddy bear and I feel a lot better, because he understands me. After all in the teddy bear world they have heavyweight IDE as well.

Your teddy bear will help you with basically anything. You just need to verbalize your problems and ideas. It just makes magic!

I told my colleagues at Mozaic Works about this idea, and as a result the following Open Agile conference they ordered teddy-bears for all the attendees.

Teddy Bear Partners at Open Agile Cluj 2012

Teddy Bear Partners at Open Agile Cluj 2012

Another name for teddy bear paring is the Rubber Duckling idea. It’s just that I like teddy bears more than ducks. And teddy bear pair-programming sounds better :)

Special thanks to Aimee Rivers for tweeting about this and giving me the awesome idea of teddy bear pair-programming.

3 Thoughts on “Teddy bear pair programming

  1. We have used a Furby for years. They at least talk back. The new ones are quite nice.

  2. Pingback: A short pairing story | Flavius Stef

  3. Bob Allen on July 3, 2013 at 13:40 said:

    I first saw this formally described as “Rubber Ducky pairing” (http://c2.com/cgi/wiki?RubberDucking) or “Cardboard Analyst” (http://c2.com/cgi/wiki?CardboardAnalyst). Have seen it work countless times.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Post Navigation