If you find yourself staring at your screen instead of making progress, try breaking a big problem into smaller ones by using a checklist.
This forces you to plan your work systematically and gives you positive feedback as you complete each task.
Big Problem, Small Tasks
Recently I was working on an update for a new project using a framework I was unfamiliar with. The update was fairly broad in scope.
Progress was slow as I worked to simultaneously assimilate the data model and the unfamiliar, framework-specific code.
After a few days of spinning my wheels, I realized I needed a different approach. I began by splitting the update into a series of subtasks.
I keep project notes in Obsidian, so I created a new document with a simple markdown checklist. I determined what parts of the project to update and added subtasks for each part.
If necessary, I added child tasks under the subtasks for even better granularity. Any notes or questions that needed answering for that subtask were also documented in the list.
Checking it Off
Once I had a checklist, I was able to tackle one piece of the update at a time. Seeing each item checked off in turn was highly motivating.
Like many productivity techniques, dividing tasks into subtasks seems like a no-brainer. My true takeaway is to force myself to reach for these techniques sooner until they become an instinctive part of my mental toolkit.