Main navigation
- Programs
- Subjects
- Universities
- Destinations
- Advice
Contrary to what the name suggests, Computer Science isn't primarily about studying computers themselves. While computers are impressive electronic machines, their true significance lies in their capabilities: modeling aerodynamic forces, managing global internet traffic, operating robotic systems, generating lifelike visuals, mastering complex games like chess, enabling language translation through machine learning, and countless other applications. These diverse functions have profoundly influenced nearly every aspect of contemporary society. The unifying thread isn't computer hardware or electronics, but rather how these tasks can be expressed as computational problems. This represents the core focus of Computer Science: understanding computation and exploring its possibilities and limitations.
When examining what computers can achieve, numerous subjects emerge, but two central themes persist. The first involves scale: determining how large a system we can design without losing control, or how extensive a task a computer can perform within practical constraints of time, memory, and precision. Much of Computer Science addresses these challenges in various forms. In programming languages and methodologies, for instance, we seek effective ways to describe computations and develop approaches that yield maintainable, high-performance software. Computational theory investigates the time and memory requirements of fundamental operations.
The second theme explores computation's boundaries. Initially envisioned as number-crunching devices, computers now serve vastly broader purposes. Computer Science examines how far computational principles can extend. Artificial intelligence research, for example, explores how to model human brain functions computationally. Human-computer interaction studies investigate how everyday activities might be enhanced through digital technology.
A Computer Science Specialist program builds upon the Major's foundation, offering comprehensive exposure to advanced topics. Video game development exemplifies this interdisciplinary nature, combining software engineering, computer graphics, AI, and interface design with elements from economics, psychology, music, and storytelling - demanding versatile expertise from practitioners in this field.