CS50's AP® Computer Science Principles

blur

Learn Path Description

This Xseries is only for students in high school. Students not in high school should register for CS50T and CS50x separately.

This is CS50 AP, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for students in high school, which satisfies the College Board's AP Computer Science Principles (CSP) curriculum framework. Students in high school may receive AP credit for this course provided their school approves the credit and administers the College Board's Create Performance Task by Friday, April 30, 2021, 11:59 PM Eastern Time, and End-of-Course Multiple-Choice Exam on Thursday, May 13, 2021, 8:00 AM local time. Students should make all such arrangements in advance with their school directly. Students who earn a satisfactory score on all problem sets and a final project are also eligible to receive a verified certificate from HarvardX.

An entry-level course for students with no prior background, taught by David J. Malan, CS50 AP teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, and software engineering. Languages include C, Python, and SQL plus students’ choice of: HTML, CSS, and JavaScript (for web development); Java or Swift (for mobile app development); or Lua (for game development). Problem sets inspired by the arts, humanities, social sciences, and sciences. Course culminates in a final project.

CS50 itself is Harvard University's largest course on campus.

Skills You Will Gain

Courses In This Learning Path

blur
icon

Total Duration

6 weeks

icon

Level

Beginner

icon

Learn Type

Certifications

CS50's Understanding Technology

course via

This course is CS5's introduction into technology for students who do not consider themselves to be computer people. This course is for people who use technology every day, but don't know how it works or how to fix problems when they go wrong. It is designed to help you understand and use technology more effectively. This course covers hardware, web development, security, programming and multimedia.

blur
icon

Total Duration

12 weeks

icon

Level

Beginner

icon

Learn Type

Certifications

CS50's Introduction to Computer Science

course via

Harvard University's introduction into the intellectual enterprise of computer science and programming for majors and minors, with or without programming experience. CS5x is an entry-level course that David J. Malan teaches. It teaches students how they can think algorithmically and solve problems effectively. The topics include abstraction, algorithms and data structures. C, Python and SQL are all languages. Problem sets are inspired by real-world areas such as finance, cryptography and forensics. Harvard's most popular course is CS5x CS5.

A certificate is available to students who have achieved a satisfactory score in 9 problem sets (i.e. programming assignments). You can take or CS5x at your own pace.

HarvardX requires that all individuals who sign up for its courses on EdX agree to the terms of the honor code. HarvardX will correct any violations of the edX honour code. This could include dismissal from HarvardX courses, revocation of HarvardX certificates or other remedies depending on the circumstances. In the event of corrective actions for such violations, no refunds will be given. Students enrolled in HarvardX courses that are part of another program, will be subject to the academic policies of these programs.

HarvardX is interested in the science of learning. Register as an online learner for an HX course and you'll also be participating in research on learning. To learn more, read our research statement.

Harvard University and HarvardX have a shared commitment to creating a safe and healthy environment for education and work. We will not allow any member of our community to be excluded from, denied the benefits, or harassed in our programs. HarvardX members are expected to adhere to the edX Terms and Service. You can contact HarvardX@harvard.edu with any questions or concerns.

blur