Croquet is still being designed. Personally, I’d like to see something useable this summer, but that remains to be seen.
There is a “developer’s version” available now, called Jasmine, but there’s some confusion as to what Jasmine is in relation to the real thing. I’m going to try to straighten that out here.
Croquet is being developed by a group headed by six overworked architects in a couple of different organizations. Although releases (including this first version) are free and have completely open source under an MIT-style license, the development is not open source. There is no host with a source tree where interested parties can look and see what’s coming next, or work on the next bits. As much as we’d like to Tom Sawyer folks into producing more functionality, the core of the real thing is just too fluid. We need to keep focused on moving forward without having either too many cooks in the kitchen or spending time fixing a lot of bugs in code that might not even ultimately be used.
Some aspects are already quite real, especially including the 3D rendering. What the architects wanted was a way to get folks working with the functioning parts so that advanced external developers can prototype some working use cases. To accomplish this, they made some huge simplifications:
- Small numbers of machines working in the same collaborative space. (Maybe 10 instead of millions.)
- Everybody in the collaboration is on the same local network.
- All the code needed for a collaborative space starts out already installed and running on each machine. In fact, each machine has identical code that is initialized in exactly the same way.
- No security requirements.
- All the users are actually highly skilled developers that do not need support.
- Only the crudest persistence is needed, invoked and distributed by hand by the skilled developer/users.
These simplifications allowed some pretty darn smart guys to put together something that lets folks explore some of the aspects of what real-time collaboration in Croquet is like. But the mechanism is very different than what the real thing will have.
Alas, we’re don’t have a lot of information to give to developers about using the parts of Jasmine that will be replaced. Why document what is not staying around? For example, I don’t think we say anywhere that to have multiple users in the same space, you must start up the same environment on each machine. Before doing any movement or anything else, each user must manually connect using the tools hidden at the bottom of the display. No machine should be running any firewall.
Nor can we tell folks a great deal about how the real thing will be different. Some things we don’t know. (Or at least, I don’t know.) On some subjects there is much to say, but we’re busy implementing it. And then there’s the very reason for Jasmine itself: we need more experience with a Croquet-like environment in order to design Croquet. The questions that folks ask are invaluable in filling out that design and its presentation.