Computer Science Principles

What is CS Principles?

Computer Science Principles introduces students to the foundational concepts of computer science and challenges them to explore how computing and technology can impact the world. More than a traditional introduction to programming, it is a rigorous, engaging, and approachable course that explores many of the foundational ideas of computing so all students understand how these concepts are transforming the world we live in.

This year-long course can be taught as an AP or non-AP course - no prerequisites required for students or for teachers new to computer science! In addition, our curriculum is available at no cost for anyone, anywhere to teach. For more information about our goals and approach to our courses, please see our curriculum values and our professional learning values.

Computer Science Principles

Recommended for Grades 9-12

Computer Science Principles is a course designed to prepare students (and teachers) who are new to computer science for the AP CS Principles exam. The course covers many topics including the Internet, Big Data and Privacy, and Programming and Algorithms.'s AP CS Principles Curriculum AP CSP Endorsed is recognized by the College Board as an endorsed provider of curriculum and professional development for AP® Computer Science Principles. This endorsement affirms that all components of CS Principles’s offerings are aligned to the AP Curriculum Framework standards and the AP CS Principles assessment. Using an endorsed provider affords schools access to resources including an AP CS Principles syllabus pre-approved by the College Board’s AP Course Audit, and officially recognized professional development that prepares teachers to teach this course.

Curriculum Resources and Features

The Curriculum Guide contains details on the classroom and student practices that flow throughout the course, overviews of each unit, and implementation considerations.

Daily lesson plans come with detailed instructions, activity guides, assessments, standards mappings, and more.

Create and manage your classroom sections, check student progress, administer assessments, and integrate with your Google or Clever classroom - all from your Teacher Dashboard!


Teaching CS Principles as an AP course? Don't forget to submit the 2017 AP Endorsed Syllabus for the AP course audit.

Students get hands on experience with concepts like binary and pixels through computational widgets.

Quickly create shareable apps with's App Lab - an online block to text, JavaScript programming environment.


Don't miss these additional resources:

Unit Overview

Unit 1

The Internet

Students learn how the multi-layered systems of the Internet function as they collaboratively solve problems and puzzles about encoding and transmitting data, both 'unplugged' and using's Internet Simulator.

Unit 2

Digital Information

Using a variety of tools, students look at, generate, clean, and manipulate data to explore the relationship between information and data. Students also create and use visualizations to identify patterns and trends.

Unit 3

Algorithms and Programming

In this unit, students learn the JavaScript language with turtle programming in's App Lab. Students are introduced the general principles of algorithms and program design that are applicapble to any programming language.

Unit 4

Big Data and Privacy

Students research current events around the complex questions related to public policy, law, ethics, and societal impact. Students are also introduced to the basics of how and why modern encryption works.

Unit 5

Building Apps

Students continue learning how to program in the JavaScript language. Using's App Lab environment, students create a series of applications that live on the web. Each app highlights a core concept of programming.

AP Explore Performance Task

Explore - Impact of Computing Innovations

This unit provides activities and resources for students to prepare for and complete the AP Explore Performance Task, which requires students to identify a computing innovation, explore its impact, and create a related digital artifact.

AP Create Performance Task

Create - Applications from Ideas

This unit provides activities and resources for students to prepare for and complete the AP Create Performance Task, which asks students to develop a program on a topic that interests them or one that solves a problem.


Making Data-backed Apps

After the AP Test, students learn how to use App Lab's database capabilities to make apps that store data in the cloud so that it can be retrieved later.

Use, share, and customize the resources, as they are distributed under a Creative Commons Attribution Non-Commerical ShareAlike License see our Terms of Service. If you are interested in licensing materials for commercial purposes, contact us.

Keep up with CS Principles

Let us know how we're doing

We are always looking for ways to improve our courses. If something's not quite working, or you have ideas about features that you'd like to see, we'd love to hear from you!

Subscribe for the latest news

Sign up for our monthly emails, which contain the latest news about tools, videos, and other important updates for CS Principles.

Chat about CS Principles in the forum

We have forums for educators to discuss and trade ideas about CS Principles and talk about the curriculum. forums are used for all of our courses, K-12.

Spread the word about CS Principles

Hand out these fliers around your school and consider sending home to parents.

image image

Hang these posters in your classroom and around your school:

image image image image

Share these videos with students, parents, or administrators:

Frequently Asked Questions

What materials do I need for this course?

Required Materials:

This course requires students have access to computers with a modern web browser. For more details, check out's technology requirements, here.

Many lessons have handouts that are designed to guide students through activities. While these handouts are not required, we highly recommend their use. In addition to handouts, you will need the following:

Optional Materials

The following items are called for in lessons, but alternatives are offered below:

The following supplies are completely optional but will be useful to have on hand for various lessons:

How can I access answer keys?

With an approved teacher account you can find answer keys in a blue "Teacher Only" panel that shows in the online lessons and activities.

Teachers in our professional learning program will automatically be approved to view answer keys. If you need an approved teacher account, any teacher can apply for Code Studio access to protected teacher-only materials (answer keys, etc) through this form.

How can I communicate with other teachers who are using the curriculum?

Check out our forum at There you'll find a space for general CS Principles discussion as well as unit- and lesson-specific threads.

Can I give feedback on the lessons?

Yes, please! Our desire is that the curriculum will be a living document and not something set in stone. We are open to changes or alternatives to lessons so please send us your feedback by using the CS Principles forum.

How/Where can I get professional development for this course?

Our middle and high school programs offer year-round support. The program kicks off with a 5-day summer workshop where you'll have an opportunity to work hands-on with the curriculum and meet other teachers from your area. Throughout the year, we offer online support for upcoming units, forum support, and 1-day quarterly workshops. You don't need any prior computer science experience to get started. And teachers love it! 90% rank it the best professional development ever. Click here to learn more.

Want to get notified when applications open for the 2019-2020 school year? Provide your contact information to a Regional Partner.

How can I learn about what's new or changing with the curriculum?

We send out monthly updates! Sign up for future emails.

Ideas and Inspirations

Please see this page about CS Principles Inspirations to read about the influential works in computer science education that form some of the course's philosophical underpinnings.

AP® is a registered trademark of the College Board.