Mobile Application Programming
Programming is a key skill for students in software engineering and beyond. Students in this class use MIT’s App Inventor to make exciting, socially useful, and entertaining apps for Android smartphones.
Unity for Creators
This course will introduce students to Unity, the most popular tool for creating 2D and 3D games, apps and experiences. You will be learning to code in C# to define properties and behaviors of actors within their digital worlds. As you iterate with prototypes, tackle programming challenges,
Wearable Computing and the Internet of Things
Students will learn about coding and electronics through the medium of fashion, wearable computing technology and home automation. Using the Design Thinking process, along with coding and electronics, they will investigate problems in the school community and develop ideas and solutions to solve those problems.
Robotics
In this course, students will learn how to design, build, and program robots. We begin using BBC MicroBits, a pocket-sized computer that introduces how software and hardware work together, and then move on to Arduinos, an open-source electronics platform. Both Microbits and Arduinos boards are able to read inputs - light on a sensor, a finger on a button, or a Twitter message - and turn it into an output - activating a motor, turning on an LED, publishing something online. Grit and creativity are essential as students scaffold their way through increasingly difficult design tasks.
Simulations and Game Design
Students will develop their problem solving skills as they code their own 2-D and 3-D worlds simulating predator and prey relationships, viral transmission, forest fires, and more.
Interactive Visual and Sonic Art
Students will explore how computer programming and electronics can be used for artistic expression and music. They will analyse existing examples of interactive artwork and the tools and techniques of contemporary artists and musicians. In addition to programming and electronics, students will also learn how to use digital fabrication tools such as the 3-D printers and the laser cutter to make their interactive art pieces and installations.
3D Modeling
This course teaches how to design and create objects with 3D printers and laser cutters. From architecture to product creation, students will be exposed to the infinite possibilities of these new technologies. This course teaches both the art and engineering skills necessary. This class is an excellent option for anyone who ever wanted to prototype an invention, create a work of art, or customize a product.
Coding the Web
The course focuses on the techniques of planning, designing, implementing and managing a website. Students will learn HTML, CSS, and JavaScript, the languages of the web. Using these tools, they will make interactive sites that showcase their own interests and creativity. This is a course designed for both novice and experienced programmers.
AP Computer Science Principles
This course offers a multidisciplinary approach to teaching the underlying principles of computation. Using primarily the Python language, the course will introduce students to the creative aspects of programming, abstractions, algorithms, large data sets, the Internet, cybersecurity concerns, and computing impacts.
AP Computer Science A (JAVA)
The equivalent of an introductory college-level programming class. Students will learn the fundamentals of computer science using the Java programming language. It begins by focusing on programming basics and then on writing full classes and the logic and structures around building them. In addition to preparing students for the AP exam, this course also prepares students to become Oracle Certified Associates, Java SE 7 Programmers.
IB Computer Science SL/HL I & II
IB Computer Science is a rigorous and practical problem-solving course. This class teaches an understanding of the fundamental concepts of computational thinking as well as knowledge of how computers and other digital devices operate. During the course the student will develop computational solutions.