skip to main content
10.5555/1151869.1151890dlproceedingsArticle/Chapter ViewAbstractPublication Pagesaus-ceConference Proceedingsconference-collections
Article
Free Access

Parson's programming puzzles: a fun and effective learning tool for first programming courses

Authors Info & Claims
Published:01 January 2006Publication History

ABSTRACT

Mastery of basic syntactic and logical constructs is an essential part of learning to program. Unfortunately, practice exercises for programming basics can be very tedious, making it difficult to motivate students. In this paper we describe Parson's Programming Puzzles, an automated, interactive tool that provides practice with basic programming principles in an entertaining puzzle-like format. Careful design of the items in the puzzles allows the tutor to highlight particular topics and common programming errors. Since each puzzle solution is a complete sample of well-written code, use of the tool exposes students to good programming practice. This paper discusses the motivation of Parson's Programming Puzzles, and gives several examples. We describe the web-based authoring tool used to build the puzzles, and present our plans for future development.

References

  1. Allen, R.K., Bluff, K. and Oppenheim, A. (1998): Jumping into Java: Object-Oriented Software Development for the Masses. Proceedings of the 3rd Australasian conference on Computer science education, Brisbane, Australia, 3:165-172. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Bergin, J., (2000): Why Procedural is the Wrong First Paradigm if OOP is the Goal, http://csis.pace.edu/~bergin/papers/Whynotprocedurarlfi rst.html. Accessed 14 Oct 2005.Google ScholarGoogle Scholar
  3. Booch, G., Rumbaugh, J. and Jacobson, I., (1999): The Unified Modeling Language User Guide. Reading, Massachusetts, Addison Wesley,. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Decker, R. and Hirshfield, S. (1994): The Top 10 Reasons Why Object-Oriented Programming Can't Be Taught in CS1, Proceedings of the twenty-fifth SIGCSE symposium on Computer science education, Phoenix, Arizona, USA, 51-55, ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Duke, R. Salzman, E., Burmeister, J., Poon, J. and Murray, L., (2000): Teaching programming to beginners - choosing the language is just the first step, Proceedings of the Australasian conference on Computing education, Melbourne Australia. 79-86. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Fincher, S., (1999): What are we doing when we teach programming?, In Frontiers in Education '99, 12a41-5. IEEE, November 1999.Google ScholarGoogle ScholarCross RefCross Ref
  7. Grant, F. and O'Brien, H. (2000): Maths Plus for New Zealand Schools, St. Leonards, Australia, Horowitz Martin.Google ScholarGoogle Scholar
  8. Hill, J., Ray, C., Blair, J and Carver, C. (2003): Puzzles and games: addressing different learning styles in teaching operating systems concepts, Proceedings of the 34th SIGCSE technical symposium on Computer science education, Reno, Nevada, USA, 182-186. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Hu, Minjie (2004): Teaching Novices Programming with Core Language and Dynamic Visualisation Proceedings of the NACCQ 2004, Christchurch, New Zealand, 95-104.Google ScholarGoogle Scholar
  10. Kearsley, G. and Sheniderman, B., (1999): Engagement Theory: A framework for technology-based teaching and learning. http://home.sprynet.com/~gkearsley/engage.htm. Accessed 14 Oct 2005.Google ScholarGoogle Scholar
  11. Norman, D.A. and Spohrer, J., C. (1996): Learner-Centered Education, Communications of the ACM, 39(4):24-27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Olsen, A.L. (2005): Using pseudocode to teach problem solving. Journal of Computing Sciences in Colleges 21(2):231-236. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. O'Neill, P.J. (Ed.) (1972): The Shape of Mathematics, Wellington, New Zealand, Reed EducationGoogle ScholarGoogle Scholar
  14. Prensky, M. (2001): Digital Game-Based Learning, McGraw-Hill. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Stein, Lynn Andrea (1998): What we've swept under the rug: Radically rethinking CS1. Computer Science Education 8(2): 118-129.Google ScholarGoogle ScholarCross RefCross Ref
  16. Tabrizi, M., Collins, C, Ozan, E., and Li, K., (2004): Implementation of Object-Orientation Using UML in Entry Level Software Development Courses, Proceedings of the 5th conference on Information technology education, Salt Lake City, UT, 128-131, ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Parson's programming puzzles: a fun and effective learning tool for first programming courses

          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

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader