Gypsy Stumper + Stacks

Thu 30 April 2015 | Tags: ipa, double mountain, stack, data structures

An IPA and a basic data structure.

Let's dive right in. Today, we're looking at a beer from Hood River, Oregon, and one of the simplest data structures to understand, a stack. I'm trying out a conceit here: Can I map the dimensions of beer judging to computer science topics?


Our inaugural beer, Double Mountain's Gypsy Stumper IPA, has Double Mountain's signature graphic design and all the particulars printed prominently on the label. 7.5% abv, 80 IBU, and... wait, what's this? It's a 16.9oz bottle - a half liter. Unusual size for an American beer, but given the higher gravity, probably a good call compared to the standard bomber at 22oz. Gypsy Stumper pours a somewhat cloudy, light amber / dark gold color. Head retention's limited, but lacing prominent (at least as poured by me).

Our inaugural computer science topic is a data structure known as a stack. It's an appropriate name: If you imagine a stack of plates on your counter, you're picturing this data structure. You can easily get the top plate off the stack, but it's really hard to get the rest (since they have other plates piled above them). Also, you can easily add another plate to the stack on top, but it's challenging to add one in the middle or at the bottom. In fact, we explicitly define stacks as data structures where only the "top" of the stack can be manipulated. Putting a new thing on the stack is known as pushing; pulling off the top item is called popping.


The beer has an indistinct hoppy aroma (not grassy, not resiny, lightly fruity). Light sweetness and a hint of minerals. My BJCP skills are too out-of-practice to identify the exact malt/sweetness in the aroma. Nothing smells off or flawed.

Stacks smell like "do things in the reverse order you received them", also known as "last-in, first-out". For example, if you were learning the causes behind major historical events, you might process that in reverse order. Let's say you want to understand why the US got involved in the Vietnam War, and in your research on Wikipedia you learn about the Cold War with the USSR. So you click the the Cold War link and start reading about that. But in order to understand the Cold War, you have to understand what happened in World War II, so you start reading about that. Finally, to understand why World War II started, you have to understand the conditions in Germany and Japan after World War I, so you dive down that rabbit hole. By the end, if you haven't forgotten what you originally wanted to understand, you work your way back down the list to the Vietnam War.

Flavor and Mouthfeel

There's a good ratio of bitter to sweet flavors, and a good amount of both, but I can't pick out the precise hop and malt character. That's OK on the malt side; I wish the hops character were more specific. Seems more carbonated than your average west coast IPA, but it works here because it cuts a sweetness that would otherwise linger.

Stacks are bitter and sweet, too. They're really easy to describe (sweet!), but their applications tend to be more technical and esoteric (bitter!). You may have heard, for example, of the call stack (sometimes just called "the stack") in a computer processor. That's a very particular and specialized use of a stack. Stacks are used in tree traversals and arithmetic evaluation, but we're not ready to dive into those topics just yet.

Overall Impression

3.5/5. There's nothing wrong with this beer, but there's nothing particularly memorable. I would definitely drink it again if the price were right. The brewery's description promises tangerine, herbal, and pine notes - I didn't get any of that.

Stacks are super important in computer science and quite easy to describe conceptually. Actually building and using them can be complex.

If you enjoyed this post, I'd love to hear from you. I'm open to topic ideas, writing improvements, fact checks, guest posts, conversations about beer or computer science, and pretty much anything else. Email me!