Getting Stuff Done

Syndic8: Getting Stuff Done — Jeff Barr has a great method for breaking down projects into really short tasks:

  1. I keep a very detailed TODO list.
  2. When I am about to do something new, I break it down into items that can be
    done in 5 to 15 minute chunks. Given the power of PHP and MySQL, these chunks
    can be pretty big. I make each chunk something that will move the site forward,
    or at least not break it.
  3. I work on single chunks, write the code, test it, and deploy it (sometimes I
    reverse the order of the last two steps).
  4. I keep good notes on my TODO list and in my daily worklog so that I can
    easily pick up from where I left off.
  5. I try my best to never walk away from my desk while leaving anything
    broken.

This reminded me of Joel Spolsky’s method for scheduling software projects, including the directive to “pick very fine grained tasks”. Joel’s example emphasizes tasks measured in hours rather than days or weeks. Jeff’s approach takes that one level smaller for individual projects by getting down to the 5-15 minute range.