Frequently Asked Questions

Computer Science (CS) Principles for High School (CSP4HS) is a free six-week online course for educators who want to learn more about the CS Principles curriculum framework. Below are answers to common questions about the course. New questions will be added based on participant requests.


What is CS Principles?

The College Board is developing CS Principles as a future Advanced Placement (AP) course that is expected to launch in Fall 2016 with an official exam in May 2017. CS Principles seeks to broaden the participation in computer science by providing an engaging and fun curriculum that showcases the diverse and exciting opportunities that are available in computer science. The CS Principles curriculum is based on Seven Big Ideas: Creativity, Abstraction, Data, Algorithms, Programming, Internet, Global Impact. For more information about CS Principles, please visit here.

What is the primary objective of the CSP4HS course?

The objective of the CSP4HS course is to provide an introduction to the curriculum framework and performance tasks of CS Principles. Those who complete the course should have a foundation of content knowledge that would equip them to explore the opportunity of offering CS Principles at their own school. Pedagogical suggestions for teaching the content will also be introduced at various points throughout the course.

Who can participate in the CSP4HS online course?

The course is freely available to anyone interested in learning more about CS Principles. The target audience is high school teachers who may be considering the course as an offering at their school. Specifically, CSP4HS assumes that participants have very little computer science background (i.e., the pace of the course would be appropriate for a STEM or Career Tech teacher with no prior programming experience). However, CSP4HS may still be of interest to those who are already teaching the AP CS A course, or even college faculty who may want to learn more about the CS Principles curriculum. The course is not designed for K-12 students, but students who enroll in the course should also gain a deeper understanding of the content in CS Principles.

What are the past events that led to the creation of this course?

The CSP4HS course emerged from the intersection of several past and current activities: 1) the experiences gained from offering four years of face-to-face and online CS4HS workshops (2011-2014) - supported by Google; 2) the University of Alabama's participation as a national CS Principles Pilot site (from 2011-present), and the corresponding undergraduate course (CS 104) that now targets pre-service Secondary Math Education students. Much of the content provided in CSP4HS is taken from the experience and resources resulting from the design and refinement of this University-level Pilot course; 3) the CS4Alabama project, which is training 50 high school teachers in Alabama through year-long professional development on CS Principles (this project is funded by the National Science Foundation's CE21 program, in collaboration with A+ College Ready, the Alabama State Department of Education, and Haynie Research and Evaluation).

In particular, the CS4Alabama training needs led to the organization and structure of CSP4HS. Because the CS4Alabama teachers are spread across different locations in Alabama, there is a need to offer online training to provide content knowledge (it would be too costly to bring all of the CS4Alabama teachers to one location for an extended period of time). The natural extension of this training to a larger scale has been supported by Google as an opportunity to provide teachers outside of Alabama with introductory training on CS Principles.

Why is this course starting so early, and what can be done to accommodate those who get out of school later?

As mentioned in the last question, the idea for this training was driven by a need of the CS4Alabama project. The professional development (face-to-face training) for CS4Alabama is set for late June 2015, mainly because the instructor has his July occupied with travel (CSTA conference, CS Principles AP meeting) and several weeks of summer camps. The CS4Alabama teachers need to have prior content knowledge before arriving for the face-to-face training. Because the school year ends in late May for most Alabama schools, the timeline fit well for beginning the CSP4HS course a month prior to the face-to-face training.

We realize that many schools end their year later in the summer. We very much welcome participation from all over the US and would be delighted to have teachers participate from schools with later end dates. The course materials will be left online and available for all of the teachers who need to start the course later. The only challenge will be the participation in some of the synchronous activities that we have planned (e.g., group Hangouts). Some of those dates may occur prior to the time that some teachers are learning the material. Those who begin the course late may still post to the Piazza forum for CSP4HS and request office hours with the course support staff.

Will this course prepare me to teach ALL of the CS Principles curriculum framework?

Given the number of contact hours in the course, it is not possible to cover every topic and issue that will be encountered when teaching a year-long CS Principles course in a high school class. CSP4HS will provide a summary of the Big Ideas and key topics of Learning Objectives, such that those who complete the course will be equipped with the knowledge and resources to kickstart their own class. The level of detail in the curriculum framework is too deep to cover everything in a six-week online course, but participants will be informed about resources and communities of support that they can use during their own course implementation to help fill any gaps not covered in detail in the CSP4HS course.

What resources are available to those who would like to learn more, or who plan to teach CS Principles?

There are many resources that will be suggested throughout the duration of the course, both specific to CS Principles, and for CS education, in general. A special topic in Piazza will be created to collect such resources from the CSP4HS staff and course participants.

How do I participate in the CSP4HS course?

To participate in the course, you must first register for the course using a Google account. The registration link is available here and also on the main course home page. During registration, we ask all participants to complete a short pre-survey that will help us to understand the background and specific needs of those participating in the course.

The course is six weeks long, and runs from the week of June 1st through the week of July 24th, 2015. During the week of the CS4Alabama face-to-face training (week of June 22nd) and the week of the July 4th holiday, we will not post new content, but participants will be assigned the first homework during that time.

