Is the issue here really about problem solving, or about having to account for your time in excessively fine-grained increments? Given a coarser-grained model of dividing up tasks, wouldn't it be easier to solve the segfault and move on?
In general it's about pressue to get the main task done quickly. I thought of some common reasons I feel this pressure:
- external, e.g. bug hurting our clients.
- feeling bound by an overly optimistic estimate, like couple hours vs. a week
- can't focus, procrastinate and then rush to get the work done
- imposter syndrome and constant feeling that I should have done my assigned task long time ago
- personal issues forcing me to take some time off and delaying shipment
- having already spent considerable time in some other rabbit-hole, especially without asking for permission
- misunderstood something, wasted lots of time implementing wrong thing but don't want to admit
- scope creep, a feature that's too big and too long in not-yet-ready-for-deployment, risk of interruptions, merge conflicts and being too big to test properly grows
The first one is fundamental and sometimes things are simply urgent. Addressing rest of them is an ongoing effort.
Without this kind of pressure I often find solving problems like debugging library code or git forensics quite fun.
I'm fine with fine-grained time accounting. Part of a decade of remote freelancing. Nowadays I do it habitually without being required.