Introduction

This course introduces high school students to computational problem-solving through algorithmic thinking, flowchart design, and programming in Python. Using Flowgorithm as a visual programming bridge, students first internalize the logic of algorithms before translating them into textual code.

Computational Thinking (CT)—a mental model for solving problems using computer science concepts—is at the core of this course. Students will develop the mindset and skills to model problems, abstract patterns, automate solutions, and analyze outcomes.

Read more Syllabus overview screenshot

Justification

Computational Thinking has become essential for problem-solving across disciplines in a rapidly evolving digital world. Grounded in Jeannette Wing’s four pillars—decomposition, pattern recognition, abstraction, and algorithm design—this course empowers students to become creators of technology, not just consumers.

The course uses Flowgorithm to reinforce these concepts visually, then shifts to Python for practical, industry-relevant programming experience.

Learning Outcomes

Teaching Methodology

Course Schedule (20 Hours)

Session

Materials & Resources

Bibliography

  1. Wing, J. M. (2006). Computational Thinking. Communications of the ACM, 49(3), 33–35. DOI
  2. Grover, S., & Pea, R. (2013). Computational Thinking in K–12: A Review of the State of the Field. Educational Researcher, 42(1), 38–43. DOI
  3. Cook, D. (2015). Flowgorithm: Visual Programming Language. Sacramento State University. Website
  4. Severance, C. (2016). Python for Everybody: Exploring Data Using Python 3. Website
  5. Zelle, J. (2010). Python Programming: An Introduction to Computer Science. Franklin, Beedle & Associates.
  6. Cuny, J., Snyder, L., & Wing, J. M. (2010). Demystifying Computational Thinking for Non-Computer Scientists.
  7. Brennan, K., & Resnick, M. (2012). New frameworks for studying and assessing the development of CT. Proceedings of AERA 2012.

Downloads

Session PDFs will appear under each session card/table row. Place your files under docs/session-XX/ named presentation.pdf, exercises.pdf.