Archive for the ‘World 2.0’ Category

RealXtend’s Vision for Avatar 2.0

Wednesday, February 27th, 2008

tonyrealxtendpost.jpg

Tony Manninen, the CEO of LudoCraft games studio (the client side development division of realXtend) who has being doing all this amazing recent development on OpenSim, has a vision for Avatar 2.0 that he is bringing to OpenSim. The possibilities for the future integration of realXtend features (that include meshes and the ability to import proper 3D models) with Second Life is currently under discussion - more on this soon.

We have tried to keep the rexviewer as compatible as possible. We totally appreciate what Linden Lab has done and we are trying to do our best to co-exist with their beautiful social innovation.

When I interviewed Tony (see interview later in this post), I was very excited not only by the scope of his vision and his devotion to enhancing the user experience and possibilities of virtual worlds, but also by his absolute determination to manifest this vision in code with the the utmost speed

The next release of realXtend server and client will be published on 29th of February, 2008 at 4pm (Helsinki time). The features that will be in this release and a roadmap for the future are here.

Virtual Worlds that make our “real” and “virtual” lives better

What do I mean by an exciting vision for virtual worlds? There are many visions for virtual worlds floating around and some of them are not so appealing to me, like the notion of a virtual world as a walled garden/company town put forward by the CEO of There.com, Michael Wilson.

When Michael Wilson was interviewed in Second Life by Beyers Sellers (Robert Bloomfield, Cornell University) for Metanomics this week, he gave the impression that creating a controlled environment for marketing is the number one priority of There.com.

In my view, which seemed to be shared by many of the Second Life audience participating in the group chat, this notion of designing virtual worlds as “big brother houses” is the epitomy of “the metaverse gone wrong.” You can see the full interview here on SLCN. Also see here for Christian Scholz’s (Tao Takashi in Second Life) excellent summary and analysis of a virtual world according to There.

I hope there are some more positive aspects to There.com than this interview conveyed.

Despite ups and downs and growing pains, Philip Rosedale’s vision for Second Life has always, in my view, had at its heart the motivation to make people’s “real” and “virtual” lives better. See The Making of Second Life by Wagner James Au for a fascinating look at the early days.

While Linden Lab is still working hard to break free of the “walled garden” model, with OpenSim and realXtend, the expansive vision that they have pioneered has been open sourced even before they have finished their own open sourcing project. And now, an open source development community of genius and depth (including Linden Lab) is rising to the challenge of taking this vision of making our “real” and “virtual” lives better to the next step.

There are several Open Source virtual world platforms available now, including Ogoglio, Croquet and Sun’s Wonderland. In the news today is the Open Virtual Worlds Project from The New Media Consortium (NMC) and Sun Microsystems which as VWN points out is similar to efforts announced by the Immersive Education Initiative to create an Education Grid across Second Life, Wonderland, and Croquet.

But OpenSim stands out from the pack because it inherits from Second Life an awesome set of tools to facilitate user generated content. This emphasis on user generated content is, of course, key to how Second Life has become the largest and most highly developed 3D immersive world to date. The fact that OpenSim is a platform built for people to build in was of one of the reasons that realXtend chose to work with OpenSim after they investigated all the available open source options. Also important, Tony noted, was the depth of the development community in OpenSim and Second Life.

Philip Rosedale speaking in Second Life at the MacArthur Foundation event on The Future of Philanthropy in Virtual Worlds

philipphilanphropy-copy.jpg

The Future of Ubiquitous Game Design

There are many inspiring alternative visions for virtual worlds emanating from Game Developers Conference 2008 which have been percolating through the blogosphere. Particularly interesting, to me, are the new possibilities for avatar expressiveness and some interesting ideas on the future of ubiquitous game design.

I was thrilled to discover that Tony Manninen has been doing research on avatar expressiveness since 2000 (see his papers here). Rich Interaction in networked virtual environments, avatar expressiveness, and the future of ubiquitous game design are his forte. How very cool!

Tony’s vision is to take social gaming to the next level and to produce games that are so heavily collaborative that they reach deep into our experience of the pleasures doing things together, our enthusiasm for team sports, and childhood memories of the enjoyment of playing together. He has been exploring these ideas of team play and community in earlier LudoCraft games like AirBuccaneers.

Ray Kerzweil’s keynote GDC 2008 laid it on the line: “Games are the harbinger of everything.”

But some of my favorite GDC 2008 quotes are from Jane McGonigal (see her blog post “Reality is Broken” - My GDC Rant) and in Liz Lawley’s copious notes on “Pouring Fuel on the Fire: Game Designers’ Rant.”

Jane McGonigal: I’m not mad at game designers. Compared to the rest of the world, we have it all figured out. Our medium kicks all other media’s ass. We make more people happy than any other platform or content in the world. (If you don’t believe that, you’re not paying attention to what’s happening.) We’ve won. Games have won. As an industry we’ve spent the last 30 years learning how to optimize experience. Brains, bodies (recently), and hearts are all engaged. That’s the good news.

The bad news is we rule the virtual world only. Reality is broken, and we’re not fixing it, we’re offering alternatives to it. We offer better experiences, better socialization, in virtual experiences. That needs to start changing. If reality is broken, why aren’t game designers trying to fix it? It’s our responsibility to design systems that make us happy and successful and powerful in real life? We have the power and the responsibility.

Jane shows an image of her favorite “I’m not good at life.” graffiti (from Liz Lawley’s notes).

Tony Manninen is an innovator committed to bringing the power of games into arenas we are yet to dream of.

Jane McGonigal has some nice examples to stretch your mind in this direction. For example, the Sniflabs collar remembers other dogs you’ve encountered. “We can play games with our dogs. What if I could play an MMO with my dog?”

Why will it make our “real” and “virtual” lives better to take play into every nook and cranny of our experience? Because, as Kurzweil points out, “Play is how we principally learn and principally create.” Jane McGonigal goes further:

I have spent the last year doing research on happiness. Instead of trying to figure out what’s broken, these people are trying to figure out what makes us happy. Every positive psychologist has found the same thing. Happiness is 1) having satisfying work to do, 2) the experience of being good at something, 3) time spent with people we like, and 4) a chance to be part of something bigger than ourselves.

“If you are a game designer you are in the happiness business.”

jani_innovatingpost.jpg

Jani Pirkola, realXtend project manager, works on innovation in the offices of LudoCraft.

LudoCraft = The Art of Designing Games and Play

Ludo - Theories of game and play

Craft - Art of game design and development

Reinventing the technologies of expression and experience.

bobmoore.jpgtara5ohpost-copy.jpg

At the Metaverse Roadmap meetup, Mitch Kapor pointed out “3D cameras would make virtual worlds easier to use.” And Bob Moore (on left above, me on right) asks in this excellent post, Is “free gesticulation” for avatars here yet?

When I asked Tony this question he replied:

“Our avatar will have enough “bones” for full facial expressions, etc. When the actual base architecture of the avatar is fully functional, there’s a possibility to use webcam, voice, or other input devices to control your avatars facial expressions. It can be true 1:1 mapping, but of course it can be something else as well. You can be yourself, or, you can change your “output” to something else.”

Tony, through realXtend, is reinventing the technologies of expression and experience.

manupsidedownpost.jpg

Man Upside Down from The Book Of Urizen, William Blake

Interview with Tony Manninen, LudoCraft

Me: Second Life as a platform has been pretty much ignored for game development up to this point. Do you imagine transforming OpenSim and Second Life into platforms suitable for MMOG?

Tony: I am running the company and also making sure the realXtend development reaches the required quality and performance standards you would expect from MMOGs.

We’d definitely love to make games for Second Life, but at the moment the end-user experience is not exactly what you would expect from a game system. Therefore, we’ll pay heavy attention to things like responsivity, graphics quality, frame rate, etc. If we manage to keep up the momentum of realXtend development, then I’m sure there will be some interesting games spawning up in the near future…

Developing a sophisticated game engine is not an easy - or cheap - task, so there’s a loads of challenges ahead. But I truly believe that is the only way forward. With game-like interfaces and features you’ll be able to get much more heightened experiences.

Me: Have you worked out anything with LL yet re keeping the realXtend viewer compatible with SL?

Tony: We have tried to keep the rexviewer as compatible as possible. We totally appreciate what Linden Lab has done and we are trying to do our best to co-exist with their beautiful social innovation.

Me: But will you be able to work out a licensing deal under the GPL so that they can integrate your code into their browser?

Tony: The whole licensing scheme is still undergoing some serious thinking processes. We will try to find the best possible option in order to satisfy the needs of hungry virtual world adopters. GPL has its challenges. But, on the other hand, everything invented by a man can be re-invented by another. I am sure there will be a fruitful solution to the licensing issue. At the moment we are concentrating on releasing all the code to the general public, so that all the enthusiastic developers out there can join the forces and increase the momentum.

I’m pretty sure the pieces will eventually find their right places. I am really happy about the response we’ve got from Linden Labs - it’s great to think we might be able to give something back for them.

Me: Is it safe to say the licensing issues are on the table and being worked out?

Tony: There’s definitely some serious working-out being done, so I suppose it is safe to say that.

Me: I know Will Wright creator of Sims online and Spore has spoken a lot on the spiraling costs of content production and that diminishing returns for content development at these high costs. He has gone to procedural programming with Spore to take gaming on another path. But, it seems to me that you are taking another approach by trying to bring SL up to gaming standards - is this correct, or are you doing something different?

Tony: I guess that’s quite correct assumption - at least in relation to LudoCraft. This is not necessarily a conscious decision. It’s more like the costs of licensing a decent game engine are generally so high that they more often than not fall out of reach of start-up companies and small developers - let alone universities, communities, etc.

We have tried to find a suitable platform for our collaborative games, but since there were no perfect solutions, we decided to try and make one. Not alone, but by joining forces with our partner company Admino and several other keen developers.

The OpenSim merger will increase the development base even further, so there’s a great chance we’ll actually pull this off.

Like I said, there’s loads of challenges, huge amount of work and some design issues involved. But the Open Source communities have proven themselves earlier, so why not now.

Me: What do you think are the chief design issues to be addressed?

The realXtend project includes LudoCraft and Admino, plus we have several sub-contracting developers doing work with us.

The main issue is the divide between social 3D worlds (like SL for example) and MMOG. The gamers tend to avoid these social virtual worlds for obvious reasons [the quality of the experience from a gaming POV]. However, if we manage to develop a platform that can serve both purposes, then I’m sure things will change.

The main design issues, therefore, are the performance, audiovisual quality, rendering, frame rate stability, responsivity, interaction, etc.

Numerous issues that are not necessarily critical in purely social virtual world, but are absolutely essential in any multiplayer game environment.

Plus, if well taken care of, these issues will boost the whole end user experience in the non-gaming situations as well.

Me: You have gone a long way with the rendering and meshes what will be the next most important features and when do they arrive?

Tony: Inverse Kinematics and procedural animation are essential features if we want to have truly expressive and adaptive animations. We see avatars as main tools for self-expression. We’ve researched the issues since 2000 and we believe we are on the right track. With flexible and powerful expression potential and accurate controllability, the users will be able to communicate with their avatars so much more than is possible nowadays. The concept of Rich Interaction is something we will utilize here and it will be interesting to see the results when the system is actually usable by the general public.

Vehicles and projectiles are really important so they sit heavily on our roadmap.

Me: Are you going to do 3D face mapping etc - I know that this is getting close to doable now?

Tony: Oh, the required list of features is endless. There are several key features in terms of game development, but also some interesting stuff for more serious applications.

Our avatar will have enough “bones” for full facial expressions, etc. When the actual base architecture of the avatar is fully functional, there’s a possibility to use webcam, voice, or other input devices to control your avatars facial expressions. It can be true 1:1 mapping, but of course it can be something else as well. You can be yourself, or, you can change your “output” to something else.

Me: OpenSim is very attractive for a number of vertical applications - building automation is one you mention. How focused are you on getting the OpenSIm platform ready for the huge mirror world, 3d info machine/command center market?

Tony: In terms of the mirror world, we already have some interesting pilot projects that target those features. It may be less juicy than making cool games, but it provides some highly interesting scenarios.

Me: What are your pilot projects?

Tony: I don’t think I should go into details at the moment. We will include a list of initial projects and collaborations for our next announcement, which is due 3rd of March (latest). We want the third parties to have their saying first before making these public.

Me: The realXtend avatar server is a new way of connecting sims - could you tell be more about your vision there?

Tony: The main vision is: there should be only one. Only one avatar, one user account, one login, etc.

It is ridiculous that I need to have an avatar in SL, character in WOW, nickname in IRC, and whatnot. I mean, it’s ok if I want all these different identities, but what if I would be, eh, me in all these worlds, perhaps doing business, shopping, hobbying, and so on. There should be an option for me to jump from world to world without the hassle of logging in and logging out

Me: And how will the work you have done on the avatar server alleviate this problem unless SL, WoW and other cooperate on interoperability?

Tony: Think of it more like the 3d web. realXtend/OpenSim is like the Apache of virtual worlds, rexViewer is the Mozilla or Firefox of whatever. When “surfing” the web, you are not constantly required to prove and change your identity when loading different pages.

Me: But because there is no equivalent of http for virtual worlds yet, how will this work re the other worlds?

Tony: Ah, that’s the critical question: it won’t. There is some interoperability work going on in terms of creating the standards. The problem is, this work tends to be slow. We are not willing to wait that long. We want to see some action. That’s why we thought that we’ll start the wheel rolling and then see what happens.

Me: So at least now OpenSim worlds and hopefully Second Life will be able to connect this way?

Tony: The openess is the key to the lack of unified protocols. When the interfaces and APIs are open and transparent, people are free to develop applications, converters and bridges between different systems.

Right, at least OpenSim is now reachable, plus we want to get the teleport between SL and OpenSim/realXtend up and running, at least in the quick-and-dirty way so that people will have a chance to experience the feeling of world-to-world hopping.

Me: So in terms of this experience of avatars hopping between OpenSim worlds how do you think this will change the need /or not for large grids like SL or any of the new ones like OpenLife that are springing up?

Tony: I think there’s still need for various technical solutions like there is need for lighter and heavier websites. There are different applications, different scenarios and different user requirements. It is still really enjoyable feeling to be able to actually walk - ok, virtually at least, from one server to another. With hopping there may be some loading involved (like when surfing the web). So I guess the big grids won’t go anywhere. We’ll just have more modalities in terms of servers/worlds.

Me:So what are your expectations for concurrencies on OpenSim in the near future?

Tony: Hmmm… I’m not sure yet. OpenSim is an excellent initiative and there’s already a substantial user base. There are a lot of work to be done in terms of integrating realXtend codebase to the OpenSim, but since the visions and missions of the people involved are aligned, the hard work is a minor detail in the process.

