CMU CS Academy is a novel, world-class, online, interactive high school computer science curriculum that is entirely free.

In one sentence, CS Academy is…

We are committed to providing a free online world-class teacher-led high school CS curriculum

We are committed to providing a free, online, world-class, teacher-led high school CS curriculum.

In one sentence, CS Academy is…

A word from our teachers

At 1:55


David Kosbie

Mark Stehlik

David Kosbie:

Mark Stehlik:

Erin Cawley

Program Manager

Evan Mallory

Principal Software Engineer

Erin Cawley

Evan Mallory

Elliot Haney

Quality Assurance and Content Manager

Arman Hezarkhani

Product Advocate

CMU CS Academy Student Team

Undergraduate team.



- All about building excitement around CS through fun exposure



- Either fun and exciting or dry and rigorous

- Student enrollment begins to decline


- Traditionally dry and rigorous

- Student enrollment significantly drops




CMU CS Academy Bridges the Gaps

- Coursework like 15-110 and 15-112 continues to get more challenging but is exciting and fun.

There is currently a lack of resources bringing the fun and excitement of CS education up to the higher levels as challenge and rigor is added

CMU CS Academy Features

  • Python Programming
  • Graphics and Animations
  • Browser-Based Environment
  • Professional Development
  • Interactive Notes
  • Auto-graded Exercises
  • Anti-Plagiarism Features

CS1 A text-based, graphical introduction to programming in Python.

CMU CS Academy Courses

  • CS0
  • CS1
  • APCSP w/ CMU CS Academy* (Available Fall 2020)
  • CS2 Applications* (Piloting Fall 2020)
  • 15-112 or equivalent (Future Plans)

Professional Development

In-Person Training

Online Teacher Course

High School Student Creative Task Submissions


Student Shared Creations

Flying Origami


Maze Game



CMU CS Academy Schools Fall 2019

Locations with Active Teachers

57% of Schools in the USA that use CMU CS Academy are considered High Need Schools.

Thank You!

Try it out:

Contact me:

Erin Cawley

Program Manager| CS Academy

School of Computer Science

Carnegie Mellon University


What’s the difference between CS and Programming?

Computer Science is the theoretical, scientific, and mathematical approach to information and it’s computation.

Programming is the practical process of designing, writing, testing, debugging and maintaining the code in computer programs.

What’s the difference between CS and Programming?

Computer Science is like Architecture or Engineering

Programming is like building or carpentry

Programming teaches:

  • Problem-solving
  • Creativity
  • Industry-agnostic computation skills

Why is programming useful to all students?

Why is the course taught using Python?

What should I know about Python?

  • Python variables have no types
  • Python has no curly braces or semicolons, so it relies on indentation
  • Python is very easy to read and understand
  • Python is popular in the industry
  • Python is easy to learn

Why is the course online?

  • Works with chromebooks and other device
  • Students can work on any computer (classroom or home)

Why is the course graphics-based?

  • Graphics are appealing to a broader audience
  • Allows students to see the creativity in programming
  • Ability to debug
  • Errors are visible and funny
  • It’s fun


CS Academy Pilot Partners Fall 2018

40 schools and over 1,000 students

Fall 2019 over 120 schools have confirmed they plan to use our curriculum.

Platform UI

Platform Demo

Course Page

Interactive Notes


Teacher Portal

We have some teacher features, adding more...

Online Professional Development

We have some teacher features, adding more...

CMU CS Academy Overview - Google Slides