In January, I wrote an article on Class Central about CS50, Harvard’s Introduction to Computer Science, which offers a free certificate. In this article, I'll go over CS50’s entire 10-course lineup, seven of which also offer a free certificate.

CS50: The Original Course

CS50 is taught by Harvard Professor David J. Malan. Back in 2015, when Class Central contributor Charlie Soliman reviewed the course, he said this about Professor Malan:

At the risk of stating a cliché, his approach to teaching is unlike anything I have seen and can easily be labeled as revolutionary. One can detect the joy and effort he puts into each of his lectures.

Having taken the course myself, I can say that this quote is as relevant today as it was back then. In fact, since the course is updated every year, it’s gotten even better.

CS50 in Harvard’s Sanders Theater
CS50 in Harvard’s Sanders Theater

Offered at Harvard since 2007 and on edX since 2012, CS50 has grown to become Harvard’s largest on-campus course, with 800+ students per term. It's also one of the world’s highest rated and most popular MOOCs ever, with 2M+ learners in total.

And “CS50” has evolved from a code designating a single course to a brand encompassing multiple courses exploring different subjects, targeting different audiences, and stacking into different learning paths.

To make sense of CS50’s offerings, I partly audited each course, I explored their online communities, and I contacted their course staff. I found that Professor Malan often replies to emails himself — a nice touch considering the course has over 100 staff.

CS50: The Expanded Offering

CS50’s full offering currently comprises ten courses that can be broken down into three levels as shown in the table below. As you can see, seven courses offer a free certificate.

Click on a course or level to jump to the corresponding section.

Level Courses Workload Certificate
Basic (Optional) CS50 Tech 4 hours / 6 weeks
Core (Pick one: usually enough) CS50 12 hours / 12 weeks
CS50 AP 5 hours / 32 weeks
CS50 Law 4 hours / 10 weeks
CS50 Business 4 hours / 6 weeks
Follow-up (Pick one or several) CS50 AI 20 hours / 7 weeks
CS50 Web 8 hours / 12 weeks
CS50 Games 8 hours / 12 weeks
CS50 Mobile 8 hours / 13 weeks
  • No certificates
CS50 Beyond 5 hours / 12 weeks
  • No certificates

Basic Course

Currently, CS50 only offers one basic course. It can be seen as an optional on-ramp to CS50’s core courses. If you don’t feel ready for a formal introduction to computer science, this is a good place to start.

CS50 Understanding Technology — CS50T

cs50-tech

CS50T is a gentle introduction to the world of computing. It starts at the hardware level and works its way up from there. It explores how the internet works, how websites are created, how security is ensured, and ends with coding basics.

The course is taught by David J. Malan. It involves about 4 hours of study per week over 6 weeks. This course offers the following certificate options:

Core Courses

Currently, CS50 offers four core courses. These include the original CS50 as well as variants geared toward different types of learners. This is where most learners want to start.

One course should be plenty. But learners that take a variant may want to also take the original CS50 — especially if they plan to continue with a follow-up course.

CS50 Introduction to Computer Science

cs50-original

CS50 is Harvard’s computer science introduction. It starts with binary and goes up the ladder of abstraction from machine code to low-level languages to high-level languages. It explores algorithms, data structures, and memory management. And it ends with one of three specialization tracks: web, game, or mobile development.

The course is taught by David J. Malan. It involves about 12 hours of study per week over 12 weeks. And it offers the following certificate options:

CS50 AP Computer Science Principles — CS50AP

cs50-ap

CS50AP is a CS50 variant that allows students in participating schools to earn AP credit. In the US, AP credit can help university applicants bolster their chances of admission and validate credit.

The course covers the same content as CS50 but includes more material, two extra assignments, and a proctored exam.

The course is taught by David J. Malan. It involves about 5 hours of study per week over 32 weeks. And it only offers a paid verified certificate via edX.

CS50 Computer Science for Lawyers — CS50L

cs50-law

CS50L is a CS50 variant geared toward lawyers and law students. Part of the curriculum explores similar content but emphasizes big-picture understanding of low-level details. The other part explores entirely new content that considers how law and computer science interact — for instance, in regards to cybersecurity, data privacy, and internet regulation.

The course is taught by David J. Malan and Doug Lloyd. It involves about 4 hours of study per week over 10 weeks and offers the following certificate options:

CS50 Computer Science for Business Professionals — CS50B

cs50-business

CS50B is a CS50 variant geared toward business professionals. Most of the course explores similar content but emphasizes big-picture understanding of low-level details. A small part explores entirely new content relevant to businesses, for instance, cloud computing.

The course is taught by David J. Malan. It involves about 4 hours of study per week over 6 weeks and offers the following certificate options:

Follow-up Courses

Currently, CS50 offers five follow-up courses. These pick up where CS50 leaves off and explore a specific subject. They’re an excellent way to build on your computer science fundamentals by delving into a specialization.

CS50 Introduction to Artificial Intelligence with Python — CS50AI

cs50-ai

CS50AI leverages the Python programming language to explore modern artificial intelligence. It covers foundational AI concepts, such as search algorithms and knowledge models, and builds on them to discuss more advanced concepts, such as optimization and machine learning.

The course is taught by Brian Yu. It involves about 20 hours of study per week over 7 weeks and offers the following certificate options:

The courses is also part of edX’s Professional Certificate in Computer Science for Artificial Intelligence.

CS50 Web Programming with Python and JavaScript — CS50W

cs50-web

CS50W explores the languages, tools, and processes underpinning modern web app development. It covers languages such as Python and JavaScript, frameworks such as Flask and Django, and services such as GitHub and Heroku.

The course is taught by Brian Yu. It involves about 8 hours of study per week over 12 weeks. This course offers the following certificate options:

The courses is also part of edX’s Professional Certificate in Computer Science for Web Programming.

CS50 Introduction to Game Development — CS50G

cs50-game

CS50G explores the languages, tools, and processes underpinning modern game development. It leverages languages such as C# and frameworks such as Unity to create 2D and 3D experiences, and draws examples from video games such as Pong, Mario, and Portal.

The course is taught by Colton Ogden. It involves about 8 hours of study per week over 12 weeks and offers the following certificate options:

The courses is also part of edX’s Professional Certificate in Computer Science for Game Development.

CS50 Mobile App Development with React Native — CS50M

cs50-mobile

CS50M explores how to develop mobile apps using the React Native framework. It covers concepts such as state and components, processes such as testing and deployment, and tools such as Redux and JSX.

The course is taught by Jordan Hayashi. It involves about 8 hours of study per week over 13 weeks. This course is offered via Harvard OpenCourseWare, but has no certificate.

The courses is also part of edX’s Professional Certificate in Computer Science and Mobile Apps.

CS50 Beyond

cs50-beyond

CS50 Beyond is the precursor of CS50W. It explores the same subject, web development, but does it in a more condensed time frame. Most topics remain the same, but many of the projects are different.

The course is taught by Brian Yu. It involves about 5 hours of study per week over 12 weeks. This course is offered via Harvard OpenCourseWare, but has no certificate.