Principles of Task Management

I want to continue my series of articles on how to build effective systems for productivity and organization. In the first article, I talked about the importance of looking at productivity systems as individuals rather than a concept that applies to everyone the same way. In this article, I want to take some time to discuss what I believe are foundational principles of good task management systems.
I call this task management, however, these principles can be applied to many different aspects of life. For the sake of simplicity, I'm only going to discuss the application to task management.
High-Level Goals
I believe there are 3 high-level goals that you should strive for when managing your workload. The three principles are:
- Effectiveness
- Reliability
- Sustainability
Effectiveness
The first goal may seem obvious, but it should be understood because sometimes when we get distracted and life gets busy, we forget its importance. Any system that you are using needs to be effective for you. The system should be a way to organize the chaos of life in such a way that you are able to effectively accomplish the things you are responsible for. If the system is not doing this, then you should be looking at how to either improve your usage of the system or find a new system.
Make sure your system will really work.
Reliability
The second high-level goal of task management is to use a system that is reliable. You are going to be using this system from a daily to hourly basis, so make sure it's not going to suddenly disappear. You need to be able to access your system quickly and effectively. You can't be wasting 10 minutes looking around for paper or files. The information needs to be able to be brought to your attention at a moment's notice whenever and wherever you need it.
Make sure your system will work well.
Sustainability
The third goal is to have a system that you will be able to continue to use over a long period of time. Habit-forming takes a long time, so looking at your task management as a form of habit building will help you be able to construct a sustainable framework that can work for you for years to come.
Make sure your system will continue to work.
Practical Goals

