Computer Science Principles (2024)

Free year-long curriculum that introduces students to the foundational concepts of computer science and challenges them to explore how computing and technology can impact the world. Can be taught as an introductory class and as an AP course.

Explore course

Computer Science Principles (1)

Computer Science Principles (2)

Computer Science Principles (3)

Download video

Free, AP® CSP endorsed, high school introductory course

  • Culturally responsive pedagogy
  • Real-world problem investigation
  • Explainer videos with diverse presenters
  • Open-ended projects for more personalized learning

Explore course

Join our highly supportive Professional Learning Program for middle and high school educators.

Curriculum at a glance

  • Grades:9-12

  • Level:Beginner

  • Duration:School Year

  • Devices:Laptop, Chromebook

  • Topics:Programming, Data, Art and Design, Games and Animation

  • Programming Tools:App Lab

  • Professional Learning:Facilitator-led Workshops, Self-paced Modules

  • Accessibility:Text-to-speech, Closed captioning, Immersive reader

  • Languages Supported:English

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 DouglassCS Principles Teacher

Engaging projects and activities that inspire learning

Computer Science Principles (4)Computer Science Principles (5)Computer Science Principles (6)

Build apps

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

Try App Lab

Widgets

Students get hands-on experience with concepts like binary and pixels, text compression, cryptography, encoding and transmitting data through computational widgets, which are directly integrated into the Code.org platform.

Explore widgets

Computer Science Principles (7)
Computer Science Principles (8)

Choice levels

Students are offered the choice between a variety of tasks that reinforce course objectives while allowing for differentiation and customization, meeting students where they are at and encouraging them to go further.

Explore example choice level

Resources that support you every step of the way

Sign up for a Code.org account to get access to materials that will help you teach computer science with confidence. Code.org has extensive resources designed to support educators, even those without prior CS teaching experience.

Computer Science Principles (9)

Lesson Plans

Get step-by-step guidance, learning objectives, and assessment strategies for effective teaching.

Helpful resources include slide decks, activity guides, rubrics, and more — all organized in one place. Each lesson plan is accompanied by tips for classroom implementation, differentiation ideas, and extension activities to cater to students of all abilities.

Explore example lesson plan

Computer Science Principles (10)

Instructional Videos

Watch easy-to-understand overviews of computer science and programming concepts.

Code.org video series are designed specifically to support your classroom and are engaging and fun to watch.

Explore all videos

Slide Decks

We offer educators an organized, visually engaging, and pedagogically sound framework to deliver computer science lessons.

Code.org slide decks provide step-by-step instructions, examples, and interactive activities that align with curricular objectives.

Explore example slide deck

Computer Science Principles (11)

Assessments

Our curricula includes a comprehensive system of formative and summative assessment resources.

These include rubrics, checklists, mini-projects, end-of-chapter projects, student-facing rubrics, sample projects, and post-project tests — all designed to support teachers in measuring student growth, providing feedback, and evaluating student understanding.

Explore an assessment lesson

Computer Science Principles (12)

Programming Tools

Code.org's integrated development environments (IDEs) cater to students of all skill levels.

We offer a versatile and user-friendly platform that supports a variety of programming paradigms. This enables learners to seamlessly transition from block-based coding to text-based languages, and fosters creativity and innovation.

Try out programming tools

Lesson Plans
Computer Science Principles (13)

Lesson Plans

Get step-by-step guidance, learning objectives, and assessment strategies for effective teaching.

Helpful resources include slide decks, activity guides, rubrics, and more — all organized in one place. Each lesson plan is accompanied by tips for classroom implementation, differentiation ideas, and extension activities to cater to students of all abilities.

Explore example lesson plan

Videos

Computer Science Principles (14)

Instructional Videos

Watch easy-to-understand overviews of computer science and programming concepts.

Code.org video series are designed specifically to support your classroom and are engaging and fun to watch.

Explore all videos

Slides

Slide Decks

We offer educators an organized, visually engaging, and pedagogically sound framework to deliver computer science lessons.

Code.org slide decks provide step-by-step instructions, examples, and interactive activities that align with curricular objectives.

Explore example slide deck

Assessments
Computer Science Principles (15)

Assessments

Our curricula includes a comprehensive system of formative and summative assessment resources.

These include rubrics, checklists, mini-projects, end-of-chapter projects, student-facing rubrics, sample projects, and post-project tests — all designed to support teachers in measuring student growth, providing feedback, and evaluating student understanding.

Explore an assessment lesson

Programming Tools
Computer Science Principles (16)

