Allocating tasks based on mental energy
One of the things I've found trying to train like an elite athlete and still grind personal projects and code cocurrently is sometimes I'm dead tired which leads me to be less productive behind my keyboard. One of the ways I've worked around this is by allocating tasks based on my mental energy, this assures that there is always "something to do" and no time that could be spent programming is wasted. Here are the 5 categories that I believe make up 95% of projects, sorted by taking the most mental energy to the least.
Thinking about what features to implement/add
I think that this is the hardest thing to actually sit and do, it seems easy but you need to make sure that what you've decided on is worth invested time into and also that it's something that is actually needed. Big decision so I don't try and do it unless I have the energy to do so.
Thinking about how to implement a feature
Quite hard depending on the feature but I really feel as though this is the brunt of the work and bears the most cognitive load. Involves doing research, reading other peoples code that achieves something similar and playing around with different posibilities. During this step its important to map out every thing that needs to be done to achomplish the task sequentially and in detail. You dont want to just leave this information in your brain you want to put it somewhere.
Actually implementing the feature
If you;ve done the prior step well this is actually really easy. If its not easy you need to go back and spend more time in the previous step. This might be a hot take but I believe that if the implementation isnt easy you havent spent enough time thinking about the implemenation and its a sign that things are going to go downhill very fast very soon.
Fixing little backend bugs
Through me and my users using my projects I find little bugs from time to time, nothing breaking but things that would just be nice to fix. These are usually quite easy to fix so as long as theyre not breaking the application I save them for when I'm tired as nice easy wins to keep momentum.
Fixing front-end or UI bugs
Same as the previous point but even easier. Nowadays most front-end bugs can be fixed by describing what you want in good detail and asking a certain tech-overlord very nicely. Of course review the code nicely and iterate on it either by yourself or with more prompts but this is quite easy. If they're not complying just figure it out youtself or steal some components. It's more of a "take some time and patience thing" than a "think logically and use your brain intensly thing" so I do this when I'm my most tired.
Published on 2024-02-09