1 of 35

2 of 35

Carnegie Mellon University’s Computer Science Academy is a novel, teacher-led, online, interactive high school computer science curriculum that is entirely free.

3 of 35

Our Founders

David Kosbie

Mark Stehlik

4 of 35

Project Leadership

Erin Bozzo

Principal Program Manager

Evan Mallory

Principal Software Engineer

5 of 35

Project Leadership

Tim Barnes

Assistant Program Manager - Outreach

Austin Schick

Software Developer

Sofia De Jesus

Associate Program Manager - Spanish

6 of 35

CMU CS Academy Student Team

7 of 35

CMU CS Academy Bridges the Gap

PK-8

PK-8

  • Building excitement around CS through fun exposure

9-10

9-10

11-12

11-12

College

College

CMU CS Academy Bridges the Gaps

  • Either fun and exciting or dry and rigorous
  • Student enrollment begins to decline
  • Traditionally dry and rigorous
  • Student enrollment significantly drops
  • University coursework like 15-112 continues to get more challenging but is exciting and fun.

8 of 35

CMU CS Academy Features

  • Auto-graded Exercises
  • Anti-Plagiarism Features
  • Gradebook/Progress Bar
  • Professional Development
  • Ongoing 24/7 Support
  • Browser-based Environment
  • Text-based Python Programming
  • Graphics and Animation
  • Interactive Notes
  • Creative Tasks

9 of 35

CMU CS Academy Offerings

  • Exploring Programming with Python (formerly CS0) (English, Spanish)
  • CS1: Introduction to Programming with Python (English, Spanish)
  • College Programming and Computer Science (Carnegie Mellon University credit available)
  • AP CSP
  • Hour of Code
  • Interdisciplinary Programming (formerly CS2)

Curriculum

Modules

10 of 35

Professional Development

Synchronous Online Training

Asynchronous Online Teacher Content

11 of 35

High School Student Creative Task Submission Examples

12 of 35

Creative Tasks

Classroom Application - Planning

Reflect

Describe your difficulties and opportunities. Did your initial design change in the face of this?

List here all the important coding elements in your project and describe how they contribute to the overall function of your program. Highlighting which aspect you are most proud of.

Describe

Describe your program. What do you envision your app will do?

Design

Sketch your canvas. Label any animation or user interaction.

Plan your code. List here the coding concepts you plan to use to accomplish your goals and why you plan to use them.

13 of 35

Creative Tasks

Classroom Application - Reflection

In his mind his reflection about difficulties and opportunities centered on the struggles of his home country, Venezuela. I helped him with uploading the image, but he planned out the code, and we coded it together. He sits up front every day and tries so hard. It is both inspirational and heartbreaking all at the same time. We just don't have any idea what these young people go through to reach this country.

  • CMU CS Academy Teacher

14 of 35

Creative Tasks

Classroom Application - Reflection

Difficulties (Response from a student):

“The difficulties of the Venezuelan flag provoked strong criticism from the opposition which threatened not to recognize the new symbol.”

Opportunities (Response from a student):

“Opportunity of the flag of Venezuela we achieved the freedom of our country.”

Student Reflection Response:

15 of 35

Student Shared Creations

16 of 35

500,000+

17 of 35

18 of 35

51%

of Schools in the USA that use CMU CS Academy are considered High Need (Title I) Schools.

19 of 35

CMU CS Academy + AIU3

Bridging the CS Gap Through CS Academy and Statewide Support

In 2019 CMU CS Academy was awarded a PASmart Advancing Grant in collaborating with Allegheny Intermediate Unit. Through this grant we trained Intermediate Unit trainers to become PASmart Certified Facilitators across the state of Pennsylvania and they then trained nearly 250 teachers. These teachers represent 26 of the state's 29 Intermediate Units. The graphic demonstrates the results of this training.

20 of 35

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.

21 of 35

What’s the difference between CS and Programming?

Computer Science is like Architecture or Engineering

Programming is like building or carpentry

22 of 35

Why is programming useful to all students?

Programming teaches:

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

23 of 35

  • 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 has growing popular in the industry
  • Python is easy to learn

Why is the course taught using Python?

24 of 35

  • 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

Why is this course graphics-based?

25 of 35

Try it out:

academy.cs.cmu.edu

Tim Barnes

Assistant Program Manager| CS Academy

School of Computer Science

Carnegie Mellon University

tbarnes2@andrew.cmu.edu

26 of 35

A few words from our teachers

27 of 35

FAQ

28 of 35

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

Why is this course online?

29 of 35

Platform UI

30 of 35

Platform Demo

31 of 35

Course Page

32 of 35

Interactive Notes

33 of 35

Exercises

34 of 35

Teacher Portal

35 of 35

Asynchronous Online Professional Development