Seeking business value from investment in virtual worlds on the 3D internet
The emerging field of immersive 3D environments on the internet has proven compelling for users and attractive to business. Find here our thoughts and opinions on this new environment and how, or if, return on investment can be found for companies in these virtual worlds.
Monday June 30, 2008
Notes Integration Video
I've been doing some promotional videos (sorry, no machichma) for the new library of components for Composite Applications that I'm working on for my day job. One of them is for reparenting Windows applications as components for use in a composite application. I used the Second Life client as my example:
Unfortunately there is no integration beyond "on the glass" for wrapped components at this stage, so there is not a lot of value to it. But it's a starting point. As the integration points in the client improve then more valuable integrations become possible.
Many of the aspects of virtual world development require objects to be managed. The present tools for doing so are aimed at individual casual users. They do not scale well and do not support a professional development-test-deploy cycle. This limits the approach one can take to designing a 3D presence. When a virtual world server instances within the control of a company, that company now has access to the asset server that stores the data for that virtual world. Data can be examined and injected directly into the asset server by programs and services.
Domino excels at workflow management. The number and size of records involved in an average virtual build (10,000-40,000 records, 30-40 fields per record) is also highly manageable by Domino. Through connectors it would not be difficult to create a Notes application that extract object records from a virtual world server and represent them in a Domino database, and re-inject them back in. There are a number of advantages such an application would bring.
Finer grained data backup and recovery. There is no data protection on virtual world asset servers. If there is a bug or accident, recovery is only possible on an all-or-nothing basis. Keeping copies of the records in a Domino database allows for a higher level of categorization. Important assets can be distinguished from unimportant ones and they can be selectively backed up. If the customer already has a domino infrastructure, the process they have for backing up their Domino databases can be leveraged.
Management of objects at the semantic level. A virtual world tracks the primitive building blocks that make up a virtual build, size limited collections of the primitive objects, and then everything on an entire simulator. These are technical distinctions built for software management. They are not semantic distinctions such as "the SOA building" or "the datacenter build". The existing casual use tools have proven adequate for object management at a lower level. Items such as "display kiosk" or "office chair" can be dealt with. However they are not optimal when considering the multi-user case or when the number increases in magnitude. Managing objects through a Domino database allows these semantic relationships to be build up and used, aiding in management.
Better deployment. To maintain a development build, a test build, and a production build is hard with the current causal-use tools. To move a virtual site from, say, test to production, is a manual process and the potential for introducing errors is problematic. If the site's definitions are maintained in a Domino database, there is the possibility of injecting an entire build verbatim to and from each environment with simplicity and perfect fidelity. This providers for a much more reliable deployment.
Setting up corporate standards. Adding semantic management allows for better categorization and re-use between projects. Style guidelines can be meaningfully created and maintained. Even better, aspects of objects can be parameterized or changed across your object library. For example, if the logo for branding was to change, doing so with the present tools would require manual modification of every instance. If maintained in a Domnino database an agent could easily do a search and replace. Or, indirection could be introduced to certain elements. Instead of using, say, a specific texture, it could say to use one based on an established semantic definition.
Versioning and source control. Once the build definitions are maintained in a manageable resource, this could be used to keep track of versions, or it could export the assets to a version control system. This allows for better control and the ability to roll back to a stable build if errors are introduced.
World wide development. Domino databases can be efficiently replicated around a diverse and disconnected corporate structure. It might be that you have a team of people creating objects in one geography that are being used to assemble builds in a different geography. Domino can very efficiently move that information around. Also, the application could be constructed to work in off-line mode allowing people who are disconnected and running a self-contained simulator to continue to work on their project.
Beyond management. The next level up from fundamental build management is establishing common practice across a company for their virtual sites. Much like Quick places can be quickly created for general collaboration with Quickr, companies with a Notes infrastructure might write additional applications that create template virtual sites based on the management system that site creators then further modify. The application we create would provide for site management, but is just the starting point for customers (or services) creating solutions for how they approach management.
To be clear: this is not talking about using a Domino database as the asset server. It is a general purpose data store and is not tailored enough for the needs of a virtual world. We are talking about importing and exporting from the specialized asset server which deploys the data, to representations in a domino database to manage the data.
To be clear: this is not talking editing builds with a Domino database. The casual use tools are perfectly adequate for editing. Much like checking stuff in and out of source control this would be used to manage the objects that have been created.
Site Functionality
One of the benefits of Domino for web site management is that you are not just using it as a means of constructing HTML, but also of integrating your business process into your site. As virtual world builds migrate from the initial "isn't it pretty" phase to the "what does it do" phase, integration to back end process will be important.
Being able to deploy Domino severs in the same zone as the simulator allows for direct access from the simulators but restricts access from more public servers. This does not stop access by rogue scripts (which run on the simulator) but does make the whole easier to manage.
The data injection capability raises interesting opportunities for dynamic representation of business data. The typical approach at present is for an object to poll a source of data, and update itself based on the response. In this model business agents can, themselves, directly update elements in the virtual world.
Second Life is particularly poor at handling text. You cannot even programmaticly, from within Second Life, create a notecard that holds text. With back end integration like this, such objects can be directly inserted into the asset server, or even textures added with text or other information rendered directly onto them.
Getting there from here
Very little is needed to achieve this. Just having the database schemas and access to the asset servers would go a long way. Having programmatic access that correctly handles synchronization would probably be better. Domino is already capable of everything necessary for application management.
Does it have to be Domino? Not necessarily. A DB2 application might be better at the raw data management. But I think it is easier to build up user interfaces in Domino. Also the quantity of data managed is probably not heavy enough to require DB2. A well versed team could probably write an equally function system in either application. A lot of the management work is already done with Notes, however, and many of the Fortune 500 companies looking into virtual worlds already have a Domino infrastructure.
Second Life is the best known and publicly documented virtual world. IBM has also announced that it is pursuing the ability to host secure instances of Second Life for customers. This, to me, is the most compelling model for corporate involvement and is what I think will be the corporate model that takes cold.
The true value of a virtual world as a public face for a company is it's Massively Multiplayer aspect. As such, virtual worlds are by their nature enterprise software. There are are actually quite a number of different servers and pieces that make up their deployment. For the purpose of this discussion we are just going to look at a few of them.
Asset Server. This is where the basic assets that make up the virtual world are stored. For example the object (prim) definitions, the textures that are used to color their surfaces, the scripts that are used inside of them, and so forth. They are physically stored in the asset server and indexed by a universally unique identifier.
Simulator. This runs the simulation for a portion of the virtual world. As objects move and interact within the virtual world, it is the simulator who determines their position, and how they effect each other. When scripts run on an object, they execute as processes on the simulator. The simulator queries the asset server for the particulars of an object, and makes updates as those details change. It also talks to other simulators to deal with crossing boundaries between the geographical regions governed.
Client. This is the user software that renders the virtual world. It gets information from the simulator about what objects are in the virtual vicinity. It the retrieves information from the asset server to determine how to render those objects for the user. It is the source by which users can contribute their own content by uploading fixed assets, such as bitmaps and sounds, to the asset server. Or by editing variable assets, such as scripts and object shapes.
This represents a simple deployment of a virtual world, and is how the public grid for Second Life currently operates.
In a deployment where a 3rd party (such as Linden Labs) hosts content, usage may be restricted by terms of service, and confidentiality may not be guaranteed. These issues may be addressed by customers hosting their own instances of the virtual world server software (or buying contractually protected hosting services from someone like Linden Labs or IBM), but in such a way to be federated with the larger virtual world. In this deployment the elements related differently than in the simple solution.
If a private virtual world, a public virtual world, and access to the greater virtual world is desired then a three tier system can be set up.
The outer tier is the normal publicly hosted servers.
On corporate owned hardware, but in a publicly accessible space, an asset server is run, along with as many needed simulators to cover the geography represented. In this area the customer would deploy their virtual equivalent of their extranet or public face. Customers and vendors may log into this layer, connecting their client to the asset server in this zone. This asset server may contain the elements needed to render the virtual locations in the extranet virtual world. If an asset is requested that is not in this asset server, it proxies out to the global asset server. In this way assets in the global world can be leveraged. For example an avatar might bring in personally altered textures for their appearance, or might bring a presentation for display. As a member of the global world, those assets are on the global asset server. But through the proxy setup they can be deployed and rendered by the simulator and client connected to the extranet layer.
Taking this a step further, servers can be deployed inside of the company to create a virtual equivalent of a intranet. Clients can log into this layer as well and the proxy ability also allows for sharing. As it is only accessible by those on the intranet confidentiality is maintained and security sensitive activities can be conducted.
Virtual Worlds have been touted as the new "Web 3.0". The number of Fortune 500 companies have set up virtual world presences is worth paying attention to.
My day job has been moving from being less rich client focused to being more web server focused. In that line I thought I would consider if the benefits that Domino brings to maintaining a web presence could also be applied to maintaining a virtual presence. This analysis turned out rather long, so I'm splitting it up into three entries that will be posted over the next week. Let me repeat a general caveat: I don't directly work on any virtual world project for IBM. I do not speak on behalf of IBM. My ideas are just thoughts and speculations from my own perspective. Very specifically: I am not involved in the Second Life hosted solution that IBM is pursuing with Linden Labs. These articles speculate about potential integration points that might be gained in such a hosted environment. I just want to emphasize that this is speculation, not the voice of inside knowledge!
The market for supporting web presences is wide an mature, while for virtual worlds it is small and emerging. There are almost no tools for the virtual market. The ones that are there are either for individual casual use (e.g. the Second Life client) or are other general purpose tools that have been brought to bear on virtual worlds (e.g. Blender). IBM's forté is middleware and I think that one could build a compelling solution with Domino for managing a virtual world presence.
Schematics of a Virtual World Site
To consider how a virtual presence is managed, we need to look at its structure. A virtual site is a potentially complex construct. The field is just emerging and we are not near any sort of common definition of best practice the way we are in the more mature field of web site design. Never the less we can identify some very general categories of elements that compose a virtual site. Static Geography. These are elements of the site that either do not change, or change rarely (say once a quarter or less). For example the underlying topography, the major buildings, roadways, or other navigation features. These can be said to generally correspond to the structure of a website. Where the navigators are, what color scheme is used, etc. It is undesirable to change these more frequently because a repeat customer will have to re-learn the layout. Static Content. These elements are "static" in the sense that they remain the same, or do the same function, between individual visits or operations. They include such things as the contents of most rooma, the arrangement of information areas in a building, notice boards, event listings, and so on. These change from time to time (say once a month), but on a schedule independent of traffic. Dynamic Content. These are elements that are active and whose appearance, disappearance, contents or display changes depending on the visitor, or collection of visitors. For example the contents of a presentation or chart being presented by a person to a conference room, or the shopping basket of people purchasing things in a virtual shop, or the thought map output of a brainstorming session. Transient Content. This is content that is directly associated with visitors to a location. It may be non-persistent items they have brought, avatar attachments, or helper service objects that only exist for the duration of a visit.
Shenlei Winkler is in the fashion business in both real life and Second Life. She made a very cogent post in her Utopian Micronation blog.
The mass consumer just isn’t there yet. She will not be there until enterprise steps up and figures out how to use virtual worlds specifically to enable themselves to do business more efficiently and effectively, and then pays to harden the virtual world in a way that makes them ready for business, which will have the collateral effect of making the user experience consistently easy. Then and only then will we see mass market adoption of virtual worlds.
The New York Times published an article yesterday making public a deal between Second Life and IBM to run an instance of Second Life hosted by IBM. This is extremely important news for businesses seeking a return from Second Life. One of the big barriers, so far, to corporate involvement in Second Life has been the lack of security. The access features for admitting or denying people to various parcels is a good system for casual use, but there are enough holes to make companies who have to sign non-disclosure agreements and worry about confidentiality shy away from them. Even if the system were perfected Linden Labs can (and does) log everything that happens on a server.
With this move there will be the ability for companies to host their own instances of Second Life on their own hardware. This can be done inside their firewall for internal use only, or outside their firewall, for use with their customers. Internal sims would then be suitable for discussion and operation of company confidential matters. Customer facing sims could be used for general outreach, much like public sims today, but also for confidential discussions with customers. Once a company has control over the login process and the servers, they are now in charge of access and logging. Thus they can ensure a secure environment that you can't get on a Linden Lab server.
[Note: the article also talks of IBM hosting solutions for customers. In this case the same security is achieved through a contractual basis, rather than a technical one.]
An interesting development will be how flexible the Second Life server software is with regards to hardware. IBM is king of the mainframe. If instances can be hosted on more powerful computers, it may be that larger capacities and better response times can be provided. I'm sure no one is making promises yet, but it will certainly be an interesting direction to watch.
How does this differ from OpenSim?
Many companies are running OpenSim today for similar reasons. The main difference between what is being done there and a hosted solution with Second Life (other than stability) is sharing of assets. There are millions of developed assets available today in Second Life. Scripts, images, builds, contractors, avatars, and, of course, shoes. With a hosted solution an avatar created in Second Life should be able to log into any of these hosted solutions (subject to being gated by the company) and appear as their normal avatar, bling included. They can rezz any of their normal inventory, talk with other avatars in Second Life public, and, in general, have the same experience.
For sim development, you suddenly have all of those assets available in the Second Life market place to build your corporate sims with. Same is if you were building in public Second Life. Only you can build in a secure environment. This allows all of the huge investment that has been made so far in Second Life to be leveraged by corporate developers. In contrast, any other system available for hosting today requires you to start from scratch again.
There are a number of other interesting possibilities to let you manage your 3D web sites like you manage your 2D web sites, but I'll blog about that when I blog about my vision of integrating Notes/Domino to the 3D world.
In a little bit of a departure I'm going to talk about in-world economics in Second Life. I don't normally cover that in this blog since the economies and practices don't mesh well with "big business". In short, with the overheads involved in "big business", and the very small profits of Second Life exchanges, it's hard to get a monetary return on investment. However, those businesses that work exclusively in Second Life, often amateur run, have a high tolerance for low margins and can operate quite happily. The vibrance and interest they bring to Second Life is a driving force in its popularity. "Big Business" wouldn't have a market in Second Life without all of these "little businesses".
So, one item of concern in the in-world business community is the sale of "knock off" products. Like almost any software product, it isn't impossible to make a duplicate of some good available for sale and then sell it at a cheaper prices. (Or even more expensive! Poor search quality leads asymmetric information and results in an inefficient market.It isn't always easy for a consumer to find the best price.) There are legal recourses they can go through, but they are often slow or ineffective. The cost of a duplicator shutting down and starting up elsewhere is so small that it isn't much of a deterrent. Some simply give up, others try to undercut the copiers, and others make any product that they find copied available for free.
These, however, are problems that affect industry in the non-virtual world as well. I've been offered products that look an awful lot like a real Rolex watch on the streets of Singapore, have studied as a programmer who to try (mostly in vain) to stop software theft, and the ability to easily copy MP3s is in the paper all the time. There have been a variety of responses to this. The music industry is well known for trying the heavy-weight legal response. There have been several headline grabbing cases where young kids swapping music have settled for very high damages. What is interesting is that, to the best of my knowledge, the music industry hasn't actually won any of these cases. They have just upped the legal ante to the point where it was cheaper for people to settle than to continue. So an actual legal precedent has not been established. It also questionable if the hostility and hatred that his has produced amongst their customers is really worth the gains they may have realized. Contrast this with the iTunes approach. Their entire business model revolves around making it very, very easy to buy a copy of something, for a nominal price, that, with a little bit of work, they could get for free. Essentially they have accepted that the music itself has been commoditized, and what they are selling is the convenience of their service.
This latter approach more closely reflects a move in the software business in general from goods to services. Games are not hard to copy. But, if a large part of the enjoyment of the game is by playing it with other people on-line. It's harder to copy a game with the unique identifier required for on-line play. Additionally, the on-line portion of these games requires a subscription to be paid monthly. (Not unlike a Second Life premium account.) In the commercial sector, many companies make more money on support and customization than on software sales. There is no shortage of businesses making money by supporting open source products, notably Linux, that are given away for free.
So when I see these issues that Second Life merchants are having, I wonder if we will also see a move from goods to services. The majority of shops that I have seen complain make avatar accessories and often rely on their name, or repeat customers for business. Imagine if you could walk into a store and instead of buying one of the items that you like, you could instead subscribe to that store. Each week or month they would send you some of the goods they have made. Discount rates for longer subscriptions would encourage longer term purchases and better cash flow. Another business model might be that for subscription holders all items in a shop, or just a second of a shop, are available for free. Or certain items could be exclusively available to subscription holders. Since a subscription holder has a vested interest in the exclusiveness of the product line they have subscribed to, there is an incentive not to cooperate with those who might want to make copies of them.
There are probably a number of areas of Second Life business where a services model might serve better.
User Experience
Finney Marston is an Account Representative for a company that routinely conducts client meetings in Second Life. He's meeting with several clients today to give a presentation on the latest strategy for their product upgrades. While preparing for the meeting he notes in a plugin to his Sametime client when the clients, who are friends of his on Second Life, log in. Later, presence trackers in his Second Life build report that their avatars are arriving there, also reported in his Sametime client.
Once enough clients have arrived he logs into Second Life and starts chatting with them. He checks that they all have voice and that they have downloaded a Sametime client from his company's extranet interface. Since they might be talking about confidential matters they all switch to an encrypted secure Sametime audio conference.
The clients brought one of their technical people to the meeting and their interest leads to a deeper discussion. Finney isn't able to answer some of the more technical questions so he contacts Jennie Hasso, the product technical specialist over Sametime. It's a very quick question about technical capabilities so he asks her over Sametime instant messaging rather than bringing her into their chat. Also it is company policy to try not to give out their technical contacts to customer without a support contract. Jennie is able to answer the question quickly and Finney relays that to the customers.
The meeting goes well and Finney leaves with a task to get back to them with specific pricing information on the scenario they discussed. Since the clients won't be logged into Finney's Sametime extranet all the time he adds their Second Life names to his Sametime buddy list. Since his company has the Sametime Gateway product federated with the Second Life sever, he, and anyone else in his company, can exchange IMs with Second Life avatars even if they don't have a Second Life avatar.
Weeks later the sale is complete and the customer has been using their product, but some questions arise. They go to their Second Life build but don't find the answer in their technical literature there. But there is a "help desk" callbox which they activate.
Back in the company Jennie Hasso, along with the other people on duty for technical support, have logged into the Sametime driven helpdesk system. A plugin to the Sametime client alerts her that there is a question pending in her competency area from a customer in their Second Life facility. She is not actively on a call so she accepts the ticket and types a response to the customer. A short dialog follows with the customers asking questions of the help desk in Second Life, and Jennie answering questions through her Sametime client. Fortunately this is an area that has coverage in a different area of their Second Life build. Jennie selects a button in her Sametime client which logs her into Second Life using one of her companies general support avatars, and teleports her to the facility the customers are in. She leads them to the area that relates to their question and explains the answers using the visualizations and information there. Feasibility
Sametime uses the same wonderful plugin model that is in Symphony and Notes 8. It also comes with an SDK that lets you wire Sametime into all sorts of applications. There is a Sametime Gateway product that lets you federate your IM community with other cooperative IM communities.
So, today, many customers make Sametime available on their extranet and its use for such client meetings is supported with no integration necessary. I already have some plugins that communicate the login status of your friends and can monitor presence "cameras" in builds in Second Life. (These will, hopefully, be made public once I work out some legal and technical hurdles.) There is a bit of discussion on that here, here, and here.
The Sametime Gateway does let you federate to other Instant Messaging networks, but today only AOL and Yahoo! are supported. There is no technical reason that it could not be federated with Second Life's instant messaging network. A legal agreement would be required, the technical enablement on their side, and the driver code written for the gateway.
Nicholas Chase wrote an interesting article on a very basic help desk system powered by Sametime. That could be extended with some application code into the "take a ticket" type system described above with the Sametime SDK. Business Case
Meetings are one of the easier areas to show business value from an immersive 3D world. One of the restrictions on this today in Second Life is that there is no guarantee of privacy. Many people solve this today by having external teleconferences. Integrating Sametime is also a good solution for those who already have a Sametime infrastructure or need to solve this problem for their company in general.
In manning the Lotus build in Second Life I have ended up handling a number of technical support issues. The customers reported a high level of satisfaction in being able to deal with these issues in a virtual world environment compared to either chat or e-mail. It is, however, an expensive solution for a company. However, integrating Second Life support into an existing process allows for using existing resources in an optimal way to cover a new area and, hopefully, drive customer satisfaction with the support service in new ways.
User Experience
Louise Mäkitie works for the Research & and Outcomes department for a non-profit company that examines public spending. Mark Ajeti, an analyst in the department recently showed her some data that showed some new trends. As the data involved several factors, it was hard to see the trends in the Symphony Spreadsheet, but when it was able to import it into Second Life and stand amongst it in 3D they became clear. She was determined to show this data at her upcoming presentation.
Since the data was most compelling when viewed in 3D, Louise decides she wants to do the whole presentation in Second Life. Many customers that he has presented to previously complained about early adopters presenting in Second Life. They felt that viewing a 2D presentation in 3D added little but hype to the experience. However she had installed a plugin to Lotus Symphony that would make it a true 3D experience.
Louise edits her presentation in Symphony and adds in various places 3D "hints". Some are trivial, such as mapping an animation of a rotating question mark to a 3D representation. Some enhance the information visually, such as adding particle effects. Others are fundamental, such as indicting on a slide to include Mark's 3D graph. When pushed into 3D the plugin, by default, will upgrade what elements it can to make the experience more 3D. Bullets becomes actual spheres, bold text, literally, stands out from the page, and pie charts grow out from the page proportional to their values.
When Louise is satisfied she chooses to export her presentation to Second Life. When complete, she is given a list of additional assets that need to be uploaded. The flat presentations her customers complained about required you to upload a graphical image for each slide presented. The Symphony plugin actually constructs each slide as a collection of 3D objects, so individual pages don't need to be uploaded. However images unique to this particular presentation, for example some 2D graphs, does need to be uploaded. She is presented with a list, the total cost (Linden Labs charges L$10 for each image uploaded) and asked to approve. If she does so, the client connects programmatically and uploads the images for her. Their reference numbers are added to an internal database. The system is already aware of all images that have been used previously, such as company logos, profile pictures, or clip art, can be reused without cost.
Louise then switches tabs in his Symphony Environment to an embedded Second Life viewer supplied by another plugin. The Head's Up Display his Second Life avatar is wearing indicates the new presentation along with any other presentations she has available for viewing. She selects the new presentation and the slides are constructed before her.
When it is finished she has a number of options. First she collects them together into a presentation box. When activated, this will display each three dimension slide in series. This is a handy way for self viewing, or for passing to another avatar for review. Since this is new and topical information, she instead decided to make this part of their company's virtual presence. She drops the objects into the "presentation of the day" area in their build.
This creates, basically, a long corridor. Each stop along the corridor shows a slide. Someone viewing the presentation walks along the corridor, through each slide in turn. Louise intend to use this to present the data. She will take a group of avatars down the path. At each slide she will stop and speak to it. Since her audience is capable of independent movement, she will watch them and see what slides they linger on, and which ones they skip past. Using this she can tailor her presentation to the interest level of her audience. Feasibility
This scenario is mostly implementable today. Symphony is easily extendable with the menus. Hits can be encoded into speaker notes. The data format is open and easily readable. I already have a fairly crude servlet that converts slide text to prims. Adding in an embedded Second Life viewer is no harder than embedding it in a browser, which has already been done. Automatically uploading images is a little more tricky. This is possible today with libSecondLife. Embedding the whole mono based libSecondLife environment into a Eclipse based plugin can be done, but it isn't very optimal.
On the Second Life side, everything described can be done. One issue is prim count. I estimate the average slide would take 100-200 prims and for a 30 slide presentation, having all of them displayed at once would be rather resource consuming. However, one slide at a time is more economical, or having a walkway where they are only displayed if someone is near is another way to mitigate this.
I would estimate it would take about 160 programming hours to implement this integration. No special knowledge is required. All the information for Symphony integration is in the published SDK and Eclipse manuals. Second Life scripting is public knowledge and the client is open source. Business Case
Presentations are one of the most common business uses for Second Life. To date these are almost exclusively 2D presentations in a 3D world and the value is debatable. Such a system as this has clear advantages over the existing one, but may be still short of completely compelling. The best use this makes of the medium is the ability for groups to self-organize, cocktail party like, in a 3D world. As with Louise in the walk-through, she can gauge interest by where people congregate. In a display setting, those consuming the media can see who else is consuming it, and they have the chance to interact or collaborate on items of common interest.
I was explaining my interest in integration between IBM Lotus Workplace products and Second Life in another blog but that description didn't resonate. It struck me that a longer description might be worth a blog entry in its own right in my blog. I've been meaning to do a series of entries on possible integration points anyway so lets start off with the IBM Lotus Symphony Spreadsheet. User Experience
Mark Ajeti is an analyst for a non-profit company who monitors public expenditure and is responsible for spotting trends in spending habits. His company recently migrated to Lotus Symphony because it is free and supports non-proprietary document formats. He imports his data into a Symphony spreadsheet to examine it in various ways. The charting feature provided is fundamental as seeing a picture of his data often helps him to understand more deeply what is going on than just numbers. With more data becoming available for examination the complexity of the relationships he is looking for has increased. He needs a more powerful way of looking at the information.
So Mark selects the elements of data he is interested in. He then selects a menu entry that was supplied by a plugin to Symphony. This looks a lot like the charting tool except that the charts he can choose amongst are all three dimensional. He chooses amongst these the data representation he wants to try and it informs him it is creating the chart definitions for Second Life.
Mark then switches tabs in his Symphony Environment to an embedded Second Life viewer supplied by another plugin. The Head's Up Display his Second Life avatar is wearing indicates the new chart along with the other charts he has available for viewing. He selects the new chart and it begins to be constructed before him.
When it is finished he can examine the chart, fly over it, or walk through it to see the data from different angles. He can copy it to his inventory, and pass it to several colleagues along with his comments for their interest.
One of his colleagues, Louise Mäkitie, thinks that one of the views shows something important and wants to work it into a presentation she is planning. However we will discuss that, next, when we talk about Symphony Presentations integration. Feasibility
This scenario is implementable today. Symphony is easily extendable with the menu and 3D charting tool described. I already have a fairly crude servlet that creates 3D pie charts. Adding in an embedded Second Life viewer is no harder than embedding it in a browser, which has already been done. On the Second Life side, I've already created proofs of concept for this sort of work. It's a little slow because of anti-griefing protections Second Life has, but it's usable.
I would estimate it would take about 120 programming hours to implement this integration. No special knowledge is required. All the information for Symphony integration is in the published SDK and Eclipse manuals. Second Life scripting is public knowledge and the client is open source. Business Case
The idea of charting in 3D raises all sorts of interesting possibilities. The problem is that because it has not been available before there are few rock-solid use cases to demonstrate it's utility. This is similar to the Many Eyes project has come up with some very novel ways to display data, but has been criticized as not being able to point to a solid business benefit from any of these.
This chicken-or-egg problem means that it would be hard for someone to resource this effort as an end to itself. It could complement a larger effort, be a "showcase piece" for a business partner who wants to show Symphony or Second Life expertise, or could be done by a hobbiest like me because he think's "it's cool".
My posting on Expanding Grids generated a lot of comments on-line and off-line. OpenSim advocates point to IBM's recently release 3D Data Center as a validation of OpenSim's abilities. Certainly, I would not debate that when used in a narrowly constrained specific use case for 3D visualization of data that OpenSim can be used successfully. But the best potential for business transformation from virtual worlds comes from their Massively Multiplayer Online aspect. And to play in that field OpenSim will have t o be enterprise ready and cross functional with Second Life in order to leverage it's millions of users, tens of millions of pre-built objects, and hundreds of thousands of lines of scripting code. It's not there yet. But how far away is it?
One of my colleagues bet me that OpenSim would surpass Second Life within a year. I pointed out that it depends on your standards and that many OpenSim advocates were already claiming it had surpassed Second Life. Metrics, metrics, metrics. You can't make quantitative comparisons without metrics. So, to that end, we came up with the following metric to compare Second Life and OpenSim:
How many Fortune 500 companies have their primary Virtual World presence based on a Second Life, OpenSim, or other server?
You can't really have a business today without a web page. Even my local pizzaria has a web page. As virtual worlds become more mainstream companies will be expected to have a virtual presence. A large number of Fortune 500 companies do. Most of these, but not all, are in Second Life. None are on OpenSim. But this is a metric I'm happy to live with. I'll track in this blog what Fortune 500 companies have virtual presences and what domain they have chosen. On August 31st, 2009 we'll do the count and either my colleague or I will be the winner of the terms of the bet: a bright shiny US penny.
A typical meme in blogs focused on Second Life residents is the fear of "Corporate Giants" coming into Second Life and ruining the culture. They are painted as faceless advertisement driven entities bent on splashing corporate branding across everything and taking the fun out of it. The lack of evidence of this has in now way reduced the popularity of the belief. It is kind of ironic. The massive unsightly "ad-farms" that Linden Labs has recently taken action against were mostly by in-world businesses selling in-world products. The cornerstone of the Second Life culture whose loss is feared. Whereas the worst of the corporate sites don't stretch beyond their own sim's borders. They typically only contain things of interest to the corporation, and are empty of people. The best of them populate their areas with interesting games, activities or public amenities like the IBM Sandbox to draw people there. If people find it interesting to be there, that can't be wrong. To date, I have not seen a "Corporate Giant" sim that used bots to push up it's traffic numbers. Only the more in-world culturally orientated establishments.
A variation on this meme takes this into account and instead of overt imposition cites a more insidious plot. That, slowly, corporate culture would "invade" normal Second Life culture. That legions of Mary Jane and Billy Bob avatars will be brought to consume what the corporates are dishing out and that those who appreciate a 150 prim hair do and L$1500 skin will be few and far between. Even worse, with their freebies and giveaways they will take the bread out of the mouth of the honest Second Life merchants who sell these accessories.
Although still mostly alarmist, this is closer to what might happen. As Second Life becomes more mainstream it becomes more attractive as a place for "Corporate Giants" to present their message. You can argue back and forth weather popularity drives corporate interest or if corporate interest drives popularity. But ultimately it is the price that any genre pays for going "mainstream". There is always this tension between the participants of something unusual to want validation of their interest and a disappointment when that interest is embraced by the masses. Long term attendees of Burning Man complain that the newly interested only come to observe, not participate. The assault on Hip Hop by the "White and Nerdy".
It's something that happens. So, yes, as Second Life gets popular, it will change. Merchants won't be able to rely on the "honesty" of most of their patrons. They will actually have to take steps to protect their merchandise from copying. As the population goes up, word of mouth will no longer be sufficient for your average in world merchant to reach all the people they desire. As land becomes of increasing value you will get land barons involved in land wars over it. Some of these aspects of "real world" culture "invading" Second Life culture are inevitable.
But what doesn't get much mention is the reverse. In any clash of cultures there is some mixing that goes back and forth. The footprints of the Norman invasion of England are stamped all over our language. We have "pigs" in the field and "pork" on the table. The list goes on and on. As mentioned above, in order to be interesting and populated "Corporate Giant" sites can't rely on the attraction of their branding alone. They have to understand and, to some extent, embrace Second Life culture in order to get the draw they desire.
I was struck by this recently when something I was working on was chosen for a spot on Bettina Tizzy's Second Life art blog. I'm an engineer, and at best consider myself an artisan, not an artist. But she (and evidently others) found beauty in what I was doing and posted about it. And here's the thing: I was making my project as a display piece for an internal IBM conference on virtual worlds to fit in with the "Burning Man" theme. On the surface this is the worst nightmare of the Second Life cultural enthusiast: a corporate usurpation of several expressive medias. But there is a much more positive way of looking at it. David has turned the head of Goliath. The expressions and values of these "minority cultures" are having an effect on the "Corporate Giants". I am not the first IBMer to have projects cataloged in Bettina's art blog. I probably won't be the last. I think it would be far more valuable to the Second Life cultural community to stop wailing about how incidents of Corporate Culture influencing Second Life culture and instead trumpet the occasions of Second Life culture influencing Corporate Culture.
In the end, like "pig" and "pork", we're going to end up with an amalgam that is, hopefully, stronger than either of the original elements.
It seems like each week there is an announcement of a new grid opening up. What affect are these likely to have on Second Life?
Some are a natural reaction, and I'm sure, a relief to Linden Labs. Linden Labs has wanted to be all things to all people. But being the company hosting an international free for all has run them afoul of banking and morality regulations. To protect their legal existence they have tightened their regulations and cut down on activities that were causing them legal trouble. Several of these grids have set up in direct response. For example when virtual banks were shut down in Second Life, a grid started up around virtual banking.
In many ways, the next best thing to running the service everyone uses for virtual worlds is being in control of the technology. Open Sim is a attempt to backwards engineer Second Life. It uses the Second Life browser and, by definition the emerging protocol that it uses to talk to Second Life servers. Linden Labs is exclusively in control of this and only through their cooperation has Open Sim been feasible. If Open Sim usage expands into sectors that Second Life does not wish to cover, then there is no direct competition (which is hard to measure anyway, since Linden Lab's business plan for their revenue stream is not clear). It merely services to make their technology ubiquitous for 3rd party grids.
So, just how good is OpenSim? Should your company be considering it for their own public or private virtual world? To some degree, it depends on your needs. Clearly some companies that are offering these alternative grid services find it in their interest to use it. I think that most companies will find that it is extremely lacking. It is extremely lacking in many basics that Second Life has, particularly in the scripting field. And although a minimum setup is easy to run, it has not been proved in any sort of large scale.
Open Sim is a start. It may turn into the virtual world equivalent of the Apache web server. Those are the hopes of those involved in it. I remain highly skeptical. Given that it is being implemented in, pretty much, the same technology as Second Life, it does not offer any technical advantage over Second Life. The Second Life server will always be ahead of it, as that is the standard they are trying to adhere to. The Second Life server may have it's flaws, but Open Sim inherits all of them, and is considerably less tested.
Right now the only compelling reasons to use Open Sim are legal ones. Either you want to do something that Linden Labs does not allow, or else you need privacy. In either case, you really need to be highly speculative in order to use Open Sim. If you are even the slightest risk averse, it is not a technology to deploy in pursuit of return on investment.
A more profitable approach for business conservative companies is to pursue a hosted service model with Linden Labs. This has not, to my knowledge, been done yet. But it will be. There are some small technical problems to overcome, but after that it's merely a legal matter. The advantage of this is that you are using proven (or at least known!) software in a proven environment. You can plan against this much more effectively than the random development cycle of Open Sim. And you should expect to have to pay for this. Open Sim is free, a hosted contract with Linden Labs will not be. But depending on what factors into your analysis of what return you are looking for, the price of stability may be the difference between a successful business venture and an unsuccessful one.
When my wife and I went to India for our honeymoon the first two days were horrible. There are many welcoming, friendly people in India who are more than happy to help confused tourists. But there are also, sadly, those would would just as happily rip tourists off. Unfortunately they act exactly the same. I don't know how many well meaning Indians we offended by flatly refusing their help when we so obviously needed it, but we were not at all happy with the ones who tried to rip us off that we were very risk averse. After two days we arranged a tour with a vendor recommended by the guide book. The best thing from it is that we got a contract. The contract said what we were responsible for paying for, and what the driver was responsible for paying for. It laid out an itinerary, and the conditions on which it could be changed. All the horror of the first two days was swept away by having a firm and concrete definition and enabled us to become great friends with our driver and have the best vacation of our life.
In the normal world of business the glue between two parties that are conducting work or services is a contract. It states what exactly is to be done, how it is to be done, when it is to be done, how and how much is to be paid, and all the other details. Where there is a dispute, adjudication can be sought and the contract forms the primary reference to resolving it.
In a very new, volatile world, which goes to lengths to preserve anonymity and identity, like Second Life, things are a little different.
When working the Lotusphere build in 2007, we ran into a problem. It was started very late, and the time necessary to cut an official contract by IBM department was too long in order to have something done by Lotusphere. So, a very typical pattern was followed: a call went out and anyone and everyone with time, experience or interest volunteered got together for a "barn raising" and up the build went. It wasn't necessarily a very good use of resources to have the CTO of Lotus playing around building statues of dolphins in a virtual world, but it was the only choice we had given the corporate standards we had to live in.
But it got a lot of us into Second Life and we all did stuff, found friends (started blogs), and partook of the community. Come this Lotusphere, we were again short of resources and time. Several friends of mine who "just like building things" were ready and willing to help out, for gratis. Unfortunately that brings up another problem. Although such offers are well intended, looking at it from a conservative lawyer's point of view, it opens risks for IBM. Such willing workers might wrongly expect favorable treatment from IBM at a later point, use their work for promotion in an unapproved way, or in the worst case, challenge IBM for the rights to the work in court later or sue for unfair compensation. Now I know my friends wouldn't do that, but the lawyer's don't, so it wasn't an option. (Can you tell I just finished our annual re-reading of the Business Conduct Guidelines?)
The final cautionary tale revolves around some work that was done between an IBM group and a private individual. Having similar problems getting contracts done in time they chose instead to use some local talent, and pay them out of petty cash. The costs in Second Life are so low that this is an easy choice. Unfortunately a dispute arose, and since there was no formal contract in place, it was just a case of "he said she said" hearsay, angry words, and a soured relationship.
So the lesson from all of this is that standard business practice exists for good reasons. And these can apply to the virtual world as much as the brick and mortar world. They may be a drag, and slow things down, or prevent us from achieving what we know we could do. But sometimes it is worth it for averting the risk we might otherwise entail.
In the end, I'm reminded that we talk in the programming world a lot about "agile development". This has to do with creating a flexible development structure to quickly steer our course to meet changing or evolving needs. What we really need is "agile business practices" to go along with that. Imagine if we were able to cut contracts quicker. That would open up the scope for a lot more. If you are working or starting to work with virtual worlds you might reflect on your business practices. Maybe certain of them need a "fast track" to enable you to land the opportunities you way in a legally protected way.
There was an IBM ad recently in the "Talking vs Doing" series titled "Avatar". The dialog goes like this:
A. Johnson:
What do you call that again?
T. Snider:
An avatar. A digital simulation of me in a virtual world.
A. Johnson:
What’s it do?
T. Snider:
Business. It’s innovation. It’s all the rage…I have my own island.
A. Johnson:
Making any money on your island?
T. Snider:
Virtual money? Or actual money?
A. Johnson:
The point of innovation is to make actual money.
T. Snider:
My avatar doesn’t know how to do that.
Some people have interpreted this as critical of virtual worlds and the investment made in them. I agree. I think it highlights the fact that some people get caught up in the hype and need to do what everyone is raging about. They lose sight of the fact that it really has to drive business needs.
Now, do I think it is critical of IBM's investment in virtual world? Not at all. I think that IBM has invested wisely. Most of it is experimental, and, indeed, confined to the research division. The entry from other sectors has been mostly light and tentative. And where successful, it's been followed up by a heavier investment.
What I find most humorous about this ad is how closely it parallels my favorite IBM ad. Even funnier, I had tried to get a group together internally to re-shoot this ad with a Second Life focus! I even created a 3D "flaming logo" in Second Life. :-)