Explore our diverse course collection, and jump to a specific class to explore course content, prerequisites, and more!

Intro to Java

Language: Java
Recommended Skills: None - no prior experience needed
At its core, the Intro to Java course is equivalent in content to a AP Computer Science A course. Students will be taught the fundamentals of coding through the Java programming language, covering topics from primitive data types to classes to basic data structures like arrays. This course provides a bottom-up curriculum, supplemented by classic coding problems and project-based learning; moreover, students will be able to ask questions about class content and projects throughout the course and will receive guidance to help them ease into their first coding ventures.

Advanced Data Structures

Language: Java
Recommended Skills: Taken an APCSA Course in high school or at a similar level
Advanced Data Structures (ADSs) serves as a next step to an APCSA or Intro to Java course. Seeking to enhance Java understanding beyond APCSA, this course will provide students with an in-depth overview of multiple ADSs like Hash Maps, Linked Lists, and Stacks. Students will be presented intuitive understandings of each ADS before diving into their code implementations and properties. They will future explore ADSs within the scope of real-world examples including coding-based projects and past tech interview questions, all the while having access to a mentorship program to cement their overall understanding.

Data Science

Language: Python
Recommended Skills: Comfort with higher level coding languages like Java, C#, C++, or Python (Python highly recommended, not required)
Python for Data Science will teach students to manipulate and visualize any datasets for the purposes of machine learning applications. This will be accomplished through introduction to the fundamental machine learning libraries used every day by industry professionals, including pandas, matplotlib, seaborn, and many more. In addition to the libraries themselves, students will attain a grasp of common ways to analyze these data sets with metrics from scikit-learn. Students will explore these concepts through hands-on projects and exercises with recommended datasets, and will be encouraged to ask mentors questions during the program about their research.

Game Development

Language: C#
Recommended Skills: Basic understanding of any coding language (e.g. knowing how if/else statements work)
Students will gain hands on experience with the Unity game engine which they will use to create a 2D platformer game. Along the way, they will learn about GameObjects, animations, collisions, and other prominent topics in game development. They will use C# to write scripts for various in-game features and mechanics and learn tips about player feedback and level design. By the end of the course, students will have created a complete 2d puzzle-platformer game with numerous levels which they have uniquely designed and will have attained a high level of familiarity with the core features of the Unity Game Engine to create future games on their own.