Computer science connects theory and practice, combining mathematics, programming and engineering.
Students taking computer science classes are encouraged to think in both abstract and concrete terms. As our students quickly discover, the practical side of computing is seen everywhere—from video games, phone apps and wireless Internet to satellite control systems, manufacturing processes and complex system simulations.
All aspects of modern computer science are covered, along with underlying theory. The focus is on knowledge and skills that transcend specific and ever-changing technologies.
Blair’s computer science courses complement other disciplines taught at the School. Faculty encourage students to develop technical aptitudes that will serve them well as they transition into college. Emphasis is placed on project-based learning, with hands-on project work dominating class time. Among the available computer science electives are software design and robotics.
Students taking the multi-level programming course use the Python programming language to complete projects that emphasize all aspects of computational thinking. In addition to developing fundamental skills, students develop new areas of interest and a deeper understanding of the real-world connections of their work.
The advanced computer science course closely follows the Advanced Placement curriculum, exploring the type of material and concepts a student might expect in a first-year college course. Students gain a working familiarity with the Java programming language and study concepts which apply more generally to all programming languages.
Robotics integrates programming concepts with physical mechanisms such as motors and sensors. Students study both the hardware and software aspects of robotics and build working robots that perform complex tasks. Software design brings programming concepts to students in very real and practical ways as they create working real-world applications.