by Peter Norvig, Director of Research @ Google
Researchers... have shown it takes about ten years to develop expertise in any of a wide variety of areas, including chess playing, music composition, telegraph operation, painting, piano playing, swimming, tennis, and research in neuropsychology and topology. 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.
C++ in 10 minutes Code
Time to master a subject is 10 years in average.
But learning time does depend on teacher.
Jesse Liberty is a great author and teacher,
"10 minutes" is one in series of "shrinking time" books (21 days, 7 days, 24 hours...)
Is also has a good "Yet Another Podcast" site...