Lindsay Marshall wrote:

> The skill that I most commonly notice in good programmers is chunking - they 
> can see the structure in complex systems easily and know what to ignore and 
> when to ignore it. It somehow seems analogous to subitizing in a way.

I did a questionnaire study a few years ago in which I asked subjects
to give a descriptive titles to various stereotypical looping
constructs. For example,

Loop 1:

  for (iterator fish = lake.begin(); fish != lake.end(); ++fish)
    if (isSalmon(*fish))
      ++salmons;

Loop 2:

  for (iterator fish = lake.begin(); fish != lake.end(); ++fish)
    if (isSalmon(*tool))
      break;

The questionnaire was given to two groups: computer science students
and professional software developers.

The students used longer titles, such as "count number of
occurrences" and "find if any element is of some sort", whereas the
professionals used short titles, such as "count" and "find".

This could indicate that the looping constructs belong to the
basic-level category (Rosch, 1978) of the professionals but not
of the student.

 
----------------------------------------------------------------------
PPIG Discuss List (discuss@ppig.org)
Discuss admin: http://limitlessmail.net/mailman/listinfo/discuss
Announce admin: http://limitlessmail.net/mailman/listinfo/announce
PPIG Discuss archive: http://www.mail-archive.com/discuss%40ppig.org/

Reply via email to