Geeks With Blogs
Ulterior Motive Lounge UML Comics and more from Martin L. Shoemaker (The UML Guy),
Offering UML Instruction and Consulting for your projects and teams.

UPDATE: At the suggestion of Ernie Out in the Barn, here's a larger PDF for 11x17" paper.

SECOND UPDATE: Boy, was I tired when I printed up those rules! I lost the paragraph that explained how the game ends, and I spelled "through" as "throw". Fixed here and in the PDFs.

In our last episode, The UML Guy was tried for violations of Process and common decency; but pulling out all his best Captain Kirk tricks, he turned the illogic of the system against itself, and was acquitted. He decided to celebrate, asking "Shall we play a game?"

Now, one red herring later, we find our heroes in a movie that has nothing whatsoever to do with that quote. But this episode is a game.

(Click the pictures for larger images. Click here for an easily printed PDF version.)

Office Race Counters

Office Race

Office Race Rules

Let's get the obvious question out of the way first: why is @crazeegeekchick in this game?

Simple: she asked.

As Editor Bill can attest, I play little mind games with myself, and with everyone else in the world even though they don't know they're playing! These are sort of mental Easter Eggs: I think of something I find amusing or interesting, and wait until someone else picks up on it. If enough time goes by with no one "finding the egg", I start to think of prizes for whoever finds it. As more time goes by, the prize gets bigger. (One I've been playing for over 19 years now. Next May, I'm going to close it, or the prize will bankrupt me!)

In my wildest dreams for the Lounge, I hoped it might reach a point where someone actually wanted to be a guest star. I didn't believe it would happen, but I imagined it. I decided that people who might for various reasons amuse me could be guest stars. And my first mental Easter Egg was simple: the first person who asked, gets added to the Lounge. So imagine my delight when @crazeegeekchick asked a mere three weeks into the strip! When that happened, I messaged Editor Bill: I won!

Now the next guest star won't have such an easy time of it. No, the mental Easter Eggs have to get harder over time. To be a guest star, you'll have to work for it. But I should add: there's another mental Easter Egg already in one of the past strips, waiting to be found. And also, @coreyhaines, you were actually the first to find a mental Easter Egg (the second I devised), by leaving the first comment on the Lounge. Drop a note if you want to be immortalized as a badly drawn stick figure. Otherwise, I owe you a black bean burger.

And don't let me forget to plug the film that inspired this episode! Or this book (which somehow seems to keep sneaking into the strip).

Now with all that fun stuff out of the way... I've thought for a long time that there should be a way to make games out of UML, and then use those games to teach UML. Office Race is actually my second attempt. The first attempt came when I was teaching my nieces about computers, and it was also based on Activity Diagrams. It wasn't as clever as Office Race, because I hadn't figured out the dice part and the Branches. On the other hand, they got to acquire and trade and eat M&Ms, which taste much better than swag counters.  So I think you got the short end of this stick...

But Office Race is an Activity Diagram, UML's version of the trusty old flowchart. The biggest difference from flowcharts is that Activity Diagrams are generally simpler than flowcharts (unless you go all OED on us). The other major difference is that in UML, you don't write a question in the diamonds. That never worked well. Either you ended up with big fat diamonds, or you ended up with really tiny and unreadable questions. In UML, the practice is to label your outgoing arrows with meaningful Guard Conditions, so everyone knows from the answers what the question was. That's either a brilliant simplification, or proof that The Three Amigos watched too much Jeopardy.

My major point in drawing Office Race -- besides changing things up a bit so the Lounge doesn't get too formulaic -- is to reiterate a point from Episode 8: anyone can read simple, well-drawn UML diagrams that describe things they mostly understand. The hard part is the "well-drawn" part. And honestly, the Office Race map is a horribly drawn Activity Diagram. I can name half a dozen things about it that I would never do in a real model, but I did here for the sake of playability. Yet even with it being a poorly drawn diagram with little cohesive overall theme (there's a tiny bit of one -- Easter Egg if you can describe it in the comments), I'll bet you can take a bright kid who's past the Candyland stage, and that kid can follow the map and play the game (and probably draw better pictures).

So Activity Diagrams are flowcharts that let us describe a process and decisions along the way. They're easy to read. Now we have to learn to draw them. So next episode, we're sending you Back... to the 80s!

Posted on Saturday, November 15, 2008 4:54 PM Ulterior Motive Lounge | Back to top

Comments on this post: Ulterior Motive Lounge Episode 9: Office Race

No comments posted yet.
Your comment:
 (will show your gravatar)

Copyright © Martin L. Shoemaker | Powered by: