This is an extension/revision of a similar review I made on /r/OMSCS.
This course doesn't quite fit neatly in any of the specializations currently being offered by OMSCS. I don't see any other course serving as a preparatory/onboarding class, nor do I see this course teeing up as a clean segue to another. That's alright, but it does make it somewhat awkward to fit in a broader plan when envisioning what you want to make of your OMSCS experience. Enroll in this class because you're interested in Quantum Computing, not because it will make a you a better SWE, MLE, etc.
"Quantum Computing" focuses more on the algorithmic implementations of quantum bits (aka "qubits"). Since this isn't a physics course, it's not concerned with the particles themselves; since this isn't a computer engineering course, it's not concerned with the hardware that facilitates the computations. Instead, the coursework is couched in the more abstract computational implications of how we might use these particles and machines. You start by comprehending the computational advantages of qubits vs. bits, then how those qubits logically can be configured into programmable quantum circuits, then how more abstract algorithms can be represented by those quantum circuits, then how those algorithms provide a kind of "quantum advantage" over classical computers, then how these theoretical applications integrate with existing physical limitations, and then how the field is working to address those limitations.
In many respects, 100% comprehension of the course material would necessitate a strong mathematical background. I won't pretend that I follow-along with all of the material that's been put before us. That said, I can tell a conscious effort has been made to limit the impact of quantum computing's math on the necessary deliverables required to pass the coursework: where we could have been made to agonize over proofs or writing out quantum states as expressions, instead we're implementing in code the algorithms and gates that make up the core material. Likewise, the weekly quizzes have a generous number of attempts (enough that you might as well have infinite tries until you get 100% correct solutions). All told, the math that drives quantum computing forward as an academic area of study is not a barrier of entry to this class in particular; the course is well-designed in presenting deep, complex topics for those interested, but not requiring a student to necessarily perform at the same level to do well in the class.
Your grade is broken up as follows:
- 4 projects (40% weight)
- 5 one-page reviews of assorted academic papers, template provided. (10%)
- 2 exams (40 %)
- 12 week-by-week quizzes (10%)
The projects are all Jupyter Notebooks which import various python files you are expected to implement. From those Notebooks, you export assorted plots, figures, data points, etc. for use in a written report to provide added context to your work (i.e. what are your qubits doing? What are your quantum circuits doing? How do various implementations explain behavior changes? etc.). Every project supplements the lecture, textbook, and papers you are assigned, which is great for solidifying your comprehension. It's an absolute pleasure to see how tightly coupled the various course materials are to one another; if you don't understand a concept in lecture, it might be made more clear in the corresponding project, paper, or textbook reading (as they all relate to one-another in varying capacities).
My primary criticism with the class is in the various administrative errors that the course had, which were encountered throughout: pacing through the lecture materials was notionally-tied to the syllabus (ex: project 1 is due 1 week before covering some of the material necessary to complete it); exam answer formatting wasn't explicitly made clear (ex: when asked for a percentage in exam 1, it wasn't clear if it was expecting 10, 10%, 0.1, etc.; only 1 format was considered correct); gradescope feedback on project submission could be opaque for reasons unrelated to the lesson material (ex: failures for uploading a directory of supporting *.qasm files vs. all of the *.qasm files individually); the wording/syntax used in various project problems and quiz questions left room for ambiguous interpretation; these and other issues frustrated me.
However, credit where credit is due: staff were VERY receptive to rolling, constructive feedback from the students. Every example instance mentioned above was generously - and thoughtfully - addressed. To name every concession, redaction, update, or communique would be exhaustive and beyond the scope of this comment; however, all of the above named examples were reasonably addressed. I'd expect future iterations of the course in subsequent semesters to benefit from corrected materials, mitigating the criticism.