Programming Tools

Code.org's integrated development environments (IDEs) cater to students of all skill levels.

We offer a versatile and user-friendly platform that supports a variety of programming paradigms. This enables learners to seamlessly transition from block-based coding to text-based languages, and fosters creativity and innovation.

Try out programming tools

Professional learning that meets your needs

Get the support you need as you prepare to teach. Teachers love it, with over 90% ranking it the best professional development ever!

Facilitator-led Workshops

Computer Science Principles (17)

Our highly supportive Professional Learning Program will bring you together with a group of teachers to learn from each other as well as expert facilitators as you take on the first year of teaching the free curriculum to your students. In-person and virtual workshops are starting this summer.

Apply for Professional Learning

Self-Paced Online Modules

Computer Science Principles (18)

Through reading, viewing videos, completing interactive puzzles, and reflecting on your learning, you will develop your own understanding while preparing to teach computer science in your classroom.

Explore modules

Frequently asked questions

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 curriculum has also been aligned to the newly revised 2017 CSTA standards. A summary of standards mappings can be found here. A google sheet version of the standards can be found at CSP Standards.

How much does it cost to teach CS Principles?

Our curriculum and platform are available at no cost for anyone, anywhere, to teach!

How/Where can I get professional development for CS Principles?

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 class, assuming that you meet with students daily or nearly daily for 45 or more minutes.

It is possible to teach CS Principles 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 CS Principles?

Required Materials:CS Principles 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: Assortment of craft materials for constructing physical devices. Recommendations: cups, string/yarn, construction paper, flashlights, slinkies, noise makers, markers, and glue, etc. Alternative: none.
  • Unit 2, Lesson 2: String for table groups to build a network connecting them. Alternative: Students draw their network but don't actually build it.
  • Unit 3, Lesson 5: A handful of LEGO® blocks for every pair of students. Alternative: Sticky notes, construction paper.
  • Unit 4, Lessons 1 & 5: Plastic bags, sticky notes, dry erase markers. Alternative: Envelopes.
  • Unit 5, Lesson 1: Plastic bags, gallon-sized plastic bags, sticky notes, dry erase markers, tape. Alternative: Envelopes.
  • Unit 6, Lessons 2 & 3: Sticky notes. Alternative: Scraps of paper.
  • Unit 6, Lesson 4: Decks of cards. Alternative: Any item that could be combined into two categories (e.g. change with even / odd year).
  • Unit 7, Lessons 1 & 5: Sticky notes, envelopes, plastic bags, file folders. Alternative: Scraps of paper, folders made of a folded sheet of paper, 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.

How was the curriculum developed?

For the 2020-21 school year the College Board has made some significant updates to the CS Principles framework and AP assessment to ensure that CS Principles remains relevant and aligned with equivalent university courses. CS education research continues to reveal new insights on how students learn about computing, and feedback from the thousands of classrooms now using our CS Principles curriculum has identified opportunities to further improve our courses, tools, and recommended pedagogy.

The goal of the updates to our curriculum is to navigate these developments in a way that remains committed to our vision and values and supports the many teachers, schools, classrooms, and districts that are already a part of our broader CS Principles community. We remain deeply thankful for you joining us on this mission to make our collective vision a reality.

What is Code.org with CMU CS Academy?

Code.org + CMU CS Academy AP CSP is an alternative option for Code.org's AP CSP course. Carnegie Mellon University has developed, in consultation with Code.org, an alternative option for Code.org's AP CSP course for teachers who want to teach the programming units using CMU CS Academy's Python offerings. Teachers using this option will teach using Code.org's AP CSP materials for all units with the exception of the programming units, which use JavaScript. For the programming units, students and teachers will work from the CMU CS Academy platform and program in Python.

Support and questions

Computer Science Principles (19)

Still have questions? Reach out to us! We are here to help.

Our support team is here to answer any questions you may have about starting teaching with Code.org. You can also ask other teachers about their experience on our teacher forums.

Contact Code.org supportExplore teacher forums

Subscribe for updates

Sign up to receive monthly emails about Code.org's Computer Science Principles and get helpful reminders, tips, and updates sent right to your inbox.

You can unsubscribe at any time.

Computer Science Principles (2024)

FAQs

What is the principle of computer science? ›

These principles fall into seven categories: computation, communication, coordination, recollection, automation, evaluation and design (see the table at right for examples). Each category is a perspective on computing, a window into the knowledge space of computing. The categories are not mutually exclusive.

