6
produced excellent paradigmatic applications. The Prep editor (Neuwirth, Kaufer et al. 1990;
Neuwirth, Chandhok et al. 1992; Neuwirth, Kaufer et al. 1994)and Lotus Notes (Greif and
Sarin 1987), by contrast to the synchronous toolkits, have concentrated on support for asyn-
chronous and off-line work, or at least on propagating changes as convenient rather than
always propagating them immediately.
Interestingly, the most widespread commercial groupware solution in active use is Lotus
Notes, which uses a relatively simple, asynchronous, artifact-based data model that makes
minimal consistency guarantees. And the most common system for sharing textual and
graphic information is the World Wide Web (WWW), which has been effectively used for a
wide variety of collaborative purposes, and which provides no system level support for syn-
chronization or collaboration, instead requiring each application or user to implement any
synchronization protocols. While the generality and extensibility of these systems is among
their major reasons for success, their synchronization policies do not seem to have.
One possible interpretation of the success of these systems is that synchronization is
completely unimportant—however, the frequency with which synchronization mechanisms
are created for WWW applications, and the presence of a basic mechanism in Notes show that
it is a requirement. Their success despite limited consistency guarantees shows that to sup-
port collaboration it is not necessary to use the robust but rigid consistency mechanisms de-
veloped for databases, or even the less-rigid mechanisms used in source-code control. It
seems rather that the explicit management requiredby such mechanisms is actually too high
for many collaboration applications. Alternatively, the range of variation of synchronization
policies has prevented the creation of a useful general mechanism, so that the burden of im-
plementing policies in notes and WWW applications is not affected either way by the built in
capabilities of the systems. Palimpsest is an attempt to create a mechanism flexible enough
to implement many policies, and thus capable of being reused in many applications with
differing needs.
produced excellent paradigmatic applications. The Prep editor (Neuwirth, Kaufer et al. 1990;
Neuwirth, Chandhok et al. 1992; Neuwirth, Kaufer et al. 1994)and Lotus Notes (Greif and
Sarin 1987), by contrast to the synchronous toolkits, have concentrated on support for asyn-
chronous and off-line work, or at least on propagating changes as convenient rather than
always propagating them immediately.
Interestingly, the most widespread commercial groupware solution in active use is Lotus
Notes, which uses a relatively simple, asynchronous, artifact-based data model that makes
minimal consistency guarantees. And the most common system for sharing textual and
graphic information is the World Wide Web (WWW), which has been effectively used for a
wide variety of collaborative purposes, and which provides no system level support for syn-
chronization or collaboration, instead requiring each application or user to implement any
synchronization protocols. While the generality and extensibility of these systems is among
their major reasons for success, their synchronization policies do not seem to have.
One possible interpretation of the success of these systems is that synchronization is
completely unimportant—however, the frequency with which synchronization mechanisms
are created for WWW applications, and the presence of a basic mechanism in Notes show that
it is a requirement. Their success despite limited consistency guarantees shows that to sup-
port collaboration it is not necessary to use the robust but rigid consistency mechanisms de-
veloped for databases, or even the less-rigid mechanisms used in source-code control. It
seems rather that the explicit management requiredby such mechanisms is actually too high
for many collaboration applications. Alternatively, the range of variation of synchronization
policies has prevented the creation of a useful general mechanism, so that the burden of im-
plementing policies in notes and WWW applications is not affected either way by the built in
capabilities of the systems. Palimpsest is an attempt to create a mechanism flexible enough
to implement many policies, and thus capable of being reused in many applications with
differing needs.