, , , , , , , , , , , , , , , , , , , , , , ,

The Wizard of IBM’s 3D Data Centers

Thursday, February 21st, 2008

illuminous1post.jpg

Michael Osias, IBM (a.k.a Illuminous Beltran in Second Life) has been working hard to make virtual worlds useful places. And, today, the 3D Data Centers that Michael has pioneered in OpenSim (also demoed here in Second Life) appeared in Earth Times, CNNMoney.com, Trading Markets, Street Insider, Sys-Con, Biz.Yahoo, Marketwire, Foxbusiness.

The picture above of Illuminous Beltran at his Virtual Network Operation Center in SL was taken by Noelani Lightfoot, the proprietor of Quixotic Photography in Second Life (see more of her great work here).

Also noted in this recent flurry of press is the work of Oliver Goh, Implenia, (a.k.a Eolus McMillan in Second Life) and his collaboration with Michael. Oliver has pioneered virtual operation centers and dynamic 3D visualization tools for the Real Estate Industry - see Guardian.  And, see here and here for more about the Eolus One Think Tank in Second Life. Eolus One will be announcing their new project and collaboration tool - the 3D Balanced Scorecard and a 3D Virtual Risk Map (vital considering the recent ‘finacial crisis’ in the real estate industry) at MIPIM - the most important conference for the real estate industry.

The headline of many of today’s posts is “IBM 3-D Data Centers Show Virtual Worlds Fit For Business.” CNNMoney.com writes:

Real-Time Management of Global Data Centers Made Possible Through Secure 3-D Intranets Can Reduce Cost, Save Time and Help Reduce Carbon Footprint

3-D Data Centers, Virtual Operation Centers or more generally all manner of 3D information machines, have the potential to transform our wasteful industrial society, and eventually, together with 3D fabbers, will play a vital role in ending the unsustainable consumption of energy and natural resources. This kind of innovation will make virtual worlds fit for business. It will also make virtual worlds fit for society. The transformation of computers into “seeing machines” (Gelertner 1991) has the potential to empower people to understand and work with the machinery of their society.

I have blogged a lot about Michael’s and Oliver’s work in the past year, see: The Archeology and Future of Software Design: Interview with Grady Booch, Interoperability for Virtual Worlds in 2008, Eolus Goes OpenSim, Next Generation of Software Design: 3D Command/Service Centers in Second Life, Eolus Makes Leap to 3D Internet in Second Life. I see these pioneering integrations of “virtual” and “real” worlds as our first glimpse of better ways to manage our planet and our future.

Earth Times writes:

As companies of all sizes become more global in nature and tap into skills across the world, the mounting virtual workforce needs new tools to be effective. The 3-D Data Center allows experts to manage data center resources regardless of where they are or when these resources need attention, giving both employees and corporations enhanced productivity and freedom. A globally-integrated enterprise can deliver enormous economic benefits to both developed and developing nations, and new technology like this one can help companies seamlessly operate in such a distributed model. This type of collaboration provides much faster cycle times for analysis and decision making, by viewing operations in near real time, instead of exchanging messages and two-dimensional drawings via email.

This picture below, of the IBM 3D Data Center, was taken by the talented Noelani Lightfoot.

illuminous2post.jpg

Also worthy of note is the work of the SL Data Viz project of Melanie Swan, Dave Taylor and others who are creating Data Viz Island in the SciLands where people can contribute, review and copy open-source data viz tools. Melanie notes: “I think data viz is the next obvious step for virtual worlds, streaming in data and making it ‘interact-able’.”

There are many RL/SL integration projects being developed, including, NOAA’s real-time weather simulation, 3d stock charts, LAX air traffic data. But as Melanie Swan points out: “An open source data visualization tool suite for virtual worlds is needed, something to be the Many Eyes or Swivel of Second Life and other platforms.”

, , , , , ,

Evolution of OpenSim: RealXtend joins OpenSim

Saturday, February 16th, 2008

realxtendpost.jpg

The excitement in the open source virtual world developer community has been bubbling over since realXtend brought many OpenSimulator developers over to Finland to reveal the extraordinary amount of work they have done “extending” the function of the OpenSimulator project in just 4 months.

See here for an account of this amazing meeting in Oulu, Finland, by one of the participants from the OpenLife grid. Pictured above is a screenshot of the new mesh avatars being conformed inworld. Adam Frisby explained to me:

Meshes behave just like another prim type - you can drag, scale, and rotate meshes around using the same method that you use on primitives and object groups. You can link meshes with other primitives, save them to inventory and use them in pretty much the same way you use primitives.

Second Life is built with prims, so I asked my friend, Zha Ewry, for a 101 on meshes versus prims. “A prim, is a solid, defined by an equation - a cube, and such with permutations, like twist and taper, and cut. Whereas a mesh, is a series of triangles in 3d which conform to the shape of the object.”

Meshes are groovy because “they can do arbitrary surfaces. You can lay a mesh over any shape, add more triangles, increase resolution. A prim you can’t make any shape, only what the math bends it to, so you blend them into shapes by composition.”

SL originally went with prims and not meshes “because they are more compact, lower cost to render and easier to map to the physics model.” But, “many 3d programs build meshes by default and nothing builds prims,” so the introduction of meshes facilitates one of the key new realXtend features - support for proper 3D models.

I asked Zha if meshes would have a negative effect on concurrency. Zha said the answer to that question is not entirely clear yet, “but its not as bad as it seems because its prim+texture vs mesh=texture.”

Zha explained that a lot of people think of meshes as much more expensive when its not prim vs. mesh but rather, prim+texture vs mesh+texture so the difference is smaller, “and even more to the point, for many things, its Prim+prim+prim+prm+textures vs mesh+texture set. Often, even for small objects, you can do several prims worth of detail in a mesh.”

I have heard from OpenSim developers that the expectation for OpenSim is for concurrencies of 100 at least in the next six months.

Two realXtend companies, Admino & Ludocraft, have been dedicating 20 personnel (programmers, designers and content creators)‘ to extending’ the function of the OpenSimulator Project, both server side and client side respectively. The project is backed by the vision and generosity of Juha Hulkko, who has another fascinating project Radio Arkala (also in Second Life on Arkala Island).

realxtendvid.jpg

Click on the screenshot above for the realXtend video demo. There is a full list of realXtend features on their site here. RealXtend give a summary of some of the most important functionality they have added.

The most important realXtend-specific development areas were the media tools such as VoIP and document sharing, OGRE renderer support and, of course, the separate realXtend avatar storage / authentication infrastructure that enables seamless transition from one world to another.

Having support for proper 3d models as well as simpler primitive type objects is an asset in many different ways. Most importantly, just about all the professionals and advanced amateurs who create content suitable for virtual worlds like to work with proper 3d modeling software. There’s already a lot of existing material that can now be directly transferred to the virtual reality if for example a movie maker wants to create a virtual world based on an animated film and the same goes for computer game developers. Thanks to proper 3d model support, practically all of their material should be easy to transfer from games to realXtend based virtual worlds and vice versa.

Another central feature is the global avatar architecture. A network of interconnected virtual worlds simply doesn’t exist until users can take their virtual representatives with them wherever they choose to go. Architecturally this means separating the avatar and their asset storage functionality from the virtual world server. Avatar service will provide the users with identity and authentication independent of the world they happen to be in at any given time. In practice the role of the avatar service will be somewhat similar to what email is today. Security is naturally a major issue whenever someone’s identity or asset ownership is concerned and it has been an important consideration in the design of the avatar architecture.

rexpicpost.jpg

The picture below is of the web page as a texture feature.

rexwebpage.jpg

Under testing for the next release (29th of February 2008)

  • Free-form non-humanoid avatars
  • Global avatar mesh, skeleton, textures, attachments and animations
  • Single sign-on to multiple worlds for teleporting
  • Avatar generator
  • Avatar attachment tool to help set 3D meshes to different bones
  • Unlimited amount of attachments per bone
  • Teleports between realXtend and Secondlife
  • Avatar storage to move avatar appearance between realXtend grids/worlds
  • Mesh tool to scale and set pivot of 3d models
  • Server launcher and configuration application
  • Home automation example using X10 technology
  • Bot with Python scripting
  • Media library for world builders
  • Server status window

Pictured below is the the location of this historic meeting which was also attended by Chris Collins of Linden Lab. I did hear some very interesting anecdotes about the visitors introduction to Finnish culture - flaming drinks, saunas, and hot metarati rolling in snow!!! But, the focus of this post is the road map for an open standards virtual world’s future, so I will leave it to others to tell those tales.

What follows is an extract from realXtend press release, and then I move on to an interview I did with Adam Frisby who was in New York last weekend. He shared some of his thoughts on the future of the Open Simulator project with me on another snowy weekend of skiing and snowboarding in upstate New York (lots of snow again but no flaming drinks, just Ribena, Mario Galaxy, and snowball fights with Ugotrade Jr).

oulupost.jpg

Oulu, Finland - even a blizzard couldn’t delay the meeting

Team up to make open source Virtual World standard

Open source virtual world developers OpenSim are building a global standard to power the 3D internet, now joined by Finnish developer’s realXtend, OpenSim gains many new key features and technologies.


OpenSim is a free and open standard virtual world server founded at the beginning of 2007 by a small group of developers. The OpenSim platform can be used for creating and deploying immersive 3D Virtual Interactive Environments. The realXtend project’s mission is to assist in bringing forth the next generation of virtual reality development by focusing on interoperability technologies, usability and real-life application support. realXtend brings to OpenSim professional experience and development in the realm of 3D engine programming, voice over IP and network support, and is contributing many new features such as improved 3D graphics and voice chat.


“I welcome the realXtend project to join us. It is my pleasure to see that the OpenSim gets a huge professional code contribution. The future of the OpenSim project looks bright as the developer base continues to grow with giant leaps like this”, says OpenSim project manager Darren Guard (aka core developer Michael Wright).


realXtend is contributing all the server side code for their developments to OpenSim and continues to do so from now on. This collaboration of two projects with a similar vision enables realXtend and OpenSim to focus on common issues, and solve them more quickly - leveraging experience and knowledge from each party. realXtend project manager Jani Pirkola comments on the joining as “I see this as a great possibility to quickly make OpenSim the global de facto standard and to significantly speed up the global technology development in this area. Our common goal is to create the best open source virtual world server platform, and to continue the rapid evolution of OpenSim”.

Interview with Adam Frisby of OpenSim

adamfrisbypost.jpg

Snowball fight in the Catskills while “snowed in with Open Sim”

Me: Could you tell me more about the “avatar server?”

Adam: The “avatar server” improvement allows you to sign in remotely from another region and bring your avatar & attachments across with you. It allows you to sign onto a OpenSim with an address like: adam frisby@mygrid.com — and then bring across your avatar & appearance. Inventory/etc is going to come in with this sign on method as well.

Me: You also mentioned to me how this would really change the concept of griding and introduce a different model to the Second Life grid.

Adam: Right, that’s tied in with that [the avatar server] a little - you don’t need a big central grid in the way they are operating. Their philosophy has been more akin to the world wide web — lots of interdependent sites that can link to each other. The avatar server is the first step towards that, since it allows you to login to multiple independent installations with one account.

Me: Do these changes, potentially, signify more of a fork from Second Life or not?

Adam: Definitely. This is the first time we’ve broken compatibility with SL feature-wise and implemented things that go far beyond SL.

Me: Will the Rex viewer work with SL?

Adam: You can still connect to SL with the Rex viewer, but your missing lots of nifty functionality, like the new rendering engine.

Me: What do you think are the implications of that and do you think the fork will continue to get wider or not?

