Wednesday, March 21, 2007

Changing Times



In a recent Point of View article in The Chronicle Review, Cathy N. Davidson expresses her opinion on the Middlebury College History Department's recent snubbing of Wikipedia and why academic institutions can no longer ignore the changes that are being brought about by social software technologies and the types of creative dynamics they enable. The issues discussed in Cathy's piece have relevance to social collaborative tools such as wikis and the types of co-constructed knowledge spaces that Croquet-based educational environments make possible.

Today's co-constructed 3D environments provide us with the potential to disseminate ideas as visual and dynamic objects in the way that text-based facts and ideas are constructed and disseminated via today's Wikipedia. This capability will have a profound effect on the academic world in that it has the potential to fundamentally change to how we communicate and learn. The changing legitimacy of Wikipedia is only the tip of the iceberg. The advent of social software and self-regulating large-scale group dynamics stands to challenge traditional models of instruction, authorship, copyright, and the value of static auteur-generated scholarly works.

Monday, March 12, 2007

Metaverse Scalability



Back in the mid-1990s, while we were designing ViOS as a large-scale commercial server-dependent and massively-multiuser metaverse application, I was deeply concerned that its success as a widely-used platform would be its undoing. Thats because, unlike the web, multi-user immersive environments require relatively constant interactions between clients and servers - and those interactions don't scale well for large numbers of users.

Virtual environments such as multi-user flight simulators and first-person shooters rely on many independent server sessions that are limited to a relatively few users at any one time. Massively multi-user metaverses, on the other hand, require the client to be updated as fast as things happen within the environment. This means that large-scale metaverses need a lot of horsepower in the server layer since every move and every action of every avatar must be conveyed to every client. This puts a tremendous load on a few servers for even the most trivial of interactions. The approach simply doesn't scale to support the widespread global information systems that the Croquet architecture is being designed to make possible.

Our strategy back at ViOS, Inc. was to simply re-tune the system and put up more servers as the loads increased - hoping for the best. That approach would work well for Intranet applications that serviced relatively small numbers of clients. It even worked well for ViOS' initial user base of around 15,000 unique users. Problem was that once we had several thousand simultaneous Viosians tooling about in the landscape, they began to overload our interactivity servers, resulting in performance problems and service interruptions. Since there wasn't a lot of cash flow or investment capital during the 2001 post dot-com financial downdraft, we were unable to add servers at a rate that could meet the demand. If we had, it might have led to another few years of success for the ViOS metaverse platform - but sooner or later we would have been brought down by fundamental flaws in our approach as a bottlenecked client-server based architecture.

The Croquet technology has been developed with these lessons in mind. It is designed to scale in support of interconnected multiverses of millions of users without the need for any dedicated server infrastructure. Croquet's architecture makes it possible to develop metaverse applications in which, anyone can freely put up content in islands of any size, interlink those islands with any number of other islands, and control access to those islands.

By contrast Second Life makes money by controlling who can create islands and how those islands are linked to each other. It also has a very similar technical architecture to that of ViOS - a vintage twentieth century client-server architecture with with single points of failure, inertia, and control. It's been interesting to watch Linden Lab's struggle with the inevitable technical problems faced by Second Life as a result of its recent popularity, constrained architecture, and non-scaling technical approach. For details on some of those struggles click here, here, and here.

Sunday, March 04, 2007

Metaverse Interoperability



For some time now, Laurence Rozier has been developing a message format that, among other things, can allow for interoperability between metaverse environments. Called Remote Actions Packets (RAP), it basically makes it possible for someone to do something in, say, Second Life and have that same action replicated in Croquet - and vice versa. RAP messages consist of an actor identifier, an action name, and an encoded list of stage directions.

In this simple video, you will see a Croquet window (on the right) side by side with a Second Life window (on the left). Each shows a live running world containing a simple cube. When the cube in Second Life is clicked, a script runs that causes the cube to move. Almost immediately, you will see this action replicated in the Croquet world. Next, a Croquet menu select initiates a move of the cube in the Croquet window. After a short delay, the simple cube movement is mirrored in Second Life.

The implications of Laurence's work are that Croquet worlds can now be made to mirror aspects of Second Life worlds - and vice versa. This also means that there's now a way by which actions taken within metaverses such as Croquet can be logged to text files. That particular capability would be of great importance to educators, researchers, and marketers who are interested in understanding what kinds of things have taken place in Croquet environments.

Thursday, March 01, 2007

Sophie


Sophie is new open source Squeak Smalltalk-based software application for creating digital multimedia books that are easy to build. A product of the Institute for the Future of the Book, It is in essence a multimedia authoring system. Sophie-generated books can resemble regular books containing text and pictures, or they may also contain video, audio clips, images in a slide show, other books, links out to the web, and allow for reader interaction.

Sound a lot like what the web was supposed to be? You bet. The difference is that Sophie has been developed as a tool to enable non-technical people to assemble digital documents without needing to learn complex computer languages or to rely on programmers. Still, Sophie uses a human-readable distributed XML format to ensure that a user's content remain accessible for decades to come. Should a particular title need features beyond those provided by Sophie (such as performance or databasing) there is little in the way of preventing those systems from being plugged in on a per book or per distribution basis.

The intent of Sophie is to facilitate the shift from page to screen as a means of scholarly communication. Many academics find it difficult to move to the digital medium because of the technical barriers to doing so in a sophisticated manner. That has a lot to do with why the Research in Information Technology Program of the the Andrew W. Mellon Foundation and the University of Southern California School of Cinematic Arts chose to fund this project.

Sophie is device and OS independent - and best of all, because of its implementation in Squeak, it is fundamentally compatible as a powerful tool within Croquet-based immersive environments. In fact, we are currently exploring what it might take to combine these powerful technologies into a single application and in so doing, bring to bear the power of distributed multimedia authoring directly into late-binding and device-independent collaborative immersive environments - kind of like a powerful open source groupware solution with 3D capabilities. To bring these technologies together would be of great value to education and beyond - and would represent an excellent choice for our developing communities. :)

Sophie is available here, and a video demo is here (the demo starts at: 23:32).

Tuesday, February 20, 2007

A CIO Insight



Alan Kay was recently interviewed for CIO Insight magazine's Expert Voices feature. In this piece entitled Alan Kay: The PC Must Be Revamped—Now, Alan discusses the mindsets that stand in the way of real innovation - and what his not-for-profit VPRI is doing to address the issue. In the article, Alan defines Croquet as one of those efforts and as "a new way of doing an operating system, or as a layer over TCP/IP that automatically coordinates dynamic objects over the entire Internet in real time. This coordination is done efficiently enough so that people with just their computers, and no other central server, can work in the same virtual shared space in real time."

Monday, February 05, 2007

Laying the Foundations



Given the relative public silence around the Croquet project in recent months, I've been getting lots of emails asking about what's been happening since last Spring's Beta release. Well, there's been a lot going on. Several of us have been hard at work developing the foundations for a larger and more inclusive public effort around the project. With the transitioning to Croquet 1.0, we are in the process of setting up a not-for-profit corporation to house the open source project. The corporation will provide the governance structure required to ensure that continued development of the open source technology and that local Croquet development efforts receive the support they need from a self-sustaining and growing community of peers.

