It's really easy to over think the way that we approach our work and manage our
own time and projects. There are no shortage of tools, services, books, and
methods to organizing your days and work, and while there are a lot of good
ideas out there, it's easy to get stuck fiddling with how you work, at the
expense of actuallying getting work done. While I've definitely thought about
this a lot over time, for a long time, I've mostly just done things and not
really worried much about the things on my to-do list.
I think about the way that I work similarly to the way that I think about the
way I work with other people. The way you work alone is different from
collaboration, but a lot of the principles of thinking about big goals, and
smaller actionable items is pretty transferable.
My suggestions here are centered around the idea that you have a todo list,
and that you spend a few moments a day looking at that list, but actually I
think the way I think about my work is really orthogonal to any specific
tools. For years, most of my personal planning has revolved around making a
few lists in a steno pad once or twice a day, though I've
been trying to do more digital things recently. I'm not sure I like it. Again,
tools don't matter.
Smaller Tasks are Always Better
It's easy to plan projects from the "top down," and identify the major
components and plan your work around those components, and the times that I run
in to trouble are always the times when my "actionable pieces" are too
big. Smaller pieces help you build momentum, allow to move around to different
areas as your attention and focus change, and help you use avalible time
effectively (when you want.)
It's easy to find time in-between meetings, or while the pasta water is boiling,
to do something small and quick. It's also very easy to avoid starting something
big until you have a big block of unfettered time. The combination of these
factors makes bigger tasks liabilities, and more likely to take even longer to
complete.
Multi-Task Different Kinds of Work
I read a bunch of articles that suggest that the way to be really productive
is to figure out ways of focusing and avoiding context switches. I've even
watched a lot of coworkers organize their schedules and work around these
principles, and it's always been something of a mystery for me. It's true that
too much multi-tasking and context switching can lead to a fragmented
experience and make some longer/complicated tasks harder to really dig into,
but it's possible to manage the costs of context switching, by breaking apart
bigger projects into smaller projects and leaving notes for your (future)
self as you work.
Even if you don't do a lot of actual multitasking within a given hour or day
of time, it's hard to avoid really working on different kinds of projects on
the scale of days or weeks, and I've found that having multiple projects in
flight at once actually helps me get more done. In general I think of this as
the idea that more projects in flight means that you finish things more often,
even if the total number of projects completed is the same in the macro
context.
Regardless, different stages of a project require different kind of attention
and energy and having a few things in flight increases the chance that when
you're in the mood to do some research, or editing, or planning, you have a
project with that kind of work all queued up. I prefer to be able to switch to
different kinds of work depending on my attention and mood. In general my work
falls into the following kinds of activities:
- planning (e.g. splitting up big tasks, outlining, design work,)
- generative work (e.g. writing, coding, etc.)
- organizational (email, collaboration coordination, user support, public
issue tracking, mentoring, integration, etc.)
- polishing (editing, writing/running tests, publication prepping,)
- reviewing (code review, editing, etc.)
Do the Right Things
My general approach is "do lots of things and hope something sticks," which
makes the small assumption that all of the things you do are important. It's
fine if not everything is the most important, and it's fine to do things a
bit out of order, but it's probably a problem if you do lots of things without
getting important things done.
So I'm not saying establish a priority for all tasks and execute them in
strictly that priority, at all. Part of the problem is just making sure that
the things on your list are still relevant, and still make sense. As we do
work and time passes, we have to rethink or rechart how we're going to
complete a project, and that reevaluation is useful.
Prioritization and task selection is incredibly hard, and it's easy to
cast "prioritization" in over simplified terms. I've been thinking about
prioritization, for my own work, as being a decision based on the following
factors:
- deadline (when does this have to be done: work on things that have hard
deadlines or expected completion times, ordered by expected completion date,
to avoid needing to cram at the last moment.)
- potential impact (do things that will have the greatest impact before lesser
impact, this is super subjective, but can help build momentum, and give you
a chance to decide if lower-impact items are worth doing.)
- time availability fit (do the biggest thing you can manage with the time you
have at hand, as smaller things are easier to fit in later,)
- level of understanding (work on the things that you understand the best, and
give yourself the opportunity to plan things that you don't understand
later. I sometimes think about this as "do easy things first," but that
might be too simple.)
- time outstanding (how long ago was this task created: do older things first
to prevent them from becoming stale.)
- number of things (or people) that depend on this being done (work on things
that will unblock other tasks or collaborators before things that don't have
any dependencies, to help increase overall throughput.)
Maintain a Pipeline of Work
Productivity, for me, has always been about getting momentum on projects and
being able to add more things. For work projects, there's (almost) always a
backlog of tasks, and the next thing is ususally pretty obvious, but sometimes
this is harder for personal projects. I've noticed a tendency in myself to
prefer "getting everything done" on my personal todo list, which I don't think
particularly useful. Having a pipleine of backlog of work is great:
- there's always something next to do, and there isn't a moment when you've
finished and have to think about new things.
- keeping a list of things that you are going to do in the more distant future
lets you start thinking about how bigger pieces fit together without needint
to starting to work on that.
- you can add big things to your list(s) and then break them into smaller
pieces as you make progress.
As an experiment, think about your todo list, not as a thing that you'd like
to finish all of the items, but as list that shouldn't be shorter than a
certain amount (say 20 or 30?) items with rate of completion (10 a week?)
though you should choose your own numbers, and set goals based on what you see
yourself getting done over time.