« High School Courses
This course is included with our Coding/STEAM Curriculum - High School Plan

A year-long high school curriculum designed to introduce students to the central ideas of computer science and prepare them for the AP CS Principles Exam.

  • Grades 9+
  • Advanced
  • Web


A year-long high school curriculum designed to introduce students to the central ideas of computer science and prepare them for the AP CS Principles Exam.

This curriculum aligns with the College Board’s new 2020 Computer Science Principles framework covering Creative Development, Data, Computing Systems and Networks, Algorithms and Programming, Computing's Impact on Society.

This introductory curriculum is designed for first-time computer science students with no prior coding experience and has no prerequisites beyond Algebra I.

Tynker is recognized by the College Board as an endorsed provider of curriculum and professional development for AP® Computer Science Principles (AP CSP). 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 endorsement affirms only that components of Tynker’s offerings are aligned to all the AP Curriculum Framework standards and the AP CSP assessment.

The curriculum introduces general programming concepts using Python, the most popular programming in introductory CS college courses. Students get a crash course in practical programming concepts, like creating procedures, using variables, and control flow.

Students must complete coding challenges from domains like finance, biotechnology, and environmental studies. The curriculum also teaches programming concepts and algorithms using Python, and then maps this knowledge to pseudocode that’s required for the AP CS Principles exam, as per specification on page 205 of the College Board AP CSP exam description.

In AP Computer Science Principles, students will explore the following big ideas in computer science while gaining foundational computational thinking skills:

  • Understand the software development life cycle from identifying a problem to collaboration, design, implementation, and iterative improvement of a computing solution.
  • Learn how computers represent data and "make decisions" — learn how to analyze and visualize data using charting and plotting techniques.
  • Learn how to design and use algorithms—and how their efficiency impacts the execution of a program.
  • Understand foundational computing concepts: how the Internet works, and learn more about advanced topics like fault tolerance, artificial intelligence, distributed systems, and parallel processing.
  • Explore the impact of computing on society; including ethical and legal concerns, privacy, the digital divide, crowdsourcing, and other side effects.
  • Prepare for both the Create performance task section and multiple-choice Exam.


  • Python syntax
  • Conditional logic
  • Nested loops
  • Automation
  • Functions
  • Simple loops
  • Conditional loops
  • Expressions
  • Operators
  • Data types
  • Variables
  • Turtle graphics
  • Artificial Intelligence
  • Lists
  • Dictionaries
  • Objects
  • Recursion

What Students Learn

  • Big Idea 1. Creative Development
  • Big Idea 2. Data
  • Big Idea 3. Algorithms and Programming
  • Big Idea 4. Computing Systems and Networks
  • Big Idea 5. Impact of Computing

Technical Requirements

* Online courses require a modern desktop computer, laptop computer, Chromebook, or Netbook with Internet access and a Chrome (29+), Firefox (30+), Safari (7+), or Edge (20+) browser. No downloads required.

AP Computer Science Principles Lesson Plan

Unit 1: Computing Innovations

NOTE: Your school may expect teachers to present a lesson of your own before starting Unit 1, in which students and the teacher get to know each other and create classroom norms. Even if your school does not require this, you may find it worthwhile to do so.

In this Unit, students learn about Python, the programming language taught in the course.

They will also begin thinking about Computing Innovations—this lesson initiates the idea of Computing Innovations by asking students how computing has changed our lives in both beneficial and harmful ways. Students also learn about other "Big Ideas" of the course. And they'll see how their work will be evaluated by the College Board, and what else lies ahead in the course.

Mark Your Calendar

Take a moment now to look up two important dates for your school year.
  • AP CSP Create Task Due Date (corresponds to Unit 9)
  • AP CSP Exam Date (corresponds to Unit 11)
Mark these dates and remind your students as these deadlines approach. Visit the official AP Computer Science Principles website for more information.

Suggested Unit Pacing Guide

WeekUnit Pacing
Week 1School-specific orientation, Lessons 1.1-1.3
Week 2Lessons 1.4-1.8
Week 3Lessons 1.9-1.12
This pacing guide assumes a 36-week school calendar that will have:
  • Two or three days at the start of the school year for school and classroom orientation activities
  • A few days that class will not meet due to unexpected interruptions such as fire drills or assemblies
  • A few days that school does not meet due to weather or teacher professional development
  • Several days that class will not meet due to school-wide standardized testing

If you are falling behind:
  • Reduce or eliminate some Pair Programming Challenges
  • Reduce or eliminate the "if time available" parts of lessons

If you are getting ahead:
  • After each Unit, spend one day in AP Classroom assigning students more practice problems
  • Provide students more time on the Semester Create Task
  • Allow students to revise and resubmit their Semester Create Task based on your feedback
  • Revisit Pair Programming Challenges and expect students to complete more of the challenges

Assign Problems from AP Classroom

For additional practice, assign questions from AP Classroom from these topics:
  • 1.1 Collaboration: CRD-1.ABC
  • 5.1 Beneficial and Harmful Effects: IOC-1.AB

Class Presentations

These student-facing slide presentations help educators seamlessly run Tynker lessons in a virtual or physical classroom setting. Each lesson has its own set of slides that introduce the big ideas, suggest unplugged activities, and include a section for each activity module. While running lesson slides, you can switch back and forth between the activity, the slides, answer keys and other lesson materials.
A sample slide presentation is available for your review. Please log in to view all the class presentations available with your plan..
Lesson 1
Unit 1: Computing Innovations
0 Slides
Lesson 2
Unit 2: Conditional Algorithms
0 Slides
Lesson 3
Unit 3: Abstraction
0 Slides
Lesson 4
Unit 4: Computing Systems and Networks
0 Slides
Lesson 5
Unit 5: Python Games
0 Slides
Lesson 6
Unit 6: Semester Performance Task
0 Slides
Lesson 7
Unit 7: Lists
0 Slides
Lesson 8
Unit 8: Artificial Intelligence
0 Slides
Lesson 9
Unit 9: The Create Performance Task
0 Slides
Lesson 10
Unit 10: The Limits of Computing
0 Slides
Lesson 11
Unit 11: Preparing for the Exam
0 Slides
Lesson 12
Unit 12: Recursion
0 Slides