Adam: Well, the subtle irony of it is that Linden Lab can’t take the changes back because of their client being GPL’d and they still rely on non-GPL’d components, i.e., FMOD and other bits and pieces. They can take BSD [all the realXtend server side work is BSD, but the client source code is GPL’d at the moment.
If we released the patches as BSD licensed, which RealXtend intends to try to do, then yes they could take those ones back.

Me: So why the conflict exactly?

Adam: LL use a set of proprietary components in their official release, for example the Kakadu JPEG2000 library - which means their official release is actually GPL-incompatible. RealXtend have to extract out any bit of Linden IP or derivative work in order to be able to release it under a more permissive license. (The GPL is actually fairly restrictive). In copyright law, you can generally make a open source license more restrictive, but never the other way around - it’s one of the reasons that OpenSim is licensed under one of the least restrictive Open Source licenses. If LL took the GPL’d code RealXtend had done back, they would be under the terms of the GPL via RealXtends IP.

Me: So taking the client code back could cause problems?

Adam: Well, if they took it - yes. But unfortunately they really can’t. They could in their pure-open-source release, but not in their mainline release.

Me: What do you think is the best path forward re interoperability?

Adam: I think the best path forward for a standard is to release everything to either the public domain, or as close as you can get. It allows all parties to use the code for any purpose whatsoever.

Me: So you mean no GPL no BSD?

Adam: BSD is fairly close legally - it’s effectively public domain with a “Don’t sue us” clause. There’s a small group of licenses which are essentially public domain:
- New BSD (what OpenSim/libsl are under)
- MIT
- X11
and a few others.

Me: Can Linden Lab switch from GPL to BSD?

Adam: They can - as far as I know they have never accepted anything into their codebase which would prohibit it. They have been discussing lately switching a few key files to BSD, which would definitely be appreciated - but the whole client would be better. A lot of people do - I’m not going to go into names (you can if you want), but there’s a fairly large group of people who dislike the GPL. At least for this kind of standards setting thing.

Me: So what is the road map for OpenSim now? What do you see as the 3 month goals to be, and then 6 month and then one year?

Adam: 3 month goals - we’re going to try and align the two codebases we have now into one seamless codebase that works well both with the official SL client, and with the improved Realxtend one.

We’ve also got a few short term goals in terms of stability, getting features working properly, and maybe with a little luck, doing a bit of work on our client networking. Of course - anything I say has to be taken with a grain of salt, open source means people can work on what they like effectively.

In six months time, I’d like to have the majority of the features in the official client supported, and to be reasonably stable enough for large scale deployments.

I think that might take longer than 6 months, but you never know.

A years time, I’d like to be working towards next generation features - what sorts of things we think the standard virtual world must support, better support for linking environments has to happen over the next year - and we definitely need to be well on our way towards a really good standard infrastructure that can scale to the size of the web today.

Me: Re the discussion of standard features - what do you think is the best forum for this discussion? And, has realXtend committed to more development?

Adam: They have committed to working on this until their backing runs out, but it sounds like they might have found a way to continue working for a good while yet.

Me: And, the forum for the discussion of standards - what do you think is best for that?

Adam: I think that’s going to just happen on it’s own.

A lot of the standards bodies that have been setup seem to be moving no-where, and while we are all happy to participate in them - I think more is going to be achieved by doing things, testing them, seeing what works.

Me: And sorting out a more permissive licensing situation seems like it would help?

Adam: It would help - because it means we don’t need to spend so much time reinventing the wheel. We have to reinvent everything LL has done to be able to license it permissively.

Adam: The Rex serverside changes - those are all BSD, and we’re incorporating it back. Their viewer changes - those are GPL’d by necessity, and we’re not touching those. The RealXtend company has two different companies working on it to avoid any IP contamination. The serverside stuff was done by Admino, and the clientside by Ludocraft.

We’ve got two pieces of software here:
- OpenSim
- Rexviewer
and the server side changes to list them are the avatar server and….. and all the meshes etc. are on the client side with Ludocraft. The server side changes are things like the Python scripting, backend support for the meshes, avatar server, etc. The client side changes are the new rendering engine, client side mesh support, shadows, improved lighting, etc.

Me: Does Windlight goes out if Rex comes in?

Adam: Yes, Rex are looking at integrating Windlight properly into their viewer at the moment. But they can integrate that in without too much of a problem because that’s strictly a client side thing, and that’s already GPL’d.

Me: My friend Ben Goertzel of Novamente who is developing Artificial General Intelligence projects in VWs wanted to know if the skeletons allowed “the ability to script fine-grained control of skeletons controlling characters of different types.” He wants to control characters via inverse kinematics not just by launching pre-fab animations because without that you can’t have naturalistic or adaptable motor control. Will the mesh avatars allow that sort of thing?

Adam: IK is on RealXtend’s feature list - they haven’t implemented it yet, but they are working towards it. What your friend might appreciate is that you can have completely customised bones under the realxtend avatar.

The default skeleton has 220 bones in it, but you can make your own custom skeletons for things like anthropomorphic avatars.

One of the avatars we got shown was someone wandering around as a giant collection of mushrooms.

Me: Can you control the angles of motions of the joints?

Adam: Yeah, you can.

Me: Cool! Ben is going to be so happy. AI just moved a big step forward!

Adam: Shiny.

Me: Ben also said if I want to stress you are ask if you can implement realistic physics of fluids for him

Adam: We’ve got a physics engine that supports it, but client will take a lot of work!

Click on the screenshot below to download your own OpenSimulator and get started. I have. You can download the realXtend client at realXtend.
opensimulatorpost.jpg

, , , , , , , , , , , , , , , , , , , , ,

EvoGrid:
Bruce Damer’s Vision for the 22nd Century

Thursday, February 14th, 2008

brucepost.jpg

Imagine an L-System forest, a herbivore simulation and a carnivore simulation all developed separately without each having its own graphical front end. Each object in the separate simulations would communicate locally or via the network using some agreed upon protocol. Next, picture one or more 3D front end “view portals” with all the bells & whistles that visualize what is going on in the engines and traffic, putting any local “area” together into a coherent scene.

If it existed, such an A-life system could be run as a true grid, an “Evolution Grid” or “EvoGrid” if you will, with the computation not limited to one processor or one 3D scenegraph’s rendering step clock. Developers could focus on their areas of strength while the quality of the collective simulation grid would improve much faster than any one individual effort. And perhaps best of all, new developers could connect their engines, protocols or view portals into the grid or take up development of existing engines and protocols so that no projects need stagnate or die. So with this vision in hand, is something like the EvoGrid possible, workable, desirable, and doable? (Bruce Damer, 2008)

When Bruce Damer told me he is working on evolution technologies (ETs) that will come “alive” towards the end of the 21st/beginning of the 22nd Century, I pricked up my ears!

A world renowned guru of our digital past and future (see of Bruce’s projects at his personal page Damer.com and his Digibarn Computer Museum), Bruce is in the advance guard of many emerging fields, including: social visual computing - avatars and virtual worlds (see his book Avatars, 1997 and compendium of Avatars events); NASA research - surface robotics, spacecraft and mission design, agent-based modeling, and real-time physics (see DigitalSpace for space projects from 2000-2008); and, artificial life - cellular automata, complex and emergent systems (see Biota.org and the Biota Podcast with Tom Barbalet).

brucegodwhat0151.jpg

Bruce Damer’s architectural notes for the EvoGrid router, a finite state machine that will consume XML

EvoGrid - an evolution technology grid

Bruce envisages a grid (EvoGrid.org) in which current work on artificial life research being done with teams at NASA, universities, and in the artificial life developer community, e.g., the work of Ventrella (see below), can interact in a common ecosystem.

Bruce plans to build EvoGrid on an open source framework, communication grid and protocol (Zhengyou & Yichuan 2004) allowing future developers to extend the EvoGrid and add their own objects or virtual creatures.

By running the simulations without visuals, the evolutionary algorithms of EvoGrid will be able to develop huge populations that can interact with other large populations evolving in real time. But, with their emergence into the social visual 3D space of a virtual world, they will hit the wall of physics.

The public 3D immersive portal into the EvoGrid will support the simulated evolution of biologically inspired forms. The portal will be a virtual space where they will interact with human users.

This window into the human world raises many interesting questions. Will the algorithms/artificial life forms themselves decide when to emerge into the public eye? Or, will they be pushed out by other life forms, or summoned forth by human voyeurs/god(s)?

But, regardless of how artificial life algorithms eventually emerge into cyberspace, this will be an important step in exploring the far reaching implications of the possible emergence of artificial life from algorithms into atom space.

From Algorithms to Atom Space

ventrellapost.jpg

J. Doyne Farmer defined a living thing as a pattern in spacetime, able to reproduce itself using a stored information blueprint, employing an internal metabolism driving interdependent parts to interact with and deal with a chaotic environment. Above all, he put forth that a lineage of living things also possesses the ability to evolve through time (Farmer & Belin, “Artificial Life: The Coming Evolution,” 1991).

Our world and ourselves are products of this collective natural technology (whether one believes it is guided by an unseen God or not). Others have argued further that human culture, whether it is in the form of writings, music, ideas and the arts also employs some of the same underlying methods to spread and evolve (Richard Dawkins, The Blind Watchmaker, 1986). Therefore, beyond the physical laws of nature, the most powerful force shaping the universe is what we might call “evolution technology.” (Damer 2008)

The picture above is from Jeffrey Ventrella’s website.” JJ Ventrella is a programmer-artist doing virtual world design and artificial life research. He was Principle Inventor and second co-founder of There.com, and most recently, Senior Developer at Linden Lab. “Ventrella writes papers and chapters on topics centered around evolutionary computation and creativity.”

Ventrella is also the creator with Brian Dodd of Darwin Pond.

Darwin Pond is an imaginary gene pool, a primordial puddle of genetic surprises. More technically, Darwin Pond is an Artificial Life Simulation: a virtual world exhibiting the emergence of life-like behaviors. But it’s more than just a fun and informative thing to watch, you can participate in this artificial life simulation by building scenarios and setting up experiments.

What are the possibilities for artificial life?

Evolution technology is the use of the principles of evolution as seen in nature to rapidly develop new software, chemicals, genes or materials, devices or full robotic machine systems.

Bruce is developing EvoGrid to ask some big questions about our future: Can simulation be used to deduce how life came about? Can simulated biological environments be used to create powerful and transformative technologies? Can artificial life evolve into semi-living machines that can clean our atmosphere and heal our bodies?

“Evolution is a powerful tool,” Bruce notes. It can be used in constructive or destructive ways. “We should use it to make tools - the mechanisms by which we will survive and thrive.”

When our bodies are married to this kind of technology we may live for hundreds of years.

Bruce sees the next generation of space exploration emerging out of these artificial life forms born in cyberspace.

They should be able to work in actual hardware - intelligent manufacturing done at the lowest molecular level.

If we are truly going to travel and live beyond the earth’s biosphere we have to go beyond the 19th century technology that space exploration has depended on up to now. Our spacecraft would be recognizable to the great steamship engineer Isambard Kingdom Brunel, made of pressure vessels and other hard parts. These craft are fragile and subject to “single points of failure” (i.e, one seal goes and there goes the mission).

In order for longer term survivable spaceflight, especially for human crews, these craft will have to almost be alive, or at least be made up of billions of individual micro or nano-parts that are self monitoring and self healing. In this scenario, human crews are going to be like the brain organs in a larger biologically inspired vessel. I believe we are decades, maybe even centuries, from this kind of technology, but it will come.

In addition, evolved biologically-inspired robotic systems will mine outer space resources and prepare the solar system for Earth-life.

Picture trillions of flakes of solar collecting chemical nano-factories working something like an “ET lichen” coating the surface of a richly endowed asteroid, processing its stores of water ice, organic compounds, or metals. Human crews would stop by such asteroids to allow themselves (and their ships) to “feed” on the ET lichen. Indeed if the ET lichen manage to hollow out the asteroid and generate the correct mix of gases then the human crew could step inside for a break.

Other versions of “ET lichen” would have the potent capability of terraforming our own planet enabling us to cope with climate change and other effects of our civilization. As many science fiction writers and Hollywood directors has shown us, out of control ET lichen may also lead us to total annihilation.

The Artificial Life Programmer, the New Alchemist?

Like the medieval alchemists before them, programmers developing “Artificial Life” software (often shortened to “A-life”) are drawn to the elusive yet seductive proposition that they have the power to animate inanimate matter (Steen Rasumussen), except that in this modern incarnation of alchemy; the inanimate medium is a microscopic substrate of billions of transistors. (from “God, Science, and Intelligent Design,” chapter by Bruce Damer, upcoming in World Scientific, Singapore)

Bruce points out there is frequently confusion between the two fields of Artificial Life and Artificial Intelligence. But this confusion, he notes, is a fertile field of inquiry.

A-life is a “bottom up” approach, wherein developers simulate “a large number of simple interacting components employing relatively simple rules from which complex behaviors of whole systems emerge (Chris Langton et al). AI on the other hand has tackled the ever receding goal of creating a “conscious” entity with which we would one day be able to communicate.”

God in the A-Life Universe

In his article for an upcoming book, “God, Science, and Intelligent Design,” Bruce undertakes a thought experiment in which he draws insights from the field of A-Life into a broader Intelligent Design/Creationism vs Evolution discussion.

The open question, “what is life?” underwrites the field of A-Life much as the question “what is consciousness?” does the field of Artificial Intelligence. And, these questions beg others on the role (or absence of role) of God(s).

Will Wright’s Spore: “God as the Intelligent Designer”

spore2post1.jpg

The screenshot above (see CNET for more) is from Spore the much anticipated new game from “Sims” creator Will Wright. Electronic Arts just announced that Spore, released through its Maxis Software brand, will go on sale on the weekend of Sept. 7, 2008. It is billed as “massively single-player” game, that “lets users create a universe, evolving from tiny organisms into civilizations capable of intergalactic travel.” (Canadian Press)

Bruce compares Spore with Karl Sim’s Evolved Virtual Creatures and argues they demonstrate two kinds of God in the A-Life universe:

Karl Sims’ - God the Mechanic setting up the initial conditions and then returning only occasionally to view the current state of the simulation; and the Will Wright, Intelligent Designer God, constantly providing opportunities to use and outside intelligence to steer the direction of the virtual universe.

The properties of A- Life software in its early phases can be represented along a continuum which at one end can be represented by Karl Sim’s evolving virtual creatures (see below) and on the other end Will Wright’s game Spore.

Karl Sim’s “Evolved Virtual Creatures” - “God the Mechanic”

Karl Sim’s creatures start life as a simple pair of hinged blocks in a virtual universe that simulates basic physical properties such as gravity, collisions and surface friction. From that point on the simulation was allowed to continue on its own without human intervention (although random mutations were introduced automatically into the “genome” of creatures between generations).

karlsimspost.jpg

Bruce Damer’s: “God As the Intelligent Adapter”

Bruce analyzes “the copying rule,” as a fundamental principle of life in his article for the forthcoming book “God, Science, and Intelligent Design:”

A living organism differs from bare rock, gasses or a pool of liquid in ine very specific way: the living organism contains instructions that are copied, for the most part unaltered, from one version to the next.

Bruce argues, quite brilliantly, that the Copying Rule, along with the “Laws of Nature” and the element of uncertainty leads us to a notion of God not as an influencer of the future but as an “adept adapter” . And if you don’t see God in the picture the understanding of evolution by cumulative adaptation is even more remarkable for the fact no hand guides it.

Those who wish to celebrate the presence of a God in their lives and in all nature can believe that, God as the Brilliant Adapter, played a hand in the survival and glorious diversification of life on Earth as well as the blossoming richness of human culture and technology. Those who see no need to place an actor like God in the picture can celebrate and seek to better understand the process of evolution by cumulative adaptation, made even more astonishing by the very fact that no hand guided it.

God who created all things in the beginning is himself created by all things in the end” Wrote Olaf Stapledon in 1937.

Performing the Future

The questions evolutionary technologies raise for human and planetary future are vast and far reaching. To explore the huge social and philosophical questions (Damer 2008) raised by the outputs of more advanced EvoGrids, as well as an enumeration of how evolution technologies will impact life on Earth and in space in the future, Bruce is planning a performance piece that will tour the world - “After the Evogrid.”

brucedamerpost.jpg

As a kind of cyber-hippie empresario (see Bruce above on right and his friend and Digibarn collaborator Al Lundell on the left) of nine virtual world conferences including one just three weeks ago featuring Virtual Worlds and Space for NASA, Bruce has always been deeply involved in firing the public’s imagination about the future. Now he intends to take his involvement with the public space to new heights with, “After the Evogrid,” - a “multimedia performance piece with a spoken word narrative, sound and music, and animated visuals.”

“After the Evogrid” will present both the promise and the perils of Humanity living in a symbiotic existence with the products of the new field of “evolution technology.”

The performance piece will bring together a unique combination of evolution technologies, personal and societal impacts, full biosphere implications and the expansion of life beyond the Earth. The EvoGrid itself will create the first open extensible grid protocol for evolution simulations.

So stand by for launch into an even weirder future, brought to you by “Doc Damer”?!

, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

The Archeology and Future of Software Design:
Meeting Grady Booch

Monday, January 28th, 2008

sphercam2post.jpg

Mirror Worlds will transform the meaning of “computer.” Our dominant metaphor since 1950 or thereabouts, “the electronic brain,” will go by the boards. Instead people will talk about crystal balls, telescopes, stained glass windows, wine, poetry, or whatever - things that make you see vividly. (Mirror Worlds, David Gelertner 1992)

As the meaning of “computer” transforms so will software. Gelertner talks about software as an embodied information machine. And, as virtual worlds come of age so will this notion of software as 3d info machines that we can walk around, tinker with, and hang out in with other avatars and agents in real time. But, exactly how the most complex, crucial, and up to now invisible, parts of our society become embodied in all their glory is not clear yet.

The photo above is used with the permission of Dan Slater. It is taken with an experimental camera Dan built, called the Spherecam. It is a one of a kind ultra wide angle camera that records a scene in all possible viewing directions (4pi steradians). The camera uses a pair of hyperhemispherical fisheye lens to record the scene in all directions.

In Gelertner’s vision the transformation of computers into seeing machines will empower people to understand and work with the machinery of their society. Edward Tufte describes, “Beautiful Evidence,” as “how seeing turns into showing.” But for this to happen, new metaphors for representing complex information will have to emerge. We will have to imagine new ways to deal with the multiple views that are already part of complex modern software (e.g., the four plus one mode view pictured below - see Grady Booch, Turing Lecture, 2007).

4plus1view.jpg

And, we will have to imagine radically new ways to view software.

Software today offers assistance to the specialist (in everybody) not to the citizen. The mere citizen deals with the increasingly perilous complexity of his government, business, transportation, health, school, university and legal systems unaided. Mirror Worlds represent one attempt to change this state of affairs (Gelertner, Mirror Worlds, 1992).

Design Patterns:The soul of software architecture

I contacted Grady Booch to ask him about the role virtual worlds may have in the next generation of software design. He is one of the giants of software design and methodology (known for developing the Unified Modeling Language with Ivar Jacobson and James Rumbaugh, and the Booch method of software development). But also he is undertaking an archeology of the essential piece of software architecture - software design patterns - in a project called The Handbook of Software Architecture. The website is under construction and “this is a work in progress, and the chapters of the Handbook will be exposed as each archeologic dig for each system is finished and vetted by the original development team.”

But, I was fortunate to get a sneak preview. The Handbook, while illuminating the brilliance and short comings of software’s past is, in my understanding, about software’s future - discovering the raw materials of software’s future through a meticulous excavation of the design patterns of the past.

“Some people collect stamps, Grady collects software architectures”

google-copy.jpg

The picture above, from The Handbook of Software Architecture, is of an early design drawing for Google. Google are notoriously secretive about their architecture. The “family jewels” of page rank are not elucidated! Grady pointed out the importance of the “barrels” which are the individual servers.

Contradictions of Software-Intensive Mechanisms

creatinganaimprofilepost.jpg

The cartoon/design pattern above is from xkcd, A Webcomic of Romance, Sarcasm, Math and Language - hat tip to Cory Ondrejka for this link. The next generation of software design is pushing up whole new classes of applications. The semantic web is not the last word. But, we are confronted by a set of complex challenges and contradictions. Grady points out several of these (see them in full in Turing Lecture,, Grady Booch, 2007).

1) The internet has changed the way individuals communicate and collaborate but it also creates new opportunities for griefers (for a thoughtful look at some of the issues see Identity in a new era, and for a critique of the way griefers get glorified in the media see here). Mitch Wagner of Information Week, (Ziggy Figaro in Second Life) said to me recently:

