Introducing Computer Science to the Public


The Process of Creating An AP Course

Computer Science is now a large, rather amorphous field that no longer divides into tidy compartments like 'theory' and 'systems'. Consequently, identifying the most fundamental content, formulating it in a teachable form and testing it is not a simple matter. The process used for the CS Principles course is careful and broad-based.


Executive Summary
Endorse CS Principles
The Process
Content: 7 Big Ideas
6  CT  Practices
2010/11 APCSP PIlots
Become A Pilot Site

The sole justification of teaching, of the school itself, is that the student comes out of it able to do something he could not do before. I say do and not know, because knowledge that doesn't lead to doing something new or doing something better is not knowledge at all.
-- J. Barzun ("Begin Here")

As stated by the College Boards commission charged with creating it, the goals for the new CS Principles course are

  • Not to be a replacement for the current AP CS A course
  • Must be a course for which college credit and/or placement is given (AP)
  • Not designed as a required course for majors
  • Designed to appeal to a vastly larger and more diverse set of students
The process employed by the Commission to develop the course and exam can be formulated in terms of the roles of the various participants. For the purposes of this discussion, these are
  • Commission
  • Advisory Groups
  • Piloting Instructors
In the next part we describe roles of the commission.



Don Allen
  Troy HS CA
Christine Alvarado
  Harvey Mudd College
Stacey Armstrong
  Cypress Woods HS TX
Owen Astrachan
  Duke University
Charmaine Bentley
  FDR High School TX
Amy Briggs
  Middlebury College
Rich Kick
  Newbury Park HS CA
Mark Guzdial
  Georgia Inst of Tech
Jody Paul
  Metropolitan State
Chris Stephenson
  Exec Dir CSTA

The Commission

The ten member Commission, composed of both high school and college faculty, set the overall direction for the effort. There primary activities were

  • Develop the Curriculum Framework (Big Ideas, Computational Thinking Practices, Claims and Evidence)
  • Review project evaluation data (e.g. College Curriculum Study and course pilot data) to revise the Curriculum Framework
  • Recommend prior knowledge and skills for success in the proposed course.

The two main results of the commission's efforts that are described here are the Seven Big Ideas, which sets the intellectual scope of the Computer Science to be covered in the exam, and the Six Computational Thinking Practices, which describes the habits of mind and skill set of people knowledgeable in Computer Science.

The commission proposed to use the following timeline to pace the effort:

diagram of timeline

Advisory Committee

Duane Bailey
  Williams College
Tiffany Barnes
  UNC Charlotte
Gail Chapman
  Director CSTA
Tom Cortina
  Carnegie Mellon
Stephen Edwards
  Virginia Poly
Dan Garcia
  UC Berkeley
Joanna Goode
  U of Oregon
Michelle Hutton
  President, CSTA
Deepak Kumar
  Bryn Mawr College
Jim Kurose
  U Mass Amherst
Andrea Lawrence
  Spellman College
Richard Pattis
  UC Irvine
Eric Roberts
  Stanford University
Katie Siek
  U Colorado at Boulder
Beth Simon
  UC San Diego
Larry Snyder
  U of Washington
Lynn Andrea Stein
  Olin College
Fran Trees
  Drew University

The Advisory Committee

The nineteen member Commission, composed principally of college faculty, vetted the work of the Commission including the Seven Big Ideas and Six Computational Thinking Practices documents. The Advisory Committee was responsible for

  • Review and provide feedback on the Curriculum Framework
  • Develop draft curricular requirements
  • Develop an annotated course outline for pilot courses
  • Recruitment for Pilots
  • Piloting instructors develop sample syllabi for pilot courses

A principal result from the Advisory Committee is an annotation of the course content. Three themes encapsulate the "spin" that the Committee placed on the course:

 Creativity   A key theme of the Principles course is its focus on creativity. The Big Ideas and Computational Thinking Practices that follow hint at the creative nature of computing and computer science, yet alone they cannot truly convey how we hope creativity should be addressed in the course. It’s not enough for students to know that “computing requires creativity.” Rather, we want them to actually be creative: creating artifacts that they want to show off to their friends and family, using simulation to explore questions that interest them, and designing and implementing solutions employing the iterative and sometimes messy process that artists, writers, and engineers use to translate ideas into tangible form.
 Technology to Solve and Create   A second theme is the course’s use of technology as a means for solving computational problems and exploring creative endeavors, rather than a focus on a specific tool or language. To that end, the course highlights programming as one of the seven big ideas of computer science, because programming is among the creative processes that help transform ideas into reality. Programming will be a tool students use to explore concepts and create exciting and personally relevant artifacts. In contrast to traditional college introductory CS courses and the current AP CS A course, the Principles course will not focus on nor be organized around a specific language. The instructor of the course will select one or more languages, based on appropriateness for a specific project or problem and according to guidelines provided as part of the course specification. Language specifics will be taught only to the extent that students need them to produce their programs. Similarly, students in this course will work with "big- data"—to analyze it, to visualize it, to draw conclusions from trends in it—but the course itself does not specify particular tools for these explorations.
 Broad Appeal   A third theme that will help the course appeal to a broad audience is the course’s focus on people and society, not just on machines and systems. Students will explore computer science’s relevance to and impact on the world today. They will investigate the innovations in other fields that computing and computer science have made possible. They will examine the ethical implications of new computing technologies. They will perform activities that develop their communication and teamwork skills. Students in this course will work individually and in teams to solve problems. They will talk and write about their solutions, the importance of these problems and their impact on the world.

Piloting Instructors

Tiffany Barnes
  UNC Charlotte
Dan Garcia
  UC Berkeley
Jody Paul
  Metropolitan State
Beth Simon
  UC San Diego
Larry Snyder
  U of Washington

Piloting Instructors

As detailed in the timeline above, there will be multiple phases of piloting of the new course in order to have ample opportunity to assess and evaluate the teachers, students and materials.

  • 5 college-level pilots in academic 2010/2011
  • 10 college-level pilots and 5 high school pilots in academic year 2011/2012   Apply!
The first piloting instructors were selected from the Commission and Advisory Committee after a careful evaluation process. All have been active in the issues of teaching computer concepts to general audiences. Each will collaborate with a high school teacher.

The pilot instructors main responsibilities are

  • To develop a specific curriculum for a college course based on the material developed earlier
  • To develop materials and activities for the course, and make them publicly available
  • Participate in assessment and evaluation studies
  • Evaluate engagement with students, especially women and minorities
  • Keep a log of the events and experiences with the course

Check out the five piloting schools and instructors.

     Contact: snyder at cs dot washington dot edu