Syllabus Appendix: Selected Unit Summaries

This appendix provides expanded descriptions of key units from the 9th grade course
Programming by Design: Computing, Representation, and Reasoning.
Each summary includes conceptual framing, core learning goals, representative activities, and assessments to support instructional planning and curricular alignment.


Unit 0: The Story of Data

Framing Concept: Programming is communication between humans and machines.

Students begin with the epistemological and historical foundations of computing. Through readings, visual mapping, and structured discussion, they engage with the idea that computation is designed, contextual, and cultural.

Key Outcomes:

  • Understand data as structured representation
  • Build foundational metaphors (system, abstraction, encoding)
  • Introduce equity and underrepresentation in computing history

Representative Activities:

  • Human Algorithm Game
  • “What is a Computer?” group modeling + debate
  • Binary simulation and system diagramming

Unit 1: Programming by Design (Racket)

Framing Concept: A program is a structured solution to a problem.

Students use Racket to design pure functions using the design recipe: contract, examples, definition, and tests. They build recursive and piecewise functions and apply them to visual and mathematical models.

Key Outcomes:

  • Write and explain testable functions
  • Practice decomposition and reuse
  • Begin recursive reasoning aligned with algebraic logic

Representative Activities:

  • Design recipe code walkthroughs
  • Pattern project with functional recursion
  • Debugging stations and error narratives

Unit 2: Data Science and Representation (Pyret)

Framing Concept: Data is a constructed lens on the world.

Students manipulate tabular datasets to explore representation and omission. They apply filter, map, and build-column functions to real museum or cultural datasets. Data visualizations support critical interpretation.

Key Outcomes:

  • Use Boolean expressions and functions to analyze data
  • Create and critique graphs and transformations
  • Explore the role of categorization and metadata in shaping knowledge

Representative Activities:

  • Table transformation labs
  • Data ethics journaling and discussion
  • Visual inference critique using public datasets

Unit 3: Systems and Control (Python + EarSketch)

Framing Concept: Programs model dynamic systems through control flow and state.

Students shift into procedural thinking using loops, conditionals, and accumulators. In EarSketch, they create rule-based sound compositions; in Python, they simulate behaviors and interactive systems.

Key Outcomes:

  • Write code using for, while, if/else constructs
  • Understand mutation, state, and behavior
  • Trace and debug procedural logic with intention

Representative Activities:

  • Algorithm sketching and tracing
  • Music generation with algorithmic structure
  • Simulation modeling and outcome prediction

Unit 4: Interface and Communication (HTML + CSS)

Framing Concept: Code is interpretation—computational ideas need an audience.

Students learn the basics of web structure and design. They create static sites to house prior work and emphasize clarity, accessibility, and communication.

Key Outcomes:

  • Structure and style web content with HTML and CSS
  • Apply design conventions for clarity and purpose
  • Reflect on how computational artifacts are received

Representative Activities:

  • Portfolio homepage builds
  • Design critiques and peer review
  • Narrative rewriting of a project for an outside audience

Unit 5: Code in the Wild (Jupyter + APIs)

Framing Concept: Code lives in systems, documents itself, and pulls from the web.

Students use APIs and Jupyter notebooks to explore and explain real-world data. They practice reproducible workflows that mix code, text, and visual output.

Key Outcomes:

  • Retrieve and transform web-based data via API calls
  • Use markdown and code to narrate analysis
  • Reflect on what’s visible and omitted in their methods

Representative Activities:

  • Met Museum API inquiry
  • Data question formulation and investigation
  • Annotated notebook writing and peer feedback

Unit 6: Networks, Protocols, and Power

Framing Concept: The internet is a system of abstractions that shapes global power.

Students explore IP, DNS, HTTP, and packet routing. They investigate digital infrastructure and reflect on issues of ownership, surveillance, and control.

Key Outcomes:

  • Map out layered network protocols
  • Understand routing, metadata, and infrastructure access
  • Ask critical questions about digital governance and equity

Representative Activities:

  • Command line navigation and metadata inspection
  • Simulation of a multi-hop web request
  • DNS protocol critique and power analysis

Unit 7: Capstone Projects

Framing Concept: What can you build, explain, and defend?

Students synthesize skills and concepts into a self-directed project. They design, document, and present a computational artifact that shows clarity of reasoning and narrative coherence.

Capstone Deliverables:

  • Final artifact (simulation, data story, interface)
  • Technical documentation of logic and structure
  • Reflective writing and presentation to peers or community