The last straw fell mid-morning, roughly five years ago. I was a
mid-tenure-track professor, working on a medium-importance but short deadline
task to create a class module that I had promised my operating systems students
for the class the next morning. As I was reading through my previous year’s
course notes in preparation, a young seeker-of-knowledge chose to take advantage
of my “always open-door” policy in order to enrich himself. I say that
tongue-in-cheek – on this occasion it turned out this student was seeking to
contest a grade I had given him. Nonetheless I engaged him enthusiastically and
after some spirited debate, he left somewhat less dejected than he had arrived.
When I returned to my work station, I sat for a moment thinking about what I
needed to be working on, and settled on editing a grant proposal. The rest of
the day quickly passed. When I arrived at class the next day, I was subjected to
extreme embarrassment as the students demanded the forgotten class module I had
promised them in preparation for the upcoming exam.
Now, the information overload experts among you can immediately identify
many tools and processes that I could have employed to help prevent the
occurrence described above. For example, perhaps if I followed the
Getting Things Done methodology, I would
always have a list of tasks in front of me, reminding me that the course module
was due the following day. Or perhaps if I had applied sophisticated
interruption prevention techniques, like closing my door, I would have prevented
the damaging interruption. But as a young computer science professor, I did the
geeky thing – I thought about how the right technology could have prevented my
woe by helping me to recover more effectively from interruptions.
What if there was software that knew, at every moment in time, the task on which
you were working? Then perhaps whenever I activated my computer, it could tell
me something like “you were last working on the course module for your operating
systems class.” Thus was born the idea for TaskTracer (
http://eecs.oregonstate.edu/TaskTracer)
at
Oregon State University and later its
commercialized counterpart, Smart Desktop (
http://www.smartdesktop.com/).
Such software would run on my laptop or desktop computer, and would record my
activity history. A majority of my life is channeled through my computer – be it
reading email, browsing the web, reading and writing documents, writing
software, or interacting with other software applications. Such a system could
not only help me keep on task, it could also help me to restart tasks that had
been interrupted days ago, by showing me records of my activities when I last
worked on those tasks. For example, after working for some time on a different
task, I might tell the software that I wanted to resume the “course module” task
and it might in return tell me “when you last worked on the course module task,
you were editing this presentation (cs411.ppt), would you like to open it?”
I view interruption recovery as a four stage process. First is the cognitive
step of remembering that you should be working on a task. Second is the
remembering what state in the process you were on that task. Third is
remembering or generating a plan to reach the resources - documents emails, or
web pages - that are necessary for the next step (likely the resources you were
using when you were last interrupted on that task). Fourth is the physical
manipulation of the keyboard or mouse to get you to those resources. All of the
effort involved in this process is overhead – it doesn’t advance the task that
you are trying to complete. Everything that we can do to reduce this overhead
will reduce the cost of the interruption, and increase the amount of productive
hours during the day. The TaskTracer research project demonstrated that software
could reduce the overhead cost of each of the four stages of interruption
recovery. In addition to reminding me which task I was working on, TaskTracer
could present me with a list of the files, web pages, and emails that I had most
recently touched when I was last working in the context of the task that I was
resuming. This would trigger my memory about where I was in the task, and would
virtually eliminate the overhead of recalling, locating, and opening the
resources themselves.
We know personally that interruptions can be costly to our personal
productivity. It is certainly important to find ways to remove or schedule some
interruptions and I look forward to advances in those areas by my colleagues
with the Information Overload Research Group. However, interruptions (or
interrupts as we call them in computer science) are also one thing that enables
us to be more productive through multi-tasking. Interruptions allow us to push
tasks that are blocked (waiting for somebody else) out of our memory, freeing it
up to work on other tasks, without having to continually check if those tasks
are ready to continue. But in the end, there will always be interruptions, so
there is considerable potential to apply technology to limit the effects of
those interruptions on our productivity.
[Self-Disclaimer: the author is currently an employee of Pi Corporation, which
is commercializing the TaskTracer/Smart Desktop described in this blog and a
co-founder of the TaskTracer group with Thomas G. Dietterich (
http://eecs.oregonstate.edu/~tgd).
For peer-reviewed articles describing TaskTracer and the research associated
with it, please visit
http://eecs.oregonstate.edu/TaskTracer . Or make up your mind independently
by trying it yourself –
http://www.smartdesktop.com/ . ]
About the Author
Jon Herlocker is currently Chief Technical Officer of the Smart Desktop
division of Pi Corporation. Until just very recently, he was Associate Professor
of Computer Science at Oregon State University researching information overload
issues. For more information see
http://www.smartdesktop.com/