Croquet project
Encyclopedia : C : CR : CRO : Croquet project
The Croquet Project is an international effort to promote the continued development of Croquet, a new open source software platform for creating deeply collaborative multi-user online applications. It features a network architecture that supports communication, collaboration, resource sharing, and synchronous computation among multiple users. Using the downloadable Croquet SDK, software developers can benefit from a flexible enough framework that virtually any user interface concept could quickly and easily be prototyped and deployed to create powerful and highly collaborative multi-user 2D and 3D applications and simulations.
Technical functionality
Media content authors, programmers, and those moving through and interacting with the Croquet world simultaneously participate and collaborate in a dynamic, concurrent environment where they work, explore, and learn at a level of integration not easily achieved by other technologies or environments. Those running the Croquet software simultaneously create and participate in continuously modifiable, peer-to-peer networked (self-published, self-hosted), 2D and 3D environments. They also create and edit the visual objects contained in them. The Croquet software provides a seamless, dynamic architecture, framework, and interface for delivering data and visual/auditory content that is persistent (over time and distance), fully extensible, timely, and reliable -- and yet scales to a large number of participants without central servers. The code for every memory 'object' is editable, and hence reprogrammable, even while instances of that object remain in memory and routines are running in memory that reference that object.Croquet is designed to provide a framework for developing 2D and 3D applications to ease and simplify co-creativity, knowledge sharing, and deep social presence among large numbers of people, simultaneously. Within the 3D, virtual reality, wide-area environments that are made possible by Croquet, participants enjoy synchronous telepresence, shared access to Internet and other network-deliverable information and media resources, and the ability to design complex spaces individually or while working with others. Every visualization and simulation within Croquet is a collaborative object since Croquet is fully modifiable at all times.
Philosophy: a learning environment
Kay and Papert envisioned in the 1960’s the computer’s role as a tool for the mind… an “idea processor”. They have worked at bringing computers into this role for adults and children through several of Croquet’s predecessors like the Logo language and environment by Papert and Squeak, the open source Smalltalk language and environment, by Kay. In turn, for Croquet’s interface and architecture, Kay incorporated many educational principles discovered by Jean Piaget, Maria Montessori, and Jerome Bruner.
Kay and Papert expected computers (with the right software) to enhance learning and education through a media rich, enhanced communication medium and consequently benefit humanity in general as a result of the better communication of “powerful ideas”, ideas that “make the invisible somewhat visible”, ideas about truths that transform civilization’s thinking that are not common to all cultures but which must be discovered or invented by a culture and shared.
Kay’s philosophy suggests that if we consider science as an ever-improving mental map of causality as observed in the real world just as we observe cartography (map making) steadily improving our map’s accurate representation of the real world, we can consider Croquet as an ever-improving map of symbols and of place to reflect our understands of science, the real world, and of each other.
To paraphrase Papert: In France, children grow up learning French fluently, just as we expect them to do. Yet, we have not allowed ourselves to imagine that children could all learn mathematics just as fluently as they learned their native language, if they grew up in a “Mathland”. Croquet, just as Squeak did earlier, tries to be that “Mathland” (and any other “land of an academic discipline” that its participants care to create for themselves and for each other).
Other educational principles incorporated by Kay and Papert include:
- "learning by doing"
- "incremental discovery"
- "hard fun"
- "mathematical modeling by the learner of observed phenomenon"
- "constructivist learning environments"
- "project-based learning"
- "student self-directed learning"
History
Croquet is the confluence of several independent lines of work that were being carried out by its six principal architects, Alan Kay, David A. Smith. David P. Reed, Andreas Raab, Julian Lombardi, and Mark McCahill. The project has its origins in a conversation between David A. Smith and Alan Kay in 1990, where both expressed their frustration with the state of operating systems at the time. In 1994 Smith built a working prototype of a two user collaborative system that was a predecessor of the core of what Croquet is today. Also in 1994 Mark P. McCahill's team at the University of Minnesota developed GopherVR, a 3D user interface to Internet Gopher to explore how spatial metaphors could be used to organize information and create social spaces. In 1996 Julian Lombardi approached David A. Smith to explore the development of highly extensible collaborative interfaces to the WWW. Later, in 1999, David A. Smith built a system called OpenSpace, which was an early-bound variant of Croquet. Also in 1999, Julian Lombardi began working with David A. Smith to experiment with prototype implementations of highly extensible collaborative online environments based on OpenSpace. One of these implementations was a prototype implementation of ViOS, a way of spatially organizing all Internet-deliverable resources (including web pages) into a massively-scaled multiuser 3D environment. David A. Smith and Alan Kay officially started the Croquet Project in late 2001 and were immediately joined by David P. Reed and Andreas Raab. David P. Reed brought to the project his longstanding work on massively scalable peer-to-peer messaging architectures in a form deriving from his doctoral dissertation that was published in 1978. The first working Croquet code was developed in January 2002. Simultaneously, Julian Lombardi and Mark P. McCahill began independently collaborating on defining and implementing highly scalable architectures for multi-user collaboration and were invited by Alan Kay to join the core architectural group in 2003. From 2003-2006 the technology was developed under the leadership of its six principal architects with financial support from Hewlett-Packard, Viewpoints Research Institute Inc., The University of Wisconsin, The University of Minnesota, the Japanese National Institute of Communication Technology (NICT) and private individuals. On April 18, 2006 the project released a beta version of the [Croquet SDK 1.0] in the open source.
Purpose
Kay and Papert consider Croquet and Squeak just one part of the two parts necessary to help humanity. They hope that Nicholas Negroponte’s $100 laptop effort, which they co-developed with him, will help distribute such learning, discovery, and communication software for youth around the world to use to supplement and improve the students’ own learning environments. In turn, they hope that these students’ discoveries and “powerful ideas” can be self-published by the same interconnected software to be made available to the rest of civilization.Supporting Technology
Squeak
A Squeak-based programming environment serves as Croquet's foundation since Croquet requires capabilities best provided by a true late-bound message-sending language while at the same time providing users with collaborative access to everything from the virtual machine to the compiler. Croquet's relationship to Squeak gives Croquet the property of a purely object-oriented system. This allows for significant flexibility in the design and the nature of the protocols and architectures that have been developed for Croquet. Another key feature of Squeak is its generalized storage allocator and garbage collector that is not only efficient in real-time (so that animations and dynamic media of many kinds can be played while the garbage collector is collecting), but that allows reshaping of objects to be done safely. Like Squeak, Croquet supports many non-English languages and fonts such as German, Spanish, French, and Japanese.TeaTime
TeaTime is a variant of a system for time-based replicated computation first described by David Reed in his thesis, and implemented by him in a version of Croquet. The Hedgehog version of TeaTime differs from David's model in that the architects have simplified the decision making process of whether an event is aborted or committed and when the event is deemed to have occurred. The simplified model has a single point of contact for decision making, which has the additional benefit of not having any need for potential roll-backs.Principal architects
The principal architects behind the Croquet Project are:- Alan Kay – Initial vision and primary motivator
- David A. Smith – Initiated the Croquet project. A systems designer who creates 3D graphical environments and games such as The Colony, the first 3D interactive game
- David P. Reed – Creator of the Internet design principle known as the "end-to-end argument" (with others) which describes the economics of group formation in networks which helped the design of the TCP/IP internet protocols
- Andreas Raab [link] [link] – Smalltalk developer who wrote the graphical media and 3D parts of Squeak for MS Windows
- Julian Lombardi – Creator of multi-user 3D online worlds (VIOS)
- Mark P. McCahill – Creator of navigable, interlinked internet data stores such as Internet Gopher and the first graphical access to POPmail
The Croquet Consortium
A consortium in support of further development and refinement of the open source Croquet technology is being organized by several corporations and universities including:- Duke University
- University of Wisconsin
- University of Minnesota
- University of Maryland University College
Similar projects
Some of the environments that are enabled by Croquet somewhat resemble those of Sun's Project Looking Glass in that they permit the display of 2D windows as if they were 3D objects floating in a three-dimensional world. However, Croquet has been designed to go much further given that the programming of the 3D world is virtually without limits (due in part to Squeak's late-binding architecture and metaprogramming facilities).In this domain Croquet reaches farther than Microsoft Research's "Task Gallery" for it is not bound to any particular operating systems, and eventually could constitute an operating system of its own by building more upon its Squeak foundations. (Croquet’s lack of device drivers is its largest drawback as an operating system.)
Croquet is also much more extensible than Second Life since it is free to use, author content, share, view and understand the source code, and modify it (due to a liberal license), it is not hosted on a single organization’s server (and hence governed by that organization), and it provides a complete professional programmer’s language (Smalltalk), IDE, and class library in every distributed, running participant’s copy. (The programming development environment itself is also simultaneously shareable and extensible).
Virtual Object System is another open source project that aims to do much the same as Croquet.
See also
- Scalability
- Transaction
- Alan Kay
- Seymour Papert
- Jean Piaget
- Maria Montessori & Montessori method
- Jerome Bruner
References
- [First paper] David Smith and Alan Kay did for C5, intended to be an introduction to Croquet.
- [C5 Conference] and related papers
- [David P. Reed's papers]
External links
- [Croquet Project] for Introduction, FAQs, Screenshots, Whitepapers, User Guide, Related Projects, Architecture, Croquet Roadmap, Programmer Guide, Croquet License, Downloads, and Croquet Blogs/Links
- [Croquet Road Map]
- [List Server]
- [Julian Lombardi's Croquet Blog]
- [Video] of a presentation by Julian Lombardi & Preston Austin that demonstrates many of Croquet’s capabilities, October 13th, 2005
- [Video] by David Smith & Alan Kay done for a talk at Stanford
- [Video] done for the O'Reilly etech by David Smith & Alan Kay (broken up into nice bite-size chunks, also includes Alan's full Squeak demo)
- [Croquet Consortium]
- [ViOS in "How Stuff Works"]
- [Croquet from Planet Smalltalk]
- [Croquet-Teapot]
From Wikipedia, the Free Encyclopedia. Original article here. Support Wikipedia by contributing or donating.
All text is available under the terms of the GNU Free Documentation License See Wikipedia Copyrights for details.
