Log in

No account? Create an account
17 July 2006 @ 11:47 am
There's a lovely paper I'm reading about teaching programming, and how you can tell who'll get it and who won't, and generally the ignominious history of trying to teach people who can't program to program.

Those of you who've talked to me on this subject before are aware of my "classes won't teach people who can't program to program" stance, and several related ones. The paper found remarkably similar results, though only in first-year programming classes. After that you've already weeded out the ones who haven't already got several key concepts in their minds.

A lovely little excerpt from the background in the paper:

Programming teachers, being programmers and therefore formalists, are particularly prone to the ‘deductive fallacy’, the notion that there is a rational way in which knowledge can be laid out, through which students should be led step-by-step. One of us even wrote a book [8] which attempted to teach programming via formal reasoning. Expert programmers can justify their programs, he argued, so let’s teach novices to do the same! The novices protested that they didn’t know what counted as a justification, and Bornat was pushed further and further into formal reasoning. After seventeen years or so of futile effort, he was set free by a casual remark of Thomas Green’s, who observed “people don’t learn like that”, introducing him to the notion of inductive, exploratory learning.

There is a vast quantity of literature describing different tools, or as they are known today Interactive Development Environments (IDEs). Programmers, who on the whole like to point and click, often expect that if you make programming point-and-click, then novices will find it easier. The entire field can be summarised as saying “no, they don’t”. It would be invidious to point the finger at any examples.

I *like* the authors' style. But I would.
lrclrc on July 17th, 2006 07:05 pm (UTC)
Interesting, if you put href="" in your tag, it sets up a link to the url that is currently being shown.

By the way, what is the url for the paper that you're reading?
QOTJsheenaqotj on July 17th, 2006 07:19 pm (UTC)
Yes, I was wondering about that weird link myself.
Noahangelbob on July 17th, 2006 07:19 pm (UTC)
Um... Problem? What problem? I see no problem.

Spyderellaspyderella on July 17th, 2006 07:16 pm (UTC)
I think I'd disagree with the placement of two commas:

"Programmers, who on the whole like to point and click, often expect..."

Uh, no. I abhor pointing and clicking, thank you. It is the slowest way I can interact with my computer. So, let's edit up that sentence:

"Programmers who like to point and click often expect..."
Noahangelbob on July 17th, 2006 07:24 pm (UTC)
Cool-Mantg2k on July 18th, 2006 12:17 am (UTC)
Yeah, I read that twice and thought, "well, it's a great crutch but I don't think it's for everyone".
gizbotgizbot on July 17th, 2006 10:29 pm (UTC)
I read the paper a while ago, and it seems like an excellent exploratory field paper. Also known as, "I saw something cool on a small badly done experiment. Please give me funding so I can see if it is real."

You might also look at the Joel on Software rants. He points to pointer abstractions. Others point to the 'N' in Myers-Briggs.

Fun fun.
Noahangelbob on July 17th, 2006 10:32 pm (UTC)
Well, yeah. I don't think they make any particular pretense at the study being comprehensive or all that carefully done. Certainly their tone (and much of what they say about their experimental technique) argues that they're neither of flawless methodology, nor prone to claim they are :-)
Michael Higginssui66iy on July 18th, 2006 02:54 am (UTC)
See, I can't condone the writing style of anyone who uses the phrase "paradigm shift" in a non-ironic way. Also, they spent nineteen pages describing an effect that they could have described in six. Strunk and White would kick their asses.

And their methodology is --- how to put this --- crappy. "Anonymisation introduced difficulties, because some students had forgotten their nicknames." That inspires confidence.

They also just have weird opinions. Everyone I know thinks (anecdotally) that programming skill correlates with high spatial ability. Not saying they're right, just saying that this "folk-wisdom" about programming skill being a mysterious unknown isn't anything I've ever heard. And I totally guessed their punchline about the "consistent" group being the high scorers.
spiffikins: stupidspiffikins on July 18th, 2006 05:24 am (UTC)
I particularly liked the part:

"Many of their subjects tried to use meaningful names for their variables, apparently hoping that the machine would be able to read and understand those names and so perceive their intentions."


Our VP of Development writes emails occasionally that fall just *this* side of snark - some of the lines in this study could have come from him