Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1189215.1189185acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
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
  • (2021)Program Comprehension and Code Complexity MetricsProceedings of the 43rd International Conference on Software Engineering10.1109/ICSE43902.2021.00056(524-536)Online publication date: 22-May-2021
  • (2019)Towards validity for a formative assessment for language-specific program tracing skillsProceedings of the 19th Koli Calling International Conference on Computing Education Research10.1145/3364510.3364525(1-10)Online publication date: 21-Nov-2019
  • (2019)Debugging: The key to unlocking the mind of a novice programmer?2019 IEEE Frontiers in Education Conference (FIE)10.1109/FIE43999.2019.9028699(1-9)Online publication date: Oct-2019
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 26 June 2006

Permissions

Request permissions for this article.

Check for updates

Author Tags

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

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 552 of 1,613 submissions, 34%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)31
  • Downloads (Last 6 weeks)2
Reflects downloads up to 03 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Program Comprehension and Code Complexity MetricsProceedings of the 43rd International Conference on Software Engineering10.1109/ICSE43902.2021.00056(524-536)Online publication date: 22-May-2021
  • (2019)Towards validity for a formative assessment for language-specific program tracing skillsProceedings of the 19th Koli Calling International Conference on Computing Education Research10.1145/3364510.3364525(1-10)Online publication date: 21-Nov-2019
  • (2019)Debugging: The key to unlocking the mind of a novice programmer?2019 IEEE Frontiers in Education Conference (FIE)10.1109/FIE43999.2019.9028699(1-9)Online publication date: Oct-2019
  • (2019)A theory of instruction for introductory programming skillsComputer Science Education10.1080/08993408.2019.156523529:2-3(205-253)Online publication date: 25-Jan-2019
  • (2018)Summer of code: assisting distance-learning students with open-ended programming tasksProceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education10.1145/3197091.3197119(224-229)Online publication date: 2-Jul-2018
  • (2018)Peer Review in CS2ACM Transactions on Computing Education10.1145/315271518:3(1-37)Online publication date: 6-Sep-2018
  • (2017)Combatting the War Against Machines: An Innovative Hands-on Approach to CodingRobotics in STEM Education10.1007/978-3-319-57786-9_3(59-83)Online publication date: 12-Jul-2017
  • (2016)Exploring Proficiency Testing of Programming Skills in Lower-division Computer Science and Electrical Engineering Courses2016 ASEE Annual Conference & Exposition Proceedings10.18260/p.26857Online publication date: Jun-2016
  • (2016)Gradual structuring: Evolving the spreadsheet paradigm for expressiveness and learnability2016 15th International Conference on Information Technology Based Higher Education and Training (ITHET)10.1109/ITHET.2016.7760759(1-8)Online publication date: Sep-2016
  • (2015)Concepts in K-9 Computer Science EducationProceedings of the 2015 ITiCSE on Working Group Reports10.1145/2858796.2858800(85-116)Online publication date: 4-Jul-2015
  • 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