CS 2000: Introduction to Program Design and Implementation
Introduces computer science and data science to students with no programming experience. Starts by building programs with numbers, text, and images, then moves to exploring real, complex data sets both interactively and through coding. Students then practice coding using a popular industrial language with a professional programmer's interface to the code. Students learn to identify and respond to ethical challenges in program design.
This course owes a great debt to two texts, which each had courses based on them. The first is How to Design Programs by Felleisen et al, which originated the Design Recipe that still forms the core of our course, as well as inspiring countless other aspects. The second is A Data-Centric Introduction to Computing by Fisler et al, which created the combined computer science and data science curriculum that we follow quite closely, though our language and tooling is distinct. Past versions of this course followed DCIC directly.
Assessment Hours
In-person hours where you can attempt skill assessments, by campus.
Schedule (Boston & Oakland)
Dates are for Fall 2026, Boston & Oakland campuses; they will differ for other semesters or campuses.
Lectures meet Monday, Wednesday, and Thursday. Labs meet Tuesday. Homework is due Sunday (Anywhere-on-Earth).
Colored stripes at the bottom of each day indicate which skills are assessable during office hours on that day. Past days are faded.
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
| September 2026 | ||||||
6 | 7Labor Day | 8 | 10 | 11 | 12 | |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 25 | 26 | ||||
27 | 3 | |||||
| October 2026 | ||||||
10 | ||||||
11 | 12Indg. People's Day | 17 | ||||
18 | 24 | |||||
25 | 31 | |||||
| November 2026 | ||||||
7 | ||||||
11Veterans Day | 14 | |||||
15 | 21 | |||||
22No HW Due | 25Thanks. Break | 26Thanks. Break | 27Thanks. Break | 28 | ||
5 | ||||||
| December 2026 | ||||||
12 | ||||||
13 | 14 | 15 | 16 | 17 | 18 | 19 |