Short Attention Span

First, let me say: You know it's going to be a scorcher when you're forced to seek the shady side of the street at 7:30am. Phew! Second: This isn't a humorous post, and it'll probably be totally boring to everybody but me, but I wanted to write about this subject, SO I AM. Feel free to move along.

So I got to thinking on my walk this morning about attention span. Mine, when I am working, vacillates between horrifically short and "oops, I forgot to eat lunch". The former happens if I am forced to wait more than 3 seconds* for anything—a file to download, a page to load in a browser, an application to open, an executable to build—and can quickly spiral out of control. For example, if I attempt to visit a site and it takes more than a few seconds to load, I'll switch to Outlook to check my e-mail. There I'll see a message about some bug or other, and I'll switch to the debugger to check it out. Once in the debugger I'll realize that I need to sync to the head and rebuild before I can reproduce the bug, so I'll switch to Perforce and sync. This will take more than 3 seconds, so I'll switch back to Outlook and read the rest of my mail.

If I'm lucky, I'll finish reading my mail and remember that I was syncing to the head, go back to the debugger, and start a build. (Sometimes I'm not lucky, though, and I'll switch to one of my other laptops to look at my personal e-mail or a blog or to see where I left off fixing a Mac bug, or I'll get sidetracked by another e-mail.) If I press F5 (for Start Debugging) and the "these projects are out of date, would you like to build them?" dialog takes too long to come up—or worse, it goes behind another app when I turn my head to take a sip of coffee—I'll end up reading more e-mail, realizing that the site I originally tried to load has finally loaded, or go back to reading blogs before I notice that the build never started. When I finally do notice that the build never started and press OK in the sneaky dialog, I'll be all exasperated over the wasted time and then proceed... to waste more time (or, as I think of it, "do other productive things instead of wasting time waiting for a build").

Now, all of the things I've been doing while waiting for that page to load in the browser or for the build to finish needed doing (well, maybe except for reading the blogs), but because I didn't stay focused on any one thing for very long, I've left a lot of loose ends hanging. Once in a while I tie them all up by the end of the day, but not always; sometimes it takes two or three days before I reach the end of all the threads.

At the opposite end of the scale are days when I practically have my nose pressed to the screen, and I get so absorbed in coding that I don't notice that I haven't read e-mail all day or even gotten up to pee. These days are rarer at the moment because I happen to be working on features and bugs that require me to switch between Dreamweaver, one or more browsers, and MSDev constantly... and as we just learned, app switching is the quickest way to send me off on a mental tangent. I think my ability to stay focused is indirectly proportional to the number of laptops on my desk and the number of applications/windows that each machine has open, and if that's the case, at the moment I'm doomed. I've got 17 items in my Windows taskbar on this machine alone (5 Windows Explorer windows, MSDev, Jabber, P4, 3 Araxis merge windows, Outlook, Firefox [with 8 tabs open], Timbuktu, a remote access window to a machine in San Francisco that's running IE5.5, Dreamweaver, and a Trillian IM window); a similar situation exists on the MacBook Pro and on my personal laptop (which I occasionally use to reproduce bugs in older versions of some software). Add to the mess the fact that the more applications I have open, the slower everything runs, which means longer waits, which means more app-switching. Arg!

I remember back in 2002 or 2003 someone on the team sent around a link to an article about having blocks of "concentration time." If I remember correctly, it said that in order to get any real work done, engineers needed blocks of at least X hours (was it 2? 3? 4? I think 3) of uninterrupted coding time. Occasionally I get that, and when I do, I'm SUPER productive. For example, I fixed a bunch of bugs (6? 7?) on the plane to San Francisco last week under totally adverse conditions (cramped space, no external mouse, slow build times due to running on battery). What I would also normally consider an adverse condition—lack of phone or Internet access—probably worked in my favor, as it kept me from being distracted by meetings, e-mail, or blogs. I can't just unplug my network cable on a regular basis, however, as I usually need access to the bugbase, documents on the server, Perforce, etc. to get my work done. Fixing 6 or 7 bugs just based on the bug subject lines (as I did on the plane) isn't doable on a regular basis.

The good news is that my insanely productive times balance out my super-distracted ones, and I end up getting all my work done just fine. However, I'd really like to get my app-switching obsession under control. I think it's time to recognize that I'm better off waiting 5-10 seconds for a page to load or a file to download than trying to make good use of the lull by doing something else. I figure I could increase my productivity at least 50% this way, and then I'd have *more* time for reading blogs and books and spending time with my family and watching TV. I'm still trying to sort out how to do this, however. Turning e-mail off entirely usually helps (though turning off the little "you have mail" indicator in the system tray does not—I just end up switching to Outlook more often to see if I have any new mail), as does turning off Jabber and Trillian. The problem is that I telecommute, and if I weren't available on e-mail and IM, that would be Bad. Still, I might consider doing it for a couple hours a day, after all my meetings are done for the day (if Outlook isn't on, I won't get meeting reminders).

Anyway, it's probably worth thinking about further. If anything brilliant occurs to me, I'll be sure to post it here, where no one will want to read it. :)

*Can you imagine what life was like when all Internet operations happened at modem speed? I honestly can't remember how I managed my restlessness back then, though it was probably by getting up for food or coffee.

Posted by Lori in me, me, me and work at 5:08 PM on August 3, 2006

Comments

I'm so with you on this! I like to think I'm a great multi-tasker, but I invariably get caught up in a different task than the one I originally started (mainly for similar reasons: a file takes too long to download, the server is running on empty, etc.) and then forget about the original task. Doesn't work so well in the work world if someone is waiting for something from me! I feel as if I'm being wasteful if I just sit and wait for the computer to act. You know, like how dare Josie just sit there when there's work to be done...

Posted by: Josie [TypeKey Profile Page] at August 5, 2006 11:39 AM

Oh, P.S. - the title to this post reminded me of the old SNL skit with Tom Hanks: Mr. Short-term Memory Man!

Posted by: Josie [TypeKey Profile Page] at August 5, 2006 11:40 AM

Comments are now closed.