Is teaching parallel algorithmic thinking to high school students possible?: one teacher's experience

  • Authors:
  • Shane Torbert;Uzi Vishkin;Ron Tzur;David J. Ellison

  • Affiliations:
  • Thomas Jefferson High School for Science and Technology, Fairfax County, VA, USA;The University of Maryland, College Park, MD, USA;University of Colorado Denver, Denver, CO, USA;Indiana University Bloomington, Bloomington, IN, USA

  • Venue:
  • Proceedings of the 41st ACM technical symposium on Computer science education
  • Year:
  • 2010

Quantified Score

Hi-index 0.02

Visualization

Abstract

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. 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.