What is Already ‘First’
February 8, 2011 at 9:30 am 1 comment
Bertrand Myer did a Blog@CACM piece in response to my argument that there is no ‘first’ in CS1. I meant it in the sense that students have some idea of computation. Bertrand explored what his students already knew about programming, which is a subset of computation. He found that his students had mostly already had some programming experience, at least at ETH Zurich.
For the past eight years I have been teaching the introductory programming course at ETH Zurich, using the “inverted curriculum” approach developed in a number of my earlier articles. The course has now produced a textbook, Touch of Class [1]. It is definitely “objects-first” and most importantly contracts-first, instilling a dose of systematic reasoning about programs right from the start.
Since the beginning I have been facing the problem that Mark Guzdial describes in his recent blog entry [2]: that an introductory programming course is not, for most of today’s students, a first brush with programming. We actually have precise data, collected since the course began in its current form, to document Guzdial’s assertion.
via What ‘Beginning’ Students Already Know: The Evidence | blog@CACM | Communications of the ACM.
Entry filed under: Uncategorized. Tags: computing education, CS1.
1.
Alan Kay | February 8, 2011 at 11:41 am
I think there is something (especially for some students) to what Bertrand claims. Both the papers cited in his article are worth reading (as is his book).
Very few of these students, if any, will have seen the “Meyer” approach to programming (and there is a lot to be said for it in many cases). So his tack is able to find a “first” (at least for some of the students).
An interesting companion comparison would be between the European (and UK) universities and comparable ones in the US (would GaTech match up to ETH?)
A student who is at ease with relatively simple mathematical thinking would not encounter a big additional burden to think about “contracts” and “objects”, but those who come to college pretty innocent of actual math thinking (as opposed to “applying patterns to problems”) might find this approach really daunting.
Cheers,
Alan