| The article touches on organizing code which has an interesting aside for me. When I work on side projects, I certainly encounter periods of boredom or disengagement. What can help is to say something like "you know what... I am just going to rewrite this and make it much cleaner". Only feature parity. Not trying to force anything new or trick myself into solving a hard problem right now. Sometimes this simple cleanup pass will turn into several hours of deep exploration and development. Sometimes not. I think of this similar to intense physical exercise. No one in their right mind goes to the gym and deadlifts their 1 rep max without at least a tiny amount of warmup beforehand. If you are on this path and trying to build a real thing that people might actually want to pay for (or is at least compelling enough to work on for free), you are dealing with a similar mental barrier. Warm yourself up on smaller, more approachable tasks if you are finding trouble with motivation. Rerun a successful prototype from last year to remember why you are still doing all of this in the first place. Also, if you aren't using source control for your side projects, you really need to get into the rythym. Every personal project I have worked on since ~2017 has a repository tracking it in Github. It takes me 10 seconds to find that clever chunk of code from a few years ago using their global search feature. Little tricks like this keep me from spiraling into distracted nothingness. If I had to manually browse through folders in my filesystem or dropbox, I'd never touch this stuff again. |
I create a "project" in my to-do list app for each side project, and dump every little idea I have in there while I'm excited and switched on about the idea. When my motivation ebbs and eventually returns (months or years later), I have a low-friction starting point to jump back in, which makes all the difference.
Jumping into a months-old codebase _and_ having to figure out what to build next usually means I feel a bit discouraged and never really get back to that project.