Wednesday, August 08, 2007

Flow

Today I saw my favorite "away message" of all time:

Auto Response from anonymous person (11:29:54 AM): getting stuff done dnd

Which reminded me of a section of the Peopleware book that talked about "flow". Every developer knows when they are in the flow. They are hammering away tons of code, knocking things out, getting what would normally take days, done in hours. Flow basically means you are on a roll, watch out. Getting into flow can be tricky. Most developers would admit they are better at getting into a flow early in the morning, late at night, or on weekends. Why? Because during normal business hours small distractions happen all of the time and prevent you from getting into the flow.

Email is heavy during business hours, and we all try to keep up with the flurry of messages flying around, but it prevents flow. Hearing about John's night out on the town is fun, but it prevents flow. Collegehumor.com prevents flow. And the #1 thing I think prevents flow: Instant Messaging. "Hey Bob, check out this link...", "Did you see what Mary's wearing?", "Going out tonight?", "Lunch is here", "You see those sales figures?", "I bet I can do more pushups than you.", "The yankees kicked butt last night". I'm sure you get the point. People IM tons of stuff they wouldn't bother wasting time sending an email about. And these type of messages happen more frequently during business hours. That's why weekends are so productive, nobody is around to email, IM, text message, or call you.

I LOVE instant messaging because it's quick, you can see if someone is available, you know that you'll get feedback immediately, and I would never want to get rid of it. BUT it prevents flow. I'm glad to see someone else agrees with me and is trying to "get stuff done".