Break it down
There is a simple practice that takes little time but has significant benefits.
Before you start working on a non-trivial task, write down a list of items that you need to do to accomplish the task.
Breaking up the big task into smaller pieces will make it easier to start, help you stay on track, and reduce the time you spend thinking about what comes next when you've completed a piece.
An example
Let's say you have to implement a new payment form.
Once you have thought through all the things needed to accomplish this, you might come up with a list as follows:
- Clarify requirements and constraints
- Design the payment form
- Check which form components I can use
- Implement the payment form
- Make it responsive on all screen sizes
- Add client-side validation
- Create a feature flag
- Write acceptance test
- Add the payment processing endpoint
- Integrate with the payment provider
- Write end-to-end test
- Deploy to the staging server and ask QA to test it
- Roll out to production – switch on the feature flag to 10% of users
- Crank up the ratio of users who see it
When decomposed, a daunting task like the one above seems less scary and more feasible. You also have a list of to-dos you can start acting on without needing to think about what comes next. And last but not least, you're less likely to forget a vital subtask.
When working on some of the tasks, you might find they are still too big, and you want to split some of them again. That's fine—you can keep breaking them down until they are the size you feel comfortable with.
Write them down and track them
Because you have all the subtasks written down, you can and should cross items out as you finish them. This gives you a sense of achievement and boosts your motivation to see the original, big task through.
You can do this in your notebook using a pen or with a digital checklist (in your note-taking app, in a GitHub PR, etc.). I find a physical pen dopamine-inducing, but it might be just me.
The blank paper paralysis
The hardest part of any task is starting it—all but the most trivial ones seem daunting, and thus, it's hard to motivate oneself to start. It is like an author aiming to start a novel and staring at a blank (digital) paper, unable to put the first words down.
Dividing up tasks hacks this problem. The subtasks are smaller and thus easier to get started with. If they are not, you can break them down more.
This will get you out of the rut with a clear action plan to boot, and once you start working on it, nothing will stop you.
In summary, you should break down non-trivial tasks into smaller items and write them down because:
- It helps you see what needs to happen to accomplish the task.
- It gives you an action plan to follow without spending time to assess what's next.
- You're less likely to miss important details and subtasks.
- You can easily track your progress by marking items as finished, which gives you a sense of achievement.
- It circumvents the blank paper problem. The subtasks constituting the big one are more actionable and more straightforward to start with.