gitionary: the graphical game of git guessing

I apparently have a knack for coming up with nerdy party games. Three Fridays ago, my 6.033 TA encouraged us to practice creating diagrams for our design project proposals by trying to identify UNIX commands or filesystem structures from our partner's drawings. He claims that this "6.033 pictionary" was a result of strong nudging of the course's writing staff. Given that I had been encouraged by some of my friends to learn git earlier that day, naturally, I merged the two ideas and decided that gitionary needed to be created. I told Nelson, who is quite fluent in the ways of git, and he generated the game cards so we could actually play with the idea.

gitionary cards: each has a Porcelain level command and a Plumbing level command to draw

The original premise was simple: draw the appropriate directed acyclic graph corresponding to git commands so that your friends could guess it. However, many people who would likely end up playing the game did not yet know git, myself included, so we thought it would be good to allow drawing non-DAGs, too.

Nelson generated a set of printable gitionary cards (8.5"x11", double-sided on the long edge, requires cutting into cards), and we test ran the game with a rotating "artist" and the rest of the room guessing. I've included some (semi-arbitrarily selected) highlights drawn that evening below. Many of the most successful were not drawn as directed acyclic graphs, such as git-revert:

git-revert, wdaher, 15 seconds

git-stash turned out to be difficult when initially drawn in a way that reflected what the command did, and more surprisingly still took about half a minute after the lower left-hand corner of the sheet was sketched:

git-stash, jesstess, 68 seconds

A somewhat hilarious failure mode of gitionary is that objects which would ordinarily be drawn as a combination of circles and lines inadvertently look like DAGs. This was a problem Jeff had while he was drawing a magnifying glass to represent git-show:

git-show, jbarnold, 34 seconds

You can also click through to see the rest of the drawings from the first run of gitionary:

I definitely encourage you to get a group of your favorite nerdy friends together to play the game, and maybe, you will do more than one of the plumbing commands.

Now that I've created a party game about gitionary, I think I should probably go spend some time learning git. Word on the street is that I'll think the back-end model is "cute."

To the pretty pitter, pitter, patter

I've been told that most people don't like walking through the rain and that others theoretically enjoy the process but don't walk in the rain because they dislike arriving at their destinations wet. However, unless I have something of a very pressing importance at the other end of my journey, I find that I try to catch every raindrop I can on the way.

Even underneath the scaffolding at the intersection of Main St. and Vassar St., many Cambridge residents navigate carefully to avoid the few drops of rain that might sneak through the wooden panels above them. In light of this, it shouldn't be surprising that you make great time by taking the path that maximizes the number of times you are hit by water droplets falling through the planks. Pseudo-random neuron firings (prnf to the zephyr world) worded this moment more poetically:

As I am drifting to catch raindrops who glide off the scaffolding,
I become as unnoticeable to the hustling city folk
as I have made the droplets to the setting concrete.

A couple of hours later that day, I began writing a minimalistic piece for the piano, which I finished it up last Friday. Here are a couple of phrases from the beginning:

Beginning of Raindrops score

About halfway through the piece's composition, I noted that it was eerily reminiscent of my moment deliberately walking in the rain. I was also contented to note that its relationship with a short, poetic phrase meant I didn't have to come up with a more traditional title for the little song.

You can view, or perhaps even play, the complete piano score.

(Fun fact: the title of this post is from Gilbert & Sullivan's The Gondoliers, specifically a line from "Dance a Cachuca." This was the first song I sang with my high school's concert choir.)

How communication breaks down

In a little less than a month, the MIT undergraduate body will elect new leadership for their primary advocacy group, the Undergraduate Association. Every year around later February and early March, students who consider themselves relatively politically active request an increase in transparency and engagement from the candidates, and by the time the next October rolls around, everyone is complaining that communication is broken.

I will admit that they are right: communication is definitely broken. In fact, it is broken for a large number of reasons. But I refuse to agree that the problem lies solely with their favorite scapegoats - the leaders and most active members of the advocacy group; there is a common misconception that the communicators are the primary reason for communications breakdown.

Let's get a better understanding of how communication efforts succeed or fail in light of this common misconception by looking at the interactions between an exceptional UA student representative and constituency. Of course, I cannot touch upon every communications failure through just one story, but this particular story highlights some of the more {prevalent, interesting} ways in which communications break down.

There does not exist one form of communication that works for everyone.

Often, communicators believe that employing the ways in which they garner information is sufficient for communicating with a larger group. This is an egregious mistake as people have different listening styles. Some want to hear every last detail, but others are uninterested in anything more than the bare bones. Some want to actually listen and absorb every word they hear, while others glean and retain information better through conversation. This is why this particular student representative reached out to his constituency in a variety of different ways.

The first was through the classic means of communication at MIT: email. Of course, emails he wrote communicating the latest news and best ways to get involved could be deleted upon receipt, even filtered to make them easier to ignore.

To communicate with his constituency in a more personal manner and directly tie them to the decision makers, he arranged events with administrators surrounding many of the relevant issues, such as the threat of mandatory meal plans and the future structures of student support. Numerous such events were held over the course of the fall semester, and no major topic was left untouched by some event held in the large common room of his dorm. What better way than to get the information and two-way communication you feel you deserve with both your representatives and MIT administrators than from the comforts of your very own dormitory!

