Using Peer Instruction to Develop Computational Thinking Practices: An Advanced Placement Computer Science (CS) Principles Pilot
Computational thinking practices are critical to enable next-generation advances in all STEM disciplines. Yet, while STEM disciplines ubiquitously require core competencies, almost none do so in computing. The NSF Computer and Information Science and Engineering Directorate supported the College Board in the development of a new Advanced Placement course appropriate for all STEM students: CS Principles. The curriculum targets students’ development of computational thinking skills by focusing on underlying principles of computation, including problem solving, abstraction, algorithms, data and knowledge creation, and programming. During 2010–2011, CS courses were piloted at five universities. The implementation of a pilot, with more than 1000 students, at UC San Diego utilized Peer Instruction—a best-practice pedagogy whereby passive lecture is largely replaced by an active learning environment driven by key conceptual questions. In the classroom, it involves a three-part process: (1) students attempt to answer a question individually (with a clicker); (2) in small groups, students practice explanation skills and hear what others thought about and how they analyzed the question; and (3) students vote on an answer and a class-wide discussion follows. The benefit of Peer Instruction for CS Principles is that it converts instructional time into time where students actively practice and get feedback on their computational thinking practices, not simply on their ability to get a computer to do something. It is the development of these deep understandings of how computers work that will serve students in their future careers, regardless of the new software package or technology du jour.