Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

A cognitive approach to identifying measurable milestones for programming skill acquisition

Published: 26 June 2006 Publication History

Abstract

Traditional approaches to programming education, as exemplified by the typical CS1/CS2 course sequence, have not taken advantage of the long record of psychological and experimental studies on the development of programming skills. These studies indicate a need for a new curricular strategy for developing programming skills and indicate that a cognitive approach would be a promising starting point. This paper first reviews the literature on studies of programming skills, cognition and learning, then within that context reports on a new formal structure, called an anchor graph, that supports curricular design and facilitates the setting of measurable milestones.

References

[1]
Deborah J. Armstrong. The quarks of object-oriented development. Communications of the ACM, 49(2):123--128, 2006.
[2]
David Ausubel. Educational psychology; a cognitive view. Holt, Rinehart and Winston, New York, New York, 1968.
[3]
Mordechai Ben-Ari. Constructivism in computer science education. Computers in Mathematics and Science Teaching, {in press}.
[4]
Mordechai Ben-Ari and Jorma Sajaniemi. Roles of variables as seen by CS educators. In ITiCSE'04: Proceedings of the 9th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, pages 52--56, New York, NY, USA, 2004. ACM Press.
[5]
J. B. Biggs and K. F. Collis. Evaluating the Quality of Learning: The SOLO Taxonomy. Academic Press, New York, New York, 1982.
[6]
B. S. Bloom. Taxonomy of Educational Objectives, Handbook I: The Cognitive Domain. David McKay Co Inc., New York, New York, 1956.
[7]
Jerome Bruner. The Process of Education. Harvard University Press, Cambridge MA, 1960.
[8]
Duane Buck and David J. Stucki. Design early considered harmful: graduated exposure to complexity and structure based on levels of cognitive development. In SIGCSE'00: Proceedings of the 31st SIGCSE Technical Symposium on Computer Science Education, pages 75--79, New York, NY, USA, 2000. ACM Press.
[9]
M. Chi, R. Glaser, and E. Rees. Expertise in problem solving. In R. Sternberg, editor, Advances in the Psychology of Human Intelligence, pages 7--75, Hillsdale, N. J., 1982. Erlbaum.
[10]
Graham Cooper. Research into cognitive load theory and instructional design at unsw. http://education.arts.unsw.edu.au/CLT_NET_Aug_97.html, December 1998.
[11]
Z. P. Dienes. The growth of methematical concepts in children through experience. Educational Research, 2(1), 1959.
[12]
H. Dreyfus and S. Dreyfus. Mind Over Machine: The Power of Human Intuition and Expertise in the Era of the Computer. Free Press, New York, NY, USA, 1986.
[13]
Marcy P. Driscoll. Psychology of Learning for Instruction. Allyn and Bacon, Needham Heights, MA, 2nd edition, 2000.
[14]
Benedict du Boulay. Some difficulties of learning to program. Journal of Educational Computing Research, 2(1), 1986.
[15]
Anna Eckerdal, Robert McCartney, Jan Erik Moström, Mark Ratcliffe, Kate Sanders, and Carol Zander. Putting threshold concepts into context in computer science education. In ITiCSE'06: Proceedings of the 11th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, pages 103--107, New York, NY, USA, 2006. ACM Press.
[16]
Anna Eckerdal, Robert McCartney, Jan Erik Moström, Mark Ratcliffe, and Carol Zander. Can graduating students design software systems? In SIGCSE'06: Proceedings of the 37th SIGCSE Technical Symposium on Computer Science Education, pages 403--407, New York, NY, USA, 2006. ACM Press.
[17]
Anna Eckerdal, Michael Thuné, and Anders Berglund. What does it take to learn 'programming thinking'? In ICER'05: Proceedings of the 2005 International Workshop on Computing Education Research, pages 135--142, New York, NY, USA, 2005. ACM Press.
[18]
Kate Ehrlich and Elliot Soloway. An empirical investigation of the tacit plan knowledge in programming. In J. Thomas and M. L. Schneider, editors, Human Factors in Computer Systems, pages 113--134, Norwood, N.J., USA, 1984. Erlbaum.
[19]
Marja Kuittinen and Jorma Sajaniemi. Teaching roles of variables in elementary programming courses. In ITiCSE'04: Proceedings of the 9th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, pages 57--61, New York, NY, USA, 2004. ACM Press.
[20]
Raymond Lister, Elizabeth S. Adams, Sue Fitzgerald, William Fone, John Hamer, Morten Lindholm, Robert McCartney, Jan Erik Moström, Kate Sanders, Otto Seppälä, Beth Simon, and Lynda Thomas. A multi-national study of reading and tracing skills in novice programmers. In ITiCSE-WGR '04: Working group reports from ITiCSE on Innovation and Technology in Computer Science Education, pages 119--150, New York, NY, USA, 2004. ACM Press.
[21]
Raymond Lister and John Leaney. Introductory programming, criterion-referencing, and Bloom. In SIGCSE'03: Proceedings of the 34th SIGCSE Technical Symposium on Computer Science Education, pages 143--147, New York, NY, USA, 2003. ACM Press.
[22]
Raymond Lister, Beth Simon, Errol Thompson, Jacqueline Whalley, and Christine Prasad. Not seeing the forest for the trees: Novice programmers and the SOLO taxonomy. In ITiCSE'06: Proceeding of the 11th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, pages 118--122, New York, NY, USA, 2006. ACM Press.
[23]
Kenneth Louden. Programming Languages: Principles and Practice. Course Technology, second edition, 2002.
[24]
Richard E. Mayer. The psychology of how novices learn computer programming. ACM Computing Surveys, 13(1):121--141, 1981.
[25]
Michael McCracken, Vicki Almstrum, Danny Diaz, Mark Guzdial, Dianne Hagan, Yifat Ben-David Kolikant, Cary Laxer, Lynda Thomas, Ian Utting, and Tadeusz Wilusz. A multi-national, multi-institutional study of assessment of programming skills of first-year CS students. In ITiCSE-WGR'01: Working group reports from ITiCSE on Innovation and Technology in Computer Science Education, pages 125--180, New York, NY, USA, 2001. ACM Press.
[26]
Bertrand Meyer. Testable, reusable units of cognition. IEEE Computer, April 2006.
[27]
Jan Meyer and Ray Land. Threshold concepts and troublesome knowledge (2): Epistemological considerations and a conceptual framework for teaching and learning. Higher Education, 49:373--388, 2005.
[28]
Jan Meyer and Ray Land. Threshold concepts and troublesome knowledge: Linkages to ways of thinking and practising within the disciplines. ETL Project: Occasional Report 4, May 2003.
[29]
Jan Meyer, Ray Land, and Peter Davies. Threshold concepts and troublesome knowledge (4): issues of variation and variability. Threshold Concepts within the Disciplines Symposium, August 2006.
[30]
Orna Muller. Pattern oriented instruction and the enhancement of analogical reasoning. In ICER '05: Proceedings of the 2005 International Workshop on Computing Education Research, pages 57--67, New York, NY, USA, 2005. ACM Press.
[31]
Jane Gradwohl Nash, Ralph J. Bravaco, and Shai Simonson. Assessing knowledge change in computer science. Computer Science Education, 16(1):37--51, 2006.
[32]
Pavol Navrat. Hierarchies of programming concepts: Abstraction, generality, and beyond. SIGCSE Bulletin, 26(3), 1994.
[33]
Joint Task Force on Computing Curricula. Computing curricula 2001 for computer science. http://acm.org/education/curricula.html, December 2001.
[34]
Paas, Touvinen, Tabbers, and Van Gerven. Cognitive load measurement as a means of advancing cognitive load theory. Educational Psychologist, 38(1), 2003.
[35]
Fred Paas, Alexander Renkl, and John Sweller. Cognitive load theory and instructional design: Recent developments {introduction to special issue}. Educational Psychologist, 38(1), 2003.
[36]
Anthony Robins, Nathan Rountree, and Janet Rountree. Identifying the danger zones: Predictors of success and failure in a CS1 course. Computer Science Department Technical Report OUCS-2001-07, 2001.
[37]
Andreas Schwill. Fundamental ideas in computer science (revised). Zentralblatt für Didaktik der Mathematik, 1, 1993.
[38]
T. Scott. Bloom's taxonomy applied to testing in computer science. In Proceedings of the 12 Annual CCSC Rocky Mountain Conference. Consortium for Computing Sciences in Colleges, October, 2003.
[39]
E. Soloway and James C. Spohrer. Studying the Novice Programmer. Lawrence Erlbaum Associates, Inc., Mahwah, NJ, USA, 1988.
[40]
Elliot Soloway, Jeffrey Bonar, and Kate Ehrlich. Cognitive strategies and looping constructs: an empirical study. Communications of the ACM, 26(11):853--860, 1983.
[41]
James C. Spohrer and Elliot Soloway. Novice mistakes: are the folk wisdoms correct? Communications of the ACM, 29(7):624--632, 1986.
[42]
Lynda Thomas, Mark Ratcliffe, and Benjy Thomasson. Scaffolding with object diagrams in first year programming classes: some unexpected results. In SIGCSE'04: Proceedings of the 35th SIGCSE Technical Symposium on Computer Science Education, pages 250--254, New York, NY, USA, 2004. ACM Press.
[43]
Juhani Touvinen. Optimising student cognitive load in computer education. In Proceeding of the Australasian Conference on Computing Education, volume 91(2), 2000.
[44]
Sharon Alayne Widmayer. Schema theory: An introduction. http://chd.gse.gmu.edu/immersion/knowledgebase/strategies/cognitivism/SchemaTheory.htm.
[45]
Leon E. Winslow. Programming pedagogy --- a psychological overview. SIGCSE Bulletin, 28(3): 17--22, 1996.
[46]
D. Wood, J. Bruner, and G. Ross. The role of tutoring in problem solving. Journal of Child Psychology and Psychiatry, 17(2):89--100, 1976.

