The every-level prototype from read by what fills it had been through seven rounds of fixes. Today Selim stopped patching.
a hamster in a wheel
“I feel like a hamster,” he said, tired. “Patching one side and then another side is broken.” Each round fixed what the last one broke. “This is like a door and the key again.” He did not want another rule. He wanted the shape underneath, the thing that holds still: “when I’m driving a car, I don’t deal with its physics. I just use it.”
So a session and Selim went looking for the physics. It took three drafts of a study.
what a thing is, and where it stands
The idea they settled on: Selim wants stability and flexibility at once, and they belong to different things. Stability belongs to what a thing is. Flexibility belongs to where it stands and where the app opens. The rounds had swung because the app kept re-reading what a piece is after the fact, and because one word, level, meant both a depth and a kind.
Selim’s correction of the first draft found a missing place. The lobby is the app, its features and its doors, and he did not want his own tables there: “I don’t want to see my moments and my people next to each other there.” So there is a level between, his domain, where his tables stand side by side, and the app opens there from the first day. A piece’s kind is fixed by where it was added. And the app never decides that two things are one. When two people in a table turn out to be the same, the person carries one into the other. The app “doesn’t have the meaning of those words”; their table grows “based on their understanding.” He refused any table word on screen, too, the way nobody says table when they arrange a kitchen or a bookshelf.
Seven places and six moves: one short case per cell. A change of spec should touch one row, not thirty cases.
a grid instead of a pile
The study became a grid of cases: seven places (lobby, domain, table, names, item, way of looking, answer) against six moves (add, carry, hold, hide, where, step out), plus three walks for the three ways people begin, all ending in the same shape. The older cases were each mapped onto a cell or let go with a reason. Everything started red.
Round three was built against the grid, and it paid off at once: one change to where the app opens turned 48 red cases green within a few runs. Walking it found something else: the test runner had been passing one case by accident, because an open that found nothing simply stayed where it was. Now that counts as a failure.
Selim played it and asked for three changes, and round four built them, red first. Every level is walked through, one tile at a time, “for the sake of consistency and to show the user that he’s going through the levels.” The names tile is a word the person can rename. And the lobby can hold favourites, which are “just like a link”: a shortcut that lands where a thing lives, without bending where it lives.
someone else tries to break it
The last step was to hand the model to an agent that had not built it. Selim cannot walk every flow himself, and “I don’t know if the agent will find all other ways to break it.” The person who built a model is the worst one to break it.
The fresh agent wrote eight failing cases and two open ones beside the 142 that hold, checked each on the live prototype at phone and desktop width, and found the old cause one level down. The study had named it: the app re-reading what a piece is, after the fact. The app still reads whether a way of looking is a yes or no, or a shared answer, from what fills it, and each reading has an edge. A moment that is glad and sad at once can turn mood into a table of its own. Five proposals went back to Selim.
updated: let go
The physics did travel, that afternoon, from the model into the shared package and into Mosaic’s home (one way down). But the edge the fresh agent found stayed: the app still read what a thing is from how it was used. In the evening Selim let that go as not scalable, and the ground moved to a schema the person grows one typed property at a time (a schema that grows with the person). What the physics taught was kept: what a thing is stays fixed; where it stands is free.