Tuesday, May 26, 2009

Design patterns that do not exist, but should: Let The Wookiee Win

I like design patterns. They're an interesting and useful way to store a fairly large set of information about how to do something in a few words. Mike Nygard, in Release It!, uses patterns and anti-patterns to talk about things to do and to watch out for, and I found it to be an excellent way to remember what to do and not do.

Playing around with language is something I enjoy, and I have a talent for remembering movie quotes. For whatever reason, some movie quotes strike me as capturing design or problem-solving patterns. Thus I begin what may turn out to be a series of posts, about Design Patterns That Do Not Exist, But Should.

Let The Wookiee Win
I can't find a link for this on Youtube - guess Lucasfilm's legal staff is earning their keep. In the original Star Wars, R2D2 is playing a chess-like game with Chewbacca. Chewie doesn't like one of R2's moves, leading to this exchange:
C3P0: He made a fair move. Screaming about it won't help you.
Han: Let him have it. It's not wise to upset a Wookiee.
C3PO: But sir, nobody worries about upsetting a droid.
Han: That's 'cause droids don't pull people's arms out of their sockets when they lose. Wookiees are known to do that.
C3PO: I see your point, sir. I suggest a new strategy, Artoo. Let the Wookiee win.

Let The Wookiee Win is not about conceding the game, it's about redefining victory conditions for yourself in light of new information. The point of using it as a design pattern is that you should be alert to information that changes the nature of the game; there's not much point in winning the battle if you lose the war.

You should Let The Wookiee Win when you come into possession of new information that changes your understanding of the consequences of achieving your current goal. Play the meta-game, not the game at hand.

- Kevin

Sunday, May 24, 2009

I am become Twitter, destroyer of long-form blogging

Twitter is pretty darn cool. The ability to publish brief updates to anyone who cares to receive them is a neat thing. I've been using it for months now, and am learning to use it as a kind of zeitgeist tool - I follow enough people that I can pick up on stories and trends via twitter rather than through other means.

But I'm finding that it just destroys blogging as a communications form for me. I'm an infrequent blogger anyway, for a variety of reasons, and giving me an outlet that forces me to be pithy and is expressly interpersonal and transient just encourages that.

Blog posts, for me, are something I craft. When I write anything longer than a couple of sentences, I revise and rethink, going over the sequence of things to make sure that it flows and is readable. I don't do that with Twitter (at least, I don't do it much) because there just isn't enough space to worry about it.

I don't think this affects everyone; I suspect it hits those who are primarily social bloggers much more than those who are journalists or creative writers.

- Kevin