On the technology side, there are many dedicated people who have also been hard at work debugging and hardening the system for its move out of Beta. For this, special thanks need to go to Howard Stearns, Mark P. McCahill and his team at Minnesota, David A. Smith, Andreas Raab, Joshua Gargus, Ed Boyce, and Dan Fakken, for doing what needed doing. We are now testing and working on documentation and our efforts are coming to a point where the silence will soon be broken.

Monday, April 17, 2006

Very soon...



The version 1.0 release of the Croquet SDK is imminent!

Wednesday, January 25, 2006

Working Hedgehog



The upcoming version 1.0 release of Croquet has been code named "Hedgehog". I know that many of you have been waiting for news of its release date. The committee has been working hard to make it publicly available early this year - part of the reason that things have appeared so very quiet on the blogs and user's forum. The silence is the sound of intense work. We (actually mostly Andreas and David) are debugging the code and Mark and I are working with the Wisconsin and Minnesota teams to prepare a download package for eventual publication on the Croquet Project website.

Hedgehog constitutes a major enhancement and, in some cases, reworking of the core system. Important changes have to do with the following concepts:

Islands and their replication
Routers/controllers with time-based replication
Joining
Capability facets
Overlay portals
Ghost objects
Incorporation of Tweak
Modifications to the graphics engine
Use of 3.8 Squeak

Many of these new features have already been discussed in papers presented at the OOPSLA 2005 conference. These topics will also be discussed by David Smith and Andreas Raab at the upcoming C5 conference to be held this week at Berkeley. The really good news is that all of these are functioning in the present snapshot. Now its a question of debugging.

I regret that we are unable to announce a precise release date at this time. Nor is the committee able to provide any support for the open source system once it is released (we all have day jobs). That is to be the role of the Croquet Consortium - presently being organized at the C5 meeting in Berkely. The idea behind the consortium is to move the project from a relatively closed group of people developing open source software to a broad based community effort to develop an open source system backed by a not-for-profit community-led organization. This will be a significant and much needed development for the project. That will be the topic of my next post....

Tuesday, January 10, 2006

Floor It!



Want to make a floor? Well, then see #makeFloor:fileName: and it's callers for examples of making a floor.

The photo is one that I took of the floor of the Sistine Chapel - one of the world's most under-appreciated works of art.

Monday, January 09, 2006

The Unauthorized Tutorials



In an online posting, the Brazilian programmer Américo Damasceno reminded me that the best way to learn something is to try and teach it. Américo certainly took this assertion to heart and decided that the best way for him to learn Croquet technology was to prepare a series of three of step-by-step online tutorials on Croquet and Squeak programming. The first of these is an Introduction to Basic Croquet Programming. The second is called Basic 3D Programming in Croquet. The third is a Step-by-Step Tutorial on Squeak 3.6.

In addition to the undoubted benefit that Américo has received by putting them together, many folks have told me that they can be quite useful and informative to those who wish to get started with Croquet (production value not withstanding). I know that there are a lot of readers of this blog who are programmers interested in getting their feet wet with the system. My advice to you is to walk through these tutirials as a way to begin exploring programming approaches in Croquet (that is, until someone prepares official tutorials for the v1.0 release). For those of you who are not programmers, there is a solution currently being developed that allows users to develop meaningful and interactive content in Croquet worlds without the need to program the system. It is code-named Brie. More on that in a future posting...

Please keep in mind that Américo's tutorials are based on the Jasmine developer's preview of Croquet and much of what they contain may not apply to v1.0 (which includes some very fundamental differences from the Jasmine developer's preview). Nonetheless, I direct people there since some programmers will unoubtedly find the tutorials very useful. Thanks to Américo for providing the emerging community with this valuable resource!

Monday, December 19, 2005

Presenting Croquet



Last October, Preston Austin and I gave a presentation on the Croquet Project at an event sponsored by Accelerate Madison, a premier Wisconsin-based networking and business support organization focused on information technology issues. Fortunately, the organizers arranged to record the entire presentation and make it available to anyone via Webcast. The Webcast includes the full program and presentation including video, audio and visual graphics. Its one of the only resources on the web that can provide you with view of Croquet technology in action. Click here to view the October 13th, 2005 presentation.

Tuesday, November 01, 2005

The Devil Made Me, DoIT!



I am pleased to announce that I have resigned my position as Assistant Director with UW-Madison's Division of Information Technology (DoIT) in order to accept the position of Assistant Vice President for Academic Services and Technology Support wth Duke University's Office of Information Technology. The Office of Information Technology (OIT) is the primary central infrastructure and service provider of information technologies for Duke University. The organization provides a broad range of services, spanning the areas of networking, telecommunications, central computing facilities, enterprise systems, education and research support, general computing support, and security. In this new position, I have broad responsibilities for Duke's academic and research computing development and support efforts as well as all customer service functions of Duke's Office of Information Technology. I will also be working with others on the Duke Digital Initiative (DDI), a major instructional technology program focused on experimentation, development, and implementation of digital technology in academic environments and will be seeking to build Duke University's capability to develop, deploy, and support Croquet-based solutions for higher education in partnership with the newly forming Croquet Consortium. I am jazzed about the possibilities!

Saturday, September 03, 2005

Apple Hill Learning Lab



Each year, Alan Kay brings a group of people together at the Apple Hill Center for the Performing Arts in the beautiful mountains of southern New Hampshire. This three-day event in August provides invitees with an opportunity to spend quality time interacting with one another. The group includes technologists, designers, artists, musicians, in the tradition of other north-eastern creative retreats (Yaddo, etc.). The event also features great food and great music (by the Apple Hill Chamber Players). As I reflect back on my experiences at Apple Hill, I am struck by the deep importance of the contextualized social presence that occurs there and the positive effect that it has in support of creativity among the participants. Bringing people together in a way that allows serendipitous social interactions to take place is a wonderful way of stimulating collaborative creativity - and at Apple Hill, it really does work. There is lots of group interaction and lots of one-on-ones. Hopefully, Croquet will provide a technological framework for extending the value of such contextualized social presence into online spaces. The success of doing so depends on how well applications are designed and built on the core technology of the Croquet SDK. Until then, Apple Hill will have to do ;) . This year's event was particularly interesting because of the presence there of many folks who are working on hardware and software for Nicholas Negroponte's $100 Laptop Initiative and on the final stages of the Croquet 1.0 SDK.

Friday, August 26, 2005

Critical 3D



The Croquet development team at the University of Wisconsin is now beginning work on a six month pilot project to demonstrate instructional potential of a Croquet-based learning environment. The project involves partnering between our group and Michael Connors, a professor in the Department of Art at the UW School of Education, to develop authoring tools that allow the instructor to create an instructional environment to address critical barriers involved with the art critique process and provide students with means to upload, share, and critique their art projects within collaborative online spaces. The goals of critique in art are to remove individual perceptual barriers, develop an appreciation of how others perceive one's work, to overcome biases related to psycho-social conditioning, and develop skills of articulation and critical discourse. We are hoping that this project will lead to the development of generalized Croquet-based authoring tools that can be adapted to many different curricula, such as those in Law, Sociology, Psychology, Guidance, Business Management, Medicine, etc..

Friday, July 15, 2005

Pay For Play



