Research and Advances

Teaching “about programming”

This paper presents the goals and organization of a course about programming designed to provide entering students in a graduate program with a cultural enrichment in their professional lives. The students are expected to have taken at least two programming courses prior to this one and, therefore, to be familiar with at least two programming languages, both as students and users. Teaching someone how to program is similar to teaching him to play a musical instrument: neither skill can be taught—they must be learned. However, the teacher still serves several vital purposes: to present a set of rules for producing well-formed utterances; to offer numerous demonstrations of his own skill; and to function as an involved critic. Finally, the teacher is the source of information about the process in which the student is involved.

Advertisement

Author Archives

Research and Advances

An environment for research in microprogramming and emulation

The development of the research project in microprogramming and emulation at State University of New York at Buffalo consisted of three phases: the evaluation of various possible machines to support this research; the decision to purchase one such machine, which appears to be superior to the others considered; and the organization and definition of goals for each group in the project. Each of these phases is reported, with emphasis placed on the early results achieved in this research.
Research and Advances

An introductory problem in symbol manipulation for the student

One objective of the course on Introduction to Digital Computers given by B. A. Galler at the University of Michigan is to equip the students with some knowledge of the techniques of automatic programming and to indicate some of the problems involved in such work. The final problem assigned in the course consists of a program to be written in some compiler language which involves symbol manipulation, automatic programming, etc. With the hope others in the computing field will find it of interest, an example of a final problem in this course is given here.

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved