Tuesday, August 24, 2010

Pop Your Stack

I was totally in my groove, typing code faster than I knew what it would actually do. Everything was flowing, pure joy. After what must have been a couple hours (judging from the fact that my playlist had ended), I started getting a bit distracted, just momentarily and only every once in a while. It wasn't one of those hit-you-over-the-head types of distraction. Instead, I would simply find myself losing where I was in my code, not quite remembering what it was that I was doing.

It took me a while to even notice that I was getting distracted, let alone by what. My thoughts regarding the distraction were out of focus. It was more of a feeling, a foreboding, a sense of urgency. And then it hit me: I really gotta pee.

Comfortable in the knowledge that I knew what had been distracting me, I forged ahead with my coding, completely forgetting about my bodily urges, shutting the windows to dampen the noise of the party next door so to speak. But slowly, the party got louder and louder and suddenly I remembered, "Oh yeah, I reeeeeeally gotta pee!"

One TV show later, I stood up and turned to head to the bathroom. I took a step and thought, "Wait, I know how to do that!"

I quickly turned around stooped over my laptop and typed (not sure for how long). Satisfied with my work, I stood again thinking, "OK, what was I going to do?", my lower regions screaming the answer and my mind taking its good time to hear. I found myself rapidly baby-stepping to the bathroom. I dropped my pants, threw myself onto the throne... Aaaaahhhh...

Sitting there (for how long I don't know), I was still immersed in my software, lines of code racing through my head. Then, another distraction. Process... process... process... got it... thirst!

I walked into the kitchen to get a glass of water and was greeted by a pile of dishes in the sink. So, I put the drink on hold and turned on the hot water. A few minutes later, wiping the last water from the counter top, I breathed a sigh of satisfaction and headed back downstairs to my office.

As I passed the piano, I remembered that the damper for the B below middle C was sticking. After a moment's hesitation, I walked to the piano. Within a few minutes, I had the action out sitting on my lap and my screw driver tightening the set-screw that held the damper in place. I lifted the action to slide it back into the piano and noticed that it was really, really dusty in there. So, I stood up, placed the action on the couch and walked to the broom closet to get the vacuum.

As I pulled out the vacuum, I remembered that it hadn't been working very well. This would require tools. I walked down to the garage to grab a screw driver and pliers. Facing my workbench, I noticed that there were all sorts of odds and ends out of place. Half an hour later, I had every errant screw, nut and bolt secured in its rightful place in my screw-nut-and-bolt trays. Satisfied, I headed back into the house and thought, "Oh yeah, the vacuum."

I grabbed a medium-sized phillips-head screwdriver and pliers and headed back up the steps to the living room. Fifteen minutes later the vacuum really sucked. As I closed it up and began coiling the cord to put it away, I noticed the piano action sitting on the couch. Oh yeah, the piano.

Ten minutes later, I scanned the cavity left vacant by the piano action, satisfied that there was no dust left, or least none that I could get to. I coiled up the vacuum cord, placed the vacuum back in the closet, and began heading back to my office. Oh yeah... the action.

I lifted the piano action from the couch, walked it over to the piano and slid it into place. Then a I played a couple of notes to make sure everything was working. A few songs later, I stood up satisfied with the piano and headed back to my office. Sitting down to type, I found myself still distracted. Oh yeah, thirst.

I walked up to the kitchen commanding myself not to look left or right, but to simply find a glass and fill it with water.

Five minutes later, I walked back up to the kitchen a second time to take the full glass of water down with me to my office.

Computers are not very good at figuring out what to do, but they're excellent at remembering what they were doing. You can interrupt a computer hundreds of times and it will eventually get back to what it was originally doing. The technique used to remember what was going on is called a stack. You can think of a stack as a pile of sticky-notes. Each time you start something, you right it down on a sticky-note and place it on the top of the pile. As you complete a task, you remove it from the top to reveal what was piled just below it.

People are often much better at figuring out what to do than they are at remembering what they were doing. Unlike computers, humans aren't particularly good at organizing interruptions. These interruptions can happen on a micro-level (a phone call in the middle of dinner), or on a macro level (a car accident on the way to your wedding). Sometimes we get back on track quickly (OK, now where were we?) and other times, well, we never get back.

Maintaining a stack, either mentally or by using sticky notes is a great way to manage your time and to ensure that you get done the things you want to get done. It's also a great mental preparation for following the threads of conversation when talking with Mark Kaufman.

Reconstructing a stack that hasn't been maintained is a bit more challenging. Particularly if the whole concept is new. However, doing so can be wonderfully rewarding. In essence, it's an organized way to answer the question: how the heck did I get here?

Reconstruction can start at the beginning, working forward, at the end, working backward, or somewhere in the middle and then working in either direction. You start wherever your memories are most clear and vivid. For example, you might begin with: I was going to school to study art when I met this guy. Moving forward, you might ask, "OK, so what were you doing specifically when you met this guy?" Moving backwards, you might ask, "What were you doing before you went to school?" or "Why were you going to school?"

The entire exercise could be constructed with sticky notes. They needn't be one on top of another, but instead simply laid out in order. Once you've reconstructed your stack, you might decide that it's time to pop it and get back to whatever it was you were intending to do... five minutes a go... five days ago... five years ago ...five decades ago.

What does your stack tell you?

Happy Tuesday,

No comments:

Post a Comment

Read, smile, think and post a message to let us know how this article inspired you...