Technical Program
Educators' Symposium
Doctoral Symposium
Student Research

Student Volunteers
Special Events
Housing Information
Registration Information

Tuesday, 5 November – 13:30-17:00 Afternoon – Convention Ctr - Room 307-308

32 Dungeons and Patterns!

Steve Metsker
Capital One, Steve.Metsker@acm.org
William Wake
Independent Consultant, William.Wake@acm.org

"Dungeons and Patterns!" is a hands-on tutorial for exploring and learning about design patterns. Learning design patterns will help you become a more powerful object-oriented developer. Unfortunately, a single reading of "Design Patterns" won't magically implant design pattern skills in your brain. You have to learn patterns by doing, which means that you have to start applying patterns before you can start applying patterns--a monstrous dilemma! The solution is to practice patterns in a playful setting where slip-ups are profitable and painless.

In this tutorial you will encounter dungeon devices, creatures, and settings that serve as metaphors for design patterns. Your mission, with your table-mates, is to determine which pattern is at play, and then to explain the pattern to an Ahobbit that will accompany your party. As your Ahobbit gains enlightenment, you will find magical doors unlocking that let you delve deeper and deeper into the patterns dungeon. Learning patterns by playing will produce long-term memories, greatly strengthening your skill at recognizing and applying design patterns.

Attendee background

Attendees should have at least a little knowledge of design patterns, specifically those in the book "Design Patterns." Experience with teaching and/or experience with role playing games is a plus, but not necessary.


We start with a few slides for orientation, and then we choose Pattern Masters to act as leaders at each table. The Pattern Master has a guide to the dungeon, and the other attendees adventure through the dungeon. After the break and at the end we have a few more expository, informational, and summary slides. Most of the time is devoted to learning and play in the dungeon.


Steve Metsker is a researcher and author who explores and writes about ways to expand the abilities of developers. Steve is the author of "Building Parsers in Java" and the "Design Patterns Java Workbook."

William Wake is an independent consultant and coach. He's the inventor of the XP Programmer's Cube, and the author of "Extreme Programming Explored" and the forthcoming "Refactoring Workbook."