Faves for this Web page

  • alan.dean - Apr 21 2007 | Learning

    A bunch of people have linked to this academic paper, which proposes a way to separate programming sheep from non-programming goats in computer science classes-- long before the students have ever touched a program or a programming language

  • In 1984, when I was in graduate school, I participated in a psych study on programmers. The goal of the study was to gain insight into how people debug applications. The grad student running the study set up a program that didn't work properly, gave us all a development environment and an instruction sheet on how to use it (a few simple edit commands, plus a Run command). He told us the correct result from running the program. There was a pad of paper and a calculator taped down to the table and a designated pen we were supposed to use. The test was scheduled for 2 hours and was being videotaped. We were able to review the editor "cheat sheet" before the 2 hours started.

    He started the clock and I looked at the program. I ran it and saw the incorrect output that it gave. I then looked at the program and immediately spotted an off-by-one error in a loop which was consistent with the incorrect result. I changed it and ran the program again and got the correct result. Total elapsed time: less than 1 minute. I then spent the next five minutes examining every line in the program to make sure there were no additional bugs. There weren't, so I turned to the observer and said "It looks like it was just that single bug. What do I do now?" Sure enough, it was just the one bug.

    I was clearly on the fast side, but it turned out I wasn't alone. Since I was one of the later participants in his survey, I was able to ask him how it had gone so far. It turned out that every single person in his test fit into one of two categories: solved it in <10 minutes, or couldn't solve it at all, given the full 2 hours. There was nobody in between. Certainly an interesting result, but not what he was looking for. Unfortunately, I never saw his final paper, so I don't know what he ended up writing about.

    Quoted: All teachers of programming find that their results display a 'double hump'. It is as if there are two populations: those who can [program], and those who cannot [program], each with its own independent bell curve. Almost all research into programming teaching and learning have concentrated on teaching: change the language, change the application area, use an IDE and work on motivation. None of it works, and the double hump persists.

Votes for this web page

Add a Fave for this Web page

What happens when I press Publish?
Your Fave for this Web page gets shared with the Faves community. You can access it at any time by selecting "My Faves" from the menu above.
Why do you ask for my email address?
We use your email address to create an account, so you can easily find your Fave again at a later time.
Rate It

Separate each email address with a comma.
WE DO NOT SPAM | Please read our privacy policy.

Related Content from Around Faves

education

VIEW ALL