Cited By

View all
  • (2024)Applying Threshold Concepts Strategies to Teaching Computing Students in an ODL ContextOpen Praxis10.55982/openpraxis.16.2.55216:2(225-236)Online publication date: 3-Apr-2024
  • (2024)Supporting Novice Programmers via the Lens of Instructional DesignNavigating Computer Science Education in the 21st Century10.4018/979-8-3693-1066-3.ch008(149-169)Online publication date: 8-Mar-2024
  • (2024)From Sparse to Smart: Leveraging AI for Effective Online Judge Problem Classification in Programming EducationTechnology Enhanced Learning for Inclusive and Equitable Quality Education10.1007/978-3-031-72315-5_25(359-374)Online publication date: 16-Sep-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGCSE Bulletin
ACM SIGCSE Bulletin  Volume 38, Issue 4
December 2006
186 pages
ISSN:0097-8418
DOI:10.1145/1189136
Issue’s Table of Contents
  • cover image ACM Conferences
    ITiCSE-WGR '06: Working group reports on ITiCSE on Innovation and technology in computer science education
    June 2006
    99 pages
    ISBN:1595936033
    DOI:10.1145/1189215
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 26 June 2006
Published in SIGCSE Volume 38, Issue 4

Check for updates

Author Tags

  1. CS1
  2. cognitive approaches
  3. curricular planning
  4. programming

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)31
  • Downloads (Last 6 weeks)4
