
Yes, I actually did the unthinkable and decided to start working on a better way to manage my tasks list.
I couldn’t find anything that works my way. And that means one of two things. There’s a better way than my way. Or there’s better software waiting to be written.
So I decided to try a little thought experiment. Some people call it brainstorming, in my case it was a downpour of ideas.
So many that I still don’t have a place to put them all.
Here’s the thing to know about task managers. Everyone has some way of managing their tasks, so it’s easy to start there and focus on the bikeshed ideas that make one better than the other.
It’s a great case study for writing functional requirements. You start with all the known things, like description, categories, priorities, due dates. You add “killer apps” like e-mail and calendar integration.
Then you brainstorm usability tricks and cool things you can do with AJAX. It’s all about making people happy to see their ever growing task list.
I decided to try something different. I started by looking into my frustrations, and do some reading to understand them better. I heartily recommend Getting Things Done, most of the ideas I found are already there.
From that I compiled a list: “Good task manager: what it’s all about?”
- Empty brain. It’s about dumping things so I don’t have to keep too much information in my brain.
- Surfacing. It’s about surfacing what I have to do when and where I’m best able to do it.
- Decisions. It’s about knowing what I have to do, so I can decide what not to do.
- The flow. It’s all about getting out of the way and keeping me in the flow.
- Guided. It’s about me making important decisions, and the task manager guiding me in the rest.
Working from this list, I created a “there must be a better way” list. I’ll share that list with you some other time.
The “better way” list is all about the details. And details are where the devil hides.
Take digital document management. Put all my documents in one place, accessible anywhere, easy to search, permanent archive. Except, I’m too lazy to scan every printed material, so I still have more printed than online documents.
I took a few details that I thought make the most difference and started running with them. If I can’t get these details right, then I’m just wasting time.
I started with a rough prototype. Using Pen and Paper, I got something up and running in a couple of hours. Like a Web site, but I had to flip the page myself.
I then held a design meeting with my staff of one and decided I like it enough to move to the next step.
There are three types of details I need to worry about:
- Presentation, because this is all about knowing where you stand.
- Flow, because it’s all about supporting how I do things.
- Tricks, not just eye-candy but ways to get better results.
I started with presentation, mocked a few HTML pages with just enough styling to get a feel for things. Liked it and moved to the next step.
The Big Unknown. Before you start using software, it’s either the best thing since sliced bread, or something you don’t care about.
Since the user is me, and me is convinced it’s the best thing since slice bread, I didn’t have to worry about message or intro screen or any of that stuff.
Getting To Know You. When you start using software, there are those features that are really cool, the ones you need to learn to use, and the ones you don’t know about.
Scoring high here wasn’t my goal either.
Living With You. This is where software either makes your life better or worse. Wow! eye-candy gets annoying, hidden features get used all the time, things that look simple turn out to be deceiving, and so on.
And that’s exactly what I’m trying to improve.
There’s only one way to find out, so I pulled out the text editor and started cranking out some code. And when I had enough code, I started using it.
I did end-to-end testing. And by that I mean, weekend to weekend. A week is just enough time to get used to new features, but not enough time to get too comfortable with annoyances.
Just enough time to make a judgement call: did this feature make my life better, or not?
And it so happens some ideas worked really well, some ideas I didn’t care for that much, and some need a lot of re-thinking.
Back to the drawing board, rewriting and changing code, cranking out new features, another end-to-end test. I’m now at the third iteration and still trying to figure out the pixie dust.
But it’s a great exercise in getting ideas from “I think it will work” to “I know it will work”. And I already found out three ways to make task managers better.
Let’s see what the future holds.