Can this work in learning a new programming language? I'm seeing parallels in that you'll need to recognize/encode patterns/syntax in both.
Greg Wilson (who founded Software Carpentry) has a great collection of thoughts on learning to program in general: http://third-bit.com/