The computer science major trains you in the theory and design of computing systems and software, as well as in important application areas. You course work balances the need to keep up-to-date with the latest technology with the need to acquire a conceptual foundation that will last throughout your career.

What the study of this major is like:

In this major you study many abstract concepts, and examine fundamental notions such as mathematical proof, knowledge, computability, and randomness in a new light. But computer science, of course, also focuses on the computer.

Because using a computer to communicate requires precision, you must learn to use precise programming languages. During your core training, you’ll be asked to think about many questions: Why are programming languages designed the way they are? How do you translate a real-world problem into a carefully worded set of instructions-a program-that a computer can execute (or follow) to produce the solution? What goes on inside a computer when a program is being executed? How is the computer constructed to enable it to function? What impact do computers and programs have on a variety of fields?

Computer science programs vary in the amount of core training they provide. A solid foundation will help you solve problems in application areas. Some programs focus on skills that are immediately applicable, while others emphasize abstract, conceptual ideas to ensure that what you learn will be able to help you to adapt to rapid changes in technology. In addition, some programs assume that students have pretty sophisticated backgrounds in math and logic. In other programs, students aren’t necessarily expected to have such in-depth, high-level preparation.

Designing and analyzing computer programs requires a mathematic creatively that you may find challenging. Furthermore, you will encounter a multitude of programming environments and languages and may struggle to master them. Projects and assignment typically require long hours of work. On the whole the computer science major is intellectually demanding, but the field is young and full of possibilities. Once you acquire a mathematical and logical foundation, you can quickly reach the point where you are conceiving and evaluating ideas on your own. If you are attracted to abstract thinking as well as to practicality, computer science can offer you the best of both worlds.

Job prospects are excellent, especially for computer system designers, database administrators, and computer security specialists, which are projected to be among the nation’s fastest growing occupations for the foreseeable future. There are minor fluctuation in the market and small ups and downs in the salaries for entry-level jobs. But the shortage of students choosing this field will increase demand for those that do.