Instructor Insights pages are part of the OCW Educator initiative, which seeks to enhance the value of OCW for educators.
In the following video and Chalk Radio podcast episode, Chris Terman describes various aspects of how he taught 6.004 Computation Structures.
An Interview with Christopher Terman on Teaching Computation Structures
View by chapter
- Meet the Educator
- When Students Come with Different Backgrounds, Offer a Buffet of Learning Materials
- Using the MITx Platform to Structure Learning Sequences
- Conceptualizing Online Courses as Educational Labs
- Teaching Large Lecture Classes: The Importance of Stories and Disfluency
- The Teaching Team: From Lab Assistants to Faculty Members, the Range of Experience is Key
- With Online Fora, Being Stuck is Just a 10-Minute Process
- Using Browser-Based Programming Environments to Engage Students in the Practice of Engineering
- A Common Challenge Students Face: Developing Confidence in Systematically Solving Problems
- Hallway Learning: The Value of Common Learning Experiences at the Undergraduate Level
- The Fun is in the Doing of the Puzzle: Self-Paced Mastery Learning and Moving Beyond the Answer
- Engineering Learning Materials: An Iterative Process
Curriculum Information
Prerequisites
- Students should feel comfortable using computers. A rudimentary knowledge of programming language concepts and electrical fundamentals is assumed.
Requirements Satisfied
- 6.004 can be applied toward a degree in Electrical Science and Engineering, but is not required.
- 6.004 can be applied toward a degree in Electrical Engineering and Computer Science, but is not required.
Offered
Every fall and spring semester
Assessment
Grade Breakdown
The students' grades were based on the following activities:
![]() ![]() ![]() |
Student Information

Enrollment
Between 2008 and 2018, the enrollment for 6.004 rose from about 100 to 200-300 per semester.
Breakdown by Year
Mostly sophomores, but also others, ranging from freshmen to graduate students.
Breakdown by Major
About 4/5 Electrical Engineering and Computer Science majors, 1/5 other.
Typical Student Background
Some students came to the class with prior experience in programming and some understanding of how computers are structured; others came knowing little more than how to use a browser.
During an average week, students were expected to spend 12 hours on the course, roughly divided as follows:
In Class
- Met 2 times per week for 1 hour per session; 24 sessions total.
- Class sessions were lecture-based and focused on the engineering of digital systems.
Recitation
- Met 2 times per week for 1 hour per session; 26 sessions total.
- Recitation groups contained 20-30 students on average and allowed students to work through practice problems and ask questions of the recitation instructors.
Out of Class
- Outside of class, students completed seven lab assignments, worked through the online materials and practice problems in the MITx version of the course, and prepared a design project.
Semester Breakdown
WEEK | M | T | W | Th | F |
---|---|---|---|---|---|
1 | ![]() |
![]() |
![]() |
![]() |
![]() |
2 | ![]() |
![]() |
![]() |
![]() |
![]() |
3 | ![]() |
![]() |
![]() |
![]() |
![]() |
4 | ![]() |
![]() |
![]() |
![]() |
![]() |
5 | ![]() |
![]() |
![]() |
![]() |
![]() |
6 | ![]() |
![]() |
![]() |
![]() |
![]() |
7 | ![]() |
![]() |
![]() |
![]() |
![]() |
8 | ![]() |
![]() |
![]() |
![]() |
![]() |
9 | ![]() |
![]() |
![]() |
![]() |
![]() |
10 | ![]() |
![]() |
![]() |
![]() |
![]() |
11 | ![]() |
![]() |
![]() |
![]() |
![]() |
12 | ![]() |
![]() |
![]() |
![]() |
![]() |
13 | ![]() |
![]() |
![]() |
![]() |
![]() |
14 | ![]() |
![]() |
![]() |
![]() |
![]() |
15 | ![]() |
![]() |
![]() |
![]() |
![]() |
16 | ![]() |
![]() |
![]() |
![]() |
![]() |





