Computer Science Principles

What is CS Principles?

Bring CS Principles to your school!


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 introductory course and as an 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. And, professional learning opportunities are available!

“Can I just say I LOVE Code.org? It's my first year teaching AP CS Principles (actually 1st year it is offered at our school) - and both the kids and I are having a blast.”
Jennifer Douglass, CS Principles Teacher

Why should you teach CS Principles?

AP Endorsed

Code.org AP CSP Endorsed BadgeCode.org 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 Code.org's CS Principles offerings are aligned to the AP Curriculum Framework standards and the AP CS Principles assessment. This 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.

Engaging Curriculum

Our team designed the AP CS Principles curriculum to support students and teachers new to the discipline. The curriculum includes daily lesson plans made up of inquiry-based actvities, videos, assessments, and computing tools, allowing teachers to guide and learn alongside students as they discover core computing concepts.

Students learn about the challenges of supporting a giant network like the world wide web, while solving problems about encoding and transmitting data using the Internet Simulator.

Students get hands on experience with concepts like binary and pixels, text compression, cryptography, and more through computational widgets, which are directly integrated into the course.

Using the JavaScript language, students learn about algorithms and program design as they create a series of real working, shareable apps with App Lab.

 

Extensive Teacher Resources

Check out the Curriculum Guide to learn more about the classroom and student practices that flow throughout the course, overviews of each unit, implementation considerations, and guidance for navigating course tools and teacher resources.

The CS Principles curriculum page is where teachers can access daily lesson plans. Along with integrated discussion goals, teaching tips, and assessment opportunities, our lesson plans come with detailed pacing instructions, activity guides, required resources, 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! (Sign in required.)

 

Professional Learning

Interested in professional learning? Find out more!


Looking for an in-depth program to help you implement CS Principles? Apply to join a Professional Learning Program in your region! Code.org's Regional Partners offer hands-on, Code.org-designed workshops to thousands of eachers across the country each year.

Whether you’re brand new to computer science or an experienced teacher looking for the best way to use the Code.org curriculum, our Professional Learning Program is a great way to get started. Compared with similarly-situated schools, a school's participation in the Code.org program causes an estimated five-fold increase in the number of students that take, and earn qualifying scores on the AP Computer Science Principles exam. And teachers love it! Over 90% rank it the best professional development ever.

Getting started with CS Principles!

Coming Soon: CS Principles 2020-21

As with all of our courses, we are committed to making regular updates to our CS Principles curriculum to make sure we continue to meet students’ and teachers’ needs, while supporting the best classroom experience possible. We’re planning some very exciting updates to CS Principles 2020-21, which will align with the new AP framework and incorporate the invaluable feedback we receive from our teachers and students!

Check out our 1-pager for an overview of what's in store for the 2020-21 version of the course, and stay tuned!

Stay connected

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 the CS Principles curriculum. Code.org forums are used for all of our courses, K-12.

Spread the word about CS Principles

Inspire students to enroll in the course:

Play this video.


Send home these fliers.

Hang these posters in your classroom and around your school:

image image image image

Check out the full poster gallery for even more decorating options!

Frequently Asked Questions

For answers to our most frequently asked questions, click on the questions below!

Is CS Principles mapped to standards?


CS Principles was written using the AP CS Principles Framework and prepares students for the AP CS Principles exam. The course has also been aligned to the newly revised 2017 CSTA standards. A summary of standards mappings can be found at curriculum.code.org/csp/standards

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


Our Professional Learning Program offers 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 forum support and follow-up 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 apply and learn more.

Have questions about professional development? Provide your contact information to a Regional Partner in your area.

What is the recommended timing for teaching CS Principles?


We recommend that CS Principles be taught as a full year course, assuming that you meet with students daily or nearly daily for 45 or more minutes. Full-year schedules where students are in class for a similar amount of time per week will also work.

It is possible to teach the course on a semester block schedule, though we highly recommend this implementation only be used in the fall semester. Since the AP Performance Tasks are due in late April and require 20 dedicated hours of class time to complete, most schools find there is not enough time to complete the course on a block schedule in the spring.

What materials do I need for this course?


Required Materials:

This course requires that students have access to computers with a modern web browser. At this time, our courses are not optimized for tablets or mobile devices. For more details, check out Code.org's technology requirements.

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, several lessons call for specific items. You can find these listed below as well as our suggestions for alternatives:

  • Unit 1, Lesson 2: various craft materials for constructing physical devices such as cups, string/yarn, construction paper, flashlights, slinkies, noise makers, markers, and glue
  • Unit 3, Lesson 1: A handful of legos per 2-3 students (alternatives: post-it notes, construction paper)
  • Unit 3, Lesson 2 - 3: Playing cards, we recommend 1 deck per 6 students (alternative: write numbers of post-it notes)
  • Unit 4, Lesson 8: Clear dixie cups with beans (alternatives: any clear container such as a ziplock bag, empty water bottle, etc., and/or any small item such as beads, raisins, coffee beans, etc.)

Optional Materials

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

  • Graph paper
  • Chart paper
  • Markers
  • Post-it notes

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, you can apply for access to protected teacher-only materials (answer keys, etc) through this form. Please keep in mind that it may take 3-5 business days to verify your account.

Are there supports in CS Principles for students with learning differences or disabilities?


Yes. Code.org has collaborated closely with partners to make our CS Principles curriculum accessible. Every lesson includes detailed recommendations from the accessCSP project from Outlier Research on how activities can be supplemented and modified to meet the needs of students with learning disabilities and attention deficit disorders, including reading disorders, written expression disorders, math disorders, and language disorders. In addition, the Lesson-Specific Adjustment Guides identify the underlying psychological process that each adjustment addresses, including processes related to: aspects of reasoning; areas of language; different types of memory; fine motor; processing, timing, and pacing; aspects of visual processing; and executive functioning, attention, and social skills.

Does the course have resources for blind or visually impaired students?


Our partners at AccessCSforAll have created an accessible version of the curriculum and online tools designed specifically for students with these disabilities. AccessCSforAll also runs a summer professional development to help teachers learn how to support these students.

How was the course developed?


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.

For more information about our goals and approach to our courses, please see our curriculum values and our professional learning values.



AP® is a registered trademark of the College Board.