Reflects downloads up to 10 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Applying Threshold Concepts Strategies to Teaching Computing Students in an ODL ContextOpen Praxis10.55982/openpraxis.16.2.55216:2(225-236)Online publication date: 3-Apr-2024
  • (2024)Supporting Novice Programmers via the Lens of Instructional DesignNavigating Computer Science Education in the 21st Century10.4018/979-8-3693-1066-3.ch008(149-169)Online publication date: 8-Mar-2024
  • (2024)From Sparse to Smart: Leveraging AI for Effective Online Judge Problem Classification in Programming EducationTechnology Enhanced Learning for Inclusive and Equitable Quality Education10.1007/978-3-031-72315-5_25(359-374)Online publication date: 16-Sep-2024
  • (2023)Virtual Lab Workspace for Programming Computers – Towards Agile STEM EducationLearning Technology for Education Challenges10.1007/978-3-031-34754-2_5(55-68)Online publication date: 10-Jun-2023
  • (2022)Correlates of programmer efficacy and their link to experience: a combined EEG and eye-tracking studyProceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3540250.3549084(120-131)Online publication date: 7-Nov-2022
  • (2022)Comparative study between automatic hint generation approaches in Intelligent Programming TutorsProcedia Computer Science10.1016/j.procs.2021.12.259198(391-396)Online publication date: 2022
  • (2021)Program Comprehension and Code Complexity Metrics: An fMRI Study2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE)10.1109/ICSE43902.2021.00056(524-536)Online publication date: May-2021
  • (2020)What Drives the Reading Order of Programmers?Proceedings of the 28th International Conference on Program Comprehension10.1145/3387904.3389279(342-353)Online publication date: 13-Jul-2020
  • (2019)Assessing students' understanding of object structuresProceedings of the 19th Koli Calling International Conference on Computing Education Research10.1145/3364510.3364511(1-10)Online publication date: 21-Nov-2019
  • (2019)Transformative and Troublesome? Students' and Professional Programmers' Perspectives on Difficult Concepts in ProgrammingACM Transactions on Computing Education10.1145/328307119:3(1-27)Online publication date: 16-Jan-2019
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media