Course description

his course is an introduction to the intellectual enterprises of computer science and the art of programming. It teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development. Languages include C, PHP, and JavaScript plus SQL, CSS, and HTML. Problem sets are inspired by real-world domains of biology, cryptography, finance, forensics, and gaming. Students can count two of the following three courses—CSCI E-10aCSCI E-10b, and CSCI E-50 (or CSCI E-50a and CSCI E-50b)—toward a degree. They cannot count all three toward a degree. The recorded lectures are from the Harvard John A. Paulson School of Engineering and Applied Sciences course Computer Science 50.


Gordon McKay Professor of the Practice of Computer Science, Harvard John A. Paulson School of Engineering and Applied Sciences