
thanks flickr. The link is here.
Teach Yourself Programming in Ten Years - Peter Norvig [Japanese here]
The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes.
Then repeat. And repeat again.
There appear to be no real shortcuts: even Mozart, who was a musical prodigy at age 4, took 13 more years before he began to produce world-class music.