Essay 22Keep a Personal To-Do List

It’s amazing how sometimes the simplest tool can make us substantially more productive. Enter the personal to-do list.

A personal to-do list is not—I repeat, not—like a project timeline or a Gantt chart. Those documents serve a group. They are too sweeping for a single person. They make projections about the broad scope of a project rather than lay the path for the next couple of paces ahead of us. While they are useful “big-picture” documents, they don’t help us get organized.

A personal to-do list is also not an overflowing email inbox. Using our emails to remind us of things we have to do is futile. Email is a smorgasbord of fragmented conversations and questions interspersed with unprioritized tasks, not a clearly defined list of things to do right now. Email isn’t made for quick scanning.

A personal to-do list is just a checklist. Nothing more, nothing less. It’s quick and simple yet deceptively powerful.

When you receive a task in your inbox, write the task down in your personal to-do list. When you’ve adjusted your timeline to accommodate a must-have feature, break down that feature into small to-dos on your personal to-do list.

At first glance, the personal to-do list seems like just another thing to manage; all the items in it likely originated from some other document. That smells like bad practice because it violates the “don’t repeat yourself” mantra most of us follow in our code. However, a personal to-do list is a rare occasion where duplication is OK. That’s because it doesn’t serve the same purpose as other, more rigid documents.

Unlike other documents, to-do lists are made for constant adjustment. They are never set in stone. To-dos are added, checked off, pushed back, pushed up, and thrown out daily. Unlike project timelines and Gantt charts, a personal to-do list doesn’t care about the past. Its starting point is always right now. It also doesn’t guess at things. It’s full of organized, real tasks that have to get finished in the very near future.

The Ingredients of a Good Personal To-Do List

A personal to-do list for programmers ought to have the following qualities:

  • It is one, and only one, list.

  • It has four buckets: Today, Tomorrow, Two days from now, and Future.

  • It isn’t a nested set of dependencies. Each to-do lives directly under one of the buckets mentioned earlier.

  • It’s easily modifiable. You can move items up and down the list easily.

  • It is composed of short tasks that take no more than a couple of hours to complete. Items in the Future bucket can be broader. We’ll get to that later.

  • It’s online. You have access to it wherever you’re working.

I use Ta-da List from 37signals because it’s simple and free. Here’s how you set up a personal to-do list using Ta-da List.

Create a new list, and then add the four divider items. Since you can’t make dividers in Ta-da List, just make four to-do items that you’ll never actually check off. Put dashes before and after the label so it’s easier to differentiate them from the other, real to-dos.

images/todolist-0.png

As you start adding to-dos, put them under their appropriate divider. If it’s something you absolutely need to finish today, drag it under TODAY. If it’s something you need to get done tomorrow, drag it under TOMORROW. If it’s just further out, put it under TWO DAYS FROM NOW. If you’re not sure exactly when but know there’s a task coming up pretty soon, drag it under FUTURE.

Because nothing about a to-do list is final, if you’re unsure whether to put something under TOMORROW vs. TWO DAYS FROM NOW, lean toward the closer date. If you finish tomorrow and it still hasn’t become top priority, you can leave it for the next day.

Breaking Down Features into To-Dos

Any to-dos you bring under TODAY, TOMORROW, or TWO DAYS FROM NOW should be small tasks (no more than a couple of hours). For instance, Build registration and login is a bad to-do. Too much time goes by before you’re able to see progress on your to-do list. Instead, Build registration and login might be added as a series of these bite-size tasks:

images/todolist-1.png

Here, we’ve broken down building a registration component into a three-day, ten-task to-do list. It’s organized without seeming overly complex.

Each to-do is a small chunk of work. Once we finish one thing, we can check it off. It gives us instant gratification each time we finish something. Instead of waiting until we complete an entire component, we see progress frequently as we go.

At the end of the day, we may not get to everything we had in mind. Oftentimes, we’ll have an item or two that didn’t make it. By sundown, our to-do list often looks like this, with something still remaining for today:

images/todolist-2.png

How Tomorrow Becomes Today

So, what happens when tomorrow comes around? What if there was an item or two we didn’t get to yesterday? It takes just a few seconds to get our to-do list updated again. In Ta-da List, it’s two simple mouse drags.

First, drag the TOMORROW divider just above the TWO DAYS FROM NOW divider. Everything that was set for tomorrow now falls under TODAY. Anything we didn’t get to yesterday still remains in TODAY. Drag TWO DAYS FROM NOW just above the FUTURE divider. Everything that was set for two days out now falls under TOMORROW.

Back to the Future

Each day, glance at your growing list of FUTURE items. If you’ll need to finish one of those items in the next two days, break that task down into bite-size tasks, and move them appropriately.

images/todolist-3.png

Reevaluating What Matters Each Day

A personal to-do list is perfectly made for adjustments to priority. It rolls with the daily uncertainty of software development. Perhaps an item that’s destined to be done today doesn’t seem as important anymore. Just drag it into the TOMORROW bucket or even further down. Similarly, an item set for TWO DAYS FROM NOW may be something you have the energy for today. Move it, finish it, and check it off.

There will be many days when we won’t get to all of our TODAY items. We may have an item stuck on TODAY for days on end because other priorities get in the way.

But after a while, patterns begin to emerge. Certain to-dos always seem to linger around our TODAY bucket or routinely get pushed back to TOMORROW. These “bad egg” to-dos might not be as important as we thought when we first added them. When a to-do item hangs around for a week or two, just get rid of it. Avoiding unimportant work is just as productive as completing important work.

images/andertoons_1613.jpg

A personal to-do list is not black magic; it will not do the work for us. Still, it helps us organize and adjust simultaneously while seeing real progress every day. Feeling good about each day’s small bit of progress keeps us on track to stay productive tomorrow.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
52.14.130.13