skip to main content
10.1145/1044550.1041673acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
Article

A multi-national study of reading and tracing skills in novice programmers

Published:28 June 2004Publication History

ABSTRACT

A study by a ITiCSE 2001 working group ("the McCracken Group") established that many students do not know how to program at the conclusion of their introductory courses. A popular explanation for this incapacity is that the students lack the ability to problem-solve. That is, they lack the ability to take a problem description, decompose it into sub-problems and implement them, then assemble the pieces into a complete solution. An alternative explanation is that many students have a fragile grasp of both basic programming principles and the ability to systematically carry out routine programming tasks, such as tracing (or "desk checking") through code. This ITiCSE 2004 working group studied the alternative explanation, by testing students from seven countries, in two ways. First, students were tested on their ability to predict the outcome of executing a short piece of code. Second, students were tested on their ability, when given the desired function of short piece of near-complete code, to select the correct completion of the code from a small set of possibilities. Many students were weak at these tasks, especially the latter task, suggesting that such students have a fragile grasp of skills that are a prerequisite for problem-solving.

References

  1. Brooks, R. (1983) Towards a theory of the comprehension of computer programs. International Journal of man-Machine Studies, 18, pp. 543--554.Google ScholarGoogle Scholar
  2. Clancy, M. and Linn, M. (1999), Patterns and Pedagogy. 30th Technical Symposium on Computer Science Education (SIGCSE 1999), New Orleans, LA USA. pp. 37--42. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Davies, S. (1996) Display-based problem solving strategies in computer programming. In Gray, W, and Boehm-Davis, D. (Eds) Empirical Studies of Programmers: 6th Workshop. Ablex Publishing Corporation, NJ. pp. 59--76.Google ScholarGoogle Scholar
  4. Detienne, F. (1990) Expert Programming Knowledge: A Schema-based Approach. In Hoc, J, Green, T, Samurcay, and Gilmore, D. (Eds) Psychology of Programming. Academic Press, London. pp 206--222.Google ScholarGoogle Scholar
  5. Detienne, F, and Soloway, E. (1990) An empirically-derived control structure for the process of program understanding. Int. J. of Man-Machine Studies, 33, pp. 323--342. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Deimel, L. E. & Naveda, J. F. (1990) Reading Computer Programs: Instructor's Guide and Exercises Software Engineering Institute, Carnegie-Mellon University. http://www.deimel.org/comp_sci/reading_computer_programs.htm (August 2004) Updated bibliography at http://www2.umassd.edu/SWPI/Process Bibliography/bib-codereading2.html (August 2004).Google ScholarGoogle Scholar
  7. du Boulay, B. (1989) Some Difficulties of Learning to Program. In Soloway, E. and Spohrer, J., Eds. pp. 283--299.Google ScholarGoogle Scholar
  8. Ebel, R. and Frisbie, D. (1986) Essentials of Educational Measurement. Prentice Hall, Englewood Cliffs, NJ.Google ScholarGoogle Scholar
  9. Haladyna, T. (1999) Developing and Validating Multiple-Choice Questions (2nd Edition), Lawrence Erlbaum Associates, Mahwah, NJ.Google ScholarGoogle Scholar
  10. Kuittinen, M, and Sajaniemi, J. (2004) Teaching Roles of Variables in Elementary Programming Courses. 9th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'04), Leeds, UK. pp 57--61. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Linn, R. and Gronlund, N. (1995) Measurement and Assessment in Teaching, Prentice Hall, Upper Saddle River, NJ.Google ScholarGoogle Scholar
  12. Lister, R. (2004) Availability of working group data. http://www-staff.it.uts.edu.au/~raymond/leeds2004.Google ScholarGoogle Scholar
  13. McCracken, M., V. Almstrum, D. Diaz, M. Guzdial, D. Hagen, Y. Kolikant, C. Laxer, L. Thomas, I. Utting, T. Wilusz, (2001) A Multi-National, Multi-Institutional Study of Assessment of Programming Skills of First-year CS Students, SIGCSE Bulletin, 33(4). pp 125--140. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Pennington, N. (1987) Comprehension Strategies in Programming. In Olson, G., Sheppard, S., and Soloway, E. (Eds) Empirical Studies of Programmers: Second Workshop. Ablex, NJ, USA. pp 100--113. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Perkins, D. and Martin, F. (1986) Fragile Knowledge and Neglected Strategies in Novice Programmers. In Soloway, E. and Iyengar, S. (Eds) pp. 213--229. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Perkins, D, Hancock, C, Hobbs, R, Martin, F, and Simmons, R. (1989). Conditions of Learning in Novice Programmers. In Soloway, E. and Spohrer, J., Eds. pp 261--279.Google ScholarGoogle Scholar
  17. Rist, R. S. (1986). Plans in Programming: Definition, Demonstration and Development. In Soloway, E. and Iyengar, S., Eds. pp 28--47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Rist, R. (2004) Learning to Program: Schema Creation, Application, and Evaluation. In Fincher, S and Petre, M., Eds (2004) Computer Science Education Research. Swets & Zeitlinger.Google ScholarGoogle Scholar
  19. Soloway, E. and Ehrlich, K (1984) Empirical Studies of Programming Knowledge. IEEE Transactions on Software Engineering, SE-10(5):595--609.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Soloway, E. (1986). Learning to program = Learning to construct mechanisms and explanations. Communications of the ACM, 29(9). pp. 850--858. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Soloway, E. and Iyengar, S., Eds (1986) Empirical Studies of Programmers. Ablex, NJ, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Soloway, E, Adelson, B, and Ehrlich, K. (1988) Knowledge and Processes in the Comprehension of Computer Programs. In Glaser, M, Chi, R, Farr, M, Glaser, R (Eds) The Nature of Expertise. Lawrence Erlbaum Associates, Hillsdale, NJ, USA. pp 129--152.Google ScholarGoogle Scholar
  23. Soloway, E. and and Spohrer, J, Eds (1989), Studying the Novice Programmer. Lawrence Erlbaum Associates, Hillsdale, NJ, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Spohrer, J. and Soloway, E. (1986) Analyzing the High Frequency Bugs in Novice Programs. In Soloway, E. and Iyengar, S. (Eds) pp. 230--251. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Spohrer, J. and Soloway, E. (1989) Novice Mistakes: Are the Folk Wisdoms Correct? In Soloway, E. and Spohrer, J., Eds. pp 401--416.Google ScholarGoogle Scholar
  26. Thomas, L. Ratcliffe, M., and Thomasson, B. (2004) Scaffolding with Object Diagrams in First Year Programming Classes: Some Unexpected Results. 35th Technical Symposium on Computer Science Education (SIGCSE 2004), Norfolk, VA USA. pp. 250--254. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Wiedenbeck, S. (1985) Novice/expert differences in programming skills. Int. J. of Man-Machine Studies, 23, pp. 383--390. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Wiedenbeck, S. (1986) Processes in Computer Program Comprehension. In Soloway, E. and Iyengar, S., Eds. pp 48--57. Google ScholarGoogle ScholarDigital LibraryDigital Library
  1. A multi-national study of reading and tracing skills in novice programmers

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      ITiCSE-WGR '04: Working group reports from ITiCSE on Innovation and technology in computer science education
      June 2004
      152 pages
      ISBN:9781450377942
      DOI:10.1145/1044550

      Copyright © 2004 ACM

      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: 28 June 2004

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • Article

      Acceptance Rates

      Overall Acceptance Rate552of1,613submissions,34%

      Upcoming Conference

      ITiCSE 2024

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader