Computational Thinking¶

Think before you code. This course is the bridge between a real-world problem and a working program — no language yet, no syntax, just clear reasoning.
Who this is for¶
- Students about to take their first programming course — zero prior experience assumed.
- Career switchers trying to build the mental model programmers use.
- Anyone who wants to solve problems more systematically, even outside computing.
No gatekeeping. Technical terms appear with plain-language definitions and everyday analogies.
Course objective¶
Build a strong foundation in computational thinking so you can understand how to approach problems logically, model solutions, and prepare to program in languages like C# or Python.
Learning outcomes¶
By the end of this course you will be able to:
- Treat problem solving as a structured, repeatable process.
- Break a real-world problem into manageable parts (decomposition).
- Design step-by-step solutions (algorithms).
- Represent those solutions with flowcharts and pseudocode.
- Explain what programming is and how it relates to problem solving.
- Recognize the role of programming languages, compilers, and computer hardware.
- Differentiate high-level vs low-level languages, and major programming paradigms.
Modules¶
- 01 · Problem Solving — the four Computational Thinking pillars, the 7-step process, worked end-to-end example.
- 02 · Flowcharts — shape grammar, 6 worked examples with live-rendered diagrams (sum, even/odd, largest-of-three, loops, login, average).
- 03 · Pseudocode — conventions, keywords, side-by-side examples with their flowcharts, functions.
- 04 · Programming Foundations — what programming is, languages, computer components, compilers, paradigms.
Where this fits in the curriculum¶
Suggested progression:
- Computational Thinking (this course)
- CS (C#) — implement solutions in a real language.
- Python — second language, broader toolkit.