The School of Computer Science strives to promote a healthy and supportive community atmosphere for everyone. Our goal is to create, encourage, and support student's academic, social and professional opportunities in the computer sciences and to promote the breadth of the field and its diverse community.
Computer science plays a pivotal role in our economy and culture today. It is a foundational science in itself, and it also interacts with many other fields in the natural sciences, social sciences, and engineering. These interactions are changing these fields at a fundamental level, and have led to emerging subfields known as “Computational X” where X can be Chemistry, Physics, Biology, Psychology, Linguistics and so on. Our courses and wide range of programs provide opportunities for students interested in Computer Science for itself, and also for students in different fields who wish to learn about computing. Studying Computer Science gives one a unique set of analytical skills and tools that may be useful for careers in many fields. In particular, computational thinking will likely be crucial for understanding and shaping the world in the coming decades.
Studying Computer Science involves learning the theory and practice of how to design and implement computer and information systems. Students not only learn computer programming, but they also learn more abstract skills for representing, processing, managing, and analyzing information (data) and computation. A key component is the study of algorithms. An algorithm presents a detailed sequence of actions solving a particular task. A computer program is just the implementation of an algorithm in a specific programming language, which enables a computer to execute the algorithm.
Computer Science is split into many different areas. Examples are:
A degree in Computer Science offers excellent job prospects. As the use of computers and specialized software plays a crucial role in business, science, and our personal life, our graduates are in high demand. Computer scientists find jobs not only in software development, but aso in consulting, research, and project management. As computer scientists often develop the software for a specific application domain (e.g., business, engineering, medicine), they must be prepared and willing to get to know their application area. Similarly, those who are specialized in another area can always benefit from knowing more about computing. Even just a few courses in Computer Science can give one a large edge in approaching problems that involve computing, understanding how to solve them, and how to communicate with computing experts.
Where to begin? The School of Computer Science offers a wide range of programs within several degree programs: Bachelor of Science, Bachelor of Arts, Bachelor of Arts & Science, and Bachelor of Engineering. Most programs start with the same set of basic courses allowing students to decide on their exact program once they get a basic understanding of the discipline. All students planning to enter Computer Science programs are strongly encouraged to make an appointment with an academic adviser through the School's Undergraduate Student Affairs Office (see Undergraduate Advising).