Like every other required computer science class, CS 374 reached its registration capacity shortly after registration opened in the spring. Even though the course is designed to be taken at the junoir level every single registered student is an undergraduate CS or CE major and either a senior or a James Scholar. The class first reached capacity well before the Fall 2016 registration windows opened for juniors, and weeks before the department opened CS classes to non-majors.
The increasing demand for CS/ECE 374 reflects increases in the number of computer science (both in Engineering and LAS) and computer engineering majors; these increases show no sign of slowing. To give a concrete example, the CS Engineering major received about 2000 applications for Fall 2013 admission, 2400 applications for Fall 2014 (breaking all college records), 3200 applications for Fall 2015 admission (breaking all university records), and 4100 applications for Fall 2016 admissions (nearly matching ECE and MechSE combined). Applications to the Computer Science majors in LAS have seen similar increases.
This incoming enrollment wave has now worked its way up to our upper-division classes. CS 374 is being hit particularly hard, because it is required for all CS majors and all CE majors.
The registration limit is set by the physical capacity of 1002 ECEB; we cannot increase it. And we do not have the necessary manpower to open another lecture section.
In other words: This is the new normal.
If you are an undergraduate computer science major (either Engineering or LAS) major or computer engineering major and you are graduating in December 2016, contact your department's academic office as soon as possible for a registration override.
For other students who cannot register, we are maintaining a waiting list. We plan to close registration well before the semester begins so that as people inevitably drop out, students on the waiting list who need CS 374 to graduate can register without competing for space with others.
To add yourself to the waiting list, you must do ALL of the following:
Students who are already comfortable with the course material are invited take the regularly scheduled final exam at the regular time (time and location TBA) for proficiency credit. If you plan to take the final exam for proficiency credit, please contact Jeff at least one week in advance.
To pass the proficiency exam, your score must be consistent with the scores of registered students who receive a C- or better in the course; as a rough estimate, your score must be at most one standard deviation below the mean. If you pass, your transcript will show a grade of "Pass" for CS 374, you will receive 4 credit hours, and any degree requirements satisfied by CS 374 will be satisfied, but your GPA will not be affected. Otherwise, nothing will appear on your transcript. See the university's proficiency exam policies for more details.
Do not take the proficiency exam unless you are sure you know the material! In past semesters, several students waited until their last semester to take a proficiency exam for a required algorithms class, and then failed. Those students did not graduate; some lost pending job offers and visas. Do not do this! As a safety net, we strongly recommend also taking both midterms; these will be averaged in with your final.