Intensive Introduction to Computer Science Open Learning Course

The free video lectures of this course are made available as part of Harvard Extension School's Opening Learning Initiative.

About the Course

This free online computer science course is an introduction to the intellectual enterprises of computer science. Topics include algorithms (their design, implementation, and analysis); software development (abstraction, encapsulation, data structures, debugging, and testing); architecture of computers (low-level data representation and instruction processing); computer systems (programming languages, compilers, operating systems, and databases); and computers in the real world (networks, websites, security, forensics, and cryptography). The course teaches students how to think more carefully and how to solve problems more effectively. Problem sets involve extensive programming in C as well as PHP and JavaScript.

Watch the Course Trailer

Harvard Faculty

David J. Malan, Gordon McKay Professor of the Practice of Computer Science, Harvard University. Malan received a bachelor’s, master’s, and doctorate in computer science from Harvard University. He teaches Harvard College’s introductory computer science course and holds an appointment as lecturer on computer science in the School of Engineering and Applied Sciences. He was awarded the Extension School’s Petra T. Shattuck Excellence in Teaching Award in 2007.

The Lecture Videos

The recorded lectures are from the Harvard School of Engineering and Applied Sciences course Computer Science 50, which was offered as CSCI E-52, an online course at the Extension School.

To watch these course videos, visit the CS50 website

Related Courses, Degrees, and Certificates