Overview
CS50 (formally CS50x, "CS50's Introduction to Computer Science") is Harvard University's introductory computer science course, taught by David J. Malan. It is offered on campus to Harvard students and, through the free OpenCourseWare platform, to anyone in the world as a self-paced online course. It focuses on problem-solving with and without code, with an emphasis on correctness, design and style, rather than being a credential-granting exam.
More university exams in United States
United States · 7 university exams
Show 1 moreShow fewer
Who can take it
CS50 is open to complete beginners as well as more experienced students; Harvard states that two-thirds of CS50 students have never studied computer science before. It is available to Harvard concentrators and non-concentrators, and to learners worldwide through the free online version.
Structure
| Component | Detail |
|---|---|
| Length | 11 weeks |
| Core activities | Lectures, problem sets each week, a final project |
| Optional activities | Sections, "shorts" (short video explainers) |
| Languages taught | C, then Python, SQL, HTML, CSS and JavaScript, in that progression |
What it covers
The course moves from low-level programming concepts in C through to Python, databases with SQL, and web development with HTML, CSS and JavaScript, building up computational thinking, algorithms and data structures along the way.
Scoring and results
Students submit weekly problem sets and a final project for feedback via their edX account; the free OpenCourseWare version does not carry a traditional letter-grade transcript.
Recognition
Completion options vary by how a student takes the course:
A free "audit" completion through OpenCourseWare carries no formal certificate.
A paid Verified Certificate is available through edX.
Paid Professional Certificates are available in related tracks such as web development, AI, or Python programming.
Transfer credit is possible through Harvard Extension School or Harvard Summer School, for a fee, for students taking the course through those Harvard divisions rather than the free OpenCourseWare version.
Fees
The core CS50x course is completely free through OpenCourseWare. Certificate and credit options (Verified Certificate, Professional Certificates, Harvard Extension/Summer School credit) carry their own separate fees.
How to register
Students register for the free version directly on the CS50x OpenCourseWare page; those seeking Harvard Extension School or Summer School credit register through those respective Harvard divisions instead.
Preparation tips
Because CS50 is designed for beginners and is self-paced online, new students can start directly with Week 0 without prior programming experience, working through problem sets at their own pace within the course's schedule.
Is CS50 free?
Yes, the core course is free through Harvard's OpenCourseWare platform. Certificates and Harvard academic credit are separate, paid options.
Do I need programming experience to start CS50?
No. Harvard states that two-thirds of CS50 students have never taken a computer science course before.
How long does CS50 take?
The course is structured across 11 weeks of lectures, problem sets and a final project, though the free version can be taken at a self-paced schedule.
Can I get college credit for CS50?
Transfer credit is possible if you take the course through Harvard Extension School or Harvard Summer School, for a fee, rather than through the free OpenCourseWare version.