← ClaudeAtlas

computational-thinkinglisted

Computational thinking as a problem-solving discipline independent of programming languages. Covers the four pillars (decomposition, pattern recognition, abstraction, algorithm design), computational problem-solving methodology (understand, decompose, generalize, formalize, verify), abstraction levels (from hardware through user interface), modeling and simulation, automata and formal languages (DFA, NFA, regular expressions, context-free grammars, Turing machines), computational complexity classes (P, NP, NP-complete, undecidable), and constructionist pedagogy (learning by building, Logo, Scratch, physical computing). Use when approaching unfamiliar problems, teaching problem-solving strategies, analyzing problem complexity, or bridging between domain knowledge and computational solutions.
Tibsfox/gsd-skill-creator · ★ 61 · AI & Automation · score 80
Install: claude install-skill Tibsfox/gsd-skill-creator
# Computational Thinking Computational thinking is not programming. Programming is a skill; computational thinking is a way of approaching problems that predates computers and transcends any particular language or machine. Jeannette Wing defined it in 2006 as "the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent." This skill catalogs the core techniques of computational thinking with emphasis on their application as general problem-solving tools. **Agent affinity:** papert (constructionist pedagogy, Logo, learning by building), lovelace (computational vision, seeing beyond calculation) **Concept IDs:** code-sequential-thinking, code-decomposition, code-pattern-recognition, code-abstraction ## Part 1 -- The Four Pillars ### Pillar 1 -- Decomposition **Definition:** Breaking a complex problem into smaller, manageable sub-problems. **Why it matters.** A problem that is overwhelming as a whole becomes tractable when divided. Each sub-problem can be understood, solved, and tested independently. The solutions compose into a solution for the whole. **The decomposition question.** Given a problem P, ask: "What are the independent pieces?" If piece A does not depend on piece B, they can be solved in any order (or in parallel). If A depends on B, solve B first. **Worked example: Building a weather application.** The monolithic problem ("