But the issue with goals is that ambitious people tend to set them too high and are disappointed when they don't think they're making progress at a pace they'd like. Then, when you set multiple interval goals, you get a false sense of accomplishment when you reach them, which seduces you into relaxing, taking a breather.
That is why I am directing my attention to building habits. For the first month, until January 5th (when I go back to school), I want to be spending 14-20hrs a week programming.
With any skill, there is a clear correlation between time spent practicing and skill. I have never heard a story of somebody who spent 5 or 10 years of their life programming and have yet to "get it".
Coding is a knack where the only way you'll learn is by putting the time in and that's why my goal is to put in the time on a consistent basis.
[Hat Tip to Roshan Choxi for his insight]