TEACHING COMPUTER PROGRAMMING AT A DISTANCE
HOME :: DISCUSSIONS :: ANIMATIONS :: SYNCHRONOUS :: REFERENCES
.::the basics:. next >>

      Computer programming students have to learn to analyze problems critically, implement robust solutions in a programming language, debug code, and make  enhancements to existing computer programs over time, and repeat this process several times in several programming assignments over the duration of a semester, while learning programming concepts, a programming language, and principles of software design.  It is little wonder students often struggle with one or more concepts in a computer programming course.Binay Image
 
      Research confirms students struggle with computer programming courses. The most disturbing statistics are from the introductory programming courses where failure and withdrawal rates exceed fifty percent (Woszczynski, Guthrie, and Shade, 2005). For example, one study found that the overall probability of passing a first introductory programming course (CS1) the first time was 40% across all majors, with an initial failure rate of 19.5%, and a withdrawal rate of 40.5% (Beise, Myers, VanBrackle, and Chevli-Saroq, 2003).

      To add to the complexity of teaching computer programming, there is also the increased emphasis in offering access to higher education at a distance across the nation.  Taking classes at a distance poses different challenges for students who are used to taking on-campus classes in terms of studying, time management and autonomy (Moore & Thompson, 1998).  More troubling, educational research on distance learning, for many years, suggests that drop out rates tend to be significantly higher in distance classes (Carr, 2000; Garrison, 1987; Zajkowski, 1997).  These disturbing numbers, coupled with the already lower than average distance learning course retention rates (as compared to face-to-face), make a recipe for disaster without carefully planned instruction.

      This online resource is dedicated to providing three sound technology- enhanced instructional strategies to help educators overcome the difficult instructional problem of teaching computer programming concepts and skills at a distance.

© Albert Ritzhaupt 2006