This is also the solution for developers. You sit down and do the work. Some days are better than others. If you have rituals or strategies to maximize that productive time, that's great, but don't sit around waiting for the muse to inspire you.
I find it helpful to have:
- resumable tasks - I want to sit down and work, not sit down and figure out what to do
- multiple projects - if today isn't a great day for intellectual pursuits and I keep getting interrupted maybe I'll do an admin task or fix some simple bugs. Also works for when something is stalled.
- acknowledge you cannot control everything - if the progress is delayed in ways the estimate didn't anticipate, document them and keep working
> - resumable tasks - I want to sit down and work, not sit down and figure out what to do
I've found this indeed helps me get back to productivity. But at the same time, if I know what exactly needs to be done, it would be hard for myself to stop until it's finished. And that's when multi-day coding binge happens, followed by a few days of fatigue and low productivity. Kind a of a catch-22 for me...I wonder if there's anyway to be moderate about it.
I am not able to do that now. I have a family that needs to be there. When I was younger, sure, I'd pull all-nighters. But those days are gone. When I work now,I have to use my time wisely and be laser focused. I also found when I was working crazy hours, the quality of the code wasn't great. I learned to sleep on problems, then I'd solve them quickly first thing in the morning.
I find it helpful to have:
- resumable tasks - I want to sit down and work, not sit down and figure out what to do
- multiple projects - if today isn't a great day for intellectual pursuits and I keep getting interrupted maybe I'll do an admin task or fix some simple bugs. Also works for when something is stalled.
- acknowledge you cannot control everything - if the progress is delayed in ways the estimate didn't anticipate, document them and keep working