Every time I work on a project, the amount of progress increases logarithmically. This means I start off really strong and I end off really weak. I’ve noticed this for a majority of projects that I work on.
I think a big reason why this happens is because when my project is able to get 50-60% of cases (ie it works but don’t touch it), internally my brain feels like it’s done and I don’t want to work on it anymore. When I start off a project I get huge boosts in dopamine when I finish a part and get it to work. Over time there are fewer and fewer things to do and I don’t get as big a dopamine hit when I gradually finish up remaining features. This gets really ****bad when I try to think of edge cases, because it’s not entirely clear what needs to be done, and I don’t even know what edge cases exist.
This has affected the quality of my work and I would like some strategies of keeping high output even towards the later stages of a project which involves less excited parts of work.
I think this somewhat relates to Alex’s video on “”, but I feel that the hard part is that I don’t even know where to begin. I don’t know where edge cases may. On a component level it’s not too bad, but when you’re doing integration testing and when the space of possible inputs is extremely high, it feels like you’re put in the middle of the ocean.
As an example, recently I was tasked with writing a bot to draw an ordered set of lines, curves and arcs on a canvas. The input a vector representation of the drawing and the output is an mp4 recording.
First 3 days went pretty well. In fact, I pretty much built the entire system and integrated everything. The annoying part comes to solving edge cases from integration testing. For the next 7 days I spent days kind of just sitting around, testing my system, and getting bored. I was waiting for my partner to finish his part of the system.
What strategies are there to make my output more consistent? I tried doing a test plan but they tend to be really shallow because I don’t know how the system looks like/what edge cases look like until I’ve actually built the product.