Hi HN! This is probably the most important thing I ever learned, so I'll repeat it here for the people who only read the comments :)
I found a way to work on my project every day, without willpower.
I just eliminated all the failure modes.
1. Skipping days breaks momentum: I can't skip days. (So I made it easy to win: I only need to show up for an hour.)
2. Delaying the work leads to missed days. I get tired, I get distracted, I forget. So I decided I need to work as soon as I wake up. Then I guarantee it gets done.
3. Distracted by stupid BS. Noticed that all my distraction came from the internet, and getting distracted would tank productivity for the remainder of the day. So I just unplug the router before bed.
That's my whole system, and I'm using it right now. (I used it to write this post!)
The deeper idea here is ... just find out what's making you fail, and see if you can't design around that. Just design it so those things do not happen. Then you will win by default.
Hope this helps! :)
---
P.S. the astute reader may observe that this describes the Q2 category in the Eisenhower Matrix[0] (Important But Not Urgent): things we want to get done "someday", but which will never get done unless we make time it.
i.e., our hopes and dreams...
For this reason, I very strongly recommend dedicating the first hour to Q2. Q1 "handles itself", by definition. Q2 is the one that needs love!
(That probably should have been the main thesis. Oh well!)
> Q2 category in the Eisenhower Matrix
I thought I was in the target audience for this post, but now I'm entirely confused.
> Skipping days breaks momentum: I can't skip days
This is my most important rule. I do not believe in "rest days" anymore. They are catastrophic for my ability to stay focused on a big project. This isn't to say I advocate for a 997 working hour system. I do believe in taking it easy and sometimes putting in the bare minimum, but a day with absolutely zero progress I cannot permit anymore.
24 hours is a long time. If I can't add a tiny amount of value each day, the project is probably dead. Especially a project like a game. The workflows for things like creating 3d models and scenes are generally so complicated that if you don't exercise them ~daily they will rot quickly. I open blender after not using it for a few months and it almost feels like I've never used it before. Not because I don't know how to use it (although I am far from an expert), but because the specific workflow that adds value to my project is not a straight line through space. It's a lot of steps and menu options to click through. Good luck remembering which UV unwrap presets you prefer for UV0 vs UV1 after a week of working on something unrelated.
Just keeping the tool chain open & alive on my machine feels like 80% of the battle. If it's sitting there and in a good state to iterate with, I find myself automatically pulled toward it. If that battlefield 6 queue takes longer than 10 seconds, I will inevitably be alt-tabbed into Visual Studio or Unity.