4 comments

[ 4.4 ms ] story [ 24.8 ms ] thread
There are lots of tests which can distinguish potential good programmers from those who lack that possibility; for example, the LSAT is mostly a test of logical reasoning and would serve ideally for this purpose.

The problem for Computer Science departments isn't a lack of available tests; rather, the problem is policies (mostly from governments) which require CS departments to take in as many students as possible, whether qualified or not. In my area (BC, Canada), the government decided six years ago that universities should double the number of computer science degrees they hand out -- at exactly the same time as the number of applicants was dropping sharply due to the dot-com bubble bursting. Unsurprisingly, the requirements for admission to CS programs fell dramatically, and (thanks to the flood of unqualified students) the number of students failing first and second year CS courses went through the roof.

We know how to identify good vs. bad students -- the problem is a lack of willpower to do anything with that information.

The results of a programming aptitude test might be useful for students, though. It could save them the effort of enrolling in CS, failing the classes, then switching to a different major.
There are lots of tests which can distinguish potential good programmers from those who lack that possibility

According to the paper, this is exactly wrong. It's notoriously difficult to test for programming aptitude. That's what makes the authors' test interesting (assuming it holds up - the paper is entertainingly written but the data set is small).

The subject is troublesome in many ways. It's not just the students who fail; there are lots of successful CS graduates who aren't good programmers either.

The title of this submission is a little misleading.

Here is the conclusion of the paper: There is a test for programming aptitude, or at least for success in a first programming course. We have speculated on the reasons for its success, but in truth we don't understand how it works any more than you do. An enormous space of new problems has opened up before us all.