That’s a sobering post, in relation to improving software.
More importantly, how can I apply this to myself?
My first idea is to measure how much I accomplish, and attempt to increase that.
I’m doing exercises in language book, I could attempt to increase number of questions answered.
I also write tools for myself, I could increase number of GitHub issues completed?
Does anyone have more suggestions on how I can apply these same principles to my personal improvement as a programmer?
Here’s a short summary of my core method (when I’m disciplined enough to follow it):
The key here is that the choice of metric should happen after you identify the change you’re going to make.
This is primarily because metrics are proxies for actual value (rather than being valuable in and of themselves) because value doesn’t have a simple definition.
Once you start thinking about ‘how can I improve number of questions answered’, you have moved on from thinking about ‘how can I learn this well’.