I certainly despise griefers — they seem to like to spoil things for other people through no other motivation than mean- spiritedness. A devout Christian friend says that spammers and phishers are just plain thieves, but griefers prove the existence of Original Sin.

2) The web provides unprecedented mechanisms for social networking but also new opportunities for theft, fraud and the exploitation of the vulnerable, especially children.

3) Software-intensive systems permit real time and distributed access to information but this can erode privacy and other basic human rights.

4) Email and other software-intensive mechanisms increase the velocity of communication but email and the aging of digital archives threatens the preservation of history.

5) Software-intensive systems create new forms of artistic expression but piracy can dilute the intellectual property of artists.

6) Software-intensive systems enable and accelerate scientific research but they are also at the center of a new generation of offensive and defensive weapons.

7) Software is part of the very fabric of civilization, living in its interstitial spaces but its complexity continues to grow impacting the users as well as the stakeholders in its development, operation and deployment.

“What is software?” and “What are its limits?”

gradypost-copy.jpg

Through the dedication of Grady Booch (Alem Theas in Second Life) - his archeology and anthropology of software’s past, the past is beginning to speak. The archive not only reveals a valuable history: “What worked and what didn’t?” “What was brilliant and what was a failure?” But by creating this unprecedented access to history, Grady gives us a unique opportunity to chew on the big questions and discover the cross cutting zones from which the future will emerge.