Many players of MMORPGs don't realize that some players are actually paying people in India to run up their character's status. For about $30 US you can advance your character significantly. This form of "cheating" shows that social status is, to some, even more important than game play. It may be interesting to recall that hiring someone to assume your identity and have them go into battle for you was something done by conscription-evading aristocrats during the American Civil War. Now, for a modest fee, you can hire a worker in India to go into virtual battle on your behalf. Some of you might ask why players wouldn't just enjoy getting there on their own - after all, isn't that the point of playing the game? It may be that the existence of this form of 'cheat' indicates the importance of social status over game play as a primary motivator to those engaged in MMORPGs. This is a notion often overlooked by game researchers who tend to focus on issues of game play as primary motivators of user involvement. We have only begun to scratch the surface on understanding how powerful verifiable online social status can be and how it can be used to benefit online education.

Sunday, May 08, 2005

A Second Life



David Smith and I will be giving a virtual presentation on where the Croquet Project is heading at The Second Life Future Salon, a monthly mini-conference held within (but not affiliated with) Second Life. Our presentation on May 26th will be part of a larger discussion of innovation issues around digital worlds as well as wider technology, business, and social topics viewed through a digital worlds lens.




These screenshots are from the first of such SL Future Salons that took place last month. The way it works is that David and I will create an avatar, go into Second Life, give a 20-30 minute presentation via VOIP, and then do Q&A with the audience via text chat. Should be fun! I hope that may of you readers will join us there (by there I mean Second Life ;) ).

Audio from the first of such Salons available here.

Sunday, April 24, 2005

Croquet on Macs



I've recently been asked to join the steering committee for Apple Computer's newly forming Mac Learning Enterprise. Along with other committee members from the New Media Consortium, NYU, Simon Frasier University, Rice University, UCLA, University of Michigan, and MIT (among others), the Mac Learning Enterprise community is intended to be a resource for educators, technologists, IT professionals, developers and change agents who are transforming education through innovation built on open standards.

The community seeks to document and share its experiences, expertise, and knowledge about implementing and deploying open source learning infrastructure solutions that can run on, or be integrated with, Apple technology. In addition to growing the community's knowledge base, members of the Mac Learning Enterprise community will provide feedback to Apple product and engineering managers so that they may improve functionality, performance, and integration across various Apple technologies, tools, and applications in support of open source software. Several working groups are now being convened to explore solution stacks and tools associated with the implementation of collaborative learning environments. At this time, Apple has identified technology implementations and deployments of Croquet, OSPI, OKI, and Sakai to be of primary interest.

It is great to see that Apple is now taking such an interest in Croquet and that the company is supporting the inclusion of Croquet as part of its effort to support the development of innovative open source solutions for learning enterprises.

Friday, April 22, 2005

A Croquet Bricolage?



OK, I'm just going to "throw this out there" and see what other people think - Could this idea from Claude Lévi-Strauss' The Savage Mind (The University of Chicago Press 1966 [1962]) have any bearing on the approach to our project or the approach of those who might most use Croquet? Well, I suspect it might. But I'm interested in hearing what others mights say...

"The 'bricoleur' is adept at performing a large number of diverse tasks; but, unlike the engineer, he does not subordinate each of them to the availability of raw materials and tools conceived and procured for the purpose of the project. His universe of instruments is closed and the rules of his game are always to make do with 'whatever is at hand', that is to say with a set of tools and materials which is always finite and is also heterogeneous because what it contains bears no relation to the current project, or indeed to any particular project, but is the contingent result of all the occasions there have been to renew or enrich the stock or to maintain it with the remains of previous constructions or destructions. The set of the 'bricoleur's' means cannot therefore be defined in terms of a project (which would presuppose besides, that, as in the case of the engineer, there were, at least in theory, as many sets of tools and materials or 'instrumental sets', as there are different kinds of projects). It is to be defined only by its potential use or, putting this another way and in the language of the 'bricoleur' himself, because the elements are collected or retained on the principle that 'they may always come in handy'. Such elements are specialized up to a point, sufficiently for the 'bricoleur' not to need the equipment and knowledge of all trades and professions, but not enough for each of them to have only one definite and determinate use. They each represent a set of actual and possible relations; they are 'operators' but they can be used for any operations of the same type."

As usual, comments to this post would be most welcome!

Tuesday, April 19, 2005

Welcome Joshua!



The UW-Madison has added yet another full-time Croquet developer. We are pleased to announce that Joshua Gargus, a highly experienced Squeak developer, will be bringing his deep skills and creativity to the Madison campus beginning May 9th. Joshua comes to us from PlayMotion where he was a lead developer involved in the design and implementation of a framework allowing applications to mix OpenGL and D3D, the developmnt of an OpenAL-based reactive sound engine, a vision re-calibration method for changing lighting conditions, and a unified XML configuration framework for all the company's applications. Prior to joining PlayMotion, Joshua was a research assistant at Georgia Tech where he worked on mo-cap (motion capture) and developed pen-based interfaces for use in animation. Joshua has also served as a contractor for Viewpoints Research where he worked on TrueType rendering of arbitrarily nested equations and developed EToys applications for Alan. We are excited to have a first-rate developer with such creativity and deep squeak experience join the team and contribute to the successful widespread adoption of Croquet. Welcome Joshua!

Friday, April 15, 2005

Standing on the Plateau



Most every day I have the wonderful pleasure of being able to work with Marilyn May Lombardi. Marilyn is Senior Strategist for UW-Madison's Division of Information Technology, and in addition to enduring marriage to me for over 14 years, she is also a key member of the core Croquet team here at UW. Marilyn is presently working with our campus collaborators on several different aspects of the project. She has been working to design requirements for the use of Croquet in higher education settings and has also been working with some of our external partners and writing grant proposals to various agencies.

Based on her work with the project, Marilyn was recently invited by Dianna Oblinger, NLII's new director, to write both a short New Horizons Feature on Croquet's potential impact to higher education as well as a longer report on the same topic which will have the distinction of being the first of a series of research reports published by a newly redefined NLII. Here is the shorter version that appeared in the print edition of Educause Review:

Standing on the Plateau

By Marilyn May Lombardi

"Recently, I paid a visit to my university’s Web site, where I found a campus slideshow for prospective students. Similar slideshows and virtual tours are posted on many other college and university Web sites. These usually contain image after image of young people lounging, walking, eating, and laughing in sun-drenched settings across campus. At the University of Wisconsin–Madison, the students are sprawled on vast lawns in a perpetual summer: “a favorite place to study—and not to study.” They enjoy the lakeshore view from the student union terrace: “famous for its sights and sounds.” They take in the nightlife of downtown Madison: “No matter what time you walk down State Street, you’ll end up seeing someone you know. You’ll always run into someone different, someone new.”

Deeper into the slideshow, students are actually pictured at work, but not in classrooms or lecture halls. They stand outdoors, peering through land-surveying instruments: “the advantage of out-ofclass projects and research opportunities.” Or they gather around a computer terminal in an energetically cluttered laboratory: “Research at UW-Madison is a participatory venture, in which students and professors often work side by side.” And in one astounding shot taken through a fish-eye lens, the viewer peers down on an intrepid rock-climber as he reaches the top of a rather formidable campus wall. The quote that accompanies this photograph pretty much sums up the general outlook: “Most of the lessons we learn here are not from lecture halls, not from books. They are from our experiences in life.”

