Division of Computer Science

Division of Computer Science offers 8 courses based on CSTA K-12 Computer Science Standards and Advanced Placement (AP), two of which are AP certified.

We inspire all learners to understand and appreciate the beauty of technology and engineering. The curriculum introduces technology as a powerful tool to reform natural and human society and equip learners with engineering competencies for applications and solutions.

We believe that learners learn technology and engineering deeper when they are:

  • Curious, intrigued to research why and how.
  • Open, ready to take other perspectives and approaches.
  • Active, eager to make sense of concepts and ideas.
  • Practical, willing to seek transfer of knowledge and methodology.
  • Resilient, persistent to solve a problem or prove a theorem.
  • Reflective, ready to learn from trials and experiments.

Introduction to Computer Science: Information system and society

In the information society, real space and virtual space interweave formed a new social environment, changing people's life, work and study, but also shaping a new way of survival and development .This module is a compulsory module for the survival and development of the information society, emphasizing the process and method of using information system to solve problems, and enhancing students' awareness of information security and social responsibility. Students will understand what is a network, how the Internet is built and connect the whole world together.

Python Programming

This is a course on learning a beginner programming language called Python. This class is about learning to program with text-based Python. Students will learn the basics of the Python language to do many different things. Students will be taken step by step though the process from newbie to advanced knowledge of the vast Python language. Students will be given a chance to create programs and games on what they have learned. Numerous quizzes, test, worksheets labs and small and large projects will allow student a chance to demonstrate their depth of knowledge. Students will learn from classroom demonstrations, web tutorials, videos and a textbook will be available. This course will consider different learning styles and ability levels. Student’s will be assessed in four ways by chapter quizzes, worksheets, lab and writing programs demonstrating concepts learned. Come join and learn a new language.

  • Focus on learning the basic code
  • Guided by the teacher with simple examples student should practice
  • Immerse students in code introduced step by step
  • Involve students in sample programs at the completion of each chapter
  • Apply previous learned code to current learning code
  • Allow for multiple right answers and failure as a necessary part of learning 

Web Development

This course covers how to write syntactically correct HTML5 and CSS3, and how to create interactive web experiences with JavaScript. Mastering this range of technologies will allow you to develop high quality web sites that, work seamlessly on mobile, tablet, and large screen browsers accessible. During the capstone you will develop a professional-quality web portfolio demonstrating your growth as a web developer and your knowledge of accessible web design. This will include your ability to design and implement a responsive site that utilizes tools to create a site that is accessible to a wide audience. 

Animation and Game Design

This course will teach students how to build 3D models and create animations using blender and video games using the game engine Unity. Students should have more than a basic background knowledge in another programming language such as Java, Python, or C# languages. The course will involve learning the code of the game engine Unity and 3D modelling skills and with the teacher and student demonstrations, making simple games, structured step-by-step coding lessons, and many projects that will test the students’ knowledge and progress. If time permits, students will learn about VR and AR and how to create games harnessing this technology. This class is strongly recommended for students interested in designing computer games, human-computer interaction, and how professionals create 3D animations using the industry-standard software package.


In this course, students will learn the basics of how a mobile robot works. The class will cover the building of various types of robots that all perform different tasks. Students will learn that robotics is at the core of how the STEAM (science, technology, engineering, art and math) concept works and together to create robots. This class takes a “hands on” approach with students needing to understand and use basic construction tools to build each robot. The course will cover skills in basic electronics, programming an Arduino microcontroller using the C++ language, the use of basic tools and construction. Students will learn to design, build, program, and control several robotic devices. A rigorous study and application of electrical concepts will include sources of energy, electrical safety, use and identification of basic electronic components, sensors and actuators. Engineering concepts will include mechanical design, prototype development, design testing, programming, and proper engineer documentation. Skills in layout and design will be taught during the building of each robot. The class will follow the design process with each robot built. Students will be assessed on their knowledge of computer programming, construction and completion of each challenge and the presentation, documenting the design process in an engineering notebook, knowledge of robotic parts and their use, and be able to troubleshoot problems and explain robotic malfunctions. “A successful student in this class will be able to build and program different kinds of robots.” If you like to build things from scratch, learn how to program, and want to know more about electronics this class is for you.


  • Focus on real-world issues and problems that robots can solve
  • Design various kinds of robots
  • Guided by the engineer design process
  • Apply basic electronics to the robot building process
  • Immerse students in hands-on inquiry and open-ended exploration
  • Involve students in productive teamwork when necessary
  • Apply math and science content students are learning
  • Involve students in a playful competition
  • Allow for multiple right answers and failure as a necessary part of learning

AP Computer Science A

AP Computer Science Java introduces students to computer science through programming. Fundamental topics in this course include the design of solutions to problems, the use of data structures to organize large sets of data, the development and implementation of algorithms to process data and discover new information, the analysis of potential solutions, and the ethical and social implications of computing systems. The course emphasizes object-oriented programming and design using the Java programming language. AP Computer Science Java is equivalent to a first-semester, college-level course in computer science. It is recommended that a student in the AP Computer Science Java course has successfully completed a first-year high school algebra course with a strong foundation of basic linear functions, the composition of functions, and problem-solving strategies that require multiple approaches and collaborative efforts. 

Applied AI

This course will use case studies to explore cutting-edge technologies such internet of things (IoT), artificial intelligence (AI) and big data to prepare students to have the tools needed to succeed in a fast and changing world. Students will become familiar with concepts and tools like machine learning, data science, natural language processing, image classification, image processing. Using a problem-based approach to understanding underlying computing concepts, we’ll travel through different digital “worlds” in which we engage with technology, exploring the problems posed within that world and the various tech solutions that exist.


  • Building your own AI chatbot;
  • Practicing Python for data science;
  • Building, training, and testing your own custom image classifiers;
  • Creating your own computer vision web application (e.g. beauty software) and deploying it to the Cloud.

AP Computer Science Principles

AP Computer Science Principles is the newest AP® course from the College Board. This course introduces students to the foundational concepts of computer science and explores the impact computing and technology have on our society. With a unique focus on creative problem solving and real-world applications, the course gives students the opportunity to explore several important topics of computing using their own ideas and creativity, use the power of computing to create artifacts of personal value, and develop an interest in computer science that will foster further endeavors in the field.