There is a grand vision in David Gelertner’s book Mirror Worlds. A vision of a software revolution in which the underpinnings of our global society, the invisible machinery of software, “becomes visible and is transformed into a beautiful, poetic experience that empowers people to understand and work with the machinery of their society.”

In Mirror Worlds, Gelertner points out, ordinary people will be able to poke around in the workings of society, business and government. You will meet software agents and other Mirror World visitors and you will be able to enter a Mirror World through any household computer.

But as Gelertner pointed out this is not “hazy science fiction” - “the tools and materials for Mirror World building are in hand, and the job is underway.” And the challenges are more social than technical. They are at their root challenges of human imagination.

thelimitsofsoftwarepost.jpg

Last week Grady made a presentation on Software Architecture from Second Life to a group of Canadian developers. Grady’s Second Life avatar was streamed into an IMax Theater for a live audience who watched both the stream from Second Life and a PowerPoint presentation side by side. Through a fascinating set of slides of different software architectures, I saw the process of how successful systems grow and emerge. How software architectures manage to change. How the ability to change allows them to endure over time.

Grady argued that natural forces lead to optimal developments. And, for a given domain there is a reasonably optimum architecture for that domain. Also, how domains have tendencies to grow in particular directions, e.g., How Amazon’s investment in hardware and software was applicable to some domains, e.g. Cloud computing.

Grady illuminated the characteristics of the design patterns that animate the software architecture that invisibly guides our society, the mobile phone - “wickedly complex” yet very resistant to change because customers are fickle. Mars Pathfinder - a classic example of “subsumption architecture as Pathfinder works in a semi-autonomous way, Google, E-bay, Amazon - the titans of the web centric development and web centric retail, Citibank, Visa, and air traffic control, MMOGs, and many more.

How software architectures learn

thegridtodaypost.jpg

One of the insights of Grady’s archeology is that architecture that can change is architecture that endures over time. And key to this ability to be flexible and to scale, is componentization. Grady pointed out how game architecture and virtual worlds are increasingly discovering componentization. Grady links increasing maturation of architecture to increasing componentization. A quick look at these two design drawings of the Second Life architecture - one of the architecture today, and the other the new design Zero Linden (Mark Lentczner in Real Life) presented, in September, 2007, show this trend (see more of the new structural design drawings here).

thegridtomorrowpost.jpg

Zha Ewry (David Levine, IBM research) explained to me some of the challenges of introducing an increased separation of concerns and componentization to Second Life architecture while maintaining the essence of Second Life, collaboration and dynamic content.

To a point yes, we’ll see more and more componentization. But.. there are some deep limits, driven off of the need to do state melding.

State melding is the dynamic state updating - what makes Second Life the amazing creative, social space it is. The old web works by exporting state on a per state basis. But Second Life takes inputs from 10 - 40 AVs, and 40 times a second spits out a new state. I asked Zha what are the key ways the new architecture design is different from the old?

Separating out a bunch of non state melding activity from the state melding to start. That’s the agent domain

Some examples of non melding activity are Inventory, IM , Estate management, Profiles, Search and Map. As Zha pointed out:

Anything that doesn’t involve generating the next frame of the sim’s state, or has stand alone capabilities based utilities, e.g, buying Linden. The agent domain can fetch you a capabilities (a short term secure access to a web service) to the lindex . Right now, they all route via the sim.