Through the medium of the campus itself, college and university communications offices are offering prospective students (and their parents) the promise of an experience. Institutions of higher education (particularly those with centralized campuses) promote themselves, first, as places with people. The physical campus sets up the enabling conditions for a complex social ecology to emerge over time. Large numbers of students engage in daily role-playing (also known as “critical thinking”), during which they “perform” a particular point of view—trying it on for size, explaining, critiquing, justifying, deepening, and reinforcing their understanding while strengthening their group identity. Ask anyone who has ever been through a rigorous program of study, and chances are he or she will remember learning more from fellow students than from professors.

The unique value of campus life, then, is a matter of proximity—the ability to position oneself in direct relation to relevant people and resources. The sociologist Erving Goffman called these spatially defined moments of engagement “focused gatherings” in which people are “engrossed in a common flow of activity and relating to one another in terms of that flow.” The gathering takes its form from the situation that evokes it, “the floor on which it is placed,” as Goffman put it.1 Add to this foundation the ready availability of tools to forcefully express, embody, and exchange ideas, and the campus has all the makings of one vast “collaboratory.”

Despite all this, we continue to design online learning environments that do little more than replicate the remoteness of a lecture hall. Clearly, any approach to online education that restricts itself to the delivery of pre-packaged content ignores the depth and social texture of campus life, along with the collaborative nature of learning. Of the three broad aims of higher education as identified by learning researchers—(1) skill acquisition and competence with tools and techniques; (2) socialization and induction into the canons of particular communities, professions, or disciplines; and (3) development of an intentional, or self-directed, approach to lifelong learning—current online learning environments are relatively successful in managing only the first, most transactional of goals.2

Meanwhile, we’ve reached a critical juncture in our institutional commitments to educational technology. Advances in networking and software design finally allow educators to do far more than merely automate the traditional lecture course. Over the last several years, higher education leaders have outfitted their campuses with fat pipelines and high-speed connectivity. Increasingly, their students come to campus equipped with the latest in commercially available PCs and laptops. Hard drives are bigger, graphics accelerators speed up 3D image display, and faster processing chips simulate real-world physics with relative ease.

At the same time, college and university open source software development projects are signaling dissatisfaction with commercial approaches to meeting pedagogical needs. A growing number of institutions with the capacity to build their own learning software are working to design applications suited to their individual requirements. Proprietary course management systems may have helped institutions leverage new media, but many in higher education feel these systems are making little headway when it comes to providing innovative technologies for real-time interactions among people, information, and systems. As one analyst concluded recently, “proprietary systems . . . seem to have hit an early plateau,” whereas “open source applications are standing on that plateau looking forward.”3

Standing on that plateau, looking forward, open source application developers are taking the time to consider what they would do differently if they were to design a new online learning environment today, knowing what they now know about the power of computing and networking technologies. For example, the members of the Croquet Project, a new open source initiative, are exploring what it would take to make online learning as personally involving, meaningful, and rewarding as campus-based learning. The project’s participants, who are coming together from around the world, believe that a transformative platform for online learning and teaching is finally within reach.

So, what is the Croquet Project? Imagine you are a graduate student in astronomy and have been asked to demonstrate your knowledge of Kepler’s Laws. You launch a software application on your computer and enter a three-dimensional online world. Inside this persistent environment, you use the drop-down menu to quickly design and deploy a dynamic simulation of the solar system. As your simulation runs, your professor enters the 3D online lab space and takes a closer look. Your professor downloads a file from his own hard drive into the virtual laboratory, and it appears inside a display window he just created with a click of the mouse. Remarkably, you and your professor are now able to see one another make additions and changes to the same document, all while keeping up a steady banter with the help of network-enabled telephony built into the software system. Impressed with your work, the professor invites his entire introductory astronomy class to a viewing and discussion of your simulation. From across campus, hundreds of students gather inside the virtual lab. The instructor’s video image (captured by the web camera on his laptop) is visible to the students he guides through the demonstration. Classmates wander among the planets, talking together in small groups, adjusting the timing and motion of the celestial machinery, annotating elements of the scene with comments or references, and gaining an unprecedented appreciation for Kepler’s Laws in action.

This vision of the future in computer-mediated education is driving the efforts of the open source Croquet Project. The project is designed specifically to make the most of advanced campus networks and the untapped computational resources of individual machines by enabling safe and secure cooperation— among machines, among user interfaces, among content developers, among users, and among institutions.

Croquet is the combined vision of its six core architects: David A. Smith, David P. Reed, Andreas Raab, Julian Lombardi, Mark P. McCahill, and the computer visionary Alan Kay. The winner of both the 2003 ACM Turing Award and the 2004 NAE Charles Stark Draper Prize, Kay is famous for his design of the now-familiar desktop metaphor for personal computing, as well as his object-oriented approach to computer programming. In some respects, the project is a way of fulfilling Kay’s abiding vision of the computer as a “meta-medium” and harnessing its full expressive power. Recognizing that little had changed since Kay introduced the overlapping windows interface thirty years ago, the Croquet team intends to provide a comparable computing standard for a new age of collaborative work and learning.

As of this writing, researchers and technologists from twenty universities have joined the higher education development effort, jointly spearheaded by the University of Wisconsin and the University of Minnesota. This open source development community is working to ensure that the Croquet platform is able to address the special needs and concerns of higher education. Programmers and educational application developers interested in familiarizing themselves with the Croquet programming environment are welcome to download a developer’s preview of the technology from the Croquet Project Web site (http://croquetproject. org/). A more complete release of the Croquet technologies is planned to appear on the Croquet Web site later this year.

Higher education is moving closer to an online learning environment that captures the social vitality and collaborative spirit of the real-world campus. A growing open source community of learning researchers, software architects, visualization and simulation specialists, and user interface designers has taken up the challenge, lending their expertise to the Croquet Project. Such next-generation systems promise to extend the primary advantages of campus-based learning into the online realm, deepening and transforming the way we teach and learn.

Notes

1. Erving Goffman, Encounters: Two Studies in the Sociology of Interaction (Indianapolis: Bobbs-Merrill, 1961), 9–10.

2. Kenneth A. Bruffee, Collaborative Learning: Higher Education, Interdependence, and the Authority of Knowledge (Baltimore: Johns Hopkins University Press, 1993).

3. Christopher D. Coppola, “Will Open Source Software Unlock the Potential of eLearning?” elearning Dialogue, December 1, 2004.


Marilyn's longer twenty page report can be downloaded here.

Monday, February 07, 2005

Back from NLII



The NLII meeting in New Orleans was worthwhile and rewarding - and New Orleans is quite the place to be, even the week before Mardi Gras! Mark and I ended up staying right in the French Quarter and were quite unprepared for the level of revelry that takes place in the week preceeding the official Mardi Gras celebration. A pleasant surprise. The streets were filled all night with very loud and boisterous revelment (pardonnez mon français faible). Still, we were able to adequately rest up for the preconference Croquet presentation the next morning. ;)

At the preconference session, we met some key people in the higher education IT world. The response to Croquet was very positive, and we've now been invited to attend the Emerging Practices and Learning Technologies in Higher Education NLII Focus Session at Rice University on Mar 8-9, 2005 whose attendees will be exploring strategies for anticipating, evaluating and incorporating new and emerging information technologies on their campuses. This should provide valuable insights into how we might best approach the issues around deploying Croquet in higher education settings.

