Even more interesting to me is if one could create a test for prospective programmers that could be taken before one even knew how to program and would distinguish people who would be good at programming and those who wouldn't. Is this even possible? Programming is more complex than learning a new human language in that there are a lot more things that go into it than just knowing the language. But it's clear that some people are better at both programming and learning new programming things. Could one find a verifiable way to predict this ahead of time?