… work moves between the artifact and the other tools its actors use, and a reference will not do: the other tool cannot follow a link, the work has to arrive in a form the other tool can change, or the actor is gathering in what they made elsewhere. The copy that results is separate from its source from the moment it is made.
Problem
Export usually flattens the work. The copy keeps the visible content and drops the structure, links, comments, history and record of who made what. Import has the opposite problem: the artifact takes in what it can parse and drops the rest without saying so. The actor finds out what was lost later, by which time the copy and its source have already diverged.
Solution
Offer import and export in formats other tools can read, and keep as much of the work’s structure as the format can carry. Before an export, say what the copy will leave behind; after an import, show what was not taken in. Mark each copy with where and when it came from.
Continuation
The copy and its source now change independently, so the copy carries provenance marking of where and when it was made, which lets a later reader tell which of two diverging versions is the source. Export in a format another program can read is also how local-first ownership lets the actor take their work elsewhere, and the two are designed together. Where the other tool can follow a link, deep linking moves the work by reference and leaves a single copy, which avoids the divergence altogether…
All connections
- Precedes
- Provenance marking — The copy and its source now change independently, so the copy carries provenance marking of where and when it was made, which lets a later reader tell which of two diverging versions is the source.
- Enables
- Tool ecology — Work moves between the artifact and the other tools its actors use, and a reference will not do: the other tool cannot follow a link, the work has to arrive in a form the other tool can change, or the actor is gathering in what they made elsewhere.
- Enacts
- Shareability — export decides what of the work travels to other tools, and in what form
- Complements
- Local-first ownership — Export in a format another program can read is also how local-first ownership lets the actor take their work elsewhere, and the two are designed together.
- Alternatives
- Deep linking — Where the other tool can follow a link, deep linking moves the work by reference and leaves a single copy, which avoids the divergence altogether
Resources & references
- Nouwens & Klokmose (2018) The application and its consequences for non-standard knowledge work: export as flattening, and documents diverging as they move between applications
- Litt, van Hardenberg & Henry (2020) Project Cambria: translate your data with lenses, Ink & Switch: translating documents between the formats different programs read and write