Abstract
Over most of the second half of the twentieth century, much of the curriculum debate in computer science assumed programming was the fundamental tool of the discipline, and a key subject of debate was the first programming language. By 2020, the focus had changed to one of emphasizing the fundamentals first, and developing skills related to coding later in the curriculum. The intent was to ensure that real fundamentals were taught first, reducing the need for frequent curriculum upheavals in introductory courses, where stability was most important. Also, the new curriculum ordering was intended to break away from the hacker culture, which is hard to avoid with students who learn programming before theents a proposal for Curriculum 2020, in which the order of toy have developed design and abstraction skills. This paper prespics is designed to produce graduates with a solid theoretical foundation, for whom programming is almost a clerical task. The basic educational philosophy is called abstraction-first. Students are first introduced to abstraction as a client of predesigned abstractions and are gradually led to the point of designing their own abstractions. Theoretical foundations are introduced first, followed by practical application— also following the abstraction-first philosophy.
At the time of writing, on sabbatical at the Department of Electrical Engineering and Computer Science, University of Michigan.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
ACM (1991). “A Summary of the ACM/IEEE-CS Joint Curriculum Task Force Report: Computing Curricula 1991,” Communications of the ACM., 34(6): 68–84.
Baber, R.L. (1997). “Comparison of electrical “engineering” of Heavisideés times and software “engineering” of our times,” IEEE Annals of the History of Computing., 19(4): 5–17.
Baber, R.L. (1997). “CS education and an engineering approach to software development,” Proceedings of the 27th Southern African Computer Lecturerés Association Conference., Wilderness, South Africa, pp. 22–4. Southern African Computer Lecturerés Association (SACLA).
Brooks, F. (1995). The Mythical Man-Month: Essays on Software Engineering. (anniversary ed.). Reading, Massachusetts: Addison-Wesley.
Berztiss, A. (1987). “A mathematically focused curriculum for computer science,” Communications of the ACM., 30(5): 356–65.
Goldweber, M., Impagliazzo, J., Bogoiavlenski, I.A., Clear, A.G., Davies, G., Flack, H., Myers, J.P., and Rasala, R. (1997). “Historical perspectives on the computing curriculum,” ITiCSE-WGRSP′97. Selected Papers from the Proceedings on Integrating Technology into Computer Science Education: Working Group Reports and Supplemental Proceedings., Uppsala, Sweden, pp. 94–111. New York, New York: ACM Press.
Gries, D. (1991). “Teaching calculation and discrimination: A more effective curriculum,” Communications of the ACM., 34(3): 44–55.
Lewis, T. (1996). “The next 10,0002 years: Part I,” Computer., 29(4): 64–70.
Lewis, T. (1996). “The next 10,0002 years: Part II,” Computer., 29(5): 78–86.
Machanick, P. (1998). “The abstraction-first approach to data abstraction and algorithms,” Computers and Education., 31(2): 135–50.
Machanick, P. (1998). “A Scalable Architecture for Video on Demand: SAVoD,” Technical Report. http://www.cs.wits.ac.za/~philip/papers/SAVoD.html
Pancake, C.M. (1995). “The promise and the cost of object-technology: A five-year forecast,” Communications of the ACM., 38(10): 33–49.
Raymond, E.S. (1997). “The Cathedral and the Bazaar,” (revisions 1998). http://www.earthspace.net/~esr/writings/cathedral-bazaar/
Wilkes, M.V. (1995). “The memory wall and the CMOS end-point,” Computer Architecture News., 23(4): 4–6.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer Science+Business Media New York
About this chapter
Cite this chapter
Machanick, P. (2000). Curriculum 2020. In: Greening, T. (eds) Computer Science Education in the 21st Century. Springer, New York, NY. https://doi.org/10.1007/978-1-4612-1298-0_8
Download citation
DOI: https://doi.org/10.1007/978-1-4612-1298-0_8
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4612-7084-3
Online ISBN: 978-1-4612-1298-0
eBook Packages: Springer Book Archive