I'd put all people, including non-developers, into two groups. Those who finish their side projects and those who don't. The size of the first group is very, very small.
You must be careful about that distinction - some projects are never "finished". Especially in the case of code, where the traditional definition means less "complete" and more "unsupported and unmaintained", i.e. analogous to "dead".
Doesn't that tie to his point about ambition? People with side projects with huge ambitious goals don't complete them, because the goals are so large.
My side project is a fully realistic nfl simulation that mirrors the exact details of a real football game. The ambition is what never makes it "complete". I have a functional, effective football game. But is it a true accurate simulation? no. Is that even possible? Probably not.