Course Description
This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that …
This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python programming language.
Course Format
This course has been designed for independent study. It provides everything you will need to understand the concepts covered in the course. The materials include:
- A complete set of Lecture Videos by Prof. Guttag.
- Resources for each lecture video, such as Handouts, Slides, and Code Files.
- Recitation Videos by course TA’s to review content and problem solving techniques.
- Homework problems with sample student solutions.
- Further Study collections of links to supplemental online content.
- Self-Assessment tools, including lecture questions with answers and unit quizzes with solutions, to assess your subject mastery.
Course Info
Instructor
Departments
Topics
Learning Resource Types
theaters
Lecture Videos
theaters
Recitation Videos
assignment_turned_in
Problem Sets with Solutions
grading
Exams with Solutions
menu_book
Online Textbook
assignment_turned_in
Programming Assignments with Examples

Many of the problem sets focus on specific topics, such as virus population dynamics, word games, optimizing routes, or simulating the movement of a Roomba. (Roomba photograph courtesy of Stephanie Booth on Flickr; virus image courtesy of the CDC; Boggle photograph courtesy of Angelina on Flickr; MIT campus map image courtesy of RahulG on Flickr.)