Knowing when to quit and not seeing things through are two different things. I often find myself just not finishing things that I definitely could’ve.
But I also don’t mind too much for my personal projects. A GitHub graveyard, for me, displays gaining experience.
Lots of the projects in my graveyard were about tackling interesting challenges, then losing interest in doing the gruntwork needed to get to something worthy of releasing.
There’s a balance to be struck. Seeing things through and releasing something to the world are also important things to learn and do once in a while. Doesn’t have to be anything big.
Similarly my graveyard is something I go back to so I can see how I solved certain parts of the puzzles I faced. Trying to remember everything is fruitless, having your past experiences readily to hand effectively written down is what works for me.
Yes, I try to ensure I’m quitting something for a logical reason free from emotion and not because of feelings.
Projects like this ended up common enough for me that I split them out into a GitHub ‘organisation’ attached to my account, with all my unfinished projects, prototypes, and finished-but-not-useful code.
I like the idea of writing postmortems for abandoned projects. There may even be stadard POSTMORTEM file so that people would know where to find the cause of death.
i don’t even think of mine as a graveyard, because every now and then i’ll dust off a years-old project and do a little hacking on it. it’s more a atticful of fun things i like to play with on occasion.