Faced with the challenge of teaching large numbers of students without sacrificing quality, we have developed a complete "package" for teaching introductory computer science. This package consists of textbooks, notes, problem sets, labtutorial arrangements, instructional software, and visual aids for lectures, all developed at the University of Waterloo.The textbooks are "FORTRAN IV WITH WATFOR AND WATFIV" and "AN INTRODUCTION TO THE SPECTRE COMPUTER". The first text provides a thorough introduction to FORTRAN programming, whereas the second describes a hypothetical computer used for teaching purposes to introduce concepts in assembly language programming and machine organization. Notes supplement the texts by covering elementary ideas from boolean algebra, switching and automata theory, and hardware design. Consequently, we endeavour in this course to introduce students to various aspects of computer science, not just programming.Nevertheless, programming is a major part of computer science, and we feel that considerable hands-on experience is essential to a student's education. We provide unlimited access to the computer for all students with a turnaround time between one and two minutes for small jobs. This service is made possible by our fast FORTRAN compiler, WATFOR, which permits the computing centre to process between 3000 and 7000 undergraduate jobs daily on an IBM S/360 model 75. In addition, we simulate the SPECTRE machine via an interpreter, also with unlimited access to students.For lectures, we have prepared substantial lecture material in a set of 35 mm slides. We feel that this mode of presentation has numerous advantages for a large multi-section course, some of which are better visibility for students, easy review possibilities, lecturer cues, uniformity throughout the various sections, and improvement of presentation by new and inexperienced lecturers.This course is offered to approximately 1300 students yearly at Waterloo. Each student has two hours of lectures per week, as well as biweekly tests and problem sessions in alternate weeks. In order to assist us in the development of our package, we try to obtain as much student feedback as possible through the distribution of an extensive questionnaire to all students taking the course.