Abstract
This chapter proposes how to address in the Methods of Teaching Computer Science (MTCS) course topics associated with the nature of the discipline of computer science and with cross-curriculum topics. The importance of these topics is explained by the fact that even today, no consensus has been reached with respect to one agreed-upon definition for computer science, and different scholars view it differently. Specifically, the following topics are discussed in this chapter: what is computer science, the history of computer science, computer scientists, social issues of computer science, programming paradigms, computer science soft ideas, computer science as an evolving discipline, and computer science as an integrated and integral part of other disciplines. For each topic, its meaning and its importance and relevance in the context of computer science education are explained, and then, activities which deal with the said topic are presented.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
See also Hal Abelson’s 10-min talk on What is “Computer Science”? at http://www.youtube.com/watch?v = zQLUPjefuWA.
- 2.
- 3.
The report is available online at http://research.microsoft.com/towards2020science/background_overview.htm.
- 4.
Based on Hazzan and Lapidot (2006).
- 5.
- 6.
- 7.
Based on Hazzan and Lapidot (2006).
- 8.
See Computing Curricula:
2001: http://www.acm.org/education/curric_vols/cc2001.pdf
2008: http://www.acm.org/education/curricula/ComputerScience2008.pdf
- 9.
- 10.
- 11.
Based on Stolin and Hazzan (2007).
- 12.
Based on Hazzan (2008).
- 13.
©Migvan—Research and Development in Computer Science Education, The Department of Education in Science and Technology, Technion Israel Institute of Technology.
- 14.
Based on Lapidot and Hazzan (2003).
- 15.
E.g., the Cybersecurity Education at UMD program at http://cyber.umd.edu/education.
References
Abelson H, Sussman G, Sussman J (1996) Structure and interpretation of computer programs, 2nd edn. The MIT, Cambridge
Ambler AL, Burnett MM, Zimmerman BA (1992) Operational versus definitional: a perspective on programming paradigms. Comput 25(9):28–43
Anderson P, Bowring J, McCauley R, Pothering G, Starr C (2014) An undergraduate degree in data science: curriculum and a decade of implementation experience. Proceedings of SIGCSE 2014—the 45th ACM technical symposium on computer science education Atlanta, Georgia, pp. 145–150
Ashenhurst RL, Graham S (1987) ACM turing award lectures-the First Twenty Years. ACM Press, New York, NY
Carey T, Shepherd M (1988) Towards empirical studies of programming in new paradigms. Proceedings of the ACM 16th Annual Conference on Computer Science. (Atlanta, Georgia, United States), CSC ‘88. ACM Press, New York, pp. 72–78
Corder C (1990) Teaching hard teaching soft: a structured approach to planning and running effective training courses. Gower, Brookfield, VT
Denning PJ (2005) Is computer science science? Commun ACM 48(4):27–31
Denning PJ, Comer DE, Gries D, Mulder MC, Tucker A, Turner AJ, Young PR (1989) Computing as a discipline. Commun ACM 32(I):9–23
Dijkstra EW (1986) On a cultural gap. Math Intell 8(1):48–52
Floyd RW (1979) The paradigms of programming. Commun ACM 22(8):445–460
Haberman B, Ragonis N (2010) So different though so similar?-Or vice versa? Exploration of logic programming and of object oriented programming. Issues Inf Sci Inf Tech 7:393–402
Hazzan O (2008) Reflections on teaching abstraction and other soft ideas. Inroads- SIGCSE Bull 40(2):40–43
Hazzan O, Lapidot T (2004) Construction of a professional perception in the methods of teaching computer science course. Inroads- SIGCSE Bull 36(2):57–61
Hazzan O, Lapidot T (2006) Social issues of Computer Science in the Methods of Teaching Computer Science in the High School course. Inroads- SIGCSE Bull 38(2):72–75
Hazzan O, Har-shai G (2013) Teaching computer science soft skills as soft concepts. SIGCSE 2013—the 44th ACM technical symposium on computer science education. Denver, CO:59–64.
Hazzan O, Har-shai G (2014). Teaching and learning computer science soft skills using soft skills: the students’ perspective. Proceedings of SIGCSE 2014—the 45th ACM technical symposium on computer science education. Atlanta, USA, pp. 567–572
Kuhn TS (1962) The structure of scientific revolution. University of Chicago, Chicago, IL
Lapidot T, Hazzan O (2003) Methods of teaching computer science course for prospective teachers. Inroads- SIGCSE Bull 35(4):29–34
Lave J, Wenger E (1991) Situated learning: legitimate peripheral participation (Learning in Doing: SOCIAL, Cognitive and Computational Perspectives). Cambridge University Press, Cambridge, UK
Microsoft Research (2005). Towards 2020 science. http://research.microsoft.com/en-us/um/cambridge/projects/towards2020science/downloads/T2020S_ReportA4.pdf. Accessed August 2014
Microsoft Research (2006) Towards 2020 science. Retrieved March 16, 2007, http://research.microsoft.com/towards2020science/background_overview.htm. Accessed July 14 2010
Ragonis N (2009) Computing pre-university: secondary level computing curricula. In: Wah B (ed) Wiley encyclopedia of computer science and engineering, (pp 632–648), 5(1), Wiley, Hoboken.
Sethi R (1996) Programming languages concepts & constructs, 2nd edn. Addison-Wesley, Reading, MA
Stolin Y, Hazzan O (2007) Students’ understanding of computer science soft ideas: the case of programming paradigm. Inroads- SIGCSE Bull 39(2):65–69
Sukhoo A, Barnard A, Eloff MM, Van der Poll JA (2005) Accommodating soft skills in software project management. Issues Inf Sci Inf Tech 2:691–704
Tomayko J, Hazzan O (2004) Human aspects of software engineering. Charles River Media, Newton Center, MA
Tucker A, Noonan R (2002) Programming languages-principles and paradigms. McGraw Hill, New York, NY
Turkle S (1984) The second self: computer and human spirits. Simon and Shuster, New York, NY
Van Roy P, Haridi S (2004) Concepts, techniques, and models of computer programming/MIT Press, Cambridge, MA
Van Roy P, Armstrong J, Flatt M, Magnusson B (2003) The role of language paradigms in teaching programming. Proceedings of the 34th technical symposium on computer science education, Reno, Nevada, pp 269–270
Watt DA (1990) Programming language concepts and paradigms. Prentice Hall, Upper Saddle River, NJ
Wing J (2006) Computational thinking. Commun ACM 49(3):33–35
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2014 Springer-Verlag London Limited
About this chapter
Cite this chapter
Hazzan, O., Lapidot, T., Ragonis, N. (2014). Overview of the Discipline of Computer Science. In: Guide to Teaching Computer Science. Springer, London. https://doi.org/10.1007/978-1-4471-6630-6_3
Download citation
DOI: https://doi.org/10.1007/978-1-4471-6630-6_3
Published:
Publisher Name: Springer, London
Print ISBN: 978-1-4471-6629-0
Online ISBN: 978-1-4471-6630-6
eBook Packages: Computer ScienceComputer Science (R0)