More on Croquet

I’ve found more coverage on Croquet in my rss aggregator, especially on the eLearning blog of Tim Wang.

So, some more facts about Croquet are:

  • it’s hard to understand at first, it sems. Wang states that it took him months to understand and appreciate the power behind the system.
  •  they’ve shifted from SL to Croquet because of the costs and – much,  much more important – you can import models from tools like Blender, 3d Mx or Maya 3d without problems at all into Croquet! That’s quite an important point where SL still lacks greatly, so this is of course a great plus.
  • Croque detects other computers around automatically, that run Croquet, too, and seems to be able to link with them
  • It allows appliation sharing between different operating systems.
  • Builtin video conferencing and communication tools.
  • Other things.

BTW, here is an presentation done by Julian Lombardi about Croquet. Looks interesting to me.

Astrin Few’s open letter and Felix von Leitner’s view on the source code of the client

Here’s an interesting read from 8th March that shows much of the current problems of SL at the moment. Astrin Few is a musician in SL and giving live performances, being the 4th year in the game; it’s printed in the Second Life Herald.

To cite the main statements of the open letter:

It’s been a long time since Linden Lab put anything really useful into SL that works (and that’s allowing that the addition of the FMOD stream player in version 1.2 "works"). For quite some time now, there has been more and more that is broken and degrades the experience.

I still love performing live shows in Second Life. But that’s about me and my listeners. I’m lucky if my stream works for them when they listen with the embedded stream player. I’m lucky if my event actually made it into the Events listing. I’m lucky if the sim doesn’t crash. I’m lucky if my listeners can chat without too much lag, and I’m even lucky if my guitar rezzes and they can see me holding my electric guitar, and not my acoustic.

[…]

It’s quite simple. I’m OK with the fact that Linden Lab has done virtually nothing to support live music in SL. But I’m fed up with the performance of the Second Life platform. And downloading and viewing the viewer source code gave me no further confidence in Linden Lab’s ability to write code that really works. As an owner of, and senior developer at, an Internet application company, I have some expertise in this. I’ll wait for Google or someone else to create a new 3-D virtual community that is functional and not overcome by buggy, extraneous features. But I hope a miracle occurs and Second Life becomes adequately functional again. Soon.

BTW, the statement about the code tells just what another programmer, Felix von Leitner (his page on Advogato), mentioned in his own blog about it when the code was opened up in January this year. Von Leitner is a very well known contributor to the Opensource scene and has earned much respect in that field, so you can expect him to have profound experience in the field of programming.

The first fact he finds silly in his blog entry about it is that there are over 748 instructions of "Flawfinder ignore". Flawfinder is an automated tool to find exploits in the soure code. Then he rants about the usage of the system() function, which he views as another big error, amongst some other things.

His main statement translated to English is roughly this:

Hacking Second Life is like hacking like the Special Olympics. I could not sleep at all after doing that. If you’re using it: be sure that you’re probably going to participiate unintended at Grid Computing soon.

Translation: the whole client of Second Life consists of a messy piece of junk code, the big nonos of programming, which can be easily exploited (as easy as stealing a lolli pop from a child), are all over in it everywhere and better expect it to get exploited by trojans soon. The consequence would be: fix the code and fix it fast and: install a source code repository, even if it is read only.

Competition for SL

There is Second Life in town, but it’s of course not the only player here at the moment, though the most popular. At least one competitor exists, that has its roots in the academic area and has much broader goals than Second Life: Croquet.

Croquet has far more ambitious goals than Second Life ever could hope to have. To cite their website:

Croquet is a powerful open source software development environment for the creation and large-scale distributed deployment of multi-user virtual 3D applications and metaverses that are (1) persistent (2) deeply collaborative, (3) interconnected and (4) interoperable. The Croquet architecture supports synchronous communication, collaboration, resource sharing and computation among large numbers of users on multiple platforms and multiple devices.

And, in contrary to Second Life, all components of Croquet are already available as Opensource (seems like a BSD-style license to me), so anybody who wants can install a Croquet server whereever he wants.

Though SL has already a high learning curve at the beginning, Croquet has an even bigger, and the underlying concepts and principles differ very much. For example, no currency in Croquet at all, Croquet is more like kind of an in-house tool and such. Though it’s competition to SL.

Well, one of the principal architects of Croquet, Julian Lombardi, wrote in his blog now an article about „Metaverse Scalability“ and took Second Life as an example for old architecture, which should have been obsolete by ages and that Croquet is architecturewise far more advanced and ahead of SL.

Before Mr. Lombardi began working on Croquet he was designing ViOS, which could be viewed as one of the ancestors of Second Life.

The first of his key statements is this:

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.

Well, that’s of course true and the reason why there is a limited number of avatars per region only. But that alone is nothing new and it also depends on the game. When all stuff is being preinstalled on the hard drive and you don’t have to stream inventory in, you can with ease handle 1000s to 10000s of players on one server. Many MMORPGs are able to do so.  But SL does not only stream inventory, it does also execute user scripts, therefore it needs much more computing power per avatar.

Other main statements are:

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.

[…]

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.

So… you could state Mr. Lombardi’s article unter the sentence „Lessons Second Life should have learned from ViOS and why Croquet is such a much better approach.“ Who would have thought that…

It’s interesting that he speaks of single points of failures and a non-scaling technology base. LL thinks, of course, otherwise. So, the future is going to show us who is right about that one.

And, of course, Croquet is the solution to all this problems:

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.

The problem is just that not really much use Croquet in those days. The media hype is focused on SL. So… this reminds me a little of VHS vs. Video 2000 in earlier times. Croquet as the Video 2000 and SL as VHS and we all know who had won this battle.

I think all tools in this area have their right – and need – to exist. But if Croquet can really scale will first be known when thousands of people are using it. Until then it has maybe been designed with that goal in mind (SL has been designed for 100.000 concurrent logins, too), but only a test of this technology under real usage is going to show us the truth. Period.

Well, of course there are already some adopters, like the University of British Columbia who is moving their learning group from SL on UBC island to Croquet according to this blog post. Why? The math must be simple: Croquet claims to be technology wise superior, it’s full opensource, so you can get your own Croquet server without renting it. So Croquet is cheaper. It would be interesting to watch their experiences with it.