Tuesday, July 10, 2018

From deep within the archives: A programming aptitude test

[Editor's note: This post first appeared on this blog back in November 2007, nearly 11 years ago, proving that dinosaurs such as your correspondent can indeed survive. Whether they have relevance is, of course, another matter entirely. --RWP]

Here's a passage from Lewis Carroll's Through the Looking Glass that may help you decide, if you were wondering, whether to pursue a career as a computer programmer:

`You are sad,' the Knight said in an anxious tone: `let me sing you a song to comfort you.'

`Is it very long?' Alice asked, for she had heard a good deal of poetry that day.

`It's long,' said the Knight, `but it's very, very beautiful. Everybody that hears me sing it -- either it brings the tears into their eyes, or else --'

`Or else what?' said Alice, for the Knight had made a sudden pause.

`Or else it doesn't, you know. The name of the song is called "Haddocks' Eyes".'

`Oh, that's the name of the song, is it?' Alice said, trying to feel interested.

`No, you don't understand,' the Knight said, looking a little vexed. `That's what the name is called. The name really is "The Aged Aged Man".'

`Then I ought to have said "That's what the song is called"?' Alice corrected herself.

`No, you oughtn't: that's quite another thing! The song is called "Ways and Means": but that's only what it's called, you know!'

`Well, what is the song, then?' said Alice, who was by this time completely bewildered.

`I was coming to that,' the Knight said. `The song really is "A-sitting On a Gate": and the tune's my own invention.'

If reading that had your head spinning like Linda Blair's in The Exorcist, perhaps you should not consider computer programming for your life's work. But if you understood the passage perfectly, if you were drawn to the "else" discussion as a moth to the flame, if you had no trouble separating the song, the name of the song, what the song is called, and what the name of the song is called, not to mention the tune, from one another, and if the last few minutes brought a twinkle to your eyes and a chuckle to your throat, then you obviously have a grasp of symbolic representation that just may be your key to fame, fortune, and success in the programming world! Or, as COBOL and FORTRAN programmers used to say, else.


  1. Brilliant. I have had this and similar explained a dozen times but am too thick to understand programming in any basic language. I can make the Arduino do basic tasks but it doesn't really excite me or work C+ is just me wasting limited time. I usually ask a friend to do it then complain bitterly when my instructions were not precise enough for him to do the job properly. Very nice folk are programmers. They have the patience of saints. Saints who rely on practical people to test their gibberish.
    I do run, copy and paste Python. Occasionally I even and odd write it but experience says this is not a good idea. I can do HTML. I can do it Like this HTML or like this HTML.

  2. Adrian, it is good to know that you can do HTML in bold or italic. That's a start. If you learn a few HTML codes for the more common special characters and also how to make a clickable link, you will feel as brilliant as Lewis Carroll.

  3. I grew up with Lewis Carroll. Both of my parents reciting big slabs from Through the Looking Glass on a regular basis. I will never be a programmer though. I am simultaneously awed by them and grateful to them.

  4. EC, as a long-ago programmer I humbly accept retroactively both your awe and your gratitude.

  5. I began college in a programming course. I hated flow charts. I did okay with either/or. When I was expected to take a Cobol class I switched to business.

  6. Emma, I would guess that if you have the aptitude for programming it is easy, and if you don’t have the aptitude it is anything but.