OMSCS requires ten courses to graduate. I completed one course (with an A grade) before realizing that, even at a pace of one course per semester, it was not a high enough priority for me to devote the time required to do each course well.
That course was great, though, and I definitely learned some things I'm glad to have learned!
IMO the instructional materials are a small part of the value. The things that stood out to me were:
- the assignments
- the autograding of programming assignments
- giving and receiving peer feedback about written assignments
- learning some LaTeX for those assignments
- having an artificial reason (course grade) to persist in improving my algorithm and code [on the problems taught in that course, I wouldn't have been self-motivated enough if they were just things I came across during a random weekend]
Things that I loved about the program:
* My fellow classmates. Had a small study group where we got on Discord to hang out and it was a blast
* The TAs - they were so dedicated to the students and fantastic. MVPs of the program
The ability of OMSCS to scale paper writing, review, and grading with real human TAs is nothing short of astounding. While it's a ton of work (I'm just completing class #5) it's a great resource for both learning the material - and how to communicate it effectively.