skip to main content
10.1145/1508865.1508998acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article

Teaching programming and problem solving to CS2 students using think-alouds

Published:04 March 2009Publication History

ABSTRACT

Many studies have shown that students often face difficulty in applying programming concepts to design a program that solves a given task. To impart better problem solving skills a number of pedagogical approaches have been presented in the literature. However, most of these approaches provide a general strategy of problem solving. But in reality problem solving is a skill that is developed with experience over a period of time. In this paper, we present a pedagogical approach to teach problem solving using think-alouds. In a think-aloud problem solving approach students learn the skill of problem solving by closely observing an 'experienced programmer. We used this approach in a CS2 class and our evaluation results show that think-aloud problem solving is an extremely effective pedagogical technique, particularly for female students.

References

  1. Caspersen, M. E. Educating Novices in The Skills of Programming. PhD thesis, Department of Computer Science, University of Aarhus, 2007.Google ScholarGoogle Scholar
  2. David J. Barnes, Sally Fincher, and Simon Thompson. Introductory Problem Solving in Computer Science. In 5th Annual Conference on the Teaching of Computing (Centre for Teaching Computing, Dublin City University, Dublin 9, Ireland, August 1997), G. Daughton and P. Magee, Eds., pp. 36--39.Google ScholarGoogle Scholar
  3. Ericsson, K. A., and Simon, H. A. Protocol analysis: Verbal reports as data, 1984.Google ScholarGoogle Scholar
  4. Fincher, S. What are we doing when we teach programming? Frontiers in Education Conference, 1999. FIE '99. 29th Annual 1 (1999), 12A4/1-12A4/5 vol.1.Google ScholarGoogle ScholarCross RefCross Ref
  5. Gries, D. A principled approach to teaching oo first. In SIGCSE '08: Proceedings of the 39th SIGCSE technical symposium on Computer science education (New York, NY, USA, 2008), ACM, pp. 31--35. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Guzdial, M., and Ericson, B. Introduction to Computing and Programming with Java: A Multimedia Approach. Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Howard, R. A., Carver, C. A., and Lane, W. D. Felder's learning styles, bloom's taxonomy, and the kolb learning cycle: tying it all together in the cs2 course. In SIGCSE '96: Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education (New York, NY, USA, 1996), ACM, pp. 227--231. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Lahtinen, E., Ala-Mutka, K., and Jarvinen, H.-M. A study of the difficulties of novice programmers. In ITiCSE '05 (New York, NY, USA, 2005), ACM Press, pp. 14--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Robbins, K. A., Key, C. S., Dickinson, K., and Montgomery, J. Solving the cs1/cs2 lab dilemma: students as presenters in cs1/cs2 laboratories. In SIGCSE '01: Proceedings of the thirty-second SIGCSE technical symposium on Computer Science Education (New York, NY, USA, 2001), ACM, pp. 164--168. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Robins, A., Rountree, J., and Rountree, N. Learning and Teaching Programming: A Review and Discussion. Computer Science Education 13 (June 2003), 137--172.Google ScholarGoogle ScholarCross RefCross Ref
  11. Singer, J., Sim, S., and Lethbridge, C. Software Engineering Data Collection for Field Studies. Springer-Science, 2008, ch. 1, pp. 9--34.Google ScholarGoogle ScholarCross RefCross Ref
  12. Walsh, L. N., Howard, R. G., and Bowe, B. Phenomenographic study of students' problem solving approaches in physics. Phys. Rev. ST Phys. Educ. Res. 3, 2 (Dec 2007), 020108.Google ScholarGoogle ScholarCross RefCross Ref
  13. Winslow, L. E. Programming pedagogy - a psychological overview. SIGCSE Bull. 28, 3 (September 1996), 17--22. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Teaching programming and problem solving to CS2 students using think-alouds

      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
        SIGCSE '09: Proceedings of the 40th ACM technical symposium on Computer science education
        March 2009
        612 pages
        ISBN:9781605581835
        DOI:10.1145/1508865

        Copyright © 2009 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: 4 March 2009

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate1,595of4,542submissions,35%

        Upcoming Conference

        SIGCSE Virtual 2024

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader