skip to main content
10.1145/2361276.2361296acmconferencesArticle/Chapter ViewAbstractPublication PagesicerConference Proceedingsconference-collections
research-article

Is iteration really easier to learn than recursion for CS1 students?

Published:09 September 2012Publication History

ABSTRACT

There is general consensus that recursion is difficult to learn, which may be meant to imply that novice students are more at ease with iteration --- probably a widespread perception of students themselves. However, three years of investigation in a context where recursion is introduced earlier than iteration, as well as control experiments for a standard imperative-first introduction to programming, have provided no evidence that students make more progress with iteration than they do with recursion. More specifically, by means of a pair of questionnaires devised for this purpose, two research questions have been addressed. First, do the students who learned recursion before iteration actually exhibit a stronger ability to deal with the latter? Second, do the students of the imperative-first path master iteration better than those of the recursion-earlier path?

References

  1. A. Benander, B. Benander, and H. Pu. Recursion vs. iteration: An empirical study of comprehension. J. of Systems and Software, 32(1):73--82, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. S. Bhuiyan, J. E. Greer, and G. I. Mccalla. Supporting the learning of recursive problem solving. Interactive Learning Environments, 4(2):115--139, 1994.Google ScholarGoogle ScholarCross RefCross Ref
  3. R. Brooks. Towards a theory of the comprehension of computer programs. International Journal of Man-Machine Studies, 18(6):543--554, 1983.Google ScholarGoogle ScholarCross RefCross Ref
  4. K. B. Bruce, A. Danyluk, and T. Murtagh. Why structural recursion should be taught before arrays in CS1. In Proc. 36th SIGCSE, pages 246--250, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. P. Byckling and J. Sajaniemi. A role-based analysis model for the evaluation of novices' programming knowledge dev. In Proc. 2nd ICER, pages 85--96, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. CC2001 Joint Task Force. Computing Curricula 2001: Computer Science. ACM and IEEE-CS, Dec. 2001.Google ScholarGoogle Scholar
  7. CC2005 Joint Task Force. Computing Curricula 2005: The overview report. ACM and IEEE-CS, Sept. 2005.Google ScholarGoogle Scholar
  8. J. Cohen. Statistical power analysis for the behavioral sciences. Lawrence Erlbaum, 1988.Google ScholarGoogle Scholar
  9. B. du Boulay. Some difficulties of learning to program. J. of Educational Comput. Research, 2(1):57--73, 1986.Google ScholarGoogle ScholarCross RefCross Ref
  10. C. E. George. Using visualization to aid program construction tasks. In Proc. 33rd SIGCSE, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. D. Ginat and E. Shifroni. Teaching recursion in a procedural environment--how much should we...? In Proc. 30th SIGCSE, pages 127--131, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. T. Götschi, I. Sanders, and V. Galpin. Mental models of recursion. In Proc. 34th SIGCSE, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. B. Haberman and H. Averbuch. The case of base cases: Why are they so difficult to recognize? In Proc. 7th ITiCSE, pages 84--88, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. M. Hailperin, B. Kaiser, and K. Knight. Concrete Abstractions. Brooks/Cole, 1999.Google ScholarGoogle Scholar
  15. H. Kahney. What do novice programmers know about recursion. In Proc. of SIGCHI, pages 235--239, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. C. M. Kessler and J. R. Anderson. Learning flow of control: recursive and iterative procedures. Human-Computer Interaction, 2(2):135--166, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. M. C. Linn and J. Dalbey. Cognitive consequences of programming instruction: Instruction, access, and ability. Educational Psychologist, 20(4):191--206, 1985.Google ScholarGoogle ScholarCross RefCross Ref
  18. R. Lister. Concrete and other neo-piagetian forms of reasoning in the novice programmer. In Proc. 13th ACE, pages 9--18, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. R. Lister et al. Not seeing the forest for the trees: novice programmers and the SOLO taxonomy. In Proc. 11th ITiCSE, pages 118--122. ACM, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. M. Lopez et al. Relationships between reading, tracing and writing skills in introductory programming. In Proc. of the 4th ICER, pages 101--112, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. I. Sanders, V. Galpin, and T. Götschi. Mental models of recursion revisited. In Proc. 11th ITICSE, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. R. Sooriamurthi. Problems in comprehending recursion and suggested solutions. In Proc. 6th ITiCSE, pages 25--28, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. J. C. Spohrer and E. Soloway. Novice mistakes: are the folk wisdoms correct? CACM, 29(7):624--632, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. C. W. Starr, B. Manaris, and R. H. Stalvey. Bloom's taxonomy revisited: specifying assessable learning... In Proc. 39th SIGCSE, pages 261--265, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. F. Turbak, C. Royden, J. Stephan, and J. Herbst. Teaching recursion before loops in CS1. J. Computing in Small Colleges, 14(4):86--101, 1999.Google ScholarGoogle Scholar
  26. J. Whalley and R. Lister. The BRACElet 2009.1 specification. In Proc. 11th ACE, pages 9--18, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. S. Wiedenbeck. Learning recursion as a concept and as a programming technique. In Proc. 19th SIGCSE, pages 275--278. ACM, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Is iteration really easier to learn than recursion for CS1 students?

    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
      ICER '12: Proceedings of the ninth annual international conference on International computing education research
      September 2012
      174 pages
      ISBN:9781450316040
      DOI:10.1145/2361276

      Copyright © 2012 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: 9 September 2012

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate189of803submissions,24%

      Upcoming Conference

      ICER 2024
      ACM Conference on International Computing Education Research
      August 13 - 15, 2024
      Melbourne , VIC , Australia

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader