ABSTRACT
Jeannette Wing's call for teaching Computational Thinking (CT) as a formative skill on par with reading, writing, and arithmetic places computer science in the category of basic knowledge. Just as proficiency in basic language arts helps us to effectively communicate and in basic math helps us to successfully quantitate, proficiency in computational thinking helps us to systematically and efficiently process information and tasks. But while teaching everyone to think computationally is a noble goal, there are pedagogical challenges. Perhaps the most confounding issue is the role of programming, and whether we can separate it from teaching basic computer science. How much programming, if any, should be required for CT proficiency?
We believe that to successfully broaden participation in computer science, efforts must be made to lay the foundations of CT long before students experience their first programming language. We posit that programming is to Computer Science what proof construction is to mathematics, and what literary analysis is to English. Hence by analogy, programming should be the entrance into higher CS, and not the student's first encounter in CS. We argue that in the absence of programming, teaching CT should focus on establishing vocabularies and symbols that can be used to annotate and describe computation and abstraction, suggest information and execution, and provide notation around which mental models of processes can be built. Lastly, we conjecture that students with sustained exposure to CT in their formative education will be better prepared for programming and the CS curriculum, and, furthermore, that they might choose to major in CS not only for career opportunities, but also for its intellectual content.
- H. Abelson and G. J. Sussman. Structure and Interpretation of Computer Programs, 2nd ed. MIT Press, Cambridge, 1996. Google ScholarDigital Library
- J. L. Bates and R. L. Constable. Proofs as programs. ACM Trans. Program. Lang. Syst. 7(1):113--136, 1985. Google ScholarDigital Library
- L. Carter. Why students with an apparent aptitude for computer science don't choose to major in computer science. SIGCSE 2006, Houston, pp. 27--31. Google ScholarDigital Library
- A. Cohen and B. Haberman. Computer science: a language of technology. SIGCSE inroads 39(4):65-69, 2007. Google ScholarDigital Library
- CS Unplugged. http://csunplugged.com.Google Scholar
- P. J. Denning and A. McGettrick. Recentering computer science. CACM 48(11):15--19, 2005. Google ScholarDigital Library
- M. Guzdial. Paving the way for computational thinking. CACM 51(8):25--27, 2008. Google ScholarDigital Library
- S. Reges. The mystery of "b:= (b = false)." SIGCSE 2008, Portland, pp. 21--25. Google ScholarDigital Library
- L. Shustek, ed. Donald Knuth: a life's work interrupted, part 2. CACM 51(8):31--35, 2008. Google ScholarDigital Library
- J. M. Wing. Computational thinking. CACM 49(3):33--35, 2006. Google ScholarDigital Library
Index Terms
- Thinking about computational thinking
Recommendations
Teaching how to teach computational thinking
ITiCSE 2018: Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science EducationComputational Thinking is argued to be an essential skill for the workforce of the 21st century. As a skill, Computational Thinking should be taught in all schools, employing computational ideas integrated into other disciplines. Up until now, questions ...
Thinking about computational thinking
SIGCSE '09Jeannette Wing's call for teaching Computational Thinking (CT) as a formative skill on par with reading, writing, and arithmetic places computer science in the category of basic knowledge. Just as proficiency in basic language arts helps us to ...
Computational thinking in high school courses
SIGCSE '10: Proceedings of the 41st ACM technical symposium on Computer science educationThe number of undergraduates entering computer science has declined in recent years. This is paralleled by a drop in the number of high school students taking the CS AP exam and the number of high schools offering computer science courses. The declines ...
Comments