I’ve been asked a few times to comment on how I work, what it is I do to stay highly productive, and how I use Scrum at a personal level to make that happen. I tend to work in one-week sprints and will start each sprint on Saturday or Sunday. As a consultant, I travel a lot and so my schedule is irregular. Some weeks it is easier to plan the coming week on Saturday rather than Sunday, usually based on when I’m on a plane and how long the flight is.
The Tool: Things
To manage everything I am personally involved in, I use a product called Things from Cultured Code. It’s got a lightweight Getting Things Done (GTD) approach, but is flexible enough I can use it the way I like.
Things structures work into projects and areas of responsibility. A project is something that ends. For me an example might be: “Conduct a training class in Silicon Valley.” I can add various tasks to a project. In this case, I might add “select a venue,” “prepare course materials,” and “book flight to San Jose.”
In contrast, an area of responsibility is something that never ends. I have areas such as “website,” “marketing” and “finances.” Like projects, areas of responsibility can contain tasks. The areas I’ve listed might include “update home page,” “look at SEO rankings,” and “pay American Express bill.”
The distinction in Things between projects and areas of responsibility isn’t vital, but I’m glad they make it. For me, it’s helpful to separate things like last summer’s class in Silicon Valley that can be completed, and things that go on forever like marketing a business.
Planning the Weekly Sprint
Each weekend I review Things, looking for items that must be done in the coming week. Things allows me to tag items, and I use a common set of tags of Monday, Tuesday, Wednesday, and so on, plus “this week.”
If I want to do something in the week but don’t care when, I tag it with “this week.” But, if something is important to do on Tuesday, I will tag that item with “Tuesday.” For example, if I want to buy tickets to a Miley Cyrus concert and they go on sale on Tuesday, I’ll tag that item with Tuesday. (Actually I’d tag that with “When Hell Freezes Over.”)
You can see this in the following screen capture of my current sprint in Things.
In this image, the Sunday tag is selected across the top and Next actions is selected on the left. This view shows me everything I can work on next that I’ve planned to do on Sunday. Clicking on different tags across the top in Things would obviously show tasks with those tags.
If it does not matter exactly which day I do something, I will tag it with “this week.” In the image here, you can see that I’ve created a tag called “while home.” This contains everything I want to do while home for the next couple of weeks.
For a given day, I usually don’t have many things that absolutely must be done that day. Rather, I’ve got a very busy week, but much of the work can be done any day, as long as it gets done. Each evening I look at the “this week” tag (or “while home” in this screen capture) and re-tag tasks with tomorrow’s tag until I have an appropriate set of things planned for the day.
I will often use other tags such as “flight” (for things I can do while offline). I tag items with “waiting” if I have done what I can, and am waiting for someone to get back to me. For example, if I’ve asked a client what time they want to start an engagement, I can create a task of “confirm start time of 9:00,” and tag that with “waiting.”
I don’t track any velocity or points or burndown with any of this. I simply use the concept of a weekly sprint to organize my work.
While there is much I like about Things for organizing my personal work, it is strictly a single user tool. I use other tools for managing work involving others. My two software teams prefer Pivotal Tracker for their work, so we use that.
For non-software work, I coordinate with others within Mountain Goat Software using Asana. Asana is a great tool that is free for teams up to 15 members. There’s nothing about it that is specifically agile, but it is very easy to apply to an agile context and we do.
Sharing a tool with others makes it easy for me to quickly get someone else to do something and later see if it was done.
How Do You Stay Productive?
I’d love to hear what tips or tools you use to stay productive. Please use the comments below to share your suggestions.