Strategies for Computer-Based Programming Instruction: Program Completion vs. Program Generation

Abstract
Two instructional strategies were implemented in a two-and-a-half hour computer-based training program that was designed to teach elementary turtle graphics programming techniques to novice undergraduate students ( N = 40). Learning activities that either emphasized the completion of existing programs or the generation of new programs were studied for the two strategies. In the completion group, the information needed to perform the program completion tasks appeared to be largely available in the to-be-completed programs; in the generation group, students frequently had to search for useful examples while they were performing their program generation tasks. It is hypothesized that during practice, the direct availability of examples in the form of incomplete computer programs facilitates the acquisition of programming language templates, especially because students cannot complete a program without carefully studying it so that “mindful abstraction” is explicitly provoked. Data in this study on learning outcomes support this hypothesis: the completion group showed a superior use of programming language templates in both a program construction test and a multiple choice test that measured the knowledge of language statements.