"a lack of commitment to one thing is just as productive as doing nothing at all."
If your goal is to build a finished product, yes, this is absolutely true. But if you choose ambitious projects beyond your current expertise, bringing the project anywhere beyond the planning stage will be a valuable experience for the purpose of learning.
Me and most people I know just have side projects for the fun of it. Why do we need strict metrics and goals?
Side projects boil down to two types - "for fun" and "for profit (maybe)".
My side projects are like yours; I dabbled for some time with machine learning and AI, despite being under-educated and under-brained. And though my projects never really succeeded I sure did learn a lot, and some of that familiarity helps with (and helped me get) my current job. The rewards were the fun of messing around and trying to understand something, and I didn't need a metric or goal for that.
what I was trying to say is that I think you need to be committed regardless. Even if your only goal as in your case is to learn something like how compilers work and not to make anything finished, I think we'd benefit by having clearer goals (such as now I want to build a small NFA from regex) and also having the commitment to not give up until we have achieved the goal.
If your goal is to build a finished product, yes, this is absolutely true. But if you choose ambitious projects beyond your current expertise, bringing the project anywhere beyond the planning stage will be a valuable experience for the purpose of learning.
Me and most people I know just have side projects for the fun of it. Why do we need strict metrics and goals?