FLOSS Weekly 123

From The Official TWiT Wiki
Jump to: navigation, search
FLOSS Weekly
Episode 123



With the help of others in the open source community, Nicole founded the Open Wonderland Foundation in February 2010. She started the Wonderland project in 2007 as Principal Investigator of the Collaborative Environments research program at Sun Microsystems Laboratories. This open source project, now a community-run effort, is a toolkit for creating 3D virtual worlds for business and education. Open Wonderland uses a number of other open source projects including:

  • jVoiceBridge - immersive, high-fidelity audio and telephone integration
  • MTGame - graphics engine
  • Avatars - 3D avatars
  • jMonkeyEngine - game engine
  • Red Dwarf (formerly Project Darkstar) - game server infrastructure
  • Glassfish V3 - web server

In addition to her work with the Open Wonderland Foundation, Nicole is a Visiting Scientist at the MIT Center for Educational Computing Initiatives. She is working with members of the physics department on a Wonderland virtual world for physics education. Nicole is also the CEO of a small consulting company, WonderBuilders, that creates custom Open Wonderland worlds for clients. Nicole's background is in user experience design in the areas of educational software, collaboration tools, speech applications, and virtual worlds. She holds 6 patents related to interaction design.



  • Project history:

Yankelovich's team was at Sun Microsystems until January 2010. Wonderland began as a challenge put forth by the Vice President of Eco Responsibility to build Sun's next building in a virtual world. Her team began a reading group, studied Second Life, and one of the team members built a conference building within that platform. The group came into the Second Life environment to see how the building was going, and the builder, who had been working from home for seven years, said that that was the first time he had had a serendipitous encounter with another Sun employee. That comment inspired the team to think more about what this technology could do for home-based employees.

They began the Wonderland project in 2007, as there were elements of Second Life that they felt were not appropriate for enterprise use. Her research team, Collaborative Environments, joined with another team that had graphics expertise. They had been focusing for some years on collaboration technology and distributed teams and knew well where the current technology was failing people. The purpose of Wonderland was to address those problems.

The choice of open-source made it possible for Yankelovich and her team to continue with the project after they had left Sun. They are now completely distributed and use only this technology to meet, collaborate, and brainstorm.

The Open Wonderland development team writes the code entirely in Java. They hold developer meetings to keep other developers, who are writing modules, up-to-date about the core. The core is fairly small, and most developers are either writing 2D and 3D applications that can run in-world or building custom worlds. All of this is accomplished using the module system, without touching the core itself.

Yankelovich firmly believes that 3D is going to become more used in web applications because it is perfectly suited to many purposes for which 2D is not, e.g.:

  • Demonstration of anything that has physical characteristics
  • Activities such as gatherings of people; conversations that naturally converge and divide.

I was involved with hypertext before the web, and to me this period of time feels very much like that period in the 80s when we were working on hypertext systems, where there were lots of people experimenting, lots of different systems out there. The early adopters were doing some really interesting things, but there were a lot of naysayers who said, "Oh, this linking stuff is never going to catch on!"

Features of Open Wonderland

  • The programming environment is designed to be familiar to Java programmers, although the principles of 3D must also be learned. There are tutorials available to get people started in writing modules and a supportive community in the forums.
  • Open standards are used throughout, e.g. SIP is the standard for teleconferencing audio.
  • Both the server and client can be run locally. The Wonderland server is integrated with GlassFish webserver. After the server launches, the client can be downloaded using Java Web Start.
  • Unlike the model of SecondLife, which is one giant virtual world, the model of Wonderland is that of a web server. Each organisation should run its own special-purpose web server with its own code and modules. There is a URL field in the client that allows moving from one server to another, and Java takes care of downloading whatever code is necessary for each particular world.
  • There are a few public servers for users to try Wonderland without needing to run their own servers. More are supposed to be launched in the near future.
  • Wonderland integrates with the Google 3D warehouse, which is a collection of hundreds of thousands of 3D models freely available for download. Those provided in Google Earth format (.kmz files) can be saved locally and then dragged and dropped into a Wonderland world. Google's free Sketchup software can convert files that are in Sketchup (.dae) format to .kmz for use in Wonderland.
  • Furthermore, any 3D software that can export to Collada, which is the Google Earth standard (.kmz files being a zip file with the model plus textures), can be imported as a standard .dae file.
  • Wonderland also integrates with the Alice project at Carnegie Mellon University. An animation created in Alice 3 can be dragged and dropped into Wonderland.
  • Real-time collaboration environment. Avatars usually look like real people, and movements are controlled by both mouse and keys.

