ABSTRACT
Students in introductory programming courses struggle with how to turn a problem statement into code. We introduce a teaching technique, "The Seven Steps," that provides structure and guidance on how to approach a problem. The first four steps focus on devising an algorithm in English, then the remaining steps are to translate that algorithm to code, test the algorithm, and debug failed test cases. This approach not only gives students a way to solve problems, but also ideas for what to do if they get stuck during the process. Furthermore, it provides a way for instructors to work examples in class that focus on the process of devising the code - instructors can show how to come up with the code, rather than just showing an example. We describe our experience with this technique in several introductory programming courses - both in the classroom and online.
- Heather E. Bullock Charlie McDowell, Linda Werner and Julian Fernald. 2006. Pair Programming improves student retention, confidence and program quality. Commun. ACM, Vol. 49, 8 (Aug. 2006), 90--95. Google ScholarDigital Library
- Catherine H. Crouch and Eric Mazur. 2001. Peer Instruction: Ten years of experience and results. American Journal of Physics, Vol. 69, 9 (Sept. 2001), 970--977.Google ScholarCross Ref
- Philip J. Guo. 2013. Online Python Tutor: Embeddable Web-based Program Visualization for CS Education. SIGCSE 2013 (2013), 579--584. Google ScholarDigital Library
- Mark Guzdial and Barbara Ericson. 2007. Introduction to computing and programming with Java: A multimedia approach. Pearson Prentice Hall, Upper Saddle River, NJ. Google ScholarDigital Library
- Esko Nuutila, Seppo Törma, and Lauri Malmi. 2005. PBL and Computer Programming -- The Seven Steps Method with Adaptations. Computer Science Education, Vol. 15, 2 (2005), 123--142.Google ScholarCross Ref
- Author One and Author Two. 2015. Anonymous Title. Anonymous Pub, City, State.Google Scholar
- "Leo Porter and Beth Simon". 2013. Retaining Nearly One-Third more Majors with a Trio of Instructional Best Practices in CS1. SIGCSE 2013 (2013), 165--170. Google ScholarDigital Library
- Laurie Williams and Robert Kessler. 2003. Pair Programming Illuminated .Pearson Education, Boston, Ma. Google ScholarDigital Library
Index Terms
- Translation from Problem to Code in Seven Steps
Recommendations
Metacognition and Self-Regulation in Programming Education: Theories and Exemplars of Use
Metacognition and self-regulation are important skills for successful learning and have been discussed and researched extensively in the general education literature for several decades. More recently, there has been growing interest in understanding how ...
A technique for translation from problem to code
ITiCSE 2018: Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science EducationStudents in introductory programming courses struggle with how to turn a problem statement into code. We introduce a technique, ``The Seven Steps,'' that provides structure and guidance on how to approach a problem. The first four steps focus on ...
Some deficiencies of C++ in teaching CS1 and CS2
C++ is a popular programming language for the introductory level (CS1) and at the advance level (CS2) at many community colleges and universities in the USA. While teaching CS1 and CS2, we observed some deficiencies of C++, which are discussed in this ...
Comments