I am particularly gratified to read a Croquet-related blog posting from one of the attendees at the NLII preconference session. It appeared here. Here is an excerpt:

"...I don’t think I’ll ever need to eat again.

But I should really speak to the NLII annual meeting, and not just to the New Orleans milieu, although, well, whew, what a town. Appetite city.

As wonderful as the food has been, though, the intellectual feast has already topped it. The session on Croquet yesterday morning left me rubbing my eyes in near-disbelief as I witnessed a demonstration of a 3D recursive meta-environment in which people, places, and things can be placed in rich contexts that are themselves meaningful creations, often collaborative creations. I saw a landscape in which one could carry around a 3D “snapshot” of a space that was dynamically updated even as one carried it around. In short, I saw a model of individual cognition externalized, cognition networked with other minds in a social context that was compelling, fun, piquant, and a little mysterious. Imagine a Magritte painting that first becomes “real,” and then becomes a prompt that asks students to reconceive their own conceptual work in a course–together. It’s very difficult to explain, but once you see it in action, impossible to forget. I’ll never be satisfied with the desktop metaphor for computing again.


I do believe that Croquet is a way to bootstrap the Secret Society for Real School into the next key stage of its development. The first stage, an increasing dissatisfaction with a status quo in which education scales by means of an industrial model, is already upon us. That stage will end, I think, with some kind of popular revolt in which traditional schooling (traditional in the sense of what we’ve had for the last 100 years, not in the sense of, say, the Platonic Academy) will face crippling competition with other more compelling and convenient providers. I hope before we get to the end of that stage that the social and expertise contexts of real school will be freed from deadening 50-75 minute periods to explore its real potential as an ongoing conference devoted to, as Jerome Bruner put it, raising consciousness about the possibilities of communal mental experience. Subject areas, specific knowledge, even quizzes will still be part of the experience. But as with a good conference, the narrative that threads through the individual courses will continually inspire fresh perspectives–and a powerful sense of shared mission. A sense, finally, of occasion. Which brings Croquet back into the picture: the sense of occasion provided by that 3d object-oriented landscape, both dreamy and a little edgy, makes explicit the mental landscape we want our students to inhabit and, at last, build with us.
"

Saturday, January 29, 2005

At the C5 Conference



Well, most of the crew is here at the beautiful Granvia Hotel in Kyoto, Japan. Alan, David Smith, Andreas, and Mark are just down the hall. We are all taking a break in the midst of the Third International Conference on Creating, Connecting and Collaborating through Computing (C5 2005). This conference is emerging as the primary venue for those working with Croquet. It is intended as an international forum for the discussion and presentation of creative and collaborative environments among researchers, developers and users of collaboration technologies, learning environments, and object-oriented languages (especially Smalltalk, Squeak and Croquet). This year, there are a total of six papers that deal primarily with Croquet. Alan gave the keynote entitled "The ARPA Dream Revisited". Mark and I then gave our two papers on user interface approaches for higher education authoring/learning environments. Immediately afterwards, David Smith rocked our worlds with a demonstration of Filters and Tasks in Croquet. More on that in a future posting....

Friday, January 14, 2005

Croquet, Everyone?



The following article written by Quentin Hardy and entitled "Croquet, Everyone?" just appeared in the technology section of Forbes Magazine's January 31st issue:

"Alan Kay, a legend in computing, thought it was time for something better. So he built it.

Thirty years ago Alan Kay oversaw the creation of many of the personal computer's clever innovations, among them windows, point-and-click file opening and networks. His lasting success irks him. "Except for the silicon, we've only gotten 5% of the potential of the PC revolution," he says.

Kay wants to take computing forward with his next great invention, an operating system that puts the user in a three-dimensional graphic world with scores of other users, all computing collaboratively and communicating through audio and visual messaging. Called Croquet, it runs on top of operating systems like Windows, Linux and Apple. Its innovation is in relocating the now-decades-old interface of windows and folders to a shared virtual world. You can landscape it any way you want, with mountain ranges, oceans or meeting rooms. Users become color icons or, if you'd rather, 3-D characters such as fish or bunnies. You zoom around in this rich, icon-filled space and call up digital photos, Web pages, science projects or PowerPoint presentations.

You can view and alter other users' files in one place, chat with those other users over the Internet and then move on to far-off objects and people, if they seem interesting. A budget report's graphics, say, might be made a figurative 10 feet tall, then changed by one user to reflect new sales data, then recolored by someone else for sharper resolution. You can do all this even if your Internet connection is a creaky-slow dial-up modem.

Croquet packs a lot of power for a little piece of software, one with but a single line of code for every 300 in Windows XP. Kay built Croquet with help from six crack programmers, funding it first with his own money and then through Hewlett-Packard's research labs, where he is a senior fellow. The total cost for the project, released for free last October, is less than $10 million, a drop in a Microsoft bucket. Says Kay: "Good math and small teams win."

In the 1970s Kay, now 64 years old, was an early member of Xerox's famous Palo Alto Research Center. Some of his inventions from that time, including an object-oriented programming language called Smalltalk, went into Croquet. He later worked on 3-D graphics at gamemaker Atari, compact computing systems at Apple Computer and easy-to-use interfaces at Disney.

Croquet comes as many institutions struggle with large, spread-out teams. The U.S. military is evaluating Croquet for training radio technicians to build field communications systems in virtual terrain replicating the landscape in Iraq. This spring the universities of Minnesota and Wisconsin will try Croquet for collaborative classroom labs. Intel, whose average employee is at any time on three different projects, is looking at Croquet as a way to make juggling work projects gamelike.

HP is playing Croquet by giving it away as an open-source project to build a user base quickly and to get an early read on what this sort of software will be useful for. "We don't get too focused on how to make money yet," says Patrick Scaglia, Kay's boss at HP. "We'll know within a couple of years. Good ideas take off rapidly, or they die.""

Thursday, January 13, 2005

Elevator Pitches



Elevator pitches are 30 second explanations of ideas. Croquet still needs a good one. Its not for lack of trying that we don't yet have a good one. This is because it is a very complex idea with many parts. What we probably need to do is tailor a set of pitches with each one oriented towards a particular audience type.

As noted earlier in this blog (Like an Elephant), the perception, if not value, of Croquet is very much different to different people. So, I thought it might be useful - and perhaps a bit entertaining - to have us use this blog as a way of collecting some elevator pitches from the members of our emerging community.

So here is the challenge: Please post to the comments what you believe to be an good elevator pitch for all or some aspect our project. It would be great if you would sign your contribution.

Should be interesting...

Wednesday, January 12, 2005

Dump the World Wide Web!



Here's an interesting excerpt from an article written by Bill Thompson that appeared on the www.opendemocracy.net website on December 23rd, 2004. What Thompson is saying has a good deal of relevance to what we are doing with Croquet. I will let the reader decide on where that relevance might be. Comments on this posting are particulary welcome.

"The World Wide Web is dead. Like a cartoon character running off a cliff but making it some way out into space before awareness brings gravity back into operation, it may continue to dominate our online lives a little longer, but its day is over.

Soon the whole clumsy, inadequate edifice will come crashing to the cyberspatial equivalent of the ground and we will look back upon the crazy decade from 1994 to 2004 for what it was – a dead-end in the development of the networked world.

