APCSP MakeCode Header with badge

AP Computer Science Principles with Microsoft MakeCode

The College Board’s Advanced Placement (AP®) Computer Science Principles course is an introductory computer science course for High School students (typically 14-18 years old). While academically rigorous, the AP Computer Science Principles course is designed to attract students of all backgrounds, experience levels, and interests, and covers a wide range of computing topics with a special focus on the impact of technology and computing on students’ lives. The course covers a full academic year, does not require any prerequisites( Algebra I is recommended), and an end-of-course exam may be taken to receive college credit.

AP CS Principles Curriculum

The AP CS Principles with Microsoft MakeCode curriculum is free and uses web-based technology and tools that can be accessed across platforms and devices. The curriculum is also endorsed and approved by the College Board as aligning with the CS Principles curriculum framework and AP CS Principles exam.

Access and explore the curriculum - AP CS Principles with Microsoft MakeCode

Some additional features of the Microsoft MakeCode curriculum include:

  • Game-based learning for increased student engagement using the MakeCode Arcade platform.
  • Visual block-based programming environment, with JavaScript and Python options for more advanced students.
  • Creativity and self-expression encouraged through the creation of custom game assets, characters and storylines.
  • Easy ability to share games and projects with friends and family.
  • Focus on Design Thinking Process for student projects.
  • Optional Service Learning module, and physical computing lesson options with the micro:bit.
  • Educator Professional Development available.

Microsoft is recognized by the College Board as an endorsed provider of curriculum and professional development for AP® Computer Science Principles (AP CSP). Using an Endorsed Provider affords schools access to resources including an AP CSP syllabus pre-approved by the College Board’s AP Course Audit, and officially recognized professional development that prepares teachers to teach AP CSP. This endorsement affirms only that components of Microsoft’s offerings are aligned to all the AP Curriculum Framework standards and the AP CSP assessment.

Course Overview

Technical Requirements: Students will need access to a computer with an internet connection.

Unit 1 - Introduction to AP Computer Science Principles

This unit is focused on building a classroom community, introducing the principles of computational thinking and the design thinking process, exploring computing innovations in student lives, defining common computing terms, and creating a MakeCode Arcade Sprite that is a representation of themselves.

Example: Lesson 2 - What is Computer Science?

What Is a Computer History of Computing Hardware
Unit 1 - What Is a Computer Unit 1 - History of Computing Unit 1 - Hardware

Unit 2 - Computing Systems and Networks

In Unit 2, students will learn about how computers work together, and how they communicate with each other. Topics include the definition of a computer network, how the internet works, communication protocols, measuring the performance of a network, the Internet of Things, Cloud Computing, and an activity for students to create their own webpage using HTML.

Example: Lesson 2 - Computing Devices & the Internet of Things

Computing Devices Embedded Systems IoT
Unit 2 - Computing Devices Unit 2 - Embedded Systems Unit 1 - Hardware

Unit 3 - Algorithms and Programming Part 1

In this unit, students will develop an understanding of basic programming concepts such as algorithms, program control flow, events, variables, data types, conditional statements, and loops. They will also learn about core game development constructs such as sprites, coordinates, projectiles, and velocity. Most of the programming activities will be using the MakeCode Arcade drag-and-drop block-based editor, but text-based programming will be introduced via JavaScript at the end of the unit.

Example: Lesson 3 - Refining and Debugging Algorithms

Algorithms Debugger Comments
Unit 3 - Algorithms Unit 3 - Debugger Unit 3 - Comments

Unit 4 - Impact of Computing

Unit 4 will take a break from programming, and dive into understanding both the beneficial and harmful effects of technology in the world today. Students will explore the issues of the digital divide, computing bias in artificial intelligence, privacy, security and cryptography, open-source software, and the Unit will end with a group debate exploring the pros and cons of ethical issues in computing.

Example: Lesson 7 - Cryptography

Caesar Cipher Vigenère Cipher Activity
Unit 4 - Caesar Cipher Unit 4 - Vigenère Cipher Unit 4 - Activity

Unit 5 - Algorithms and Programming Part 2

In this unit, students will build on what they learned in Unit 3 to expand their abilities to create programs that are efficient, reusable, and easy to understand. Students will learn more advanced programming concepts such as functions (parameters, return values), logic expressions, complex conditionals, and arrays. They will also learn game development concepts such as tile maps, multiplayer games, and game extensions. This unit will culminate in a collaborative project they will do with a partner where students will practice using GitHub as their shared source code repository.

