Is Teaching Parallel Algorithmic Thinking to High School Students Possible? One Teacher’s Experience
All students at our high school are required to take at least one course in Computer Science prior to their junior year. They are also required to complete a year-long senior project associated with a specific in-house laboratory, one of which is the Computer Systems Lab. To prepare students for this experience the lab offers elective courses at the post-AP Computer Science level. Since the early 1990s one of these electives has focused on parallel computing. The course enrolls approximately 40 students each year for two semesters of instruction. The lead programming language is C and topics include a wide array of industry-standard and experimental tools. Since the 2007-2008 school year we have included a unit on parallel algorithmic thinking (PAT) using the Explicit Multi-Threading (XMT) system [11, 12]. We describe our experiences using this system after self-studying the approach from a publicly available tutorial. Overall, this article provides significant evidence regarding the unique teachability of the XMT PAT approach, and advocates using it broadly in Computer Science education
Torbert, S., Vishkin, U., Tzur, R., and Ellison, D. J. (2010). Is teaching parallel algorithmic thinking to high school students possible? One teacher’s experience. SIGCSE’10. Milwaukee, WI: ACM 978-1-60558-885-8/10/03.