The reasons are simple: the web, like many a political refugee, lacks a state. What’s worse, it doesn’t speak a language that will let it express anything more than basic requests for food, shelter or yet another poorly-resized JPEG image. Like all analogies this one breaks down pretty quickly if you scratch it too hard, but it’s worth keeping in mind during the (necessarily) more technical explanation you’re about to encounter.

It is important to understand how the web works. The web, like email, uses a “client-server” model. The client, in this case your browser, requests something – a web page – from a server. When a request is received, and assuming the parts are all there and the client has permission to take them, they are sent over the network by the server. It’s then up to the client to deal with them appropriately. In the case of a web page the elements will usually be a document written using HTML, the hypertext markup language, some image files and maybe extra bits and pieces. It is all very simple, and it’s made even simpler because the browser and the server communicate using a language of their very own called the Hypertext Transport Protocol, or HTTP.

The browser takes what it is given and displays it on your screen, laid out as prettily as it can manage. However once we want to do anything more complicated than display a page of text and graphics on a screen we rapidly discover that both HTML and HTTP are simply not up to the job.

The problems with HTML are serious but understandable. When Tim Berners-Lee created the web he wanted a simple text-based publishing tool for the high-energy physics community, and a simple markup language that let authors specify headings and link to other documents was fine.

But in 1993 two graduate students at a United States university decided they could improve on Tim’s work by writing a new browser which would display images too. In order to make this work they had to change HTML by adding the < IMG > tag – and they started a process of non-standard extensions which continues to this day.

The result is the mess we see today, where despite the best efforts of the standards bodies it is still necessary to write dozens of lines of code at the start of a web page in order to figure out which browser is in use, so that the “correct” version of the page can be sent over.

Present at the creation

It’s an appalling mess, but it wasn’t directly Tim’s fault. However the same cannot be said for HTTP, the protocol which allows browsers to ask for pages and servers to send them across the network. Here Tim’s desire for simplicity has led directly to our current problems, because he decided that the server should treat each request for a page from a browser as a separate transaction. The decision to make HTTP a “stateless” protocol has caused immense trouble. It’s rather like being served by a waiter with short-term memory loss: you can only order one course at a time because he will have forgotten your name, never mind your dessert order, by the time you’ve had your first spoonful of gazpacho.

Unfortunately many of the things that we want the web to do for us, from online shopping to having a newspaper that tailors its pages to our interests, rely on some degree of long-term interaction between client and server. Cookies, small data files that are placed on a client computer by the server, provide a partial solution, rather like the tattoos sported by Guy Pearce in the film Memento, but they are inelegant, complicated and far from reliable. As, indeed, the tattoos turn out to be.

We have spent the last decade fighting against the limitations of the web standards, extending, breaking, reinventing and compromising with them to the point where you can just about do online shopping, make pages look reasonably attractive and even offer personalised services.

But enough is enough. Just as it is sometimes necessary to demolish old buildings to make way for new, so it is time to move on from the web. It isn’t as if we need to look far for an alternative – we’ve had one since 1990 when the web was just starting to emerge from CERN physics lab. It’s called “distributed processing” and it enables programs to talk to each other in a far richer, more complex and more useful way than the web’s standards could ever support.

Had it not been for the rush to embrace the web’s page-based publishing model, choosing the simple solution over the right one, we would have proper distributed systems available today. Instead we have to invent technologies which preserve the web approach while making it slightly more usable, like the eXtensible Markup Language, or XML. Any tool that is too embarrassed even to use the first letter of its full name for an abbreviation is surely in trouble from the start.

Unusually for a company which is credited with following trends rather than creating them, Microsoft saw this first. They never liked the web and it was only the horrible realisation that every company, every net user and every competitor was going to invest a vast amount of money, effort and resources making it seem like it worked that forced Bill Gates to turn the company around and give it a web focus late in 1995.

At the time their programmers were just beginning to explore the possibility of direct programme-to-programme communication and network-based collaboration between applications. Without the distraction of the web we may well have had widespread distributed online services five or even more years ago.

These services would not rely on the Web browser as the single way of getting information from an online service, but would allow a wide range of different programs to work together over the network. We already accept that email, chat and even music sharing do not have to be Web-based, but we can go much further.

A news site could deliver text, images, audio and even video through a program designed for the purpose, instead of having to use a general-purpose browser, or a shopping site could build its own shopping cart and checkout that did nor rely on Web protocols. And we would have no need for Google, because information services would advertise their contents instead of having to be searched by inefficient ‘spiders’.

The web may have served a purpose once, giving net users something relatively simple to look at and use and convincing the world that being online was a good thing, but it has done so at great cost to the network’s architecture and has diverted research into usable, scalable and functional distributed systems for the last decade.

There is a deep need among the users for something better than the shoddy, half-baked hypertext publishing model that we geeks foolishly embraced back in the early 1990s. If we do not start delivering it the net itself will stumble, fail and eventually die away, trapped in this stateless web of deceit."

Sunday, January 09, 2005

NICT/UW-UM Collaboration



Our research groups at UW and UM have just entered into a collaborative research agreement with NICT (Japan's National Institute for Information and Communications Technology). The Croquet Committee is very pleased to have NICT recognize the potential of this new technology and to have them support important work in the development of Croquet. So, we are now off and running to achieve the following general objectives: 1) Adding user interface elements to Croquet for creating and retrieving annotations; 2) Adding support for importing and handling the placement of models and objects into Croquet environments; and 3) Developing user interfaces for allowing 3D content to be easily accessed from a digital repository or database and placed into a Croquet scene.

Developing this type of functionality for Croquet will go a long way in making it useful as a tool for education and training. The work is currently divided up into the following tasks which are scheduled to be completed this year:

1) Development of user interfaces for easy scene annotation in Croquet

• Researching and developing user interface conventions for adding notes to objects or locations within the 3D space (notes would be in the form of text, however, the technology will be developed in a way that supports video and audio annotations). Since all notes are themselves user-created objects within a scene, all notes may be added as annotations to existing authors' notes as well.
• Researching and developing tools to detect, view, and hide multiple authors' annotations. For example: a user should be able to view only the annotations that were made by a particular user or specified group of users.
• Researching and developing tools to define a path or course through a scene and identify selected annotations so that a tour of a scene and its annotations may be defined by one user and then followed by another user or groups of users.
• Researching and developing caching strategies to pre-fetch annotations and content when moving into a new region of a scene. For example: based on the user's position or level of authorization in the scene, the client would be able to dynamically fetch annotations that are not visible to other users lacking a similar position or level of authorization.

2) Development of graphical user interfaces for easily handling 3D objects

• Researching and developing the ability to import large and complex 3D models into a Croquet scene.
• Researching and developing a graphical user interface for rotating, moving, and magnifying objects in a Croquet scene.
• Researching and developing a graphical user interface for measuring, comparing, slicing, and moving objects between scenes (worlds).

3) Development of test content and capability of storing that content in a repository via the Croquet client

• Translation of existing open source/freely available sample content into appropriate format for implementation in Croquet spaces
• Creation of new (original) content for testing purposes
• Populating the digital repository (worldbase server) with new and translated content for testing purposes

4) Integration of annotations into a shared repository

