Someone in my constallation recently used "resolved" rather than "finished" to describe the ending point. Right now, I am finding that a more useful way of thinking about the processes of creative works.
When it is resolved, you can see identify the thing the something is.
When it is resolved, the decision has been made.
When it is resolved, the problem has been mitigated.
Not sure if this helps you, I just know it is helping me.
Work in smaller increments. It's easier to finish and deploy a lot of small changes than to try and close a giant series of interdependent changes. Aim to return to a finished/deployable state as soon as possible.
Sometimes you just have to write down the broken stuff you find while working, and address it later. In the moment it might seem high priority to fix it, but once it's on the same todo list as everything else, you realise that it doesn't matter so much. Time makes task priority more obvious.
There is no universal answer to this. With everyone having varied amounts of available time, other commitments and responsibilities, neurodivergences and other factors, it is impossible to come up with some kind of formula that applies to all circumstances.
The best we can do is:
- Don't beat yourself up, and mind that negative self-talk when you don't get all the work done that you expected to.
- Document. A lot. You think you will remember Small Detail X. You won't, especially after switching to a different project for awhile. Leave yourself a good map.
- Stop comparing yourself or your progress to others. It's not as valuable as you think.
- Be realistic about your limits. We see a lot of mythology surrounding our heroes, painting them as these one-man armies or superhuman go machines. They aren't. They had help, usually from other people. A lot of other people.
- If it stops being enjoyable, walk away. Misery is not a character builder like grandpa might have implied.
Presumably, by “finish” the OP means “good enough to ship” or “does what it initially proposed it would”.
But even ignoring that, you can finish software projects. It is definitely possible to stop and say “this is done, it works exactly as I wanted, does no more or less than desired”.
Presumably you’re asking because you have difficulty finishing projects. It would be useful to know why. Do you feel excited for them at the start but then it fades until you abandon them?
If so, a simple tip is to start smaller projects. Make something you can accomplish over a day instead of a massive undertaking that will take you a year.
Depends on the time you intend to work on it. The 12 startups in 12 months forces to ship something every month which makes it very effective to focus.
The last 20% of the project is usually spent towards refining, cleaning up and addressing edge cases whereas the initial 80% is the actual fun problem solving/creativity part. So it’s natural not to finish
Good luck! I should add that it does not have to be a "serious" one. Adding something to the todo.txt is a commit. Adding a comment in some file is a commit.
When it is resolved, you can see identify the thing the something is.
When it is resolved, the decision has been made.
When it is resolved, the problem has been mitigated.
Not sure if this helps you, I just know it is helping me.
YMMV. Good luck.