The course uses asynchronous interaction during each week of instruction so that participants can learn at their own pace. The asynchronous instruction will include short video lectures (often between 7-9 minutes in duration) on CS Principles content topics. Also, participants may asynchronously complete activities and assessments associated with the course content, and join in on Piazza discussion forums at their own schedule. We will also assign readings througout the course.

There will also be synchronous activities where participants may join with others taking the course, as well as opportunities to interact with the course support staff. The synchronous sessions include a weekly Hangout on Air that will feature someone who is influential in the CS Principles commiunity, in which all course participants may join and submit questions to our speaker. Smaller group interactions will be facilitated by the course staff through group discussions in Google Hangouts sessions. These will be scheduled on a first-come/first-served basis.

There is a unique opportunity that blends the online learners of the course with a face-to-face professional development session that will be held in Alabama (week of June 22). We will record the personal interactions during the week of the CS4Alabama training and provide asynchronous access to the sessions to those who are taking the course online, but cannot attend in person. The face-to-face sessions will focus primarily on discussions about the CS Principles performance tasks, which are assessment instruments that the College Board will use to calculate a student’s AP score in CS Principles.

Those participants who complete all of the activities and assessments, and who have an active presence in the online community associated with the course, will be issued a certificate of completion at the end of August through email.

We plan to make all resources available on the course site after July, but only those who complete the course in the allotted timeframe will receive a certificate.

What certificates or course credit is available?

Those who fulfill the following requirements will receive a "CS Principles for High School: Programmer" certificate that mentions 35 hours toward course effort.

  • Complete the pre and post-surveys.
  • Complete all of the quizzes for each lesson in units 1, 2, and 3.
  • Receive a passing score (70 or above) on a mid-course exam assessment that will be available after units 1-3 are open.
  • Receive a passing score (70 or above) as a grade on their Create PT (details of this assignment will be provided later in the course).
Those who fulfill the following additional requirements will also receive a full "CS Principles for High School: Full Course" certificate in addition to the "Programmer's" certificate. This certificate will mention the completion of 45 hours of professional development.
  • Complete all of the quizzes for each lesson in units 4, 5, and 6.
  • Receive a passing score (70 or above) on a final exam assessment that will be available after all units are open.

We will provide the certificates electronically by the end of August.

The course does not offer any formal college credit. For Alabama participants, we have set up an STI registration for up to 45 hours of Professional Development hours for those who complete the course. For those in other states, we are glad to help document participation if there is an opportunity for you to receive PD credit (we just can't set that up for you since we are not in your state - we are happy to provide documentation to any state desiring to give Professional Development credit).

Why are you using Snap?

In our past K-12 outreach activities (e.g., summer camps and past face-to-face CS4HS workshops) we have used many different environments and languages, such as:

  • Alice for multi-year and multi-week summer camps, as well as one of the first "Alice Film Festivals"
  • App Inventor for a wide range of K-12 activities and even existing summer camps
  • Scratch for summer camps and our research (please see Myna, which is a research project funded by the NSF to explore "Programming by Voice" to allow children with motor disabilities to learn how to program)
  • Lego Mindstorms for almost a decade, even in current camps
  • Java and Greenfoot as an advanced high school summer camp

Many of the above (except for Java) are also used often in other CS Principles pilot courses.

The reason that we selected Snap is that we believe it is an environment (much like Scratch) that allows us to most quickly get straight to the core programming concept that we want to demonstrate without the need for explaining too much other context. This is especially needed in the short amount of time we have to cover the Programming Big Idea in this course. If we had more time, we may have considered other environments. We also think that the ability of Snap to generate code in other "traditional" text languages is also powerful, as demonstrated by Dan Garcia in a Hangout on Air for last year's course. As students near the end of CS Principles, they often want to see what textual languages look like. Snap provides that capability very nicely. Snap also has some capabilities not in the version of Scratch available at the time of the course (e.g., passing values back from Blocks, like the Reporter or Predicate option in Snap).

There are many other good online resources available for other environments, such as:

Rather than duplicate what others have done well, our adoption of Snap allows us to focus more on the core ideas of CS Principles, while allowing participants to get deeper instruction on other programming environments through other excellent offerings. The focus of CSP4HS is more on the core curriculum framework of CS Principles, rather than a specific programming environment.

What happens to the course materials after the course is over?

We are committed to sharing all of the resources developed for this course and will continue to make them available after the course is over (however, we hope that is not a reason for you to drop out of the course!). We will archive all videos, slides, and lessons that have been developed for the course. It is not clear if those will remain on the CSP4HS main course page, or on some other location, but the location will be made known to all who are interested.

After the course is over, the Piazza forum will also continue to be open (although likely with less traffic) and serve as a place for sharing information and resources during the school year. After the official dates of the summer course are over, the only part of the course that will completely stop is the live office hours in Google Hangouts.

Other FAQs to be added during course evolution...

Please check back occasionally for new updates to FAQ entries.