Computer Science
Member of the Division of Science
Chair(s):
Samuel Rebelsky
Faculty:
Charlie Curtsinger
Titus Klinge
Peter-Michael Osera
John David Stone
Henry Walker
Jerod Weinman
People use computers because they can provide services and help in the solving of problems. Thus, many courses and much research throughout the College utilize various aspects of computing.
The discipline of computer science includes all aspects of the effective design and use of computer systems. Core areas within the undergraduate curriculum include multiple views of problem-solving, hardware design, operating systems, data organization (structure) and processing (algorithms), software design, programming languages, and the theory of computation. Some topics, such as networks and security, explore elements of computer systems in more detail, while other areas, such as artificial intelligence, computational linguistics, human-computer interactions, and computer vision, integrate computer science with interdisciplinary studies.
Formal coursework is concentrated within the Department of Computer Science. Introductory courses emphasize multiple views of problem-solving, each with a different supporting computer programming language. The curriculum emphasizes basic concepts and fundamental techniques and makes extensive use of MathLAN, the local-area network we share with the Department of Mathematics and Statistics, which includes about 170 workstations and eight servers. Our outstanding facilities include several computer-equipped classrooms, an open lab, and convenient study and tutoring areas.
The computer science major prepares students for careers in computer science, in the use of computing in other disciplines, in teaching, or in other professions. The curriculum is strongly influenced by recommendations of such national/international professional bodies as the Association for Computer Machinery (ACM), the Computer Society of the Institute of Electrical and Electronics Engineers (IEEE-CS), and the Liberal Arts Computer Science Consortium. Indeed, the 2013 curricular guidelines from ACM/IEEE-CS identify each course in Grinnell’s introductory sequence (CSC 151, CSC 161, and CSC 207) as a Course Exemplar and the overall computer science curriculum as a Curricular Exemplar. In addition, students regularly supplement this formal coursework with independent projects, internships, and student-faculty research. Students often work with faculty throughout the College on a variety of special projects that involve computing.