Computer Science, Minor


Department of Computer Science

Todd Wilson, Chair
Science II Building, Room C255

Degrees and Programs Offered

BS in Computer Science, B.S.
MN in Computer Science, Minor
MS in Computer Science, M.S.

Courses Offered

Computer science is applied reasoning using both art and science: It requires the ability to communicate ideas through a combination of language and powerful technology. It is concerned with the interaction of humans and computers, as well as the application of computers to a myriad of specialized problems.

Program Description

The goal of the Department of Computer Science is to offer programs to a diverse audience: (1) students interested primarily in computing, (2) students interested primarily in applying computing to some other field of study, and (3) students who wish to include computing as part of their general education.


Students and faculty have access to a networked environment of UNIX workstations (Sun Microsystems and Linux systems) and microcomputer laboratories of PCs. These systems are connected to campus and international networks.


Computer Science Minor Requirements

The Computer Science Minor requires 20 units of computer science courses consisting of CSCI 40, CSCI 41, and 12 units from CSCI 1, 60, or upper-division courses. At least 6 of the 20 units must be upper division. No CR/NC courses will be accepted toward the Minor in Computer Science.

Suggested minor sequences (after completion of CSCI 40, 41):

Artificial Intelligence: CSCI 60, 112, 117, 164, 166
Computer Architecture: CSCI 112, 113, 176, 177
Computer Graphics: CSCI 112, 172, 173
Computer Languages: CSCI 60, 112, 115, 117, 134
Database Emphasis: CSCI 60, 115, 124, 126, 144
Scientific Computation: CSCI 60, 112, 154*, 172*
Secondary Teaching: CSCI 60, 112, 113, 115, 117
Software Engineering: CSCI 60, 112, 115, 150, 152
System Software: CSCI 112, 113, 144, (146 or 148)
Theory of Computation: CSCI 60, 119, 174, 186, 188

* CSCI 154 and 172 have a mathematics prerequisite. Note that these are only suggested combinations. While attention must be given to prerequisites, many combinations are available to interested students.


The faculty comes from a variety of areas including computer systems and architecture, theoretical computer science, programming languages, software engineering, computer graphics, distributed systems and parallel processing, neural networks, image processing, computer vision, pattern recognition, wireless communication and mobile computing, robot swarm communication, evolutionary computation, domain-specific languages, and real-time and embedded systems. They have in common a desire to provide a program that will give the student a broad range of experience in computer science as well as the depth of education that will be needed in the student's later career, whether professional or academic.

For faculty phone numbers and e-mail, see the campus directory.

For more on the faculty, see the faculty pages.
The faculty pages are updated by the department or program.