Transition advice for current and new CS majors

The Department of Computer Science has proposed, and the College has approved, some significant changes in the curriculum, which will go into effect in fall 2008. Computer science majors in the classes of 2009 and 2010 may need to plan their courses and interpret the prerequisites with some care. This document provides general guidance in this process. We encourage students to talk with the Department faculty as questions or special circumstances arise.

Advice regarding course sequencing

One of the changes is that the course on object-oriented programming and data structures, which is usually the second computer science course that a prospective major takes, and the course on low-level procedural programming, which is usually the third such course, will trade places in the new curriculum. After CSC 151 (which will now be titled "Functional problem solving"), prospective majors will take a new course, CSC 161, "Imperative problem solving," which will deal with low-level programming in C. After than, they will take another new course, CSC 207, "Algorithms and object-oriented design," which will deal with object-oriented programming at a somewhat higher level than the current CSC 152 course.

Allowing for this swap, CSC 151, 152, and 201 in the current curriculum match reasonably well with the components of the new CSC 151/161/207 sequence. The following recommendations consider students at each stage of these sequences.

Students beginning with CSC 151

New students will take CSC 151. Only the title of this course has changed.

Students who have completed CSC 151 and LIN 114, "Introduction to general linguistics," also are eligible to take CSC 205, "Computational linguistics."

Students who have completed CSC 151, but not CSC 152

Current students who have completed only CSC 151 will move into the new sequence, taking CSC 161 as their next course; CSC 152 will not be offered again.

Students who have completed CSC 152, but not CSC 201

Current students who have taken CSC 152 are encouraged to take the some of the following courses.

Fall 2008:
Spring 2009:

Students who have completed CSC 201

Current students who have completed the CSC 151/152/201 sequence have satisfied the prerequisites that are equivalent to CSC 151/161/207 in the new curriculum.

Courses fulfilling major requirements for current CS majors

We have also made several changes in the range and structure of the upper-division courses in computer science:

The new major provides more options than the current major, and any course that counts for the current major will count for the new major as well. The following notes explain how certain courses will work during the transition to the new major.

Adjustments in course prerequisites for 2008-2009

The following table clarifies prerequisites for computer science courses for the transition year 2008-2009. Courses are ordered by the semester they are offered. Prerequisites marked with an asterisk (*) follow the structure of the old curriculum.

Course When offered Normal (new) prerequisite Prerequisite for 2008-2009
151, "Functional problem solving" Fall & Spring None (no change)
161, "Imperative problem solving" Fall & Spring 151 (no change)
205, "Computational linguistics" Fall 151 or 153, and LIN 114 (no change)
213, "Operating systems and parallel algorithms" Fall 161 201*
301, "Analysis of algorithms" Fall 207 and MAT 218 152 or 153, and MAT 218*
325, "Databases and Web application design" Fall 207 152 or 153
105, "The Digital Age" Spring None (no change)
153, "Computer science fundamentals" Spring consult CS faculty (no change)
201, "Data representation, memory management, and formal methods" Spring last offering 152
207, "Algorithms and object-oriented design" Spring 161 (no change)
295 "Computer graphics" Spring special topic 161 or 201, and MAT 131
302 "Programming language concepts" Spring 207 301*
364 "Computer networks" Spring 211 or 213 201 or 211 or 213
341 "Automata, formal languages, and computational complexity" Spring 153 or 161, and MAT 218 152 or 153 or 161, and MAT 218
Course When offered Normal (new) prerequisite Prerequisite for 2008-2009

This document is available on the World Wide Web as

http://www.cs.grinnell.edu/transition-advice.xhtml