Curriculum Map
Programming by Design: Computing, Representation, and Reasoning
This map outlines the conceptual progression and instructional focus across all units of the course.
| Unit | Title | Core Concept | Primary Tools/Languages | Conceptual Milestone |
|---|---|---|---|---|
| 1 | The Story of Data | Programming is communication | Journals, diagrams | System abstraction + cultural framing |
| 2 | Programming by Design | Structure before state | Racket (Beginning Student Language) | Recursive + conditional logic via functions |
| 3 | Data Science and Representation | Data is constructed, not neutral | Pyret | Tabular logic + Boolean filtering |
| 4 | Systems and Control | Programs manage state + flow | Python + EarSketch | Loops, mutation, control structures |
| 5 | Interface and Communication | Code expresses ideas to people | HTML, CSS | Information design + user-centered framing |
| 6 | Code in the Wild | Programs interact with systems | Python (Jupyter), APIs | Real-world data inquiry + notebook fluency |
| 7 | Networks, Protocols, and Power | Infrastructure shapes access | Internet Simulators, CLI (optional) | Abstraction stack + metadata ethics |
| 8 | Capstone Projects | Build + defend what you know | Student-selected | Synthesis of reasoning, structure, and explanation |
Each unit builds fluency in reasoning and communication, with increasing openness and complexity. Earlier units emphasize structure and clarity. Later units introduce ambiguity, design, and interpretation.
The full arc prepares students for multiple outcomes:
- AP Computer Science A
- Data Science + AP Capstone
- Algebra 2 + Computing integration
For details on each unit’s framing, assessments, and technical skills, see: