Friday, December 12, 2008

Testing for programming aptitude

Neat article. They say they can tell who has the brain for programming. [Link]

The test asked simple questions about assignments (example shown in the image above.) The group tested broke down into three camps: people who answered the questions using different mental models for different questions, people who answered using a consistent model, and people who didn't answer the questions at all:

Told that there were three groups and how they were distinguished, but not told their relative sizes, we have found that computer scientists and other programmers have almost all predicted that the blank group would be more successful in the course exam than the others: “they had the sense to refuse to answer questions which they couldn’t understand” is a typical explanation. Non-programming social scientists, mathematicians and historians, given the same information, almost all pick the inconsistent group: “they show intelligence by picking methods to suit the problem” is the sort of thing they say. Very few, so far, have predicted that the consistent group would be the most successful. Remarkably, it is the consistent group, and almost exclusively the consistent group, that is successful.

Interestingly, this correlation is unrelated to correctness -- being consistently wrong in your mental model of how a computer works is better than being inconsistently right, because if you are consistently wrong, you only have to learn one thing to start being consistently right.

This makes sense since from my experience a lot of what seems to be a sign of programmer aptitude is the ability to have a mental model for how a program or a computer works. Some people just seem to get it, some don't.

No comments:

Post a Comment