• Developing a means by which users can be authenticated before allowing them to author content that can be promoted to the digital repository.
• Storing the author's annotations to a shared distributed repository
• Developing searching tools to locate author's contributions to the repository and to tag annotations with attributes/keywords so that the annotation repository can be searched on a number of attributes.

5) Making interaction with annotations an effective way of finding new information/viewpoints in a Croquet delivered environment

• Developing a means of automatically categorizing/cataloging annotations
• Developing a means of visualizing the difference/similarity among annotations
• Developing a way by which authors of annotations become notified when other users comment on, or further annotate, objects that the original authors have created.

In doing what's listed above, we'll obviously have to tackle some sticky technical problems. It should be fun and interesting. We hope that this work will also stimulate much thinking, problem solving, and code refinement across the larger development community.

Saturday, January 08, 2005

Can You Say Shibboleth?



Many of today's online environments and communities suffer from vulnerability to exploitation by those who seek to use the Internet's intrinsic anonymity to their own selfish advantage. Marketers, spies, and other unscrupulous Internet denizens have forced their way into private communities and email inboxes, disrupting the communities that they find - and sometimes even completely killing them. Those of us who have participated heavily in online communities over the years have lots of experience dealing with the imposters, forgers, and the ever-present anonymous cowards who can disrupt meanigful discourse or reduce it to a very low common denominator. Effective online educational environments must be efficiently insulated from such cruft. Here at UW we're looking into integrating federated identity management with Croquet. By doing so, Croquet users who use their own institutional login/password could access protected resources in Croquet places that are hosted by other institutions. The idea is that educational environments will benefit from people not being able to hide behind masks.

This is where the Shibboleth Project comes in. The project started in the late 1990s by Internet2 as a way of developing an open-source standards-based architecture that provides trusted, inter-institutional access to Web resources. It consists of an institutional Identity Provider component that authenticates users and provides trusted assertions about the user and a resource provider's Service Provider component which validates assertions and makes access control decisions about the user. Generally speaking, when an unidentified user attempts to access services, Shibboleth initiates a handshake between the Service and Identity Providers and allows the Identity Provider to create attribute assertions about the user without the Service Provider needing to keep track of the IDs of all potential users of the system.



Althogh it can get a bit freaky (as the above diagram suggests), this form of federated identity management permits the user's home institution to vouch for a users identity and provide a service provider with only the information necessary for a given session - an important way of protecting personal information, mitigating against identity theft, meeting FERPA and HIPPA requirements etc.. Integrating this now Web based system with Croquet would provide lots of benefits to educational and institutional uses of Croquet. Multiple insititutions (those with attribute repositories such as LDAP) could cooperate in creating restricted access learning environments in which students and educators from those institutions could interact and learn - without the need for each institution to set up an account for all the users of such spaces. A side benefit of this is that Fair Use limitation provisions on copyright laws would allow copyrightable materials to be distributed in such spaces - a feature that's really important to educators (and is probably one of the main reasons that academic institutions employ the use of cumbersome Course Management Systems over plain old websites, blogs, and wikis).



In case you're wondering, the word shibboleth refers to a kind of linguistic password: A way of speaking (a pronunciation, or the use of a particular expression) that identifies one as a member of an 'in' group. The term derives from the biblical story where two Semitic tribes, the Ephraimites and the Gileadites, have a great battle. The Gileadites defeat the Ephraimites, and set up a blockade to catch the fleeing Ephraimites. The sentries asked each person to say the word shibboleth (meaning 'ear of grain' or 'stream' depending on who you talk to). The Ephraimites, who had no sh sound in their language, pronounced the word with an s and were thereby unmasked as the enemy and slaughtered (and perhaps a few lisping Gileadites met their fate this way as well).

Monday, December 27, 2004

Like an Elephant



Time and again many of the new people that I speak with about Croquet immediately (and most certainly prematurely) begin making comparisons between what they think we are trying to do with Croquet and the technologies and categories of technologies with which they are already familiar. With few exceptions, this happens long before they gain even a rudimentary understanding about what we are actually seeking to accomplish through the efforts of this project.

Of course, relating something new to something familiar is a natural way of dealing with what's new. Categories are comfortable. But they can spawn preconceptions or even prejudices that then stand in the way of one's ability to see what is most important or individually unique about a new thing. This is especially true when a large share of a new thing's value lies in the outcome of the interaction between its constituent parts. Emergent properties can have great value...

This is essentially the problem described in John Godfrey Saxe's (1816-1887) poetic version of the famous Indian legend known as The Blind Men and the Elephant in which each observer only perceives a part of the whole in a way that prevents a wholistic understanding of the animal and what it is capable of doing.

It was six men of Indostan
To learning much inclined,
Who went to see the Elephant
(Though all of them were blind),
That each by observation
Might satisfy his mind.

The First approached the Elephant,
And happening to fall
Against his broad and sturdy side,
At once began to bawl:
"God bless me! but the Elephant
Is very like a wall!"

