Proxy Goals and Actual Goals

My longest streak on GitHub is 129 days. I was aiming for 200 days during a time when I wanted to have measurement for my commitment to learning more stuff, and doing more side work.
One day I came back from work around 8pm really tired. So, I decided to lay on the bed before jumping into my afternoon routine. I woke up 45 mins after midnight, missing the deadline for my daily contribution. I won’t say that I almost cried for breaking my long streak, but missing the daily deadline was the first thing that came to my mind when I looked at the time.
I was very upset, and started searching online for something I heard about git’s ability to re-write history or something, maybe I can trick GitHub. Couldn’t find anything and went back to sleep.
The next day, I was still upset till the evening when it came time for my daily deadline. I noticed that I wasn’t stressed like I was the past few weeks.
See, at the start, I had lots of things to contribute. I was building this blog, and it was a lot of work and fun. Then there wasn’t much stuff to do, but I had a goal to achieve. Coming up with things to do was getting hard. Things that had to be small enough that I can do in a day. No, I can’t stop and learn something. Reading or watching a tutorial wasn’t gonna help keep my streak.
Somewhere along the line, I lost sight of my actual goal of learning more stuff, and doing more side work, and moved to a proxy-goal (not sure if that’s a word) of keeping a contribution streak on GitHub. I think of a proxy-goal as a measurable goal that you use to indicate whether or not you’re achieving your goal. The proxy-goal became the actual goal, and when the two were at odds, I chose the proxy-goal instead. In the last couple of weeks of my streak, I would do small tiny changes 15 mins before midnight to keep my streak going.
It’s helpful to have a metric of how well you’re doing, and how you’re progressing toward your goal, but it’s important to keep that metric in perspective. When it’s at odds with your actual goal, make sure to choose your actual goal.
This doesn’t apply only for GitHub contributions. Think of the proxy-goals that are replacing actual goals in your daily life.

Scott Hanselman started a conversation on his blog about GitHub activity guilt and this was my comment on the topic.