Skip to content
Why is a raven like a writing desk?

Thoughts both confusing and enlightening.

Why is a raven like a writing desk?

Thoughts both confusing and enlightening.

The Camel Has Two Humps

elbeno, 6 June, 200729 July, 2007

I’ve just been reading an interesting paper on teaching programming. First, the data regarding rates of attrition on computing courses is startling. Between 30% and 60% of the total CS intake fails the very first programming course!

The paper’s authors postulate 3 programming hurdles to be negotiated:

  • sequencing and assignment
  • iteration and recursion
  • concurrency

Surely one would think that the first of these is no hurdle at all (the concepts are part of everyone’s everyday life) and yet it is! From personal experience, I would say actually that recursion is quite a significant mental way past iteration, and I think many programmers never get that far, let alone to the hurdle of concurrency.

They further posit 3 groups of pupils:

  • those who accept and work with the system of rules that is ultimately meaningless
  • those who attempt to see meaning where there is none
  • those who refuse to work with meaningless rules

Of these, only the first group succeeds as programmers. The other two flounder.

Programming

Post navigation

Previous post
Next post

Related Posts

Rules for using <random>

8 April, 20153 June, 2025

These days, it’s easy to do the right thing. Don’t do this: Don’t use std::rand(). Ever. Don’t use std::random_shuffle() to permute containers. (Too easy to misuse; can use std::rand() under the hood.) Don’t use any kind of clock for a seed. Don’t use mod (%) to get a random value…

Read More

(Part of) what I do all day

12 September, 200812 September, 2008

Lately I’ve been asked what I do at work. What I really do. Well, if Great Biggary can frequently expound on his latest Maya scripts and python excursions, here goes with my explanations… Most of what I do all day is read code. Just like an author or poet will…

Read More

I wrote my first Python program

20 January, 200920 January, 2009

Last Friday. Knowing almost no Python at noon, by 5pm I had some code to munge XML and do something useful for my current project. So it’s not bad. It’s good for productivity. Mostly because: It has useful libraries. Bread-and-butter data structures are built in, i.e. lists and dictionaries. I…

Read More

Comments (3)

  1. sylvene says:
    6 June, 2007 at 4:03 pm

    My brother maintains that he managed to write programmes to do things that the language wasn't supposed to do, then he went to school, learned computer programming and couldn't do it anymore. i.e. he learned to work with the systems of rules.

    (http://livejournal.com/users/sylvene)

  2. elbeno says:
    6 June, 2007 at 5:16 pm

    I don't know what you mean by “things that the language wasn't supposed to do”.

    (http://livejournal.com/users/elbeno)

  3. sylvene says:
    6 June, 2007 at 5:27 pm

    Neither do I. I'm not a programmer. :p

    I'm *baa* repeating *baaa* what he would say *baa*

    (http://livejournal.com/users/sylvene)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

©2026 Why is a raven like a writing desk? | WordPress Theme by SuperbThemes