Tony deLaubenfels, Ross Sowell, Leon Tabak (chair)
The technology of computing has developed with unprecedented speed and offers the prospect of continued rapid advance. Few technologies have so quickly become so pervasive. Few have so profoundly changed science, business and industry, and government. Some understanding of the potential and limitations of computing is essential to anyone who wishes to understand modern society.
Design, experiment, and analysis: these skills make the computer scientist part engineer, part scientist, and part mathematician. The student of computer science learns how to effectively communicate with teammates and clients to define problems and their solutions. Students learn how to divide a complex problem into pieces of manageable size, to organize and relate the pieces of information that describe the problem, and to order the steps of the solution. The study of computer science serves to increase a student’s awareness of the necessity of constructing a hierarchy of abstractions as a means of building and understanding complex machines, the designer’s need to give balanced consideration to competing goals, e.g., minimizing cost while maximizing computational speed, and the relationship between software and hardware.