Shortly after the AoT conference a group of us who had helped construct the setting were sitting around, decompressing. As volunteers, we had been invited to attend the conference as well, and many of us did. We talked about the various sessions and there was a general dissatisfaction in the content. I'm not going to say that the content was bad, it just wasn't aimed at us. We weren't researchers, interested in breaking technology and innovations. We were users of virtual worlds. Wouldn't it be great, I thought, if we could do a conference where we could talk about what was important to use: how we use virtual worlds in our work and personal life.It was at that point that I realized the flip side to what we had been driving for. The AoT conferences showed how you could save money by having real conferences in virtual worlds. If you look at that in the other direction, virtual worlds allow you to have conferences that you otherwise could never have afforded. With that I resolved to have that conference. And, now, I present to you...
CALL FOR PRESENTERS!
Beyond Blogging - Social Networking in the Virtual WorldApril 7-8, 2009, Lotusphere, IBM 9, Second Life
The 'Beyond Blogging' Conference is about exploring the use of virtual worlds by IBM and IBMers alike in their social and working lives. Virtual worlds are used for the expression of ideas, new concepts, collaboration, communication and community building. We are looking for papers, posters or presentation sessions along the lines of the conference theme: how virtual worlds have affected IBM and IBMers.
Since the conference it taking place in public space, non-IBMers may participate if they wish. Those just wishing to attend may subscribe to the Developer Works Blog on "Return on Investment in Virtual Worlds" for updates. Those who wish to present a topic may do so. They just need an IBM Employee to "sponsor" them. You or your sponsor can contact the conference organizers for more details.
Multiple submissions are encouraged. No submission will be refused. Because in Second Life, time and space are unlimited.
Beyond Blogging will take place on April 7-8, 2009, on the Lotusphere parcel in the IBM 9 region of Second Life.
Topic title and abstract on (internal) wiki
Notification of final timeslots
Additional sessions will continue to be accepted up until the date of the conference. Timeslots will be assigned on a first come, first serve basis.
Format of the Conference
The conference will include 24 one hour sessions. Standard projectors will be made available to participants. The expectation is that presenters will broadcast with in-world voice, and take questions in chat or by voice. However alternate forms of presenting are encouraged.
Submission format, details and style files will be left up to the presenter. If they wish to use the generic projector then image files will need to be made available to the conference organizers ahead of time. Additionally, if they want their material combined afterwards in the "Conference Proceedings" they should send it to the conference organizers in Open Office, Power Point, or PDF format before 14 April.
To submit a topic, follow the instructions on the Schedule Page on the internal wiki. If you are an external speaker, your sponsor can edit the wiki on your behalf and communicate information back to you.
In keeping with the principles of an "unconference", our review process will be very light. Where possible conference space will be expanded to accommodate exceptional interest in preference to sessions being rejected. Slight preference for space will be given to sessions closer to the conference theme than for those that are not.
A joint report by Linden Labs and IBM has been released on the recent conferences held in the Second Life shard IBM has running behind its firewall. This is the conference that I was involved in and have been talking about.The report covers many of the events at a high level. I'm a little disapointed that neither my racetrack or my session got a mention. I guess the racetrack was too trivial. My session, however, was one of the highest attended on that day (I know because I did the metrics!) and got a lot of interest for both the content and the manner in which it was delivered. But I'll have to go into that in another post.Bruised ego aside, the article does do a good job of putting some actual numbers on the RoI gained by holding the conference virtually. The huge point for me is not the first conference, though, but the second one. Virtual worlds has this kind of inward looking habit. People often present something about a nifty bit of technology using that nifty bit of technology. So having a conference on virtual worlds in a virtual world is hardly surprising and, in my mind, doesn't really prove much of anything. When the next conference got canceled (the report doesn't explicitly state it, but if you check the calendar you will see that the canceling of the conference came about right as the economy started to crash) the decision to have that conference in a virtual world is the HUGE POINT. Here is a case of where a virtual world is used for something other than talking about a virtual world. It's use for genuine business. That, to me, is far more validating than anything else.Also, not covered by the report, is the fact that the place has been nearly booked solid since. Everyone has had their travel budgets cut. Originally the sixteen sims behind our firewall were just going to be set up for the virtual world conference, and then repurposed for various reasearch and other projects. But now they've been too much in demand and are, more or less, becoming a permananet facility.It kind of puts a different emphasis on things. To look back at the rag-tag group of volunteers that put it all together. We all put in long hours of companionable labour. Only Craig Becker got any real mention as the leader. No bad feelings there; he probably did twice the work of any of the rest of us. But looking back on it, and what making it all work did, and where it's likely to lead to... It's not often that you get to participate in something that, literally, changes the way we work.That might sound a little grandiose. And it may be a little grandiose. I think I'll wait a year. That should be enough time to really determine if it was all a flash in the pan or the start of something. :-)
One of the things that happened while I was gone was IBM's Academy of Technology's conference on Virtual Worlds. I'll be talking a lot more about this, but for now I'll refer you to Irving Wladawsky-Berger's excellent blog entry on it.Tezcatlipoca Bisiani was the "art director" for the build and had a number of things he wanted done. He's the one that put it to me "You're good at algorithmically generated structures". I hadn't thought about it that way before, but I can see how things I did like the Fractal Growing Tree give people that impression.So one of the things he wanted done was a "play area". He wanted a 3D racetrack that "filled the sim". It wasn't my traditional work interfacing the virtual and real world. I had plenty of that to do. But there was a delay in getting the behind-the-firewall sims connected up with the rest of the behind-the-firewall so that was on hold.Years ago in POV-Ray I had created a system for laying out HO rail track. (Or, really, anything you wrote and described.) I thought something similar might do. So I borrowed heavily from that idea and created a number of base pieces: left curve, right curve, 9m, 6m, and 3m straight tracks. I then came up with a way of describing a series of these together. A little Java program worked out placement and produced another file, suitable for pasting into the notecard, with the directions on it.This got dumped into a rezzer in world which read the instructions, rezzed the pieces in turn, and gave each their instructions. They then flew out across the sim until they were in position.So in the end, we had a fixed "pit stop" with a big sign from which you could choose six different rack layouts in three different difficulty levels. (Higher difficulty levels had bits of the track missing!) Tez created some interesting track pieces (much more inspiring than the blank sections of asphalt I proofed the system with) and grandstands and viewing areas.Cars were much more difficult. The beauty of using a Second Life shard (more on that later) rather than OpenSim is that we had access to all of the material and builds of Second Life. I went car shopping and tried out a bunch of freebie cars. Unfortunately the driving is pretty poor in Second Life and many of them looked cool, but drove like crap. Especially on a 3D track. Every single other track I saw in Second Life was a flat 2D short loop. Booooring. Ironically a freebie VW Beetle Convertable was wide enough and flat enough to handle well on the track without flying off the sides. All I needed to make it complete was to make it explode if it did fly off the track, some gun mounts and grenade launchers.And the whole thing went down well. It was one of the most popular non-theater places during the event. I have some pictures of it here. One of the down sides of working on a Second life shard is that it's behind our firewall and you can't actually visit it unless you are an IBMer. If someone has a fairly empty sim that they would like filled with racetrack, I'll be happy to set it up for them. It creates itself all from one box, and cleans up with another click afterwards. That's the real beauty of Algorithmically Generated Structures.
There's an IBM project I'm doing some work with that will eventually span 16 sims. I'm not a great visual builder but I have had some success in creating algorithmically generated content (1, 2). So, to create a sixteen sim spanning geography that's consistent I put my hand up.Traditionally landscapes are created by making pictures in Photoshop, which greylevels corresponding to altitude, and exporting them as RAW files. I don't have Photoshop and any time I've used it, it has confused me terribly. Being a programmer, I wrote my own simple Java program.Starting with a schematic diagram from the designer, I colorized it and set specific colors to be specific altitudes. My program then read this in, set the heights, and then did a few passes of "blurring", to take the edge off the transition points. This was an iterative process for me to get the program right. And more iterations so the designers could review the results. I didn't have terrain upload rights for the sims and Second Life is a little slow about applying the changes.So, to keep the development process on track, I cranked up an OpenSim server I had. It took a little head scratching, but it wasn't that hard to make it come up with sixteen sims instead of the usual one. It was running on old hardware, with an old OpenSim, and I was running sixteen sims on one server. This would normally be a recipe for disaster. But since the sims had little to no objects in them, and little to no visitors, both OpenSim and the hardware performed adequately. The review was completed, tweaks made, the final version approved, and then sent to the admin for upload into the Second Life production environment.[One caveat: OpenSim and Second Life seem to differ in exactly how they use the RAW terrain files. I had to flip the Y axis between the two for consistent results.]For a production deployment Second Life might be the best option for most business needs today. However, there are circumstances, like the above, where the commonality between Second Life and OpenSim allow OpenSim to be used for prototyping, proof of concept, or other testing of aspects before uploading them to your production environment.
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.
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.
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 ExperienceFinney 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.FeasibilitySametime 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 CaseMeetings 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 ExperienceLouise 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.FeasibilityThis 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 CasePresentations 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 ExperienceMark 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.FeasibilityThis 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 CaseThe 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".
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.