Skip to main content
construction release_alert
The Scholars Team is working with OIT to resolve some issues with the Scholars search index
cancel

Why I care about programming and how to teach it

Publication ,  Journal Article
Astrachan, O
Published in: SIGCSE Bulletin (Association for Computing Machinery, Special Interest Group on Computer Science Education)
March 1, 2004

This is the thirty-fifth SIGCSE conference. Off-by-one bugs notwithstanding, it seems safe to assume that the members of the SIGCSE community have been teaching programming for at least 35 years. Have we improved the teaching of programming in that time? We have changed languages, we have occasionally changed paradigms, and the platform we use to teach programming is effectively infinitely more powerful than it was 35 years ago. However, if we use the SIGCSE proceedings as a snapshot of the state-of-the-art in teaching programming, it's possible to take a view that "the more things change the more they remain the same." In this talk I'll review what the community has had to say about teaching programming and what it is saying today. The community does not always speak in one voice, but there are established trends that illuminate what we as a community view as important. In 1974 David Gries discussed how we should teach programming and used this analogy: "Suppose you attend a course in cabinet making. The instructor briefly shows you a saw, a plane, a hammer, and a few other tools, letting you use each one for a few minutes. He next shows you a beautifully-finished cabinet. Finally, he tells you to design and build your own cabinet and bring him the finished product in a few weeks. You would think he was crazy!" As part of this talk I will demonstrate how I teach program-building and why I think that if we do not program in front of our students we cannot effectively teach programming. I hope to convince you that programming should be taught by demonstration and that I am not crazy.

Duke Scholars

Published In

SIGCSE Bulletin (Association for Computing Machinery, Special Interest Group on Computer Science Education)

DOI

EISSN

0097-8418

ISSN

0097-8418

Publication Date

March 1, 2004

Volume

36

Issue

1

Start / End Page

235

Related Subject Headings

  • Education
 

Citation

APA
Chicago
ICMJE
MLA
NLM
Astrachan, O. (2004). Why I care about programming and how to teach it. SIGCSE Bulletin (Association for Computing Machinery, Special Interest Group on Computer Science Education), 36(1), 235. https://doi.org/10.1145/1028174.971302
Astrachan, O. “Why I care about programming and how to teach it.” SIGCSE Bulletin (Association for Computing Machinery, Special Interest Group on Computer Science Education) 36, no. 1 (March 1, 2004): 235. https://doi.org/10.1145/1028174.971302.
Astrachan O. Why I care about programming and how to teach it. SIGCSE Bulletin (Association for Computing Machinery, Special Interest Group on Computer Science Education). 2004 Mar 1;36(1):235.
Astrachan, O. “Why I care about programming and how to teach it.” SIGCSE Bulletin (Association for Computing Machinery, Special Interest Group on Computer Science Education), vol. 36, no. 1, Mar. 2004, p. 235. Scopus, doi:10.1145/1028174.971302.
Astrachan O. Why I care about programming and how to teach it. SIGCSE Bulletin (Association for Computing Machinery, Special Interest Group on Computer Science Education). 2004 Mar 1;36(1):235.

Published In

SIGCSE Bulletin (Association for Computing Machinery, Special Interest Group on Computer Science Education)

DOI

EISSN

0097-8418

ISSN

0097-8418

Publication Date

March 1, 2004

Volume

36

Issue

1

Start / End Page

235

Related Subject Headings

  • Education