We imagine that the server owns the work being done and the client, the human interpretation and control over that work. At what tempo does each run? Minutes or milliseconds?
For example, one can edit the markup that describes a process, such as data sampling in the Datalog plugin. With a single button one can stop the process, revise the markup and then start it again. One can also double check the revisions before starting and some links make that easy. Revising and restarting are thus separate interactions. Indirect manipulation.
We now recognize the convenience of revising the markup of a running process. The process and its representation are now out of sync. Is this desirable? How is it to be resolved?
We could remove the delay between editing and deploying the modifications. You edit, it changes. Direct manipulation.
We could offer options to sync from client or sync from server: restart or revert. Maybe restart is sufficient since the page history captures the notion of rever.
We could immediately stop the server process returning to the allowed unsynchronized state we found acceptable before.
Keystroke at a time sharing is often seen as a solution to conflicting edits between users. We find the experience rattling. Wiki loosens this synchronization to its advantage. Now we seek an analogous convention in the machine control relm.
See Simplicity Compounded for the greater challenge.