AP Computer Science Principles

Introduction to Computer Science in JavaScript, Python, and Cybersecurity

Kayla Pica avatar
Written by Kayla Pica
Updated over a week ago

Our AP Computer Science Principles course is an AP level class designed to introduce students to a variety of computer science skills and to prepare them for the AP Computer Science Principles test in May. The course can be taught in any language, and we offer three versions of course:

Who should take this course?

This is an AP level introductory Computer Science concepts course. It is aimed at high school students that may not have much prior knowledge about computer science or programming. As a concepts class, the content is focused on an overview of computer science, including programming, but also a background about how computers and the Internet work. Students that are looking for a pure programming class may be disappointed. There are no prerequisites, however students should either be enrolled in or have completed Algebra I.

In the Cybersecurity version of the course, students will explore all the AP CSP requirements with an emphasis on Cybersecurity applications in JavaScript.

What’s Covered in AP Computer Science Principles?

Introduction to Programming: Karel is a dog that only knows how to move, turn left, and place tennis balls in his world. You can give Karel these commands to instruct him to do certain things. We use Karel to show you what it means to program, and allow you to focus on problem-solving.

Programming Basics: Introduces you to the basics of Python or JavaScript, including variables, user input, control structures, functions with parameters and return values, and basic graphics, how to send messages to objects.

Control Structures: Learn how to use booleans and logical operators with control structures to make more advanced programs in Python or JavaScript.

Functions and Parameters: Functions are a key component to making code reusable. This module will introduce students to the basics of functions, including using parameters and return values.

Basic Data Structures: Students will learn the basics of lists in Python or Arrays in JavaScript. Students will explore how to create each of these and the various methods to access or alter them.

Digital Information: In this unit, students will learn about 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: This unit explores the structure and design of the internet, and how this design affects the reliability of network communication, the security of data, and personal privacy.

Data: In this unit, students will explore using computational tools to store massive amounts of data, manipulate and visualize data, find patterns in data, and pull conclusions from data.

Create Performance Task: Students will be given the chance to review course content and practice the skills necessary to complete each performance task.

Cybersecurity Course-Specific Modules

Cybersecurity: In this unit, students will learn about assessing different cybersecurity risks on both a personal level and a wider network level.

Practice PT: Cyber Ethics: In this project, students will choose one of four articles on cyber ethics and write a position paper. Based on that article, they will provide an arguable opinion about who is responsible and why.

How Are the Versions of AP Computer Science Principles Different?

Our AP Computer Science Principles course versions are going to remain consistent across its various tracks. However, certain exercises within the different AP CSP versions adopt a specialized perspective to enhance understanding and application. For instance, while our AP CSP JavaScript course might feature a general conditional exercise, the cybersecurity counterpart may delve into password validation techniques.

Endorsed Curriculum and Professional Development

CodeHS is recognized by the College Board as an endorsed provider of curriculum and professional development for AP® Computer Science Principles (AP CSP). This endorsement affirms that all components of CodeHS‘s offerings are aligned to the AP Curriculum Framework standards and the AP CSP assessment. Using an endorsed provider affords schools access to resources including an AP CSP syllabus pre-approved by the College Board’s AP Course Audit, and officially recognized professional development that prepares teachers to teach AP CSP.

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.

AP CSP - College Board Endorsed seal


This course will prepare students for the multiple choice AP CSP exam. Each unit includes a cumulative AP style multiple choice exam to test understanding of the concepts in the unit.

Curriculum Pathways

Curriculum pathway for grades 6-12

Curriculum pathway for grades 6-12 incorporating AP CSP

Curriculum pathway for grades 9-12
Overview of the main high school courses in the CodeHS curriculum pathway:

Curriculum pathway for grades 9-12 incorporating AP CSP

AP Computer Science Pathway
With the College Board’s Advanced Placement (AP) frameworks and the CodeHS curriculum, students will develop critical problem-solving skills and learn essential programming languages to help prepare them for the future.

Curriculum pathway incorporating both AP CSP and AP CSA

Still have questions? Visit codehs.com/info/curriculum/apcsp for more information or email us at hello@codehs.com

Did this answer your question?