A Breadth-First Introductory Curriculum in Computing

This article identifies strengths and weaknesses in the introductory course sequence in computing, 1 and proposes an alternative sequence using a “breadth‐first” approach. This approach integrates theoretical material, includes scheduled laboratory work, and covers a broad range of subject matter in the discipline of computing. We also summarize our early experience teaching the first course in this sequence. 1Read as “computer science,” “computer science and engineering”, or any similar title.

[1]  Andrew M. Lister,et al.  Computer science: a modern introduction: 2nd edition , 1988 .

[2]  Elliot B. Koffman,et al.  Recommended curriculum for CS1, 1984 , 1984, CACM.

[3]  Gordon E. Stokes,et al.  Laboratory Experiences in Computer Science and Engineering , 1988, Comput. Sci. Educ..

[4]  Andrew M. Lister,et al.  Computer science : a modern introduction , 1982 .

[5]  Richard H. Austing,et al.  Curriculum '78: recommendations for the undergraduate program in computer science— a report of the ACM curriculum committee on computer science , 1979, CACM.

[6]  Anthony Ralston The first course in computer science needs a mathematics corequisite , 1984, CACM.

[7]  Elliot B. Koffman Problem Solving and Structured Programming in Basic , 1979 .

[8]  E B Koffman Problem solving and structured programming in Pascal; 2nd ed. , 1985 .

[9]  M.N. Sastry,et al.  Structure and interpretation of computer programs , 1986, Proceedings of the IEEE.

[10]  J. Glenn Brookshear Computer science: an overview; (2nd ed.) , 1988 .

[11]  Peter J. Denning,et al.  Computing as a discipline: preliminary report of the ACM task force on the core of computer science , 1988, SIGCSE '88.

[12]  Allen B. Tucker,et al.  Computing Curricula 1991 , 1991, CACM.

[13]  Norman E. Gibbs,et al.  A model curriculum for a liberal arts degree in computer science , 1986, CACM.

[14]  David W. Stemple,et al.  Recommended curriculum for CS2, 1984: a report of the ACM curriculum task force for CS2 , 1985, CACM.

[15]  A. B. Tucker Computer science : a second course using Modula-2 , 1988 .

[16]  Edsger W. Dijkstra,et al.  A method of programming , 1988 .

[17]  Gerald J. Sussman,et al.  Structure and interpretation of computer programs , 1985, Proceedings of the IEEE.

[18]  Doug Cooper,et al.  Oh! Pascal! , 1982 .

[19]  Cullen Schaffer Principles of computer science , 1988 .

[20]  Peter B. Henderson Discrete mathematics as a precursor to programming , 1990, SIGCSE '90.

[21]  J. Glenn Brookshear Computer Science: An Overview , 1985 .