How to Take Harvard's CS50 for Free: A Week-by-Week Study Guide (2026)
Harvard's CS50 is probably the most-watched introductory computer science course in the world. It's taught by David J. Malan, it's free to take online as CS50x, and it takes people who have never written a line of code through C, Python, SQL and web development in about twelve lectures.
It's also hard. The lectures run to about two hours each, the problem sets are real programming work, and plenty of people start Week 0 with enthusiasm and quietly stop somewhere around Week 4. This series is here to help you finish. For every lecture there's a post that links straight to Harvard's video, points you to the key moments, explains the ideas in plain English, tells you what the problem set is asking and where people get stuck, and ends with a few questions to test yourself.

What CS50x actually is
CS50x is the free online version of CS50's Introduction to Computer Science, the course Harvard undergraduates take. The 2026 edition has:
- Twelve lectures: Weeks 0 to 10, plus a standalone lecture on artificial intelligence between Weeks 7 and 8.
- Ten problem sets (numbered 0 to 9). Several give you a choice between a "less comfortable" and a "more comfortable" version.
- A final project of your own design, in any language.
- Sections, shorts and notes for every week, plus optional practice problems that Harvard warns are often harder than the problem sets.
There are no exams and no quizzes in CS50x. You're assessed on what you build.
What it costs, and the two certificates
Everything is free: the lectures, the notes, the coding environment and the automated grading. If you score at least 70% on every problem set and the final project, Harvard issues a free CS50 Certificate. Separately, edX sells a verified certificate if you want one with edX's branding on it. The course content is the same either way.
Each problem is scored automatically. Harvard's tools check correctness (check50) and style (style50), and correctness counts three times as much as style. You write and submit your code in cs50.dev, a version of VS Code that runs in the browser. You'll need a free GitHub account to sign in.
The deadline
Work for CS50x 2026 has to be submitted by 30 June 2027 at 23:59 UTC, according to the syllabus. That's plenty of time if you start now. It isn't if you start next May.
The honesty rules (read these before you start)
CS50 takes academic honesty seriously. It audits submissions and revokes certificates. The rules most likely to catch you out:
- Don't look up solutions. GitHub is full of repositories with people's answers. Looking at them is against the rules, and so is publishing your own.
- No AI assistants except CS50's own. ChatGPT, Claude, Copilot and Gemini aren't allowed for coursework. CS50's AI "duck" at cs50.ai is, because it's built to guide you rather than give you answers.
- Talking about ideas is fine. Explaining a concept to a friend, drawing a diagram or using pseudocode is encouraged. Sharing code isn't.
This series stays inside those rules. We explain the ideas and tell you where people struggle, but you won't find solution code here.
The course, week by week
A study plan you can actually keep
Most people who drop out don't hit a wall. They lose momentum. Pick a pace before you start:
- Twelve weeks, about 10 to 15 hours a week. One week of the course per calendar week, with the final project squeezed into the last fortnight. Realistic if you're studying full-time or between jobs.
- Six months, about 5 to 7 hours a week. Two calendar weeks per course week. This suits most people with a job. Weeks 4 and 5 will probably take longer, and that's normal.
Each week, the rhythm that works is: watch the lecture in two sittings (the chapter links in each post make natural break points), read Harvard's notes the next day, watch the section or shorts for whatever didn't click, and only then open the problem set. Start with the easier problem, finish it and submit it before touching the harder one.
To keep yourself honest about pace, use our free CS50 Study Tracker. It gives every week a due date based on the pace you choose, lets you tick off lecture chapters and problems as you finish them, keeps screenshots of your submissions, and tells you whether you're ahead of or behind schedule. Sign in with your email and it saves to your account, so it follows you to any device, and a Cocoon consultant is one click away if you get stuck.
If you get stuck
Everyone gets stuck. Week 4 (pointers) and the "Tideman" problem in Week 3 are famous for it. Before you ask for help, try explaining your code line by line out loud. CS50 calls this rubber duck debugging, and it works surprisingly often. After that, try the CS50 duck at cs50.ai, then CS50's own communities. Studying alongside even one other person roughly doubles your chances of finishing.
After CS50x
Harvard follows CS50x with specialised courses, all free: CS50P (Python), CS50W (web programming), CS50AI (artificial intelligence), CS50 SQL, and more. Once you finish CS50x, you'll know enough to choose between them.
A note on this series
This is an unofficial study companion written by Cocoon. CS50 and all its lectures, notes and problem sets belong to Harvard University and David J. Malan and are shared under a CC BY-NC-SA 4.0 licence. We link to Harvard's originals instead of reproducing them. Harvard is the place to take the course, and this series is here to help you get through it.
Start with Week 0: what binary, algorithms and Scratch have to do with each other.
Read Week 0 →