Try AP Computer Science Principles Now!View Course

AP® Computer Science Principles

Try Out the Course!

AP® Computer Science Principles is the newest AP course from the College Board, and becomes an official AP course in the 2016-17 school year. This course introduces students to the foundational concepts of computer science and explores the impact computing and technology have on our society.

With a unique focus on creative problem solving and real-world applications, the CodeHS AP Computer Science Principles course gives students the opportunity to explore several important topics of computing using their own ideas and creativity, use the power of computing to create artifacts of personal value, and develop an interest in computer science that will foster further endeavors in the field. The curriculum has been pre-approved by College Board's AP Course Audit as meeting or exceeding the curricular expectations colleges and universities have for this subject.


The entirely web-based curriculum is made up of a series of learning modules that cover the fundamentals of programming. Each module is made up of short video tutorials, example programs, quizzes, programming exercises, challenge problems, and unit tests. Students write and run JavaScript programs in the browser using the CodeHS editor. The course is designed for a year long class that meets 5 days per week, adding up to over 100 hours of hands-on programming practice in total.

Learning Environment:The course utilizes a blended classroom approach. The content is a mix of web-based and physical activities. Students will write and run code in the browser, create websites and digital presentations, and engage in in-person collaborative exercises with classmates. Teachers utilize tools and resources provided by CodeHS to leverage time in the classroom and give focused 1-on-1 attention to students.

Programming Environment:Students write and run programs in the browser using the CodeHS editor. Students will be able to write both text based and block based JavaScript programs, and students will use Processing.js to create graphical programs. They will also create webpages using HTML, CSS, and JavaScript. These webpages will be hosted on the CodeHS website so that they can keep a running portfolio of their creative projects, and easily share their programs with the world. Students gain programming experience early on in the course that will enable them to explore the rest of the course topics through computational thinking practices.

Quizzes:At the end of each unit, students take a summative multiple choice unit quiz in the style of the AP Exam that assesses their knowledge of the concepts covered in the unit. Included in each lesson is a formative short quiz of various question types, including multiple choice, free response, and matching.The course also provides an AP Test Practice unit with a cumulative AP Practice Multiple Choice Test.

Who is it for?

This course is meant to be a first time introduction to computer science, and does not require students to come in with any computer programming experience. However, we recommend that students take our Introduction to Computer Science prior to our AP courses. Students who have completed our Intro to CS course will be able to apply knowledge of concepts covered in the Intro course to the more advanced setting of the AP courses.

The AP Performance Tasks and Examination:

The AP Performance Tasks:Students will gain the experience necessary to complete the AP Performance Tasks (PTs). Each unit comes with practice PTs in which students will research topics in computing, and create their own digital artifacts. Students will create and maintain a website that will hold each student creation throughout the course. This will serve as a running portfolio of each creative project the student completes.

The AP Exam:This course will prepare students for the multiple choice AP Computer Science Principles examination. Each lesson comes with quizzes to test essential knowledge for the AP Exam. Each unit includes a cumulative AP style multiple choice exam to test understanding of the concepts in the unit, and provide immediate feedback to the student.

Meet Your Instructor

Calvin Studebaker

As a Curriculum Engineer at CodeHS and former computer science TA at Stanford, Calvin has helped thousands of students learn the foundations of computer science.

What do you Learn?

Module Description
Web Development: Introduces HTML, CSS, and the processes involved in viewing web pages on the Internet. Students create several simple web pages using the CodeHS online editor, including their own website about themselves, hosted on their own custom URL. This personal website will serve as a running portfolio of each creative project they create.
Introduction to Programming: Teaches what it means to "program" and allows students to focus on solving problems using code, rather than getting bogged down in syntax. Students solve problems by moving Karel the Dog around the grid.
Digital Information:Teaches the various ways we represent information digitally. Topics covered include number systems, encoding data, programmatically creating pixel images, comparing data encodings, compressing and encrypting data.
The Internet:Explores the structure and design of the internet, the reliability of network communication, the security of data, and personal privacy. Students will learn about the protocols and algorithms used in the internet, and the importance of cybersecurity.
Data:Introduces computational tools used to store massive amounts of data, manipulate and visualize data, find patterns in data, and pull conclusions from data. Students will consider how the modern wealth of data collection has impacted society in positive and negative ways.
Performance Tasks:Students create their AP Performance Tasks including a chance to review course content and practice the skills necessary to complete each performance task.
Review for the AP Exam:This unit gives students a review of the topics covered in the course and provides practice solving AP Exam style multiple choice questions.
Final Project:Students brainstorm a final project, discuss ideas with peers, scope and plan out milestones for incremental development, and build their own creative final product from scratch.
View Syllabus Preview Course

Course Objectives

This course is based directly off of the College Board AP Computer Science Principles Curriculum Framework. We recommend reading the curriculum framework for context. The main course objectives are summarized below in the six computational thinking practices and seven big ideas for the course.

Computational Thinking Practices:The six computational thinking practices represent important aspects of the work that computer scientists engage in, and are denoted here by P1 through P6:

  • P1:Connecting Computing
  • P2:Creating Computational Artifacts
  • P3:Abstracting
  • P4:Analyzing Problems and Artifacts
  • P5:Communicating
  • P6:Collaborating

Big Ideas:The seven big ideas of the course encompass foundational ideas of the field of computer science, and are denoted here by B1 through B7:

  • B1:Creativity
  • B2:Abstraction
  • B3:Data and Information
  • B4:Algorithms
  • B5:Programming
  • B6:The Internet
  • B7:Global Impact


Interested in teaching AP Computer Science Principles with CodeHS? Tell us more by requesting a quote and we'll get in touch!

Get in Touch Preview Full Course See Short Demo

Sample Resources

Here are a few examples of teacher resources and materials to use in the AP Computer Science Principles course.


The CodeHS syllabus has been pre-approved by College Board's AP Course Audit as meeting or exceeding the curricular expectations colleges and universities have for this subject.

Pre-approved Syllabus ID #: 1667172v1

Take a look at our syllabus for teaching AP Computer Science Principles with CodeHS.

View Syllabus How to Add Our Syllabus to Your AP Course Audit

Interactive Tools

Students will learn and explore concepts around digital information, programming, data, the internet and more. See a few of the ways that students will learn about these concepts.

Students will learn the basics of programming with Karel the Dog. Karel is a dog who lives in a grid world and students will give commands to Karel to solve puzzles. Students can program in blocks or text.

Students will learn the basics of web development with HTML and CSS. Here you can see how students can design web pages using text or blocks.

Students will learn ideas around abstraction, digital information and encodings. Here you can see how students will explore black and white pixel images interactively.

Students will learn how digital information can be used to represent all types of data such as colors or text. Here students can create their own images with pixels.

Students will learn about how the internet works. This tool lets student explore the pathway that information takes through the internet.

Students will take formative assessments throughout the course in the style of the AP exam. Here you can see a sample question.

AP® and Advanced Placement® are registered trademarks of the College Board. Used with permission.