Week 05 · overview

Week 5: Data Needs a Contract

Programs exchange values constantly, but two components can use the same bytes and disagree about what those bytes mean. This week moves from program logic to data representation: types, schemas, parsing, serialization, missing values, units, and strict contracts.

The defensive lesson is simple: a system boundary is weak when the receiving side guesses.

This week

  1. A Value Has Type, Meaning, and Units — separate representation from meaning.
  2. Parsing Is a Security and Reliability Boundary — trace how text becomes structured state and how ambiguous values create failures.
  3. Schemas Turn Assumptions into Tests — define a small message contract, reject malformed cases, and preserve evidence.

Evidence artifact

Create a Data Contract and Parser Test Record with a field dictionary, valid example, malformed examples, parser observations, rejection behavior, and a bounded claim about what the schema enforces.