EECS 280: Programming and Intro Data Structures

The University of Michigan
Spring 2021
Looking for previous terms?

Computer science fundamentals, with programming in C++. Build an image processing program, a game of Euchre, a web backend, and a machine learning algorithm.   Syllabus

Thanks for a great term!

You've made it through 5 projects and 2 exams over the course of only 8 (!!) weeks! We know how busy and chaotic spring classes can be, but we are proud of you for sticking through it! We hope you've learned a lot and enjoyed taking EECS 280 this spring semester!

  • Graded exams will be released soon. Expect an email Monday night.
  • I plan to submit final grades as soon as possible. They should be posted by Tuesday.
  • I'm still here (i.e. Prof. Juett) if you need me for anything! I won't be holding regular office hours, but please feel free to reach out if you have any questions about the course or if you'd just like to talk about planning to pursue a CS program, future courses, or anything else!
  • The Spring 2021 page will stay up for a while, but we'll eventually switch over for the upcoming Fall 2021 term. When that happens, look for a link to the course archive, where you can find 2021 materials.

This Week   Times listed in Ann Arbor local time (EDT)

Due 11:59pm each day
Previous lectures linked in the Schedule below.
Due 11:59pm Wed/Fri
No more labs!   
You can find all of the lab content in the labs folder in the shared google drive folder . Also, the solutions are linked in the Schedule section below.

Have a good summer!

We recommend your next assignment is to take a bit of a break, relax, and recharge for whatever is coming next!
Office Hours
Prof. Juett
Send me an email!
Live Events

Administrative Request Forms

Submit your SSD VISA form here to request extended time or other exam accommodations

Report an exam conflict and request an alternate date/time

Report an exam conflict and request an alternate date/time

Report a medical or personal emergency and request an extension or exception.

Students adding the course late may petition for additional time to turn in assignments.

Grade Calculator



(Enter your curved exam scores, not the raw ones.)

Overall Percent

Weighted Project Average
This may be below the required threshold to earn a C or better

Weighted Exam Average
This may be below the required threshold to earn a C or better

Final Grade



All times are listed as Ann Arbor local time (ET)

Day # Lecture Lab Events/Deadlines
Tue May 4 1 Introduction and Machine Model No lab
Wed May 5 2 Procedural Abstraction, Testing, and Debugging
Thu May 6 3 Pointers Getting Started
Fri May 7
Mon May 10 4 Arrays and Pointers
Tue May 11 5 Strings, Streams, and IO Pointers and Arrays P1 due Tue May 11
Wed May 12 6 Compound Objects IDE Tips/Tricks Project 2 Overview
Thu May 13 7 Abstract Data Types in C Strings and IO
Fri May 14
Mon May 17 8 Abstract Data Types in C++ Add/drop deadline
Tue May 18 9 Derived Classes and Inheritance Abstract Data Types Project 2 due Tue May 18
Wed May 19 10 Polymorphism Euchre Social Project 3 Overview
Thu May 20 11 Container ADTs I Polymorphism
Fri May 21
Mon May 24 Program Design Demo Recording Part 2 Code Files
Tue May 25 12 Container ADTs II euchre.cpp and Midterm Review
Wed May 26 13 Memory Models and Dynamic Memory
Thu May 27 14 Managing Dynamic Memory Container ADTs
Fri May 28 Project 3 due Fri May 28
Mon May 31 No Class - Memorial Day
Tue Jun 1 15 Linked Lists No Lab
Wed Jun 2 No Class - Midterm Exam Midterm 7pm
Wed Jun 2
Review Session
Thu Jun 3 16 Deep Copies Linked Structures
Fri Jun 4
Mon Jun 7 17 Iterators Project 4 Overview Review Session
Tue Jun 8 18 Recursion and Tail Recursion Dynamic Memory & Deep Copies
Wed Jun 9 19 Structural Recursion Project 4 due Wed Jun 9
Thu Jun 10 20 Functors and Impostor Syndrome Recursion
Fri Jun 11
Mon Jun 14 No Lecture
Tue Jun 15 21 Maps, auto, and Range-Based Loops Iterators and Functors Project 5 Overview Videos
Wed Jun 16 22 Error Handling and Exceptions
Thu Jun 17 23 Containers of Pointers and What's Next? Final Exam Review and Reflection
Fri Jun 18
Mon Jun 21 No Lecture Project 5 due Mon Jun 21
Tue Jun 22
Wed Jun 23
Thu Jun 24 Final 8am
Thu Jun 24 Review Session


Reach us at

James Juett head shot
James Juett

Claire Burton head shot
Claire Burton
Ashley Carroll head shot
Ashley Carroll
Alex ElHamahmy head shot
Alex ElHamahmy
Sam Jaehnig head shot
Sam Jaehnig
Lizzy Lu head shot
Lizzy Lu
Natasha Saputra head shot
Natasha Saputra
Jennifer Tran head shot
Jennifer Tran
Kami Ziolkowski head shot
Kami Ziolkowski