skip to main content
10.1145/3287324.3287371acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article
Public Access

Teaching Explicit Programming Strategies to Adolescents

Published:22 February 2019Publication History

ABSTRACT

One way to teach programming problem solving is to teach explicit, step-by-step strategies. While prior work has shown these to be effective in controlled settings, there has been little work investigating their efficacy in classrooms. We conducted a 5-week case study with 17 students aged 15-18, investigating students' sentiments toward two strategies for debugging and code reuse, students' use of scaffolding to execute these strategies, and associations between students' strategy use and their success at independently writing programs in class. We found that while students reported the strategies to be valuable, many had trouble regulating their choice of strategies, defaulting to ineffective trial and error, even when they knew systematic strategies would be more effective. Students that embraced the debugging strategy completed more features in a game development project, but this association was mediated by other factors, such as reliance on help, strategy self-efficacy, and mastery of the programming language used in the class. These results suggest that teaching of strategies may require more explicit instruction on strategy selection and self-regulation.

References

  1. Roger Azevedo and Jennifer G Cromley. 2004. Does training on self-regulated learning facilitate students' learning with hypermedia? Journal of Educational Psychology, Vol. 96, 3 (2004), 523.Google ScholarGoogle ScholarCross RefCross Ref
  2. Roy F. Baumeister and Kathleen D. Vohs. 2003. Self-regulation and the executive function of the self. Handbook of self and identity, Vol. 1 (2003), 197--217.Google ScholarGoogle Scholar
  3. Suresh K. Bhavnani, Frederick A. Peck, and Frederick Reif. 2008. Strategy-Based Instruction: Lessons Learned in Teaching the Effective and Efficient Use of Computer Applications. ACM Transactions on Computer-Human Interaction, Vol. 15, 1, Article 2 (May 2008), bibinfonumpages43 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Alan F. Blackwell. 2002. First steps in programming: A rationale for attention investment models. In IEEE Symposium on Visual Languages and Human-Centric Computing. 2. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Ryan Chmiel and Michael C. Loui. 2004. Debugging: From Novice to Expert. In ACM SIGCSE Technical Symposium on Computer Science Education. 17--21. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. K Anders Ericsson, Ralf T Krampe, and Clemens Tesch-Römer. 1993. The role of deliberate practice in the acquisition of expert performance. Psychological review, Vol. 100, 3 (1993), 363.Google ScholarGoogle Scholar
  7. Katrina Falkner, Rebecca Vivian, and Nickolas JG Falkner. 2014. Identifying computer science self-regulated learning strategies. In Proceedings of the 2014 conference on Innovation & technology in computer science education. ACM, New York, NY, 291--296. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, and Shriram Krishnamurthi. 2018. How to design programs: an introduction to programming and computing .MIT Press, Cambridge, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. David Hammer and Leema K Berland. 2014. Confusing claims for data: A critique of common practices for presenting qualitative research on learning. Journal of the Learning Sciences, Vol. 23, 1 (2014), 37--46.Google ScholarGoogle ScholarCross RefCross Ref
  10. Matthias Hauswirth and Andrea Adamoli. 2017. Metacognitive calibration when learning to program. In Proceedings of the 17th Koli Calling Conference on Computing Education Research. 50--59. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Ada S Kim and Amy J Ko. 2017. A pedagogical analysis of online coding tutorials. In ACM SIGCSE Technical Symposium on Computer Science Education. 321--326. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Amy J Ko, Robin Abraham, Laura Beckwith, Alan Blackwell, Margaret Burnett, Martin Erwig, Chris Scaffidi, Joseph Lawrance, Henry Lieberman, Brad Myers, et almbox. 2011. The state of the art in end-user software engineering. Comput. Surveys, Vol. 43, 3 (2011), 21. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Andrew J Ko, Brad A Myers, and Htet Htet Aung. 2004. Six learning barriers in end-user programming systems. In IEEE Symposium on Visual Languages and Human-Centric Computing. 199--206. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Thomas D LaToza, Maryam Arab, Dastyni Loksa, and Amy J. Ko. 2018. Explicit Programming Strategies. In review (2018).Google ScholarGoogle Scholar
  15. Raymond Lister, Elizabeth S. Adams, Sue Fitzgerald, William Fone, John Hamer, Morten Lindholm, Robert McCartney, Jan Erik Moström, Kate Sanders, Otto Sepp"al"a, Beth Simon, and Lynda Thomas. 2004. A Multi-national Study of Reading and Tracing Skills in Novice Programmers. SIGCSE Bulletin, Vol. 36, 4 (June 2004), 119--150. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Dastyni Loksa and Amy J Ko. 2016. The role of self-regulation in programming problem solving process and success. In ACM International Computing Education Research Conference. 83--91. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Dastyni Loksa, Amy J Ko, Will Jernigan, Alannah Oleson, Christopher J Mendez, and Margaret M Burnett. 2016. Programming, problem solving, and self-awareness: effects of explicit guidance. In ACM SIGCHI Conference on Human Factors in Computing Systems . 1449--1461. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Greg L Nelson, Benjamin Xie, and Amy J Ko. 2017. Comprehension First: Evaluating a Novel Pedagogy and Tutoring System for Program Tracing in CS1. In ACM International Computing Education Research Conference. 2--11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Devon H. O'Dell. 2017. The Debugging Mindset. ACM Queue, Vol. 15, 1, Article 50 (Feb. 2017), bibinfonumpages20 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. James Prather, Raymond Pettit, Kayla McMurry, Alani Peters, John Homer, and Maxine Cohen. 2018. Metacognitive Difficulties Faced by Novice Programmers in Automated Assessment Tools. In Proceedings of the 2018 ACM Conference on International Computing Education Research. 41--50. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Yizhou Qian and James Lehman. 2017. Students' Misconceptions and Other Difficulties in Introductory Programming: A Literature Review. ACM Transactions on Computing Education, Vol. 18, 1, Article 1 (Oct. 2017), bibinfonumpages24 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Emmanuel Schanzer, Kathi Fisler, and Shriram Krishnamurthi. 2018. Assessing Bootstrap: Algebra Students on Scaffolded and Unscaffolded Word Problems. In ACM Technical Symposium on Computer Science Education. 8--13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Benjamin Xie, Greg L. Nelson, and Amy J. Ko. 2018. An Explicit Strategy to Scaffold Novice Program Tracing. In ACM Technical Symposium on Computer Science Education. 344--349. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Teaching Explicit Programming Strategies to Adolescents

    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 '19: Proceedings of the 50th ACM Technical Symposium on Computer Science Education
      February 2019
      1364 pages
      ISBN:9781450358903
      DOI:10.1145/3287324

      Copyright © 2019 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 the author(s) 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: 22 February 2019

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      SIGCSE '19 Paper Acceptance Rate169of526submissions,32%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