General Croquet questions

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

General Croquet questions

Corey-31
Hi. Sorry if this is the wrong list, but if it is, could someone please point me in the right direction?

I really like the ideas behind Croquet and want to explore its potential. I still have a few questions regarding its design though.
  • Since it's p2p, is there such a thing as administrators?
  • I read that the Croquet can be altered in realtime. Isn't this a bit dangerous? Who can alter the protocol and when?
  • Since objects are pushed to each connected user, isn't it possible to 'spam' the virtual space? In other words, are there any protections for the common user against malicious users/content?
  • I see Croquet has been in development for some time, but there is still so little content and it is still relatively unknown. Why is this?
  • Do the developers envision Croquet becoming the universal metaverse standard, or is it simply a niche tool?
Thank you for your attention.

// Corey
Reply | Threaded
Open this post in threaded view
|

Re: General Croquet questions

Howard Stearns-3
On Feb 11, 2008, at 5:04 PM, Corey wrote:

> Hi. Sorry if this is the wrong list, but if it is, could someone  
> please point me in the right direction?

Welcome. This is the right place. The following is my own view, not  
representing anyone else.

The key thing to understand is that Croquet is a programming model /  
API / platform.  There is a Software Developers' Kit (SDK) that  
includes all this in an IDE and runtime, along with several demos.

Croquet is not an application nor a service, but folks can and do  
build such things with Croquet:

  * http://impara.de/index_engl.html makes a product on an earlier  
version of the Croquet SDK (http://www.planet-plopp.com). It uses the  
3D stuff, but isn't collaborative (last I looked).

  * One demo included in the SDK is a sort of 3D, synchronously  
collaborative wiki, called the KidsFirst Application Toolkit (KAT).
    ** Rich White and others have been building applications on this,  
which they host locally as needed. (http://edusim3d.com/)
    ** I have a server that I leave running, so that people can  
connect to each other using the KAT demo software. (http://
opencroquet.org/index.php/Croquet_Collaborative)

  * An industrial strength commercial collaboration product is made  
by Qwaq which also provides hosting services to it's customers.  
(http://qwaq.com/) This is where I work. There is also a joint  
product being developed with Intel (http://www.intel.com/pressroom/ 
archive/releases/20070920corp_a.htm?iid=pr1_releasepri_20070920ar).

  * UBC is creating two public applications hosted there: http://
ancient.arts.ubc.ca/ http://artsmetaverse.arts.ubc.ca/  (Previously,  
Berkeley built something like this on an earlier version of the SDK.)

  * There have been a whole slew of closed applications at  
universities (Minnesota, Duke, Missouri, Wisconsin, Wake Forest, UNC,  
http://www.wetmachine.com/item/870, http://xaverse.blogspot.com/) and  
commercially  (3D Solve http://www.wetmachine.com/itf/item/875)

>
>
> I really like the ideas behind Croquet and want to explore its  
> potential. I still have a few questions regarding its design though.
> Since it's p2p, is there such a thing as administrators?

The SDK does not have any concept of administrators per se. However,  
it does include the concept that there are different operations that  
can be performed, and each participant is given a prescribed set of  
handles for those operations (facets) that are unique to them. The  
SDK includes several examples of different ways that various kinds of  
login operations might be performed to determine which set of facets  
should be supplied.

The KAT uses this to arrange for only the hosting "server" to provide  
a definition for the world, rather than any random participant. In  
that sense, only the server is the administrator. This is not  
necessarily a good or wise thing, but it is an example.

Qwaq's Forums product does have adminstrators, who are allowed to  
create new worlds (called forums) and new users.

> I read that the Croquet can be altered in realtime. Isn't this a  
> bit dangerous? Who can alter the protocol and when?

The Croquet platform is built on Squeak, which is fully dynamic --  
code and classes can be changed while it running.  There is a lot on  
the Web about the virtues of dynamic languages, and I'll just say  
that I use this capability all the time while developing.

However, there is no mechanism built into the SDK for "mobile code."  
For Croquet to work, it is necessary that each participant be  
executing the same code (http://opencroquet.org/index.php/ 
The_Core_Model). You could imagine treating the code as ordinary  
Croquet content and making sure that it gets replicated in the same  
way as everything else (http://opencroquet.org/images/c/ 
c4/2006_BrieUserExperience.pdf), but the SDK does not have anything  
built in to do this.


> Since objects are pushed to each connected user, isn't it possible  
> to 'spam' the virtual space? In other words, are there any  
> protections for the common user against malicious users/content?

By default, you are correct. The facet mechanism could be used to  
restrict capabilities to certain users, but by default in the SDK  
each external event (e.g., keystroke or pointer event) uses the same  
facet (the default message send facet).

The state of practice is, I think, the same as with asynchronously  
collaborative 1D (text) wikis: anyone who has access in the first  
place can change anything, and the same set of people can change it  
back.  In other words, security is at the granularity of the space as  
a whole.  [I feel that Croquet has the potential to do far more by  
superimposing content from different worlds (with different access),  
but that's a research area at this time.  (http://opencroquet.org/ 
images/6/65/2006_3D_Annotation.pdf)

> I see Croquet has been in development for some time, but there is  
> still so little content and it is still relatively unknown. Why is  
> this?

There's no central service or place to connect to.

Within the deliberately walled garden's of the Forums owned by Qwaq's  
customers, there is a great deal of content. Conversely, within the  
deliberately visble space of Plopp, there is a great deal of (non-
interoperable) content.

> Do the developers envision Croquet becoming the universal metaverse  
> standard, or is it simply a niche tool?

If you contribute code, you're a developer. What do you want to say?

> Thank you for your attention.
>
> // Corey

Reply | Threaded
Open this post in threaded view
|

Re: General Croquet questions

Corey-31
The key thing to understand is that Croquet is a programming model /
API / platform.  There is a Software Developers' Kit (SDK) that
includes all this in an IDE and runtime, along with several demos.

Croquet is not an application nor a service, but folks can and do
build such things with Croquet [snip]

Excellent, thank you very much for the clarification and links.
 
However, there is no mechanism built into the SDK for "mobile code."
For Croquet to work, it is necessary that each participant be
executing the same code (http://opencroquet.org/index.php/
The_Core_Model). You could imagine treating the code as ordinary
Croquet content and making sure that it gets replicated in the same
way as everything else (http://opencroquet.org/images/c/
c4/2006_BrieUserExperience.pdf), but the SDK does not have anything
built in to do this.

That makes sense. I was thinking there were parts of Croquet that could be altered without breaking the protocol itself, therefore allowing people to stay connected but at the same time alter the behavior of the world without anyone knowing. I didn't know about the facet mechanism, that helps a lot.

There's no central service or place to connect to.

Within the deliberately walled garden's of the Forums owned by Qwaq's
customers, there is a great deal of content. Conversely, within the
deliberately visble space of Plopp, there is a great deal of (non-
interoperable) content.

I see. This similar in structure to Metaplace it sounds like. I was thinking instead Croquet offered a single virtual space ala Second Life by way of a common protocol, but it seems to be a bit more complicated than that.

> Do the developers envision Croquet becoming the universal metaverse
> standard, or is it simply a niche tool?

If you contribute code, you're a developer. What do you want to say?

Heh. Makes sense, but I was thinking of the founders of OpenCroquet. Now that I know more about what exactly they developed though, I guess it's a pretty silly question :)

Cheers.

// Corey