Tuesday, December 20, 2011

The Cult of SET?!


I think it was last year around September, when Matt was interviewing Goranka Bjedov and Dan Downing for TWiST #10, and in the closing minutes, when Matt made a joke about playing Blackjack, Dan mentioned "I don't, but I play SET!". I thought, "huh, that sounds interesting" and then let it drift out of my consciousness. However, it wouldn't be too many months later that I'd be with a gathering of other testers, and they'd mention the game of SET as well. SET? Why am I hearing that name again? A few more months later and another tester gathering, and as we're all talking, out come cards with interesting symbols, and a group of testers gathering around them. What is this strange game, I wonder? Sure enough (as if you hadn't already figured out), there it was again. This mysterious game of SET, and a group of testers all actively playing it, often for hours.

At CAST in 2011, after the first conference night's activities, we all came back to the hotel, and sure enough, not ten minutes pass that a group of testers has not busted out the SET cards and played for hours. What was it about this game that seems to be so ingrained into my fellow testers' consciousness? More to the point... why had I not heard of it before?

I think it's safe to say that a lot of test community folklore had gone by me unnoticed for years, because until 2009, I wasn't really in any way directly engaged with the broader testing community. As I came to be more aware of it, I started to understand more of the things that testers do, including various card and dice games to help both pass the time, but more importantly, help testers recognize patterns and issues in places they otherwise might not see them. It's in this context that I think SET fits brilliantly.

OK, I have a feeling I'm not the only one late to the party on this, so I am willing to bet there may be a couple of you out there thinking to themselves "OK, Mr. Testhead, what is SET?!" Put simple, it's a card game where any number of players get together, and the dealer lays out twelve cards in a grid four cards long by three cards deep... like this:

You may notice that the cards have various things in common:

1. There are three colors used (red, green and purple).
2. There are three shapes used (diamonds, ovals, and squiggles).
3. There are three shadings used (empty, lined, and solid).
4. There are three counts for shapes (one, two and three).

Three cards make a set if, in each of a card's features (shape, color, fill, and count) every card matches the others, or no cards match each other. As an example, one of the sets you can make is with the three single diamond cards. They are all the same count (one), they are all the same shape (diamond), they are all a different color (red, green and purple) and they are all a different shading (solid, lined and empty). Any property has to match on all cards, or has to not match on any cards to be a valid set.

So what's the point? The point is that, with these twelve cards, you try to see how many sets you can find before the other players do. The way that we've played it at tester gatherings has been if you find a set, you take those cards out of play and you hold them, and new cards are dealt. The player that finds the most sets when the cards are exhausted wins the game.

There are a variety of different rules that can be used in SET, but they are all variations on the same theme. Find as many SETs as you can. You can also play the game yourself, and there are a number of web sites that feature frequently updated puzzles. In the single version of the game, the most common approach I have seen has been 12 cards are dealt, and in the twelve cards there are six sets. Your job is to find them (and often a timer is kept to see how long it takes you to find them). Based on the above graphic... can you find all six sets?


I think that the draw of this game specifically for testers is the fact that it's a quick game to get up to speed with and understand, but more to the point, it helps to remind us that patterns are all around us, and things that we often think we see, we don't really see unless someone else sees them, or we spend the time and trial and error our way around them. This is a great reminder to us that there are many ways we can sharpen our problem solving skills and also sharpen our own perceptions.  The point was brought home to me because, last week, one of my co-workers, as a "secret snow person" gift, bought me my own SET card deck. Now I can jump in and be a part of any tester gathering, too, and I can also practice on my own and see if I can sharpen my own perception and ability to pattern match.

If you'd like to play online, here's a good version of the game. It resets after you find each series of 6 sets, so you can play as little or as much as you want to :).


5 comments:

Phil said...

Cool - I got introduced to it at a GR Testers meet-up

Unknown said...

Ok, so now you know how the game is played, it's time for you to find 3 or 4 more folks who know how & I'll teach you all you ever needed to know about data analysis and visualizing data using SET.

See, SET has been a central part of my training classes since 2007.

If memory serves, I introduced Dan & Goranka to SET after Nick Wolf introduced me to it (but the data analysis & visualization exercises are all me)

Michael Larsen said...

Scott, Phil and I are definitely in (I'm taking liberties here, Phil, but hey, I figure it's a good bet ;) ). I'd definitely like to know this "vox arcana" of SET as it relates to data analysis :).

Anonymous said...

I got introduced to this game at WAT, and it's been great practice for work (and fun).

I use it as a model of "how to build a mental regression suite to fit rapidly changing sets of data."

The "no cards match each other in a set" variant is more difficult, in my experience (also my favorite). You can also vary the difficulty by changing how many elements must match for a set (1, 2, or 3).

Phil said...

Michael - you win the bet, I'd definitely like to know more about how Scott uses SET