If I'm writing a 100-line python script to process a text file, I'm not going to worry too much about making it run as quickly as possible, say.
Just when you think it's good enough, it isn't.
The point is that the last two questions are the ones that truly matter.
My point is that, in practice, counting the ways of perfection is counting the ways of imperfection. This focus on all the things lacking is discouraging and distracting from whatever you are actually trying to do.
IMHO, it's more effective to focus on what you value, what is worthwhile, and keep improving towards that; that is, to go towards what you value, instead of away from imperfection. It's more fun and you're more likely to come up with something that will be valuable to others - instead of "perfect" within some impoverished universe.
I say "impoverished", because the only way to have perfection is to define it, and as soon as you define it, you exclude all those possibilities that were beyond your imagination until you stumbled upon them, often via a "mistake". i.e. Any defined universe is necessarily impoverished, compared to the big one.