The Second, feeling of the tusk
Cried, "Ho! what have we here,
So very round and smooth and sharp?
To me `tis mighty clear
This wonder of an Elephant
Is very like a spear!"

The Third approached the animal,
And happening to take
The squirming trunk within his hands,
Thus boldly up he spake:
"I see," quoth he, "the Elephant
Is very like a snake!"

The Fourth reached out an eager hand,
And felt about the knee:
"What most this wondrous beast is like
Is mighty plain," quoth he;
"'Tis clear enough the Elephant
Is very like a tree!"

The Fifth, who chanced to touch the ear,
Said: "E'en the blindest man
Can tell what this resembles most;
Deny the fact who can,
This marvel of an Elephant
Is very like a fan!"

The Sixth no sooner had begun
About the beast to grope,
Than, seizing on the swinging tail
That fell within his scope.
"I see," quoth he, "the Elephant
Is very like a rope!"

And so these men of Indostan
Disputed loud and long,
Each in his own opinion
Exceeding stiff and strong,
Though each was partly in the right,
And all were in the wrong!

Moral:

So oft in theologic wars,
The disputants, I ween,
Rail on in utter ignorance
Of what each other mean,
And prate about an Elephant
Not one of them has seen!


Unfortunatly, the vision of what Croquet really is remains just a vision until we begin deploying a more mature networking technology and the framework of interactivity and worldbase servers as described in whitepapers on the project website. Words do it little justice. Trying to explain it is kind of like trying to describe the smell of coffee to a Martian with no earthly experience. As the character Morpheus in The Matrix puts it so well: "Unfortunately no one can be told what the matrix is, you have to see it for yourself." This lack of experience with the whole is why so many are compelled to relate only to Croquet's consituent parts at the level of the categories with which they are already familiar.

Below I list below some of the typical comments that I hear from people who are new to Croquet. Notice the syntax - it's usually a statement of category followed by a reference to an existing product or approach. The reference part, usually in the form of a question, is for most people the result of a desire to be helpful.

"It's like an open source game engine - Oh, are you familiar with open source CrystalSpace or the Unreal engine and its mod capabilities?"

"It's like a 3D chat room - oh yea, have you checked out things like Second Life or Adobe Atmosphere?"

"It's like a 3D desktop - have you seen Sun's Project Looking Glass, its also a 3D desktop?"

"It's like a 3D learning space - have you gotten in touch with Active Worlds, they are building an Education Universe, aren't they?"

"It's like a collaboration suite - doesn't SharePoint do everything you are trying to do?"

"It's like a videoconferencing tool - gee, I thought NetMeeting already did that, have you looked into that?"

"It's like an operating system - I hear that Longhorn will be 3D and collaborative, right?"

"It's like a digital repository - so do you know about DSpace and the IMS specifications?"

"It's like a browser - do you use Mozilla source code and are you a member of W3C, after all, standards are important aren't they?"

"It's like a learning management system - Moodle and other commercial systems like WebCT and Blackboard do collabrative stuff, don't they?"

"It's a peer-to-peer technology - is it a file sharing program like Morpheus or KaZaA?"

"It's an integrated tool for collaboration, communication, and training - Macromedia Breeze does that, right?"

"It's like a 3D wiki - isn't there a...
(then there is a long pause while they think about it)...hmmm...a real 3D wiki...now that would be cool!"

Just like the blind men and just like an elephant...

Friday, December 24, 2004

Picturing an Exhibition



The Citris Gallery Builder is a Croquet-based collaborative virtual gallery construction and viewing tool for the humanities. Its one of several interactive collaboration tools for humanists being developed at Berkeley by Prof. Ruzena Bajcsy in collaboration with the students and staff of Citris. The Gallery Builder is being designed with the goal of allowing non-technical users to easily build 3D virtual galleries which contain images, movies, audio, and 3D objects of various types. The galleries are then able to be viewed and modified collaboratively by members of a Croquet place.



Building the gallery is done in a familiar 2D floorplan mode, where the user lays out walls and positions media on the walls or in the space via drag-and-drop capabilities from a content browser into the 2D view. The gallery is then also viewable in 3D. Ultimately, the team at Berekley hopes that this technology will contribute to promoting cooperative interaction between geographically distributed real-world sites through realistic reconstruction of those sites in virtual space in real-time. Special thanks to Orion Elenzil and Tao Starbow who braved the bleeding edge in rolling this out. We salute you!

Click here for more information about the Croquet-based Citris Gallery Builder.

Thursday, December 23, 2004

Talking to Your TV

"Imagine what it would be like if TV actually were good. It would be the end of everything we know." - Marvin Minksy



While visiting Japan last January, I saw a technology demostration that really captured my attention. Its called TVML (TVprogram Making Language) and it could very well change the way we relate to multimedia. It's a script description language being developed by Japanese researchers for use in producing full "TV programs" in real time virtual environments by using computer generated (CG) characters, a voice synthesizer, and familiar multimedia conventions. With this system a user should be able to dictate actions within a virtual space simply by generating a text-based script in real-time. In a TVML script, the contents and actions of a virtual space can be controlled by text-based commands such as "show title#1" or "character walk". The possibility of using voice-to-text capabilities makes this even more interesting. Written or spoken, TVML could be a very compelling way for people to script interactive virtual spaces and simulations using natural laguage approaches. It could also significantly lower the barrier to entry for a good many creative minds and allow for the rapid and low cost development of interactive virtual environments for entertainment, education, and training.



TVML was initially developed by R&D teams at NHK (Japanese Broadcasting Corporation), Hitachi Kokusai Electric Inc., Hitachi, Ltd., Central Research Laboratory, and Keio University. In 2001, the project moved entirely to the NHK where the effort is being led by Hayashi-san and his team and in collaboration with researchers at NICT (The National Institute for Information and Communications Technology). The good news is that they are now working to develop a TVML API and interface module for Croquet!

The first implementation of a TVML-emabled Croquet technology is intended for a Kyoto tourism information and support system. The idea is that a character will respond to tourists questions and guide them to points of interest in a virtual Kyoto. The virtual Kyoto will also be tied in with real-world locations and the technology is therefore being developed for use on multiple real-world display devices. Click here to learn more about TVML.

Sunday, December 19, 2004

Random Acts



We're working to come up with an approach to enable Croquet-based simulations involving ‘random’ events to be replicated on multiple machines. This is an interesting problem for us because of the fact that replication of computation would also replicate generation of the random numbers to be used in a simulation. This would usually be undesireable. For example, if we create a virtual coin toss simulation in Croquet that is intended to produce a random outcome (the outcome of either "heads" or "tails"), we would have to ensure that what might come up as “heads” on my instance is also “heads” on all other clients in the TeaParty. The problem is that if all of us are replicating the calculation of a random outcome, there would be nothing to ensure that what appears as “heads” on my machine would not be “tails” on yours. Solving this problem has deep implications on making the somewhat non-deterministic ODE (Open Dynamics Engine) integration with Croquet both deterministic and collaborative. Setting aside the obvious philosophical treatise that the act of structuring a form of deterministic randomness in cyberspace might warrant, we're presently considering two practical approaches to this issue.

One approach is to generate results on a master machine (the initiator of the event) and then replicating the random number computation (actually a pseudo-random number computation) on all other machines in the TeaParty (one machine simply tells all the other machines in the TeaParty that a new final result has been produced). In this way, when the triggering event or gesture happens on a particular machine, then that machine consults its own random number generator to produce a result. When the same event or gesture occurs on another machine, the random number generator on that machine is consulted to produce the result. For moderately complex simulations, there will be little guarantee of uniformity across ones that are moderately shared.

Another approach would be to get all participants to behave as if they are using the same random number generator. This would involve creating one random number generator that produces a well-distributed sequence of random values, regardless of which machine originates the request for any one of these values and the resulting sequence would be shared by all members of the TeaParty. In so doing, each request for the next random number would be shared as a TeaParty-wide event by all participating machines and no machine would be permitted to request an additional random number on its own that is not seen by all the other machines. This does not necessarily mean that there would be one generator for all purposes in all simulations running in the TeaParty. There could be one shared generator per ball in a billiards simulation, or one shared generator per billiard table in a simulation, or even one per TSpace. The point being that each of these shared generators is individually a single conceptual generator that is shared by all machines participating in the TeaParty.

Sunday, November 21, 2004

User Centered Design


To ensure success in designing ease of use and a level of design sophistication into the total user experience for Croquet-based learning applications, we're following the principles and best practices of user-centered design (as we do for all of our software development projects). This helps us provide for the needs of all potential users and adapt the user interface to meet their expectations, while at the same time freeing users from the need to overcome unnecessary obstacles to their use of the software.

In user centered design of educational applications you generally align learning objectives to user goals through a three-step iterative process: 1) information gathering and analysis, 2) information architeture and prototyping, and 3) interface design (implementation, testing, launching, growing). All three of these can (and should) be applied to any interactive software product.

User centered design also involves 1) making visible a series of navigational aids that readily define constraints and help users predict the effects of their actions, 2) reducing memory load by making interface elements meaningful and consistent and relating new items and functions to ones the user already knows, 3) providing immediate feedback when users perform actions, 4) facilitating the chunking of information into schema that are meaningful to users and that can allow them to skim and scan large amounts of data easily, 5) helping orient users by providing descriptive information about things, maps, and visual cues to location, 6) providing a high level of tolerance for user error, and 7) maintaining a high-quality visual design and text legibility. There are all pretty simple and basic - but you'd be surprised at how much software is developed without adequately considering some of these (but then again, a lot of you reading this probably wouldn't).