Our Curriculum
CMU CS Academy currently offers three different graphics-based computer science curricula in Python. Each curriculum uses interactive notes, autograded exercises, creative tasks, and projects. The notes help explain various topics and include interactive checkpoints to help check for students’ understanding of the concepts covered. Additionally, our autograded exercises help students practice concepts learned directly from the notes and our creative and collaborative tasks help students apply what they have learned to create something of their own! Find out which curriculum best suits your classroom!
CS1: Introduction to Programming with Python
Our CS1 curriculum is a deep dive into the fundamentals of programming concepts and teaches text-based coding using Python. CS1 is predicated on the notion that learning about programming and computer science should be fun and engaging. In our introduction to programming course we expose students to graphics-based problem solving because it is visually engaging, allows for multiple correct solutions, and provides visual cues when a solution goes awry.
Who is it for?
This free CS1 curriculum is designed for high school classrooms. No prior programming experience is required.
Exploring Programming with Python
(formerly CS0)
Exploring Programming with Python is a lighter version of our CS1 curriculum, some might call it a splash into the fundamentals of programming. It is designed to engage and excite future CS1 students. This curriculum is taught using text-based coding in Python. Exploring Programming with Python also revolves around graphics-based problem solving and has similar visually-engaging notes, checkpoints, exercises, and projects for students to complete.
Mentor accounts have access to this curriculum.
Who is it for?
Exploring Programming with Python is designed for middle school classrooms, out-of-school programs, and summer camps. Like CS1, no prior coding experience is necessary.
College Programming and Computer Science
(Carnegie Mellon University credit available)
(Beta Version Fall 2023)
A full-year honors-level course in programming and computer science, College Programming and Computer Science prepares students for college studies in computer science and related disciplines. This course re-examines earlier topics (functions, conditionals, loops, strings, lists, and more) in greater detail and increased rigor.
The course also covers intermediate data structures (sets, dictionaries), recursion, object-oriented programming, exceptions, monte carlo methods, cloud computing, efficiency, limits of computation, style, and top-down design, among other topics.
The course culminates in a significant creative project and an optional $200 final exam. The exam is administered at your school by a classroom teacher. Upon passing the exam, students receive Carnegie Mellon University transcripted credits.
Who is it for?
This curriculum is designed for students who
- have strong math skills
- have taken an introductory programming course
- are looking for a college level programming and computer science course
Students interested in earning transcripted college credit may be interested in the optional final exam. You can read more about that offering here.
If you have questions about this opportunity please email tbarnes@andrew.cmu.edu.
Our Modules
CSP
Code.org + CMU CS Academy AP CSP is an alternative option for Code.org’s 20-21 AP CSP course. Carnegie Mellon University has developed, in consultation with Code.org, an alternative option for Code.org’s 20-21 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 of the units with the exception of the programming units (units 3,4,5 and 7), which use JavaScript. For the programming units, students and teachers will work from the CMU CS Academy platform and program in Python. Information on Code.org’s AP CSP course can be found on their website at https://code.org/educate/csp

Who is it for?
This curriculum is designed for classrooms offering AP CSP. Our curriculum meets the needs of students who have no prerequisites as well as those who have previously taken our CS1 course by providing multiple entry points.


Hour of Code
A resource for late elementary and middle school students looking to begin their exploration of text-based programming in Python. Students can access this course without a CMU CS Academy account.
Who is it for?
Hour of Code is designed for CSEdWeek participants and any elementary or middle school classroom.
Interdisciplinary Programming
(formerly CS2)
This module expects that students have taken our CS1 in its entirety. It builds on the CS1 foundation, covering some additional programming and CS topics, and then applying and extending computational problem-solving skills in a variety of application areas: art, science, music, math, data analysis and visualization, simulations, game design, web applications, security, machine learning and artificial intelligence, and more.
The module's units can be rearranged or removed, allowing teachers to customize the course to best suit their students’ needs and interests.
Who is it for?
These modules are designed for classrooms that have taken our CS1 course.