On 18 Mar 2011, at 14:40, Stefano Federici wrote:
> Now I have an urgent need to know which (if any) are the specific tests that
> would allow me to group students that have an inclination to programming from
> students that have so such an inclination, and students that already know how
> to program a computer from students that have never tried to program a
> I can imagine that I have to test their mathematical and logical skills. I
> can check if they have previous knowledge about programming and programming
> languages. But should I check if they have good knowledge about specific
> areas of linguistics, such as, e.g., syntax? Are there other domains that may
> be relevent for an individual so to understand in advance if they have an
> inclination to computer programming?
Hmm. I think that the ability to form and use mental models of program
execution is very important in learning to program. The best survey of Saeed
Dehnadi's results is in "Meta-analysis of the effect of consistency on success
in early learning of programming" (Dehnadi, Bornat, Adams; PPIG 2009) which you
can download from
If you ask students if they have learnt to program, and they use the
conventional mental models of assignment and sequence in Saeed's test, then
they can probably already program. Those who use the wrong model or no model
can't program, whether or not they say they can. Lots of people seem to be able
to guess the right model (there are clues in the questions), so just using the
right model would capture more than those who have learnt to program.
We don't yet understand what Saeed's result means, although 20% exam failures
in those who 'pass' his test versus 55% exam failures in those who 'fail'
suggests that it has something to do with the question.
The Open University is incorporated by Royal Charter (RC 000391), an exempt
charity in England & Wales and a charity registered in Scotland (SC 038302).