2
$\begingroup$

A couple of years ago, I read a story about a professor of computer science, who showed his first semester students a few lines of code with a simple questions. I think it was something along the lines of this:

a = 5 
b = a
a = b + 5
c = a + b

What is c?

And this professor argued, that this simple test is in some sense surprisingly reliable to check, whether a first semester student will be good at computer science or not. Sadly I cannot find any reference to this story anymore online.

Does anybody know about this story? Is it true? What was the exact code?

I am really sorry, if this is the wrong site for this kind of questions. I looked at different StackExchange websites and this seemed to be the best fit for my question.

$\endgroup$
3
  • 1
    $\begingroup$ $b = a$ and $a = b + 5$ has no solution as a system of equations. $\endgroup$
    – greybeard
    Commented Jan 5 at 9:54
  • 2
    $\begingroup$ This question might be more well received in CSE.SE. $\endgroup$ Commented Jan 5 at 15:10
  • 1
    $\begingroup$ @greybeard Except it would make sense to treat = as assign operator rather than equivalence. $\endgroup$
    – rus9384
    Commented Jan 5 at 23:45

2 Answers 2

4
$\begingroup$

You might be thinking of this paper:

Testing Programming Aptitude. Saeed Dehnadi. PPIG, 2006.

They used a quiz that contained questions like:

Read the following statements and tick the box next to the correct answer in the next column.

int a = 10;
int b = 20;
a = b;
b = a;

The new values of a and b are: [...]

Dehnadi reported very high success at predicting which students would be successful in an introductory CS course.

Others attempted to reproduce these results in other years and found less impressive results:

Mental models and programming aptitude. Michael E Caspersen, Jens Bennedsen, and Kasper Dalgaard Larsen. SIGCSE 2007.

Mental models, consistency and programming aptitude. Richard Bornat, Saeed Dehnadi, Simon. Australasian Computing Education, 2008.

For instance, Caspersen et al. found no correlation between quiz results and student success, and Bournat et al. reported that the approach "has failed to live up to that early promise". I am not an expert on this topic, but my impression is that the early reports have not panned out and do not appear to be correct.

There has been lots of other research on predicting student success in introductory CS courses, with mixed success.

$\endgroup$
4
  • 2
    $\begingroup$ Personally, I find this useless. There is a famous quip by Erik Meijer who said he never understood programming in school because he couldn't understand how there could be an x that satisfies the equation x = x + 1;. So, he would possibly have failed this test, yet I am sure nobody would argue Erik Meijer doesn't understand Computer Science. $\endgroup$ Commented Jan 5 at 23:27
  • 1
    $\begingroup$ @JörgWMittag it is indeed an abuse of notation, the correct assignment operator should be something along x := x + 1; $\endgroup$ Commented Jan 5 at 23:33
  • $\begingroup$ I'm curious how you've discovered this paper, D.W. $\endgroup$ Commented Jan 5 at 23:35
  • 1
    $\begingroup$ @KennethKho, I have read it before; and I did a bit of searching on Google and Google Scholar on papers related to predicting student success in CS education, found a few papers, read their related work section, and that helped me find the paper I remembered. $\endgroup$
    – D.W.
    Commented Jan 6 at 9:00
1
$\begingroup$

This test shows that you have at some point in time programmed a computer in a procedural language or at least seen someone doing it. A mathematician from the 1920s might very well fail this test. That doesn’t mean they would have any problem learning either computer science or software development.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.