Chairman of the Board of Directors
Is it possible to create a collaborative computer environment without centralized web servers or traditional operating systems? To Duke University’s Julian Lombardi, it is not only possible, but an effective model for enhancing real-time, dynamic collaboration and simulation-based scientific discovery between researchers.
Lombardi is chairman of the board of directors of the Croquet Consortium, a non-profit group that is developing an open-source, multi-user collaborative environment in which information can be shared in a three-dimensional setting. Croquet uses a peer-based network architecture that enables software developers to create and link 3D virtual environments across a distributed set of machines without the need for a centralized server.
Lombardi, one of the principal Croqueteers, gave the keynote presentation at the Bioinformatics Open Source Conference prior to this year’s Intelligent Systems for Molecular Biology meeting in Toronto. In his talk, he said that Croquet would benefit bioinformatics developers because the tasks at hand are in part about integrating datasets, visualizing data, and databases. Scientific activity, in general, requires interaction and cross-disciplinary activity, which Croquet is geared to support.
Lombardi calls himself a former biologist. He was a biology professor at the University of North Carolina when he began working on new kinds of instructional software and moved into computer science to experiment with and build computer-supported three-dimensional collaborative environments in the 1990s.
He founded VIOS, where he created a multi-user environment designing a 3D user interface to the Internet. He went on to develop novel learning and teaching media at the University of Wisconsin, and is now assistant vice president in Duke University’s Office of Information Technology, a researcher with the university’s information science and information studies program, and a faculty member with the computer science department.
Other Croquet Consortium developers include Alan Kay, an early pioneer of object-oriented programming at Xerox PARC and a key developer of the programming language Smalltalk; Mark McCahill, the co-inventor of the Internet e-mail client POPmail and of the Gopher network protocol; and Croquet’s lead system architect David Smith, who is co-founder of a number of companies including Qwaq, which is developing a commercial implementation of Croquet.
BioInform caught up with Lombardi after his return from ISMB. Below is an edited version of that conversation.
More information about Croquet can be found here.
Sorry to yank your chain, but if a group of scientists in different time zones and countries wants to get together in a 3D environment, can’t they just go to Second Life?
They could do that, absolutely. When they do that, can they modify that medium to meet their emerging, changing needs or are they picking off of a menu that Second Life provides?
By going into Second Life they are using an entertainment-oriented chat application with 3D capabilities for context-based communication. That’s great. … Companies like Second Life or Qwaq-forums [commercial 3D meeting spaces offered by a firm founded by some of Croquet’s pioneers] can provide a menu of choices.
If they need to view Protein Data Bank files with certain configurations and do that in the context of information being sent out of the database into the world, and they need to modify that in a certain way, they are not going to be able to do that in Second Life.
Let’s say you wanted to do a simulation that lasted more than a week. Second Life’s servers all reboot every Wednesday night, so you can’t run simulations longer than what that company has set up.
If you need to fundamentally create capabilities that meet your specific needs, and this is the open source argument, then a very flexible environment that is open source is something that has value.
Croquet seems to have begun with a conversation between Alan Kay and David Smith in the 1990s where they were both fellows at Hewlett Packard Laboratories.
Yes, they talked about the fact that today’s operating systems are based on proprietary technology with the exception of Linux. The conversation between David and Alan was about the fact that these operating systems were designed for something very different than where we are going.
We are essentially building our systems on top of legacy code. The operating system was designed to coordinate resources between components of an isolated machine. … The machines for which those operating systems were designed — and which current operating systems are derivatives of — are essentially isolated computing devices. And what we have today are media devices, machines connected and in many cases continuously and ubiquitously connected to global-scale information systems.
It’s almost like an evolutionary constraint, that you can’t move away from them because so much of what we do today is dependent on the legacy processes that these operating systems bring. Applications are extremely limited; these systems don’t allow you to modify the fundamental functionality of the system.
Croquet is a system you can modify [and it] supports collaboration as a fundamental feature. It redefines the operating system that takes into consideration the connection between machines and as such it stands apart from other technologies.
Java was not designed that way. Croquet was designed that way. MS-DOS was not designed that way, nor was the Mac operating system, or even Linux.
When will the Croquet virtual machine be released?
We have built Croquet on top of [the open source software development environment] Squeak, which is a derivative of Smalltalk-80 [developed by Alan Kay]. A programmer is working right now on a Croquet-specific virtual machine. … There will be a new virtual machine by next summer; that will be a Croquet virtual machine.
The Croquet software developer kit was released in 2007. Can people work with that?
It was released as an open source project, so it is not very well documented at this point. It is released, people can use it, but what we are doing now at Duke is we are building Cobalt, which is the code name for the application that is being built on top of Croquet.
Croquet is an infrastructure technology that can be used to build applications … Croquet is to a future application as Java is to an application or as C++ is to Second Life. What confuses people is that they think Croquet is the product … because Croquet delivers such compelling 3D visualization that people confuse it for an end-user application.
Seeing a demo makes people say, ‘Wow, that’s like Second Life,’ but they should be saying, ‘Wow, that’s like C++.’ That gives you an idea of where we are going.
You received a $200,000 NSF grant in June from the Office of Cyberinfrastructure. What is that for?
I am funded to build a beta of that application that serves the scientific community: to build Cobalt. A full-time developer is joining us Sept. 1 and we are moving the technology to the application level.
What will be the first milestone?
First is the user interface on top of the existing functionality of Croquet. Number two is to make communication in that system secure and to tie into existing mechanisms for managing identity and authorization; being able to log into a university infrastructure for identity management and to leverage all of the capabilities universities provide in support of research, to ensure your research is secure, and that you will be working on documents with other people that nobody else can see until you want them to see it.
In Second Life there might be a 10-year old dressed as something unspeakable walking into your space while you are trying to do serious work.
Are companies involved in Croquet?
Croquet is released under the MIT style license, which says essentially you can take it, commercialize it, re-brand it, make all the money you want off of it; just don’t blame us if anything goes wrong.
Companies such as Intel and Hewlett-Packard might be able to sell a lot more hardware if people had much more capable machines. … These companies have a very strong interest in supporting open source software. HP has demonstrated a longstanding commitment to supporting open source software, as has Intel, so as part of that creed within those two organizations, it is a natural to at least foster in its early stages the Croquet project to see where it goes. … HP and Intel are on the Croquet Consortium’s board of directors.
HP was where Alan Kay and David Reed worked when we started the project. … The Croquet project grew out of HP Labs [after HP restructured its labs and Alan Kay left] and its center of gravity went to the University of Wisconsin and the University of Minnesota, which is where I was and where Marc McCahill was. We both got recruited to Duke and we have brought Croquet here. The Croquet Consortium was set up with Duke as one of the founding institutions to ensure that it remains open source.
Two of the Croquet architects, David Smith and Andreas Raab, started Qwaq and have raised $7 million. [Last fall, Qwaq secured $7 million in venture financing]. They started the company when HP Labs restructured. … They are building proprietary technologies on top of the open source technology, selling the delivery of the [3D] environment as a service.
How does Croquet’s architecture work?
Croquet is based on a peer-to-peer messaging architecture that reduces a requirement for servers as a mediator of the interaction between people.
Let’s say virtual world technologies are where we will be in 20 to 30 years. … Let’s say we built those technologies on servers … in order to support the activities of people within a virtual world, you need a server for every 20 to 30 people. So what if we had 250 million people using this on a regular basis? … That makes avatars into pigs … and there is good evidence that the [carbon] footprint of an avatar is beyond that of an average human. …
A peer-to-peer messaging system at the heart of the system makes it possible to keep the computation where it is going to happen but eliminate the server side of it.
Let’s say two researchers build a little virtual world. Under the current model, we subscribe to a server and the server would tell us the way the simulation should be. Without the third party we can send messages to each other, my message to you is, ‘Here is what I intend to do in the next 10 milliseconds, why don’t you do it, too?’ And then you would send to me, ‘Here is what I intend to do in the next 10 milliseconds.’ Then we agree to execute the message we sent and we would eliminate the need for the server. …we would cooperate at the level of the code, at the level of the network.
That’s a big thing. If you eliminate the server, you eliminate almost all of the business models that exist right now.
Doesn’t the virtual world need to be maintained, stored somewhere?
If I put up a [protein from] PDB in my world, it gets put up in your world simultaneously … it happens on the level of the Croquet software. We don’t have to worry about it. All I need is to do something on my machine and you end up with the same thing on your machine.
If we both shut our machines off, and turn them back on, the simulation is gone. …
To solve that problem, for example, Duke University can maintain one client running that is not serving but participating in the simulation.
Can people save what they worked on?
Everything that happens in Croquet is message-based, so if you save all the messages, you save everything that happens in the [simulated] world at an atomic level of granularity with respect to the simulation. That is something that current systems don’t allow you to do.
Also, everything is time-stamped, so we can look at that simulation and wind it back and tweak a parameter and run that simulation again. … If researchers are collaborating, writing, annotating with all that richness of collaboration, you can do what you can’t do in Second Life, which is, ‘Let’s experiment. Let’s make a window into a new conversation, go in and tweak something.’
So it’s a medium for scientific communication and collaboration and a framework to support scientific inquiry. … It allows you not only to visualize data and visualize information but [gives] you the ability to connect effectively with other researchers. … That is not supported well by current technology.
You chose to build Croquet in Squeak. Can you explain why that is better than Java?
Java was not designed as an environment to support media. The data that flows through media on today’s machines need a very efficient mechanism of collecting garbage, the memory that you don’t need anymore. Every time you put an image on a screen you don’t need the image in the next frame. When we started the project Java did not have that capability at the level you have with Squeak. For example, you can manipulate images as they are playing, have a video playing in a Squeak window and rotate it 360 degrees.
Squeak is a very capable software technology that has been lurking around. I liken Squeak to the mammals that had been lurking around during the Jurassic period. They were there and living in very successful ways, although they weren’t star players … but [they were] able to exploit the rapidly changing environment the dinosaurs weren’t able to exploit. There is a certain amount of parallelism in my mind between Squeak and that dynamic.
What could scientific collaboration with Croquet look like, eventually?
Imaginably scientists can open up their laptops and share a collaborative environment with rich media capabilities wherever they are. … If researchers are studying chemicals in the Amazon, a scientist might be hooked up to a [high-performance liquid chromatography device] and can visualize the data directly in that environment and everybody would be able to use it right there. They would be able to create a local area network by leveraging peer-to-peer communication over wireless.