This is CS50 OpenCourseware.

Computer Science 50 (otherwise known as CS50) is Harvard College's introductory course for majors and non-majors alike, a one-semester amalgam of courses generally known as CS1 and CS2 taught mostly in C.

Even if you are not a student at Harvard, you are welcome to "take" this course via cs50.tv by following along via the Internet. (The course's own website is at cs50.harvard.edu.) Available at right are videos of lectures, walkthroughs, and seminars along with PDFs of all handouts. Also available at right are the course's problem sets.

If you're a teacher, you are welcome to adopt or adapt these materials for your own course, per the license.

If you'd like to take this course for real (on Harvard's campus or via the Internet) in order to receive feedback on work, grades, and a transcript, the course will next be offered through Harvard Extension School (as "Computer Science E-50") in Fall 2013; you can register online starting in July 2013. You can also take this course through edX.

Special thanks to Doug Lloyd '09, Rob Bowden '13, Maria Zlatkova '18, and Brian Yu '19, Fall 2017's heads.

djm