01🗞️Declared, Not Discovered
0/4 lessonsEverything enters through a row you wrote down — and leaves pointing back at where it came from
An aggregator's first design decision is how the outside world gets in, and it is the one that determines whether the thing you build is a reader or a scraper. This track takes the strict answer: every article enters through an explicitly declared source row, adding a source is data rather than code, and nothing anywhere in a render path reaches out to the network. From that one constraint the rest follows — a fetch loop that is polite by construction rather than by good intentions, an identity for each article that survives the tracking parameters bolted onto it, and a link out that stays the primary act no matter how good your reader mode gets. The track closes on a subtle failure that only shows up at scale: a source identified by the name a human gave it, rather than by the configuration that actually determines what it fetches, will happily bind to the wrong feed and report success.
Lesson list (4)
- 01A Source Is a Row, Not a Code Path~12 min · architecture, data-modeling, aggregation, provenance
- 02Politeness Is State You Keep, Not Manners You Remember~12 min · http, caching, reliability, etiquette
- 03Original-First: The Link Out Is the Primary Act~12 min · ethics, urls, identity, product-boundary
- 04A Source Is Its Configuration, Not Its Name~13 min · identity, bugs, idempotency, data-modeling