EECS 280: Programming and Intro Data Structures

The University of Michigan
Spring 2022
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

End of Term

That's a wrap! Thanks for a great term, and best of luck in your future endeavors!

  • Final Exam - check your email for a link to your graded final exam.
  • We plan to submit final letter grades as soon as possible.
  • This webpage will be archived soon - if you need to get back here, check the "Looking for previous terms?" link at the top of the page.

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

James Juett head shot
James Juett (he/him)
2641 Beyster
Mon-Thu 10:30am-12:00pm
1670 Beyster
Asynchronous Lectures
A self-paced, asynchronous lecture option.
Covers the same material. Details and Links
Office Hours
By email/appointment.
James Juett head shot
Jule Schatz (she/her)
2717 Beyster
Mon-Thu 12:00pm-1:30pm
1670 Beyster
Office Hours
By email/appointment.
P5 Due Mon, Jun 20 at 8pm
Project 5: Machine Learning
Due Mon, Jun 20 at 8pm
Due Wed/Fri at 8pm
Labs are finished for this term!
Events & Resources
Final Exam Review

Review of final exam material. Recording from W22 session.

Get Help & Connect
Coaching   Request a Coach
Connect 1-on-1 with an IA or GSI to plan for your 280 experience.
Virtual Office Hours   Sign Up
Project help and debugging
Mon 2-3, 4-5pm
Tue 10pm-Midnight
Wed 2-5pm, 10pm-midnight
Fri 11am-2:30pm
Sat Noon-3pm
In-Person Office Hours
In-person, group and individual help
Tue 2-5pm, Thu 4:30-6:30pm
Chrysler 133 (North Campus)
Course Forums
Ask/Answer Questions
Informal Discussion

Administrative Requests

Please use the forms linked below to make administrative requests. For other matters not covered by a form, you can each us at

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


Open calendar in new window


Day Lecture Topic Lab Topic Deadline
Week 1Mon May 2
Tue May 3 1. Introduction and Machine Model Getting Started
Wed May 4 2. Procedural Abstraction, Testing and Debugging
Thu May 5 3. Pointers Machine Model, Testing, IDE Setup
Fri May 6
Week 2Mon May 9 4. Pointers and Arrays
Tue May 10 5. Strings, Streams, and IO Pointers and Arrays Project 1
Due Tue May 10 at 8pm
Wed May 11 6. Compound Objects
Thu May 12 7. Abstract Data Types in C Strings and IO
Fri May 13
Week 3Mon May 16 8. Abstract Data Types in C++ Add/Drop Deadline, Mon May 16
Tue May 17 9. Derived Classes and Inheritance Abstract Data Types Project 2
Due Tue May 17 at 8pm
Wed May 18 Euchre Social (optional) Entry Survey
Due Wed May 18 at 8pm
Thu May 19 10. Polymorphism Polymorphism
Fri May 20
Week 4Mon May 23 11. Container ADTs I
Tue May 24 12. Container ADTs II Extra OH
Wed May 25 13. Memory Models and Dynamic Memory
Thu May 26 14. Managing Dynamic Memory Container ADTs
Fri May 27 Project 3
Due Fri May 27 at 8pm
Week 5Mon May 30 No Class - Memorial Day
Tue May 31 15. Deep Copies and The Big Three No Lab
Wed Jun 1 No Class - Midterm Exam Midterm Exam
Wed Jun 1 at 7-9pm
Thu Jun 2 16. Linked Lists Dynamic Memory & Deep Copies
Fri Jun 3
Week 6Mon Jun 6 17. Iterators
Tue Jun 7 18. Recursion and Tail Recursion Extra OH
Wed Jun 8 19. Structural Recursion
Thu Jun 9 20. Function Objects and Impostor Syndrome Recursion Project 4
Due Thur Jun 9 at 8pm
Fri Jun 10
Week 7Mon Jun 13 21. Auto, Maps, Range-Based For Loops
Tue Jun 14 22. Exceptions Iterators and Functors
Wed Jun 15 23. Containers of Pointers and What's Next
Thu Jun 16 No Lecture Final Exam Review
Fri Jun 17
Week 8Mon Jun 20 Special Topics (Optional!) Project 5
Due Mon Jun 20 at 8pm
Tue Jun 21
Wed Jun 22
Thu Jun 23 Final Exam
Thu Jun 23 at 4-6pm
Fri Jun 24 Alternate Final Exam
Fri Jun 24 at 8-10am


Julia Aoun head shot
Julia Aoun
Q Cong head shot
Q Cong
Maria Fields head shot
Maria Fields
 Zachary Goldston head shot
Zachary Goldston
Gurish Sharma head shot
Gurish Sharma
Kami Ziolkowski head shot
Kami Ziolkowski