Here's how I "solved" this in myself: I use the streak feature on github. I work through books and projects, and just push them forward 20-30 minutes a day, every single day. Since starting in March, I've read and done the examples/homework for: Let Over Lambda, F# Programming, Clojure Programming, PLAI, and I'm almost done the second chapter of SICP. I've prepared and given a meetup talk, invented some neat stuff, and all around really enjoyed my increasing mastery. It's been the most productive 9 months of my life, and I don't really feel like it's much of a strain. My mind has calmed; my focus increased. I cannot recommend it enough.
I'm really committing code everyday. I'll commit the exercises, or if there are no exercises, I'll type up my learnings as a comment, and I'll try to write an example of what it was I was trying to learn.
Gotcha, thanks for the additional info. I might give this a try. I like how your approach requires some active work in order to check a day off, and how it automatically gives you a history of what you've done each day. I've tried the "Jerry Seinfeld calendar" approach, but it's a bit too easy to get lazy or cheat when your only sign of progress is an "x" on a calendar with no real evidence of work attached to it.