
CourseCS50x 202612 lectures
CS50’s Introduction to Computer Science
David J. Malan · Harvard University
About
This is CS50, Harvard University’s introduction to the intellectual enterprises of computer science and the art of programming, for concentrators and non-concentrators alike, with or without prior programming experience. (Two thirds of CS50 students have never taken CS before.) This course teaches you how to solve problems, both with and without code, with an emphasis on correctness, design, and style. Topics include computational thinking, abstraction, algorithms, data structures, and computer science more generally. Problem sets inspired by the arts, humanities, social sciences, and sciences. More than teach you how to program in one language, this course teaches you how to program fundamentally and how to teach yourself new languages ultimately. The course starts with a traditional but omnipresent language called C that underlies today’s newer languages, via which you’ll learn not only about functions, variables, conditionals, loops, and more, but also about how computers themselves work underneath the hood, memory and all. The course then transitions to Python, a higher-level language that you’ll understand all the more because of C. Toward term’s end, the course introduces SQL, via which you can store data in databases, along with HTML, CSS, and JavaScript, via which you can create web and mobile apps alike. Course culminates in a final project.
Watch an introduction in English
Assista a uma introdução em português
Vea una introducción en español.
How to Take this Course
Even if you are not a student at Harvard, you are welcome to “take” this course for free via this OpenCourseWare by working your way through the course’s eleven weeks of material. For each week, follow this workflow:
flowchart TD A[Watch Lecture] --> |recommended|B[Watch Section] A --> D B --> |recommended|C[Watch Shorts] B --> D[Submit Problem Set] C --> D
And then submit the course’s final project.
To submit the course’s problem sets and final project for feedback, be sure to create…
Lectures
Syllabus and materials
At CS50 at Harvard, as the course publishes them.
Credits and licence
- Institution
- Harvard University
- Department
- CS50
- Teacher
- David J. Malan
- Year
- 2026
- Level
- Undergraduate
- Language
- English
- Subjects
- Computer science
- Source
- CS50 at Harvard
- Licence
- CC BY-NC-SA 4.0, as CS50 at Harvard states it. Non-commercial use only. CS50 at Harvard's terms
- Attribution
- CS50, Harvard University. Licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International license.
- Who can watch
- CS50 at Harvard gives no rating. Invisible Network shows it to Tweens profiles and older, judged from what the source says about it. How courses are placed
More like this
Course
CS50's Introduction to Programming with Python
10 lectures · Video
Course
CS50's Computer Science for Business
9 lectures · Video
Course
CS50's Web Programming with Python and JavaScript
9 lectures · Audio
Course
CS50's Introduction to 2D Game Development
8 lectures · Video
Course
CS50's Introduction to Artificial Intelligence with Python
7 lectures · Audio
Course
CS50's Introduction to Databases with SQL
7 lectures · Video
Course
CS50's Introduction to Cybersecurity
5 lectures · Video
Course
CS50's Mobile App Development with React Native
13 lectures · Source's player
Course
CS50's Computer Science for Lawyers
10 lectures · Source's player
CS50CS50's Introduction to Programming…
Course
CS50's Introduction to Programming with Scratch
9 lectures · Audio
CS50CS50's Introduction to Programming…
Course
CS50's Introduction to Programming with R
7 lectures · Video
Course
CS50's Understanding Technology
6 lectures · Source's player