Computational Thinking introduces students to problem-solving through computational approaches, equipping them with a foundational mode of reasoning applicable across disciplines. Students learn to formulate problems, decompose them into manageable steps, identify patterns, and design algorithmic solutions. Using code as a tool, they translate these steps into executable programs to test and refine their ideas.
The course emphasizes core concepts such as abstraction, algorithmic reasoning, and data interpretation. Through hands-on exercises, students apply computational methods to problems drawn from scientific, social, and cultural contexts, working with datasets to analyze patterns and communicate insights. Key programming constructs—including conditionals, loops, and functions—are introduced as ways to express logical reasoning.
No prior programming experience is required. By the end of the course, students will be able to move from problem formulation to implementation and interpretation, using computational tools to explore questions and communicate solutions effectively.