Many Second Lifer’s favorite design drawings from the next generation architecture for Second Life displayed on the Architectural Working Group wiki are the ones showing the designs for running your own region from a home computer.

joesgaragepost.jpg

3D Information Machines

illuminous3dmachinepost.jpg

The tools of modern software such as Rational and Eclipse with complex UML models are currently deeply lodged in the 2D realm of the user desktop. But, the third dimension is crucial to Gelertner’s vision for the future of software:

You set up a software mirror wherever you like, then allow some complex real-world system to unfold before it. The software faithfully reflects what it going on out front. But this is a three dimensional kind of reflection: The program reaches out and engulfs some chunk of reality. Like a child- sized play village modeled precisely on a real town and tracking reality’s every move, the Mirror World supplies a software object to match and track every real one.

When I wrote to Grady requesting an interview I asked him the following question:

Do you think one day we can dispense with all those 2D docs and replace them with living 3D software that we can collaborate on in real time?

Grady replied:

:-) and why do you suppose we are not already living in such a world but don’t have the ability to see it! (hehe..one of my fav books is “Better Than Life” by Grant Naylor; it’s the sequel to the book “Red Dwarf”)

The topic of the virtualness of what we call “reality” has been coming up a lot in the WoK forums, led by Piet Hut and Steven Tainer, that I have been attending in Qwaq. And, as the worlds we call virtual become increasingly “real” in ways we have not yet imagined, what we call “real” will be experienced as increasingly virtual. So things are definitely getting very interesting.

In a few years there will be enough computation cycles for ray tracing and avatars will be more of a “real” person tied to bodily movements. Already the riddle of multi threading is the theme of much discussion and talk in Second Life (see this series of Second Life presentations by Intel’s multi threading gurus.)

These mirror worlds will become increasingly rich and, in Gelertner’s vision, they will mark a new era in humankind’s relationship to the human made world. And, “They change that relationship, for good.”

While some would argue that 2D repositories can be transformed usefully into 3D architectures there is a disruptive discontinuity in the phase shift from 2D programs to 3D as 2D respositories do not have a 3rd or a fourth dimension.

Another approach is to root the design process in 3D from the start. From this perspective the sim itself acts as the OS or middleware. Mirror Worlds are native to the 3D environment. And, prototypes for Mirror Worlds, small scale examples for the moment, are already appearing in Second Life and OpenSim.

“Beyond wickedly cool” - A VNOC (Virtual Network Operations Center) in SL

illuminousgradypost.jpg

“Beyond wickedly cool,” was Grady’s Booch’s assessment of the 3D info machines of Illuminous Beltran (Second Life avatar), a.k.a Michael Osias, IBM. These are not merely visualizations they are assemblies driven by “live” or simulated data. “When real business logic is in these machines they become more than “visualizations” and models. The become 3D information processing machines.” I asked Illuminous to describe his work for me:

3dmachine-copy.jpg

Nearly every technical engineer has used a program like RAD and Visio to structure and describe the architectures they are building. These drawings may be static or updated from an underlying metadata repository, and render information at different levels of abstraction based on the phase of the project. These 2D, semi-static artifacts are shared among members of the team working on the project. Via collaboration tools such as email or content management systems, wikis, etc, these models are refined, new revisions created, and the cycle starts again. Ultimately, these artifacts need to end up in a deployed system, which involves yet another set of tools, skills, and people.

There is a thought that, using Virtual World technologies, the collaboration cycle time between design, refinement, development, and deployment can be drastically reduced. The idea is that, 3D elements of what we may consider 2D software, are built in the virtual world. What does software ‘look’ like? With the phrase ‘function drives form’, they look like what they are. Components such as sockets, servers, subsystems, and applications all have well defined structural aspects that can be represented in 3D. That is not to say, every line of java code becomes a 3D object, but rather atomic elements - be they objects or collections of objects, subsystems, or other ‘normalized’ elements that represent structure and function, but also make sense.

3dmachine2.jpg

You could stop there, and say we have a static ‘3D software sculpture’, and gain some value by having multiple avatars collaborate on the structure of the system, making changes in realtime. This provides great deal of value by allowing everyone involved in the collaboration to understand and see in realtime, the structure of the system. Taking it a step further, why not give these ’sculptures’ behavior that mirrors the ‘real’ components? Such as data flows in and out, animations, color changes, even adding in tiny screens, consoles, buttons, network connections, gauges, meters, and even sounds. These elements can be programmed to respond as the ‘real’ component responds. Therefore turning our 3D sculpture into a ‘3D machine’. Now we can determine, collaboratively, how the system evolves over time given various stimulus and behavior. Connecting these components together, like connecting wires to electrical equipment, allows composite systems to be built.

3dmachine3post.jpg

You could also stop there, with significant value in not only understanding the structure, but how the state of all components evolve over time given specific stimulus. Or, you could feed key data elements from the APIs of the ‘real’ systems to create an operational mirror image of the system. Finally, to take it a step further, you could begin to move function into the 3D machine, and begin to turn off the functions of the ‘real’ system…after all data is data, and logic is logic, no matter if the runtime is in java or the Virtual World. The data and algorithms, and the behavior of the machine, come to represent not just the ‘living’ architecture, but it becomes the ‘operational’ architecture as well. Of course not all algorithms and data volumes are appropriate for the Virtual World 3D Machines. In these cases, a hybrid of real processing versus manipulation of high performance systems via APIs is an option. This final phase, is where the design, development, and deployment, could become a single entity.

New Forms of Collaboration

The biggest problem in computational science, which is quickly becoming all of science, is to find ways to let scientists write software together. (Piet Hut)

There is much research going on in many different virtual world platforms on how virtual worlds can best be used for collaborative software design. Piet Hut is working with astrophysicists in Qwaq and Second life in a project called MICA, (Meta-Institute for Computational Astrophysics), to explore the possibilities for scientists.

The IBM Project Bluegrass from Li-Te Cheng, Steven Rohall, and John Patterson, The T.J. Watson, Collaborative User Experience group, is looking at virtual worlds for developer collaboration and to support distributed work. They are focusing on some of the complex aspects of visualization of work flow processes that are part and parcel of modern software design, and the critical social aspects of working across culture and geography.

Collaborative applications such as Rational Jazz for software development and Lotus Notes for business processes, provide team support for “heads down” work. However, as teams become more distributed, it is important to support “heads up” work–the kind of social interaction that is achieved by seeing people in the hallways when they are collocated.

A video demonstration of Project Bluegrass can be downloaded in Second Life at IBM Codestation. Bluegrass is a research project. They are considering the strengths of various platforms. But, their basic approach is the creation of a virtual world client installation, a VW plug in for the 2D collaborative environments of Lotus Notes and Jazz. At the moment, they have a research prototype using Torque which is currently available for use by IBM teams.

bluegrass.jpg

New Collaborative Tools Evolving From 3D Environments

Bluegrass uses virtual spaces to find ways to enhance the 2D environments in which developers work today - modern developers are dealing with a level of complexity that has already usurped the real estate of their screens. But there are some interesting experiments on design and collaboration native to the 3D environment emerging in Second Life.

These experiments, currently, may seem mere toys in relation to the needs of enterprise software development. But because they are evolving directly in the 3D environment - these under-featured solutions may contain the seeds of innovation that will kill todays giants. (see Innovators Dilemma).

The following pictures show Vision Raymaker (Marco Vanadia in RL), and JonnyBee Cioc’s, Spatial Mind Map project. Their source code is freely downloadable