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

“The Lambda Trick”

18 May, 201530 June, 2015

I just got back from C++Now, an excellent conference where C++ template metaprogramming experts abound. A phrase I overheard often was “the lambda trick”. It’s a trick for speeding up compiles when templates get deep. Every C++ programmer knows that deep templates can slow down compilation. Most assume that this…

Read More

fighting the code

25 March, 200729 July, 2007

Why doesn’t automake/autoconf properly recognise the way to use Flex/Bison with C++ scanner/parser generation? I use a .ll file and it thinks the output is going to be a .c instead of a .cc. Likewise I use a .yy file and it screws up the includes in my bison output…

Read More

Another myth, about C++ lambdas

16 March, 201530 June, 2015

Myth: Lambda expressions can cause heap allocations. I see this myth coming up a lot. People think that lambdas can cause a heap allocation – on Reddit, on StackOverflow, on Channel9 comments, in personal conversations. I don’t blame people for thinking this – C++ is complex. But it always seems…

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