One of the things that we focused on is having this be a collaboration environment that is suitable for business and education, where people tend to be their real identities, and particularly in the business setting you want to use this as a bridge for people to get to know each other in real life.

  • Immersive audio experience. Multiple simultaneous conversations are possible, and the sources of the voices are directional based on their location in the virtual world. Conversations naturally divide and converge based on the positions of the people who are speaking and how they are spatially grouped, as in reality. Audio is a primary focus to the development team. On high-speed networks, up to CD-quality audio can be achieved.
  • Similar to Second Life in that the user has a character that moves around in three-dimensional space, but the design center is different. There are basic physics by default: avatars walk following the ground and can collide into solid objects, but flying is also possible. It is also possible to have a world in which physics operate in a completely different fashion because both the client and the server are open-source, so developers can make any kind of extension.

We designed this specifically as a collaboration tool in which people could do their real work, whether that be teaching and learning or business collaboration.

  • Persistence
    • Virtual space is persistent. A group that holds a brainstorming session, for example, can use a whiteboard, sticky notes, and drag and drop images. The products of their work need not be erased, but can remain in place indefinitely for later review, or to brief someone who was not involved in the session.
    • Container: in a virtual team room, the work product accumulates. A container is a platform with all the brainstorming content in one place, which can then be moved platform out of the way, but keeping it in the environment for later review.
    • Real-time collaboration may appear to have a disadvantage for use in collaboration compared to email, which allows for staggered collaboration according to the convenience of the participants. But Wonderland, as one in an arsenal of collaboration tools, has the possibility of recording and replaying real-time sessions for other users to get caught up. The persistent nature of it allows users to come in at a time that is convenient for them and see what has changed since the last time or prepare for the next meeting.
  • Can run in-world:
    • OpenOffice
    • Firefox
    • Netbeans for community meetings, which the team uses in-world to review code and bring developers up-to-speed
    • VNC sessions for desktop sharing
  • 2D and 3D
    • X11 applications run on a linux system (e.g. OpenOffice, Firefox, Netbeans), which are single-user by nature, and hence in order to share would need to be passed from one user to another.
    • There is a framework for the 2D applications so that Java developers can build multi-user Java applications that run in-world. The Wonderland team prefers that these applications be used because they offer better performance and a better multi-user experience.
    • There is a 2D whiteboard application for cooperative drawing.
  • Examples of applications written for the environment as modules:
    • sticky notes
    • a poster application to display text or html
    • a chemistry module which is a 2D interface that leads the user through a 3D experiment
  • Possibility to add capabilities to the environment using straightforward APIs
    • Functionality can be added to any object, e.g. as a place mark, useful for reviewing brainstorming sessions
    • add audio to any object or make any object a cone of silence, e.g. separate listening booths or several concurrent presentations that are soundproof from one another
    • add options to the menus
  • Examples of uses of the Open Wonderland environment:
    • Health Care: Birmingham City University uses Wonderland for communications training for medical personnel, e.g. teaching nurses how to communicate with doctors. Using Wonderland's integration with telephone networks, the in-world nurse calls the doctor and tries to convince him to come in-world to do a virtual consultation.
    • Simulations of traffic accidents and rescue of accident victims, from scene of accident to emergency room. A group in Spain trains personnel live in their facility, but uses OpenWonderland as a review of their live sessions, allowing for different scenarios and practices.
    • Aircraft maintenance training
    • ShanghAI Lecture Series, University of Zürich: artificial intelligence lecture series in-world with students located in different continents
    • University of Essex use a mixed-reality teaching and learning environment, i.e. a live classroom with a virtual extension using a screen and webcam
    • University of Missouri's iSocial project: a virtual world to help teach communication skills to children with autism spectrum disorder
    • A student project in Canada integrated a Wiimote on a bicycle to develop a game for children with cerebral palsy
  • Opportunities for contributing to the Open Wonderland community:
    • The project's site is OpenWonderland.org, which hosts the official forum and provides links to other venues.
    • Translators into languages beyond those already offered are appreciated.
    • Writers of documentation are always in need.

External Links

Questions from the audience


No ads

Production Information

  • Edited by: Tony
  • Notes:
Info.png This area is for use by TWiT staff only. Please do not add or edit any content within this section.