skip to main content
10.1145/2661103.2661113acmconferencesArticle/Chapter ViewAbstractPublication PagesicfpConference Proceedingsconference-collections
research-article

Form over function: teaching beginners how to construct programs

Published: 09 September 2012 Publication History

Abstract

Teaching beginners how to program is hard: As knowledge about systematic construction of programs is quite young, knowledge about the didactics of the discipline is even younger and correspondingly incomplete. Developing and refining an introductory-programming course for more than a decade, we have learned that designing a successful course is a comprehensive activity and teachers should consider and question all aspects of a course. We doubt reports of sweeping successes in introductory-programming classes by the use of just one single didactic device---including claims that "switching to Scheme" magically turns a bad course into a good one. Of course, the choice of individual devices (including the use of Scheme) does matter, but for teaching an effective course the whole package counts. This paper describes the basic ideas and insights that have driven the development of our introductory course. In particular, a number of conclusions about effective teaching were not as we had originally expected.

References

[1]
H. Abelson, G. J. Sussman, with J. Sussman. Structure and Interpretation of Computer Programs. MIT Press, Cambridge, Mass., second edition, 1996.
[2]
A. Bieniusa, M. Degen, P. Heidegger, P. Thiemann, S. Wehr, M. Gasbichler, M. Crestani, H. Klaeren, E. Knauel, and M. Sperber. HtDP and DMdA in the battlefield. In F. Huch and A. Parkin, editors, Functional and Declarative Programming in Education, Victoria, BC, Canada, Sept. 2008.
[3]
M. Crestani and M. Sperber. Growing programming languages for beginning students. In S. Weirich, editor, Proceedings of the International Conference on Functional Programming 2010, Baltimore, Maryland, USA, Sept. 2010. ACM Press, New York.
[4]
C. Dweck. Mindset: The New Psychology of Success. Ballantine Books, Dec. 2007.
[5]
K. A. Ericsson, R. T. Krampe, and C. Tesch-Romer. The role of deliberate practice in the acquisition of expert performance. Psychological Review, 100(3):363--406, 1993.
[6]
M. Felleisen, R. B. Findler, M. Flatt, and S. Krishnamurthi. The DrScheme project: An overview. SIGPLAN Notices, 33(6):17--23, June 1998.
[7]
M. Felleisen, R. B. Findler, M. Flatt, and S. Krishnamurthi. How to Design Programs. MIT Press, 2001.
[8]
M. Felleisen, M. Flatt, R. B. Findler, K. E. Gray, S. Krishnamurthi, and V. K. Proulx. How to Design Classes. http://www.ccs.neu.edu/home/matthias/htdc.html, Feb. 2011.
[9]
H. Klaeren and M. Sperber. Die Macht der Abstraktion. Teubner Verlag, 1st edition, 2007.
[10]
C. Wiemann. The "curse of knowledge," or why intuition about teaching often fails. APS News, 16(10), 2007. http://www.aps.org/publications/apsnews/200711/backpage.cfm.

Cited By

View all
  • (2018)Introductory programming: a systematic literature reviewProceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education10.1145/3293881.3295779(55-106)Online publication date: 2-Jul-2018
  • (2014)On teaching *how to design programs*ACM SIGPLAN Notices10.1145/2692915.262813749:9(153-166)Online publication date: 19-Aug-2014
  • (2014)On teaching *how to design programs*Proceedings of the 19th ACM SIGPLAN international conference on Functional programming10.1145/2628136.2628137(153-166)Online publication date: 19-Aug-2014

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
Scheme '12: Proceedings of the 2012 Annual Workshop on Scheme and Functional Programming
September 2012
99 pages
ISBN:9781450318952
DOI:10.1145/2661103

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 09 September 2012

Permissions

Request permissions for this article.

Check for updates

Author Tag

  1. introductory programming

Qualifiers

  • Research-article

Conference

ICFP'12
Sponsor:

Acceptance Rates

Scheme '12 Paper Acceptance Rate 4 of 4 submissions, 100%;
Overall Acceptance Rate 4 of 4 submissions, 100%

Upcoming Conference

ICFP '25
ACM SIGPLAN International Conference on Functional Programming
October 12 - 18, 2025
Singapore , Singapore

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)5
  • Downloads (Last 6 weeks)0
Reflects downloads up to 19 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2018)Introductory programming: a systematic literature reviewProceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education10.1145/3293881.3295779(55-106)Online publication date: 2-Jul-2018
  • (2014)On teaching *how to design programs*ACM SIGPLAN Notices10.1145/2692915.262813749:9(153-166)Online publication date: 19-Aug-2014
  • (2014)On teaching *how to design programs*Proceedings of the 19th ACM SIGPLAN international conference on Functional programming10.1145/2628136.2628137(153-166)Online publication date: 19-Aug-2014

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media