Still, maybe someone was troubled by some anomalous political question that may otherwise fall through the cracks. To account for this case, he held weekly "office hours" on a rotating schedule so that anyone could bring any concern, suggestion, or question to his attention.

Were his constituents satisfied? In short, no, but the better question is "Was their lack of satisfaction his fault?"

Communication not only requires an active sender, but also an active receiver.

When there is a breakdown in communication between an organization representing significantly more people than just themselves and their representatives, it is easy to blame the failure on the organization. It's a simple numbers game, really: if this many of us don't know what the few know, then it has to be the fault of the few. More often than not, this mindset is incorrect.

Instead of applauding him for being prompt in sending thoughtful summary emails, constituents complained to each other that these emails did not include enough of the relevant information for specific issues. Instead of appreciating the extra time, effort, and expenditure of political capital to get administrators to host a forum or event in their dorm after hours, constituents secretly snarked about the inevitable shortcomings with each other. Instead of suggesting alternate times for office hours to their representative, constituents would bad mouth their representative for not happening to hold office hours during the one hour a week they were free behind his back. (Rest assured, as soon as others in the UA caught wind of these complaints, they informed him.)

It's great to communicate your desires for transparency and two-way information flow, but why bother if you don't care enough to communicate once you have an open and engaging system in place?

Perception is reality, both for the sender and the receiver.

The biggest failure in this story was not just the constituency's failure to communicate their dissatisfaction to the representative, but also the indirect effects of that action. The constituency, while primarily the receiver, gave the sender incorrect feedback surrounding his efforts. Regardless of whether or not he was in fact doing a good job, they never informed their representative that he was letting them down. This left him to draw the only conclusion he could: that they were satisfied with the level of communication he facilitated.

This disconnect can only cause the perceived communication gap to grow, because failing to improve on something deemed "unacceptable" only gets worse with time. Unsurprisingly, members of his constituency who finally admitted that they had found his strategies incomplete were more disgruntled at the end of the semester.

Communication is a long-term commitment.

As the story of our exceptional representative illustrates, communication is not just a two-way street, but one that needs to be crossed regularly. Otherwise, it will become wider and wider until it can no longer be crossed.

It is my hope that the undergraduate body at MIT never reaches that point. This is why I challenge undergraduates to take an active role in the communication they desire with their student representatives for more than just an election season towards the end of winter: hold your leaders and representatives accountable by actively taking advantage the communication they offer throughout the entire year.

Curried pumpkin soup

Despite growing up in Chicago where winter is defined as "more traffic" and "delayed flights," the first thing that comes to mind in winter is creamy squash soups. In the haze of moving, Mystery Hunt, and working on writing 6.042 problems this IAP, I somehow neglected making soup this January. To quench my craving and finally use up the three cans of puréed pumpkins sitting in my cabinet, I decided to make curried pumpkin soup.

Curried pumpkin soup topped with romano

I usually top this with a bit of pecorino romano cheese, but since I didn't have any in the fridge, I opted for parmesan and crushed red pepper flakes. If pumpkins are in season, toasted pumpkin seeds work even better.

Hopefully, I can subdue my craving for soup with this, but I've already decided that French onion soup is next.

Curried pumpkin soup

Ingredients:

  • 4 tablespoons (1/2 stick) unsalted butter
  • 3 medium chopped yellow onions
  • 4 teaspoons minced garlic
  • 1/4 cup chopped red peppers (can substitute 1/2 teaspoons crushed red pepper)
  • 2 teaspoons curry powder
  • 1/2 teaspoon ground coriander
  • 3 15 oz. cans puréed pumpkin
  • 5 cups vegetable (or chicken) broth
  • 1/4 cup brown sugar
  • 1 teaspoon salt
  • 2 cups milk
  • 1/2 cup heavy cream

Preparation:

  1. Melt butter in a small saucepan over medium-high heat. Add onions, garlic, and red peppers, then cook, stirring often, until softened (about four minutes). Add the curry powder and coriander (and crushed red peppers if opting for this method), and stir for another minute.
  2. Mix the puréed pumpkin, broth, and sautéed vegetables in a large stockpot. Blend well. Bring the pot to a boil, then reduce the heat and let simmer for ten to fifteen minutes.
  3. Blend the soup in a food processor or blender until smooth, and put the soup back in the stockpot.
  4. With the soup on low heat, add the brown sugar and mix. Next, add the salt. Slowly add the milk and the cream while stirring to incorporate without burning.

Makes eight to ten servings.

Une petite valse en jazz

Now that I have a weighted-key digital piano in my room, I've been playing a lot more. More like: I've gone from playing the piano only when I'm home in Chicago to playing it a couple hours a day. Over the past few days, I've been alternating between playing pieces from Philip Glass's "Metamorphosis" and more or less messing around with my own creations. The one below is a simple jazz waltz:

Une petite valse en jazz score

Perhaps, I wrote this one down because the beats in it are steady enough to easily transcribe. Additionally, unlike most other music I write, it lent itself fairly naturally to a key. Maybe you'll see some vaguely modal music which is played primarily on the black keys from me sometime soon.