ABSTRACT
Program-design is an essential skill students in introductory computing courses must learn, but which continues to be difficult for students. Many introductory curricula focuses on low-level constructs, even when students are expected to gain higher-level problem-solving and program-design skills. How to Design Programs (HTDP) is a curriculum that teaches a multi-step approach to program-design, promoting multiple, interrelated program-design skills. My research explores how novice programmers use HTDP-based techniques to design programs, the design-related skills students learn and use, the factors that drive their design decisions, and how these weave into a conceptual framework of HTDP-based program-design.
- J. B. Biggs and K. Collis. 1982. Evaluating the Quality of Learning: the SOLO taxonomy. Academic Press, New York.Google Scholar
- Francisco Enrique Vicente Castro and Kathi Fisler. 2016. On the Interplay Between Bottom-Up and Datatype-Driven Program Design. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education. ACM, 205--210. Google ScholarDigital Library
- Francisco Enrique Vicente Castro and Kathi Fisler. 2017. Designing a Multi-faceted SOLO Taxonomy to Track Program Design Skills Through an Entire Course (Koli Calling '17). ACM, New York, NY, USA, 10--19. Google ScholarDigital Library
- Francisco Enrique Vicente Castro, Shriram Krishnamurthi, and Kathi Fisler. 2017. The Impact of a Single Lecture on Program Plans in First-year CS (Koli Calling '17). ACM, New York, NY, USA, 118--122. Google ScholarDigital Library
- Michael de Raadt, Richard Watson, and Mark Toleman. 2009. Teaching and Assessing Programming Strategies Explicitly Proceedings of the Eleventh Australasian Conference on Computing Education. Darlinghurst, Australia, Australia. Google ScholarDigital Library
- Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, and Shriram Krishnamurthi. 2001. How to Design Programs. MIT Press. deftempurl%http://www.htdp.org/ tempurlGoogle ScholarDigital Library
- Kathi Fisler and Francisco Enrique Vicente Castro. 2017. Sometimes, Rainfall Accumulates: Talk-Alouds with Novice Functional Programmers (ICER '17). ACM, New York, NY, USA, 12--20. Google ScholarDigital Library
- David Ginat and Eti Menashe. 2015. SOLO Taxonomy for Assessing Novices' Algorithmic Design (SIGCSE '15). ACM, New York, NY, USA, 452--457. Google ScholarDigital Library
- Cruz Izu, Amali Weerasinghe, and Cheryl Pope. 2016. A Study of Code Design Skills in Novice Programmers Using the SOLO Taxonomy (ICER '16). ACM, 251--259. Google ScholarDigital Library
- Orna Muller, David Ginat, and Bruria Haberman. 2007. Pattern- oriented Instruction and Its Influence on Problem Decomposition and Solution Construction (ITiCSE '07). ACM, New York, NY, USA, 151--155. Google ScholarDigital Library
- Otto Seppala, Petri Ihantola, Essi Isohanni, Juha Sorva, and Arto Vihavainen. 2015. Do We Know How Difficult the Rainfall Problem is? (Koli Calling '15). ACM, 87--96. Google ScholarDigital Library
- E. Soloway. 1986. Learning to Program = Learning to Construct Mechanisms and Explanations. Commun. ACM Vol. 29, 9 (Sept. 1986), 850--858. Google ScholarDigital Library
Index Terms
- Towards a Theory of HtDP-based Program-Design Learning
Recommendations
A Survey of Introductory Programming Courses in Ireland
ITiCSE '19: Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science EducationBetween January and April of 2018, a comprehensive survey of introductory programming courses was undertaken across all sectors of Irish third-level institutions (universities, institutes of technology, and private colleges). The survey instrument was ...
Lessons learned from a PLTL-CS program
SIGCSE '11: Proceedings of the 42nd ACM technical symposium on Computer science educationThe Peer-Led Team Learning (PLTL) approach has previously been shown to be effective in recruiting and retaining students, particularly under-represented students, in undergraduate introductory CS courses. In PLTL, small groups of students are led by an ...
Manipulating mindset to positively influence introductory programming performance
SIGCSE '10: Proceedings of the 41st ACM technical symposium on Computer science educationIntroductory programming classes are renowned for their high dropout rates. The authors propose that this is because students learn to adopt a fixed mindset towards programming. This paper reports on a study carried out with an introductory programming ...
Comments