What are the four computer science principles? ›

  • Big Idea 1: Creative Development (collaboration, software development process)
  • Big Idea 2: Data (binary, compression, spreadsheets, etc.)
  • Big Idea 3: Algorithms and Programming (procedural programming, binary search)
  • Big Idea 4: Computer Systems and Networks.

Is computer science principles worth taking? ›

AP CSP isn't too hard and can absolutely be worth it to get an introductory knowledge of computer science. If you go for it, you'll never forget this class 🙃 No matter what you choose, good luck 🍀 and remember to study with Fiveable to get that 5!!

Is AP Computer Science Principles a math class? ›

AP Computer Science Principles can help students understand computer science and allow them to work on computer science projects together. The course builds on foundational skills in math — especially algebra — and applies them in the context of computer science.

What are the basics of computer science? ›

Computer science focuses on the development and testing of software and software systems. It involves working with mathematical models, data analysis and security, algorithms, and computational theory. Computer scientists define the computational principles that are the basis of all software.

What are the core concepts of computer science? ›

Topics include: Computers and Computation, Algorithms and Tractability, Systems and Networks, Artificial Intelligence and Machine Learning, Programming Languages and Compilers, Cryptography and Security, Graphics and Vision, Human Computer Interaction, Network Science, Human Computation, and Robotics.

What are the 5 principles of computing? ›

Denning and Martell divide the great principles of computing into six categories: communication, computation, coordination, recollection, evaluation, and design.

What are the 4 C's computing? ›

The four C's (communication, collaboration, creativity, and critical thinking) are extremely interconnected, especially in computer science curriculum.

What are the 4 basic computer concepts? ›

THE GENERAL MODEL OF A COMPUTER

All basic computers consist of four functions: input, storage, processing and output. IPO is often called IPOS or input, process, output, storage. The computer receives input, processes the input as per user instructions and provides output and can be stored in a desired format.

Is the computer science principles exam hard? ›

AP Computer Science Principles is one of the easiest AP classes. Covers topics like Java programming, data structures, algorithms, and object-oriented programming. The average pass rate for the AP Computer Science Principles exam is around 63.5% which is more than the average pass rate of all AP exams 60.2%.

Do colleges look at AP Computer Science Principles? ›

Taking AP CSP and earning 3 or higher on the exam shows that you have developed the knowledge and skills expected of a student that has completed an introductory computer science course in college. Most colleges give you college credit or allow you to skip introductory courses based on your score on the AP CSP Exam.

What is the most difficult course in computer science? ›

Top 7 Toughest Courses In Computer Science Engineering
  • Theory of Computation. Students will learn how to use computers while being aware of their limitations. ...
  • Artificial Intelligence. ...
  • Advanced Database Systems. ...
  • Compiler Design. ...
  • Algorithms. ...
  • Discrete Math. ...
  • Computer Architecture.

Do computer science principles have coding? ›

AP Computer Science Principles does not have a designated programming language.

What is the hardest AP class? ›

United States History, Biology, English Literature, Calculus BC, Physics C, and Chemistry are often named as the hardest AP classes and tests. These classes have large curriculums, tough tests, and conceptually difficult material.

What do you learn in computer science principle? ›

You'll explore how computer systems and networks work and how using multiple computers to divide tasks can speed up processes. Topics may include: The Internet. Parallel and distributed computing.

What are the principles of computer programming? ›

The five basic principles of programming languages are Abstraction, Decomposition, modularity, algorithmic thinking and efficiency. By following these principles, programmers can develop well-structured, maintainable, and efficient code that effectively solves problems and meets users' needs.

What are the 4 principles of a computer? ›

The four base principles of computer system design are hierarchical aggregation, levels, virtual machines, and objects.

What is the first principle of thinking in computer science? ›

Understanding First Principle Thinking

In software development, this means questioning every aspect of a problem or requirement without assuming existing solutions are the best or only way to address it.

Top Articles
Latest Posts
Article information

Author: Gov. Deandrea McKenzie

Last Updated:

Views: 6641

Rating: 4.6 / 5 (66 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Gov. Deandrea McKenzie

Birthday: 2001-01-17

Address: Suite 769 2454 Marsha Coves, Debbieton, MS 95002

Phone: +813077629322

Job: Real-Estate Executive

Hobby: Archery, Metal detecting, Kitesurfing, Genealogy, Kitesurfing, Calligraphy, Roller skating

Introduction: My name is Gov. Deandrea McKenzie, I am a spotless, clean, glamorous, sparkling, adventurous, nice, brainy person who loves writing and wants to share my knowledge and understanding with you.