bookmarks for August 14th, 2007 through August 15th, 2007 bookmarks for August 13th, 2007 bookmarks for August 8th, 2007 through August 9th, 2007 bookmarks for August 4th, 2007 through August 7th, 2007 bookmarks for August 3rd, 2007 bookmarks for July 30th, 2007

Research on learning to program

The camel has two humps (working title) is a very interesting paper that describes a test which supposedly can tell who will be good at programming and who won’t:
From author Saeed Dehnadi’s page:

We (Saeed Dehnadi, Richard Bornat) have discovered a test which divides programming sheep from non-programming goats. This test predicts ability to program with very high accuracy before the subjects have ever seen a program or a programming language.

Also interesting from the paper:

From experience it appears that there are three major semantic hurdles which trip up novice imperative programmers. In order they are:

  • assignment and sequence
  • recursion / iteration;
  • concurrency.

My own experience seems to confirm this path, I know many programmers who, like me, have problems with concurrency. But I’m not sure if it’s because it’s inherently more difficult or because of the way most languages describe it (shared state).
Via Lambda the Ultimate