The Ghost in the Geoscheme: Finding My Father in a Census API

I was pulling records, not memories. My task was dry, technical: to test the new API endpoint for a specific decade's census, using a tract code I’d pulled from a vintage geoscheme file. I was looking for population aggregates, for counts of housing units, for the sterile validation of a data pipeline. I typed in the code, a string of digits that felt as arbitrary as a license plate, and requested the JSON for a single, specific block.

The data came back cleanly structured. Median income. Age brackets. Number of rooms. And then, under a field simply labeled ‘Occupants, 1970,’ there was a list. Not a count. A list. Eleven names, transcribed from the original enumerator’s sheets and tucked into this digital cupboard. I scanned them, my historian’s eye looking for patterns in surnames. And then I froze. There, seventh down, was his name. My father’s name. His age, 22. His relationship to the head of household: ‘Son.’

I knew he had lived there, of course, in that gray-shingled house I’d seen in faded photographs. But I had never known its official, bureaucratic coordinates. The house was gone, replaced by a parking lot decades ago. Yet here was its ghost, not in brick and mortar, but in a nested object within a RESTful API call. The cold precision of the geoscheme—a mathematical polygon drawn to contain a statistical reality—had suddenly, violently, contained a personal one. The API didn’t just deliver data; it delivered a context I had never physically inhabited, placing him as a point in a dataset he never knew would exist.

The Weight of a Field

In that moment, the entire abstract edifice of open data and digital preservation collapsed into a single, piercing point. We talk about preserving ‘records’ for ‘research’ and ‘posterity.’ We architect systems for integrity, authenticity, and access. We worry about format migration and metadata standards. And all of that is vital, necessary work. But we less often speak of the quiet, unpredictable resonance these systems can have when a human thread, thought lost in the aggregate, suddenly pulls taut.

That list of names wasn’t supposed to be the highlight. It was likely a quality-assurance quirk, a verbose field left in from a test load. In a later ‘cleaned’ version, it would probably be normalized away into summary statistics. The very imperfection of the data—its raw, slightly untidy state—was what allowed for the recognition. It was a digital artifact with its paper grain still showing, and in that grain, I found a fingerprint.

I sat back from the screen, the glow of the code editor lighting the quiet room. I had encountered my father that day not through a story, nor a photograph, nor even a scanned document. I had found him through a programmatic request. The ‘open’ in open data ceased to be about licensing and became about aperture—an opening into a past that was both profoundly intimate and impersonally encoded. It was a reminder that preservation is not just about saving things, but about saving the connections they contain, however accidentally those connections might be revealed. The geoscheme held a ghost, and the API, unwittingly, had taught it how to speak.

Notes & further reading

A few pages I came back to while writing this: