Given technology’s important role in our lives, it is essential for students to develop computational literacy. Computational thinking involves solving a range of problems like a computer scientist, identifying possible solutions to a particular problem, and selecting elegant strategies in solving them. Computational thinking means breaking down large tasks into smaller, more manageable problems, implementing algorithms, communicating patterns through symbolic language, and analyzing data and solutions. We believe these skills will be useful to all of our students, thus our Computational Thinking program allows all students to access and embrace opportunities in modern computation. While some classes naturally incorporate elements of computer science and computational thinking, it is also important for students to have exposure to sustained and intentional practice in this area throughout their course and their secondary education.
In the middle school, students take computational thinking in 6th grade and 8th grade. We recognize that each student will begin this course of study with a range of prior knowledge, so the class activities are organized into a series of experiments and inquiry-based tasks that allow all students to progress as they master key understandings. Students will use tools like Scratch and Lego Mindstorms (block-based programming) to develop the core concepts and skills of computer science. Advancing from block-based to text-based programming to discovery of a variety of programming languages, students gain a strong understanding of fundamental syntax structures and learn how to transfer ideas from one language to another.
All upper school students take at least two trimesters of a Computational Thinking or related elective such as Robotics, Software Development or Artificial Intelligence and Machine Learning. Students develop a foundational understanding of circuits and apply that knowledge to robots and microcontrollers as they develop logical reasoning and start to write code. As students get more comfortable with core principles of coding, they expand their understanding of text-based coding languages. Students continue to develop their understanding of logic structures and syntax while continuing to problem solve, troubleshoot, and connect computational thinking to their creative interests. Our introductory courses are designed for beginners as we seek for all students to have a broad and foundational exposure to computational thinking.
- If my child transfers to SAAS after 6th grade and hasn’t taken any computer science classes, how will they succeed in a course where their peers have all had exposure to the content in previous classes?
- If my child has a lot of experience with programming, can my child opt out of the computational thinking requirement?
- What is computational thinking?
- Is there robotics at SAAS?
While Computational Thinking 8 will build upon the concepts explored in Computational Thinking 6, teachers design the curricula to be accessible to all learners, both beginners and students who are more experienced in the subject matter. Because our goal is not to have students master a programming language, the teachers can adjust elements of each unit so that every student can be successful and progress in their ability to think and problem solve like a computer scientist.
No. In the middle school, we believe it is essential for all students to develop their computational thinking, regardless of their proficiency with computers or programming. The teachers will be able to adjust elements of the curricula to build upon students’ prior knowledge and experience. In high school, students will have more course options and must fulfill the graduation requirement with one of these courses. You can reach out to your child’s advisor or an academic dean to discuss your child’s particular needs.
Computational thinking involves solving problems like a computer scientist, identifying different possible solutions to a particular problem and selecting elegant, effective, and efficient strategies. Computational thinking is about breaking down large tasks into smaller, more manageable problems, implementing algorithms, communicating patterns through symbolic language, and analyzing data and solutions.