The Computer Science Department at Ellis is committed to providing our students with a challenging and fun learning experience in an equitable environment. We strive to educate our students to be knowledgeable, flexible, creative problem solvers who will contribute to understanding and collaboration in a diverse society through the responsible use of technology.
The goals of the Upper School Computer Science Department are:
To develop students' understanding of technology by teaching programming, communication, and problem-solving skills.
To provide productivity tools and a technology-friendly environment for students and faculty to learn, experiment, create, and collaborate.
To assist students in the use of technology for effective learning in all subjects.
To foster the development of media literacy and computer ethics in the Ellis community.
This course is designed to introduce students to the breadth of the field of computer science. Students will learn foundational concepts of computer science through the exploration of computer hardware, software, and programming language. The first and second trimester will focus on problem solving and computational thinking as students write computer programs in the Python programming language. The final trimester will see further application of these skills as students program a pre-built robot and then build and program their own robot using Arduino microcontrollers. Throughout this course, students work both individually and collaboratively on presentations and projects. There are no prerequisites for this course.
In Computer Science II, students explore object-oriented programming through the Java programming language. Topics covered in the course will build heavily on skills learned in Introduction to Computer Science. Students should be adept at logical reasoning and feel comfortable with the topics from the introductory course if they plan to continue. Topics will include arrays, custom objects, inheritance, file IO, and graphics. It is recommended that students have a good understanding of math concepts before taking this course, but is not required.
This course is designed to introduce students to the central ideas of computer science, to instill ideas and practices of computational thinking, and to have students engage in activities that show how computing changes the world. This course is rigorous in nature, but rich in opportunities to apply creative processes to computational artifacts. The curriculum will focus on seven big ideas as designated by the College Board: Creativity, Abstraction, Data and Information, Algorithms, Programming, the Internet, and Global Impact. Students in this course are required to take the AP Computer Science Principles exam in May.
Prerequisites: Introduction to Computer Science and Computer Science II.