[Grace-core] Quoting David Gries

Kim Bruce kim at cs.pomona.edu
Mon May 6 23:15:53 PDT 2013


The following quote is from David Gries in an after-dinner speech at ItICSE (CS education conference) in June, 2002 in Aarhus:

       "Language shapes the thought and culture.

said Benjamin Whorf, and we believed this saying and took it to heart. But the switch to C/C++ was based not on pedagogical and technical considerations but on what students need to get a job and popular sentiment from outside CS. No one has ever said that C or C++ were pedagogically good languages to teach to beginners. No one believes that. It was pressure from industry and and other academic departments, who wanted their people to be able to program in C/C++, that carried the day.

We sold our soul when we adopted C/C++. Well, some of you did. Wirth didn't. I didn't. Our department vote for C/C++ at Cornell was 23 to 1. I was the 1. I gave all the right pedagogical reasons why C/C++ was the wrong choice. No one listened; they didn't care about pedagogical concerns. They cared about what industry was doing and what some Engineering College departments wanted.

I refused to teach the introductory course when it switched to C/C++; I have never taught these languages or used them in a course, and I never will.

A year after the switch from C/C++ to Java in the introductory course at Cornell, all the later courses like operating systems and compiler construction voluntarily switched to Java because it was so much easier on the instructor and student! Then, another debate began: Our students HAVE to learn C/C++ to get a job. Which course should be required to use C/C++? They chose data structures, of all courses! Needless to say, after that I did not teach data structures and 
algorithms.

The C/C++ debacle is a symptom of an incurable disease that no other field has. CS is too close to our area of application, in fact, they are becoming the same. No one would tell a physicist what research to do or how to teach their subject. No one would tell a chemist what notation to use on the blackboard. But everyone thinks they know enough about computing to tell us what to do and when to do it. Outside forces influence us too much.

In his keynote talk yesterday, Wirth said that he would like someone to write an introductory programming text that (0) would be moderate in size, (1) would contain a concise, formal definition of the language being used (no more than 20 pages), (2) would start with a succinct introduction into the basic notions of program design, (3) would establish intuitive and precisely defined terminology, (4) would discuss the basic concepts of iteration, recursion, assertion, and invariant, and (5) would have as a central topic the structuring of statements and typing of data.

Even if someone writes that book, I am pessimistic about people using it, because it won't use a popular language! Who is going to use a book that doesn't use C/C++ or Java? Out of the question. It's a symptom of the main problem of our field; we are influenced too much by outsiders."

Kim



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailhost.cecs.pdx.edu/pipermail/grace-core/attachments/20130506/56f6842e/attachment.html>


More information about the Grace-core mailing list