We describe the motivation, design, and implementation of a web-based automatic homework checker for Programming I and Programming II courses. Motivated by a problem-based-learning approach, we redesigned our first course to have over 70 short programming assignments. The goal was to change conceptual "walls" into "steps", so that students would not feel overwhelmed at any point in time. At each step along the way, it must be clear where the student is and the next step must feel attainable. Over the last 3 years, we have learned much about proper "step-size" and sequencing of problems. We describe how current computer science technologies both hurt and help our students. We conclude by a critique of the system, recommendations for undergraduate programming courses, and our goals for the next release.
Towell, D. & Reeves, B. (2010) From Walls to Steps: Using online automatic homework checking tools to improve learning in introductory programming courses," ACET Journal of Computer Education and Research
Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial 4.0 License