Computer Science Advising Guide

The Mathematics, Computer Science and Statistics Department offers majors in mathematics, mathematics education, computer science, and statistics. This document is designed as a resource for those navigating through the requirements of the computer science major and minor.

Contents

Computer Science

Computer science studies processes that manipulate symbolic information, the procedures by which those processes are carried out, the means by which the processes and procedures are designed, and related phenomena, such as the social impact of information processing and the use of information processing as a model for cognition.

Computer scientists are constantly constructing and using abstractions - generalizations that capture the essence of entire families of specific phenomena. In this regard, computer scientists resemble mathematicians. However, computer science differs in that abstraction is used as a technique for designing concrete artifacts. In short, computer science is a discipline of concrete abstractions.

Computer scientists do many things. Outsiders frequently think that computer scientists write programs. They do, but they also:

  • prove that programs perform correctly
  • compare the efficiency of alternative strategies for solving a problem
  • prove that certain problems are intrinsically hard, i.e. have no efficient strategy for their solution
  • prove that other problems can't be solved at all
  • design the organizational structure of computers
  • devise ways to efficiently allocate and schedule computational resources
  • develop design methodologies and notations that allow efficient and correct systems to be cost-effectively developed
  • study how computer systems are actually used by humans and organizations
  • apply computational models to other areas, such as cognition

Gustavus computer science graduates are prepared for both postgraduate study and employment, and every year some choose each of these options. Among those entering the workforce, the three largest categories of employers are information systems consulting firms, insurance companies, and software developers.

The Major

This section lists the requirements of the CS major, provides a graphical illustration of the prerequisite structure of the major CS courses, lists sample student plans, and describes the senior oral which is an optional component of the major. Qualified majors may additionally participate in the honors program, which is described in the next section.