I think of my build software faster work as research. I'm trying to understand how to reach a goal, and the way is unclear. I don't know if I've discovered anything new, yet, and I don't know if that will be required. My goal is to reach the goal, not to expand human knowledge for its own sake.
So, with this rambling framing, here are the things I've been doing that have felt like they helped me move towards my goal:
Making something I need
I talked about this is Don't build phony things. In the past, I've built many projects that solved a pretend person's pretend problem. This is a great way to a) not solve a real problem and b) have a project run out of steam as it lacks the motivating force of real people getting real value from it, and is mostly driven by what is fun/simple to build.
Keeping a list of thoughts about the work
I keep a long text note of all the thoughts and ideas and streams of consciousness that come to me when I'm thinking or walking or doing the washing-up. It's fun to have ideas and keeps my momentum up, and I find I lose these insights if I don't write them down.
Periodically condensing the list of thoughts
Once a month, I go through my list and condense it to the most useful and interesting stuff. This synthesis usually develops some of the ideas. Ideas for what to pursue next naturally bubble up. When I condense, I also incorporate past condensations. Some of it no longer feels relevant, or feels so ingrained I don't have to retain it. The result is a thick layer of cream - guiding principles, things that have worked repeatedly, ideas I want to try that still feel exciting.
Writing and publishing monthly updates on what I've written, made and read, and some reflections on it
This helps me learn more from what I've done. It helps me see what's working and what isn't. It helps me see what I should work on next.
Creating artifacts is essential for reminding me that the time I spent was useful. When I learn something, it feels like I always knew it, so I wonder what I spent all that time on and doubt if it was worthwhile. Artifacts are physical proof of the usefulness of the time spent.
Publishing draws others who I can learn from into my work.
Writing up ideas as mini essays and publish demos
This helps me understand things better. And it draw others into my work. And it creates artifacts.
Each month, stopping, and deciding what to work on next
After I've condensed my thoughts list and written my monthly update, I make a list of the things I could work on next. I take the list from the previous month and add new ideas I've had as I've worked on the most recent projects. Taking this step back helps me more accurately assess what would be the most useful to work on next. I draw out things that seem like obvious wins, then rank everything else based some vague idea of promisingness and value.
Doing short projects to maximize learning
Doing short projects stops me getting too attached to a project. This is important because, after a while, sunk costs and being in a rabbit hole stop me from seeing the value of what I'm doing clearly. Doing short projects forces me to re-assess regularly. I suspect that doing short projects also helps me find the fertile places in the vast space I'm working in.
Learning about prior art