Teaching and learning computer programming
Generate an AI Snapshot to get a quick, structured summary of this paper.
A concise AI-generated summary of the paper will appear here once you click Generate AI Snapshot.
TL;DR
A number of methods and tools used in the teaching of programming are surveyed to present a number of areas where beginning programmers experience difficulties and to propose other possible aids.
Abstract
To improve introductory computer science courses and to update the teaching of computer programming, new teaching methods emphasizing structured programming and top-down design have been presented and a variety of automated instructional tools have been developed. The purpose of this paper is: (1) to survey a number of methods and tools used in the teaching of programming; (2) to present, with the aid of this survey, a number of areas where beginning programmers experience difficulties; (3) to present ways of improving some of the tools; and (4) to propose other possible aids.This paper is organized as follows. Section 1 introduces the topic and purpose of the paper. Section 2 reviews several teaching methods discussed in the literature. Section 3 surveys various student-oriented interactive and noninteractive tools. Section 4 discusses nonstudent-oriented aids and presents alternatives by discussing how to adapt similar aids to a student environment. Section 5 provides a summary of the paper and a conclusion. Pertinent problem areas and students' viewpoints are presented in each section.
