View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide

Proposed Changes to UG Curriculum March 2003

The College's Undergraduate Committee is considering a fairly wide-ranging series of changes to the undergraduate curriculum. The crux of these changes are:

There is no sum increase or decrease to the number of credit hours requested of our undergraduates.

There are lots of problems that these changes aim to fix, such as the dissatisfaction with CS2130 by both students and faculty, the need to separate learning C from the parsing/tokenizing issues (because our students need C for several classes, and the compilers issues are challenging so early in the curriculum), and the complexity of the current CS3500. There are also lots of ramifications of these changes, such as changing content in CS2335 (Software Practicuum, which we will make dependent only on CS1322 rather than CS2130) and CS2340 (Objects and Design – which has had material on how VM's in Java and Smalltalk worked, assuming the languages and translation content).

One question that's been raised is, if we're changing this much, maybe we should just give up and start from a blank slate. Maybe it's time to just re-write our whole undergrad curriculum. I argue that that this isn't the right time for that. We update our curriculum more often than the rest of the campus as it is. (Sotto voce comment from the chair of the Institute UG committee last Wed., discussing an Economics proposal, "What was that CS course number anyway? They change it weekly...") All the changes are hard on our students, and on the other departments who are trying to figure out how to use our classes in their curricula. I think our design principles are sound. One can't really tell whether an undergrad curriculum works without giving it a 4-5 year chance, so that we can see the graduates emerge. This Fall will be four years since the semester change – it's a reasonable time to update. These changes may make it easier to adjust upper-level courses' pre-requisites to make them more accessible to non-majors, e.g., if an upper level course needs C, it can make CS2030 a pre-req, without requiring students to take all the compilers content first.

We're not asking for a vote on these anytime soon! We need to work out the many ramifications of these changes on our classes and others (e.g., CompEng requires CS2130). We are further planning to change CS1322, which has reached an unacceptably high failure rate. The soonest we could hold a faculty vote on all of the desired changes would probably be Fall.

We are asking for comments now. Do you see any problems that we may have not noticed in these changes? For example, how do these changes impact your upper-division courses? Is it acceptable to you that our undergraduates will be getting their automata in CS1050 (a little) and CS3130 (mostly), and with only algorithms having its own course?

Below are a collection of documents further explaining these changes.

Please address comments to Mark ( or other members of the UG Committee, or post them below. (Note: This is a locked Swiki. You won't be able to create new pages nor edit this page.)