Croquet is a combination of computer software and network architecture that supports deep collaboration and resource sharing among large numbers of users within the context of a large-scale distributed information system. Along with its ability to deliver compelling 3D visualization and simulations, the Croquet system’s components are designed with a focus on enabling massively multi-user peer-to-peer collaboration and communication.
Croquet’s treatment of distributed computation assumes a truly large scale distributed computing platform, consisting of heterogeneous computing devices distributed throughout a planet-scale communications network. Applications are expected to span machines and involve many users. In contrast with the more traditional architectures we grew up with, Croquet incorporates replication of computation (both objects and activity), and the idea of active shared subspaces in its basic interpreter model. More traditional distributed systems replicate data, but try very hard not to replicate computation. But, it is often easier and more efficient to send the computation to the data, rather than the other way round. Consequently, Croquet is defined so that replication of computations is just as easy as replication of data.
Oh. My. Goodness.
Once you wrap your mind around this (the screenshots help), it’s truly revolutionary. The idea that I could “join” a collegue’s word processor so we could collaboratively edit or take a client on an interactive tour inside the design of their web site is staggering. When all apps share a common collaborative protocol, things we haven’t even dreamed of will become commonplace.