There are also 3 goals that I've found can be applied more practically. These are some of the principles that I've learned about and discovered over years of building my own systems.
- Ease of Use (Effortless Usage Of Tools)
- Visibility (Nothing Falling Between the Cracks)
- Flexibility (The Ability To Change and Re-Organize)
Ease Of Use (Effortless Usage Of Tools)
The first practical goal of task management systems is that they should be easy to use. Another way of saying this is that they should be frictionless. There should be minimal mental or physical effort required to use the tool. It shouldn't feel like a chore to use your productivity system. This of course assuming that you get through the period of time where you are still learning and practicing. That will always feel like a little bit of work, and take some time to form habits. But after a few weeks of using something, it should get to the point where it becomes second nature. If it's not, then you should consider how you can make it easier to use.
There are 3 places that I've found where this principle of effortlessness should be considered.
Effortless Capture of Ideas
Use your mind to think about things, rather than think of them. You want to be adding value as you think about project and people not simply reminding yourself they exist - David Allen
The concept of capture is a term coined by David Allen, creator of the GTD methodology. the idea of capture is simply the practice of writing down ideas that come into your head. Instead of using brain power to try to remember the idea or task, you simply capture the information. Write it down, record yourself, or make a sticky note. There are so many methods of capturing information in today's world. The goal is to get it out of your head and into another medium so you don't have to exert mental energy to remember.
This is a major aspect to consider when building your organizational system. Try to reduce the amount of mental energy you're using to remember things and make a place to write them down. Free up your mind to think about more important things like problem-solving, analysis, and creativity.
It's also important that the process of capturing information uses as little effort as possible. If it takes more effort to record the information than simply keeping it in your head, you won't do it. It needs to be fast and simple. That way, it doesn't distract you unnecessarily.
Effortless Maintenance Of Information
The maintenance of information will be part of what determines the best medium (i.e. paper, computer, recorder) for you to use to manage your tasks. If you are like me and have slow, terrible handwriting, then using a paper-based method to keep track of your tasks is probably going to introduce a lot of mental friction - and frustration! Similarly, if you are not comfortable in front of a computer, then you should probably avoid using apps, or computer-based systems because it's going to be too mentally taxing to use.
regardless of the tool, you decide to use, maintaining the information within it should take very little effort. Going back to my example of having terrible handwriting, I couldn't easily use a typical writing system to stay organized. However, if I chose to encode my whole system with symbols and colors instead of words, maybe then I could use paper. This would be an example of modifying my system to reduce friction.
Since you are going to be using this system regularly, every bit of mental energy, and second of time you save will multiply every day you use it. Saving a few seconds here and there can result in huge amounts of time and energy being saved over months and years.
Ease of Insight (Ability To Focus On What's Important)
Finally, you should be able to quickly answer questions like, "What am I working on today?" "What do I have lined up to do tomorrow?" and "what is the next thing I should work on?" This information should be easy to determine or find within your system.
This is where computer-based systems seem to shine in my perspective. Data in databases can be organized in different ways so that you only see what is important. Not to say that paper-based systems can't do this though - there are some very clever ways of organizing information on paper. You might just have to think outside the box to come up with a method that will work for you.
The disadvantage to computer-based systems is that you need to be careful about how you use the programs. Computers can store a lot of information, and being able to view a particular set of information requires the UI (user interface) of the program to be designed in such a way that supports this. I plan to describe this in more detail in future articles.
Visibility (Nothing Falling Between The Cracks)
It is also crucial to have a clear picture of all of your tasks at a given time. This is particularly true if there's a lot in your task list that is outside your control. For me, this happens when the completion of a task is dependent on others. You need to have the ability to re-evaluate your priorities if something happens that delays a task outside of your control.
The concept of visibility is that once a task or note gets captured in your system, it's never missed or lost. It may not be always at the forefront, but it is in a place where it will not get forgotten. Good systems will also push tasks closer to the forefront the longer they wait. There are three ways that I have applied this concept with my productivity systems.
- Task Status
- Subtasks
- Review
Both of these concepts are important to make sure that no tasks are left in your system and forgotten.
Task Status
The concept of a task status is an idea that I learned about from the world of Kanban and Agile/Scrum management practices. Kanban is a system developed at Toyota in Japan which sought to increase the efficiency of production off the assembly line. While it was originally designed to manage manufacturing, Agile and Scrum took some of the concepts of Kanban and applied them to software development. The basic idea of task status is that you have tasks that can live in several "states". Your tasks can move between these states as you work to complete each task. Common examples are "To Do", "In Progress", "Waiting" and "Done" Depending on your situation you may need more status's like "Manager Review" or "Testing".
Depending on your situation, the number of statuses that your tasks are able to have can vary greatly. It is important to see these statuses at any given moment and know the things you have to do, the things that are done, and the things that are in some state of progress. Instead of looking at a long list of tasks and having to remember why it hasn't been checked off yet, you can simply look at the tasks with a given status and get the overview.
Another advantage to using a task status is that you are able to watch things like how many things you have "In Progress" at a given time. This can help you be able to make sure that you are completing things that you start before moving on to something else. In other words, it can keep you from multitasking so much that nothing actually gets done. Depending on what kind of jobs your doing, this can be vitally important.
Subtasks
The next concept that improves visibility is the concept of subtasks. Subtasks are small steps that need to be taken in order to complete a primary task. I typically use this as a checklist. It helps me not forget any steps that are needed to complete the task. It also allows me to quickly see where I've left off if it's a job that takes several days to complete.
In my professional work, it is also very helpful when processes change. If my manager comes to me and says that we are making a change to the way we process orders, I don't have to remember this each time. Instead, I can modify my checklist to add the additional steps, and every time I process an order, I remember it automatically because I added it as a subtask.
Review
Having a review process built into your system causes you to assess tasks that have been waiting or been missed. This will make sure that nothing on your task list gets permanently forgotten.
For me, the process of reviewing my tasks gives me an opportunity to evaluate if certain tasks are still important. If so, I re-organize them accordingly. The review process also gives me an opportunity to follow up with someone who I'm waiting on to complete a task. Finally, a review of my completed tasks allows me to receive some Dopamine looking at the things that I have accomplished. Dopamine is the body's way of helping to improve motivation to keep going.
Flexibility (The Ability To Change and Re-Organize)
As I eluded to earlier. There are times (particularly when working on a team that requires multiple people to work together to complete tasks) that you need to be able to quickly change priorities.
It is also important to be able to change priorities and re-organize with as little effort as possible.
It's already hard enough for us to change direction, and be okay with priorities changing. The need to context-shift from one thing to another causes the body stress. We can't let our task management tools be another source of stress.
Another way of thinking about this is the more effort you put into organizing your agenda, the less likely you will be to change it. Since completely avoiding change is not practical, it is better to make the process of organizing your schedule as simple as possible.
Priorities
The first method of creating flexibility in your task management system is utilizing a method of prioritization. People do this typically by marking certain tasks as "high priority" when it's the most important thing to accomplish during that day.
Sometimes, assigning a numerical value to priorities can be helpful. By assigning one task as "first priority" and another as "second priority" you are able to create a rough map of how to spend the time in your day. When you finish the first priority or hit a roadblock, you move to the second priority.
There are two problems that I have found with this method:
First, it can be easy to abuse this kind of system, making it all about the first priority. Nothing else matters until the first priority is done. This will cause the other tasks to have to wait when you hit a roadblock.
Secondly, a simple priority method limits your ability to define how much time tasks will take. This is one of the advantages of scheduling as I will discuss more below. When you are only using a priority ranking of your tasks, you're not able to clearly define how much time something will take before moving on to the next thing.
In short, priorities are good because they are simple. The disadvantage is that you have no way of quantifying the amount of time they will take, how long you should work on something, or when you need to have it completed.
Scheduling
The primary reason why urgent tasks exist is that there is a deadline. Sometimes there are other reasons, but the most common cause for an urgent task is that you need to have the task finished by a certain date or time. This is why I think capturing the deadline of tasks is necessary to manage the importance of the task effectively.
There are several ways that I've tried over the years to schedule my time and maintain priorities. On one extreme, there is a simple date-scheduling method. This captures the date that something needs to be completed. On the other extreme, is a process called time blocking where you schedule every hour of your workday and what you are going to be working on. I'll go through the advantages and disadvantages of both.
The advantage of general scheduling is that it is easy. It's simple to change dates and update priorities accordingly. This simple date method is great for teams, but not quite so effective for individual time management.
When you have lots of tasks to be done all within differing amounts of time, it can feel overwhelming to try to think about what you should work on first. It's really hard to manage your time with dates alone when there are 10 tasks of differing complexity all due on the same day.
Time Blocking
The solution to this is a more precise scheduling method. The method I've used over the years is the block scheduling method. This allows you to look at your tasks at the beginning of the day, determine which ones should be done, and then work on them in their allotted time buckets.
The advantage is that this practice keeps you on track and focused. You have a certain period of time to do a task, so it limits your tendency to waste time. It also keeps you working methodically - not getting distracted by your other tasks because you know you have allocated time to work on them. If you waste your time slot, you can't get it back.
The problem with time blocking is that when things change, it can be a royal pain to update your task list with new priorities. There is a massive amount of overhead (friction) to changing time block schedules. There are between 12 and 24 effective working hours in a day. If your priorities change, that could mean you have to change a dozen items before starting your work. If you're working in an environment where your priorities change very quickly, time blocking should be practiced very cautiously.
General Time Blocking (Hybrid Approach)
I personally use and have developed a kind of hybrid approach to these two methods. I think it's beneficial to use time blocking when I have a lot of tasks and start getting overwhelmed. However, I'll tend to neglect it if my workload starts to decrease.
My process of block scheduling uses large buckets of time rather than smaller hour-long buckets. I have an "early morning" bucket, "late morning" bucket, etc. This allows me to still prioritize and have a clear execution plan for the day but reduces the amount of friction to change if my priorities suddenly change to something different. If I get really busy, I'll put multiple tasks in by buckets of time-ordered in the way that I plan to work on them.
As I said previously, I plan to go into more detail about my methodology in a future post. But I believe the principle that's important to take away when it comes to flexibility is:
Detailed scheduling is good when there is most of your schedule is only dependent on you.
Detailed Scheduling is not good when a majority of your schedule is dependent on others.
Summary
The primary goals of a personal productivity system are to be effective, reliable, and sustainable. The way that I've found to accomplish this has been to first make the system effortless to use.
This can be done by making sure capturing and updating information is as simple as possible.
Second, make sure you can find information quickly and effectively. This can be accomplished using task status and subtasks.
Third, make it so that it is easy to change and modify your system based on changing priorities. This is done through finding a personal balance of scheduling specifically enough to execute the plan effectively, but not too much that you can't change it around quickly.
I will continue this series of articles on building productivity systems going into some more practical examples, recommendations, and ideas that you can use to design your own personal system of productivity.
-Josh