AP Computer Science Principles
AP Computer Science Principles introduces students to the essential ideas of computer science with a focus on how computing can impact the world. Along with the fundamentals of computing, students will learn to analyze data, information, or knowledge represented for computational use; create technology that has a practical impact; and gain a broader understanding of how computer science impacts people and society.
AP Computer Science A
AP Computer Science A is equivalent to a first-semester, college- level course in computer science. The course introduces students to computer science with fundamental topics that include problem solving, design strategies and methodologies, organization of data (data structures), approaches to processing data (algorithms), analysis of potential solutions, and the ethical and social implications of computing. The course emphasizes both object-oriented and imperative problem solving and design using Java language. These techniques represent proven approaches for developing solutions that can scale up from small, simple problems to large, complex problems. Prerequisite: AP Computer Science Principles and/or teacher recommendation.
Advanced Topics in Data Structures & Algorithms
This college level course is an introduction to the fundamental data structures for information processing, including lists, stacks, queues, trees, and graphs. The course explores the implementation of these data structures (both array-based and linked representations) and examines classic algorithms that use these structures for tasks such as sorting, searching, and text compression. We start with a Python Crash Course as it is the language used in this class. One Semester. Offered alternate years. Prerequisite: AP Computer Science A and teacher recommendation.
Advanced Topics in AI & Machine Learning
This course provides a broad introduction to Artificial Intelligence and Machine Learning. Machine learning uses interdisciplinary techniques such as statistics, linear algebra, optimization, and computer science in getting computers to make predictions or decisions without being explicitly programmed. We will learn the concepts behind several machine learning algorithms and gain practical experience applying them. The course will consist of a combination of lectures, assignments, and a final project. One Semester. Offered alternate years. Prerequisite: AP Computer Science A and teacher recommendation.
Advanced Topics in Web App Development I
This is a college level course in computer science designed to teach students front end web development. Students will create a portfolio of projects while learning HTML, CSS, JavaScript, DOM scripting, use of APIs, and JavaScript frameworks for client-side web development. Students will begin to compete in hackathons One Semester. Offered alternate years. Prerequisite: AP Computer Science A and teacher recommendation.
Advanced Topics in Web App Development II
This is a college level course in computer science designed to teach students the server-side of full-stack web application development using a common industry JavaScript framework. Students will learn database scripting, how to create REST APIs. Students will compete in hackathons. One Semester. Offered alternate years. Prerequisite: AP Computer Science A and teacher recommendation.
Competitive Robotics Honors
The Robotics Programming and Design course introduces students to the engineering process as they explore current and future applications of robotic technology. In a collaborative team setting, students learn to design and build with the VEX® Robotics Design System to compete in exciting, real-world challenges. Students gain experience programming with RobotC. Prerequisite: teacher recommendation & some programming or robotics background preferred
Augmented Reality Filter Design
Art and Design takes place increasingly in the digital realm. In this class, students will learn a design tool used by professional influencers that will make their Instagram posts pop. Students will learn to use the Spark AR studio software to import and use sound files, images, and 3D objects to create Augmented Reality video filters. Spark AR’s drag and drop visual scripting language is so easy to use that one might forget this is a computer science class. Students will publish their filters to Instagram for use in their own feeds or to share with other creators. One Semester
Hacking Physical Objects
In this class students will learn to modify and enhance their physical environment using Arduinos and/or Raspberry Pi’s. Students will make projects such as an automated pet feeder, an intruder alarm, or a retro gaming console. Students will learn the basics of circuitry, coding, and tools such as 3D printers, laser cutters, and power tools. Students will learn to develop their creations through an iterative design process. One Semester