Dec 15, 2017
Richard M. Salter, Professor of Computer Science; Department Chair
Albert Borroni, Lecturer in Computer Science
John Donaldson, Professor of Computer Science
Robert Frederick Geitz, Associate Professor of Computer Science
Benjamin A. Kuperman, Assistant Professor of Computer Science
Alexa Sharp, Assistant Professor of Computer Science
Tom Wexler, Assistant Professor of Computer Science
Computer Science encompasses both the theoretical and the practical aspects of the study of computers and algorithmic processes. Students majoring in computer science at Oberlin are prepared both for further graduate studies in the discipline and also for careers in the industries and businesses that actively recruit computer scientists with a liberal arts background. Computer Science at Oberlin is taught within the context of a liberal arts degree, with emphasis on the lasting principles of the discipline rather than on specific training in particular tools and techniques. The CS Department stresses the fundamentals of computer science while maintaining a highly current and relevant curriculum utilizing state-of-the-art methodologies and tools. More detailed information about the Computer Science major and minor can be found below. Information about the Cognitive Sciences Concentration, which also involves Computer Science courses, can be found in that section of this catalog.
Students who have received a score of 4 or 5 on the Advanced Placement AB examination in Computer Science or a 6 or 7 on the International Baccalaureate Higher Level examination are normally awarded eight hours of credit equivalent to Computer Science 150 and 151. Students who have received a score of 3 on the AB examination, a score of 3 or higher on the A examination, or a 5 on the International Baccalaureate Higher Level Examination in Computer Science are normally awarded four hours of credit equivalent to Computer Science 150 and are encouraged to enroll in Computer Science 151 in their first semester. In some cases the advanced placement examination booklet may be reviewed by the Computer Science faculty before credit is granted. Other students with exceptional backgrounds who believe that they have sufficient preparation to elect courses for which Computer Science 150 or 151 are prerequisite should consult with the Chair of the Computer Science Department to discuss appropriate placement.
Entry-Level Course Sequence Suggestions
Students who wish to begin their study of computer science will normally elect Computer Science 150, the first course counted toward the major or minor in computer science. While CSCI 150 is self-contained, it moves quickly through issues that students with some programming experience will have seen before. Students with no prior experience may wish to take CSCI 140 before starting the 150-151 sequence. Since the requirements for the major in computer science are substantial, students planning to major in the discipline are encouraged to begin their coursework in the first year at Oberlin, taking either Computer Science 140 and 150 or 150 and 151 during that year along with Mathematics 133 and 220. Students with significant prior programming experience should consult with a faculty member to determine an appropriate introductory course.
Students who are interested in developing significant computer skills but are not interested in computer science per se are advised to enroll in one of our 100-level courses in general computing.
Computer Science courses that are applicable to the major are listed below in the section “Courses in Computer Science.” The major consists of 10 such courses, including Computer Science 210, 275, 280, and 383 and at least three other computer science courses numbered 300 or above. Students may substitute one of Mathematics 331, Math 345, or Math 348 for one of the elective 300-level computer science courses. Private Reading courses for fewer than three hours do not normally count toward the major. Each Private Reading course that is meant to count toward the major is subject to prior approval by the CS faculty. In addition, a student is required to complete successfully Mathematics 232, 220, and one additional course at the level of 132 or higher (other than one used as a substitute for a 300-level computer science course). More information about the Computer Science major can be found on the CS web server (www.cs.oberlin.edu).
Courses in which a student has earned a letter grade lower than a C-/CR or P cannot be used to fulfill the requirements of the major.
The Computer Science Department offers a minor in Computer Science. The minor consists of five major-level computer science courses, listed in the section “Couses in Computer Science”, or four such computer science courses plus one of Mathematics 331,345 or 348. One of the courses must be a 300-level computer science course.
In the spring of the junior year, students may apply for admission to the
Computer Science Honors Program by submitting a proposal for a project they will undertake in
their final year. Admission to the program will be based on performance in classes as well as the
quality and feasibility of the proposal. Those admitted to the program will normally elect three or
four credit hours of independent work (Computer Science 401) each semester under the direction
of a faculty supervisor. Both theoretical investigations and actual implementations are
appropriate as Honors projects.
Honors students take a comprehensive examination, with both written and oral parts, at the
end of the senior year. This examination is normally administered by a scholar from outside the
College and is designed to test the candidate’s mastery of undergraduate computer science.
Some members of the computer science faculty will be available during Winter
Term to sponsor student projects. Winter Term is an ideal time to learn new computer languages,
to work on major programming projects, or to approach areas of computer science that are not
covered by regular courses. Students are encouraged to begin thinking about Winter Term
projects early in the fall semester.
In addition to using the computer laboratories maintained by the College Center for Information Technology (CIT), the Computer Science Department maintains two computer-teaching labs of its own in the King Building exclusively for the use of CS students. Both of these labs feature late model Intel based computers running both Linux and Windows operating systems. Altogether there are 44 workstations in two labs, 24 in one lab and 20 in the other. Students receive accounts on the CS department’s Sun Fire 280R Unix server and on the CS department’s Windows domain servers thereby affording them complete access to all College and CS networking services.
Courses in General Computing
Courses in Computer Science
First Year Seminar Program