Example: Lesson 1 - Functions

Routine Function Abstraction
Unit 5 - Routine Unit 5 - Function Unit 5 - Abstraction

Unit 6 - Data Science

In Unit 6 students will select a research topic that interests them and follow the data science process to collect, clean, visualize and draw conclusions from the data. Students will also learn about the binary and hexadecimal number systems and how computers store data in memory.

Example: Lesson 1 & 2 - Intro to Data Analysis and the Data Science Process

Data Analysis Data Visualization Data Science
Unit 6 - Data Analysis Unit 6 - Data Visualization Unit 6 - Data Science

Unit 7 - Create Performance Task

Students will complete the Create Performance Task (CPT) which is a requirement of the AP CS Principles Exam. Students will be guided through a mock CPT example first, and then given a checklist and template for them to complete their own CPT project.

Unit 8 - AP CS Principles Exam Review

In the final unit of the course, students will prepare for the AP CS Principles Exam. They will review all vocabulary, exam reference documentation, the main concepts for each of the 5 Big Ideas explored throughout the course, and use the AP Classroom resources to access practice questions and take a mock exam.

Service Learning Unit

In the Service Learning unit, students will explore the United Nations Sustainable Development Goals, see examples of how games can be used for good, and then using the design thinking process, create their own games for social good.

Stay Connected

If you decide to use the AP Computer Science Principles with Microsoft MakeCode curriculum or materials, please keep in touch. Join the Microsoft MakeCode AP CSP Forum to connect with other Educators teaching the curriculum, ask questions, or give feedback on curriculum materials. Please also follow @MSMakeCode on Twitter for the latest news and announcements.

FAQ

  • Are there professional development opportunities or other training available for this curriculum?

Free, online 4-day professional development workshops are held every summer to support this curriculum. The dates for the Summer workshops are published in the Spring. Join the Microsoft MakeCode AP CSP Forum to be notified of the upcoming workshops.

  • What is included in the curriculum?

The Microsoft MakeCode AP CS Principles curriculum includes daily PowerPoints with guided notes for the teacher, Word documents for student handouts, and a OneNote notebook that teachers can use to create a Class Notebook where they distribute files directly to students. The curriculum also has vocabulary quizzes, short answer quizzes, and answer keys with solutions for all materials. You can download the Educator Materials from https://microsoft.github.io/makecode-csp. To access these materials, teachers must have a verified teacher GitHub account. Consult the GitHub Teacher Verification Instructions for how to obtain a verified teacher GitHub account.

  • How is the curriculum graded/assessed?

Aside from the College Board’s AP Computer Science Principles exam that is administered at the conclusion of the course, educators can use a variety of formative assessment methods throughout to track student progress. Some student activities and assignments are open-ended projects or journaling responses, in which case a rubric is provided as a grading criterion. Some assignments are coding activities or responses to questions/prompts, in which case an example solution is provided to the educator for grading. In general, this curriculum tends to be more open and flexible in its approach to encourage risk-taking and to inspire student creativity and self-confidence.

  • How is this curriculum accessible for students with various forms of learning differences?

Microsoft’s Learning Tools and Immersive Reader help improve reading comprehension for English language learners, offers text decoding solutions for dyslexic students and provides read aloud and dictation options. In addition, the curriculum supports screen reader technology for vision impaired students, and Microsoft MakeCode has a high-contrast mode for low-vision students.

  • What language is this curriculum offered in?

English only at this time.

  • Which platform/device is this curriculum compatible with?

The curriculum is all online and browser-based, so works on any platform (Windows, MacOS, iPads, and Chromebooks)

  • How does this curriculum promote diversity and inclusion in computer science?

The Microsoft MakeCode curriculum was written to be culturally relevant to a wide variety of students with diverse backgrounds and experience levels with technology. All computing terms are explained using language and analogies that students understand, most projects encourage student choice in the topic to ensure that the learning aligns to their interests, and no prior knowledge or computing experience is assumed in the course design and pacing.

  • Who wrote this curriculum?

The MakeCode curriculum was written by Kelli Etheredge, a Director of Teaching & Learning and an AP Computer Science Principles teacher herself. Follow her on Twitter @ketheredge.