Make (virtual) room Enterprises – Social Media and Virtual Worlds are Teleporting to your organization

About a year ago, after my visit from the VW Expo 2008 (now called the Engage Expo) I wrote about how enterprises were cautiously approaching virtual worlds by deploying small pilot projects around support functions. One of the main concerns that were brought up at the conference was around how to measure Return On Investment and whether organizations would be willing to publicly talk about their success stories. On the other hand, there was widespread belief that the areas where there would be some clear benefits would be around training and collaboration – operational cost savings, efficiency and productivity.

Well we didn’t have to wait too long to see what happened. By April of 2009, 3D  TLC 1.0 happened, a conference around the application of 3D worlds towards Training, Learning and Collaboration. Not only is it commendable that they were able to pull off a whole conference around this, but there were a plethora of enterprises present to talk about how these new technologies helped them. The 3D TLC 2.0 is being held with the Engage Expo in San Jose on Sept 23-24th. I am also encouraged to see that the event continues to attract enterprises from various industries.

So is the case with social media. Facebook, Twitter and Youtube are being increasingly used today by enterprises for viral marketing, collaboration and even advertising by companies such as Home Depot, Best Buy and Wal-Mart. More importantly, they are also able to gauge the effectiveness of using these media. Best Buys’s Twelpforce is an innovative way to provide online customer service with a personal connection; so did HomeDepot. Wal-Mart’s elevenmoms leveraged the power of collaboration to bring together money-saving communities – something central to Wal-Mart’s messaging.

This doesn’t necessarily mean that these immersive environments and social media technologies have become main-stream in enterprises. But it certainly shows that enterprises are finding real applications for these in solving business problems. And it definitely provides a boost to other companies on the fence who have thought about trying it but haven’t made the move yet.

I was part of IBM’s Data In Action Virtual Event back in February and therefore got to experience this first hand from the “supplier” side. There were some clear benefits to this:

  • Obviously it allows for many interested parties to take part in this event who otherwise would not have traveled out to a conference
  • Registration and lead tracking is far more automated
  • “Floating” around the VW via your persona is obviously time-saving and efficient :-)
  • The ability to replay a presentation in the conference was certainly very useful

It also brought to light some things that could enhance the experience, notably, if there was a notification mechanism for the booth staff if someone visited (so I wouldn’t have to poll the screen all the time I was on duty) and also if there was a mechanism to exchange files or e-business cards.  But I am sure these capabilities – and more – will be available soon.

While this wouldn’t necessarily replace a full blown real world event, it does compliment it. A virtual conference before a real world conference would allow me to either better address or keep focus on key priorities. A virtual conference after an event would give me a venue to follow-up on key feedback items from the main event.  And that’s really how I see the value being played  out today.

The technology is only getting better and so are the options for the enterprise. This is exactly what OpenSim offers – an open source choice for customers who would like to deploy virtual worlds inside the enterprise.  With the integration of OpenSim and Informix, you now have a “best in class” OLTP database to manage scalability and growth – enabling companies to start building best of breed solutions – that’s what progress is all about!

Leave a Comment

Informix integrated with OpenSim

Informix is now integrated with OpenSim. This means you now have the option of running Second Life (SL) clients with Informix via the Opensimulator. OpenSim is a 3-D application server. To read more about OpenSim check it out here : http://opensimulator.org/wiki/Main_Page

There is also an OpenSim grid where you can get started quickly: http://www.osgrid.org/elgg/

Leave a Comment

Happy New Year

A very Happy New Year!! Here’s hoping for an exciting year ahead in virtual technologies. Judging from this article on virtual architects, it looks like virtual technologies are slowly but surely finding their place in solving real business problems.

Comments (1)

Power of Informix Extensions – Take 2 – TimeSeries

I want to point out to all of you an interesting video, which I will use as a basis to talk about an Informix extension that could find some application in MMORPGs. Check out this link (it’s a video):

http://news.bbc.co.uk/1/hi/england/7632521.stm

As you would have observed from the video, this is a system designed to monitor real time energy usage inside a home – turn on the dryer and up spikes your energy meter! I would find this really useful at my home – it would tell me exactly how much each energy consuming device in my house is costing me – and then I can make adjustments to reduce my energy bill. Of course that might mean, I may end up limiting the up time of my computer, which in turn would mean I would be blogging less and .. – OK, never mind. I want to bring your attention back to what I think is an important and interesting aspect of this system – time based data capture. This data is what is characterized as time series data. Time series data are identified by timestamps and stored in a database. Many other examples come to mind in terms of time series data – stock prices, seismogram data, network performance monitoring, etc.

MMOGs can capture some interesting time series data. An example would be the possession of virtual assets over time by players. Among other uses, this data is also useful for instance, to validate a player’s claims of ownership of an asset or his current level – where someone calls into the game’s customer support and claims the loss of an asset or disputes that he was actually at a higher level. With time series data, support/service staff can backtrack possessions/levels to specific timestamps within a given day. Another really interesting (or creative ?) application that comes to mind is using time series data for “replays” – imagine being able to replay parts of the game back !!

This is where the power of the Informix TimeSeries extension comes into play. Instead of a row per timestamp, all entries related to the time series are entered into the same row of an Informix table. TimeSeries is what is known as an extended data type in Informix that has its own set of powerful analysis and manipulation routines. You could store time series data as row per timestamped entry – but this leads to poor performance and inefficient storage especially considering the fact that time elapsed data can really grow.

For the sake of simplicity let’s assume that you are tracking the position of a player. Let me state up front that the tables/examples used here are purely for illustrative purposes (meaning I haven’t put any emphasis on the actual organization of the data and I haven’t validated any syntax, etc, etc).

With Informix TimeSeries data type, this could be stored in the a table as shown:

player_id position_info
P1 TimeSeries(pos_chg)
P2 TimeSeries(pos_chg)

down-arrow-blue-small3

t1 t2 t3 t4 …….

down-arrow-red-small3

TimeStamp position place_id
DATETIME YEAR TO FRACTION (5) Point CHAR

As you can see, a TimeSeries data type allows you to keep a single row for every player irrespective of how many times assets change hands or how many times they change their position. This also helps save storage space.

To understand how this works, think of the TimeSeries column as a container for a row subtype. This subtype represents a structure of elements (t1, t2, t3, …). Each element represents a single set of data for a timestamp. In the positioning table example, this sub-type is labeled “pos_chg”. The TimeSeries data type acts as a constructor for this subtype as shown in the table: TimeSeries (pos_chg).

Again each element (t1, t2, t3, …) is another row datatype that begins with the timestamp column and has additional columns. The Timestamp column can be used as an index for the elements.

The creation and loading of time series data is more elaborate and I am not getting into it here – this is well documented in the Informix TimeSeries Guide. My intention here is to illustrate the power and flexibility of theTimeSeries extension.

Once created and loaded, a variety of SQL routines (as well as C and Java API access routines) can be applied to this data – select individual elements (by timestamp, offset, specific position); modify elements or set of elements by specified time range, at a given offset; retrieve subsets of data using aggregate functions; compare and perform arithmetic operations on a pair of timeseries data and much more. These functions demonstrate the real versatility of using the TimeSeries data type extension.

As I mentioned before, this type of information is extremely useful for validating customer claims or for replays of important parts of the game. And although I mentioned that I am not getting into all the details of creating and loading the TimeSeries, I am still going to give you a bonus (heck, it’s the holidays!!) – check out this article on IBM developerworks – it is a nice beginners article on how to create and use the Informix TimeSeries extension and it’s based on game data ! (well sort of , sports stats to be more accurate :-) ).

Comments (1)

Informix Rated #1

I nearly forgot to post this rating that came out over 3 weeks ago!! Informix was rated the #1in customer satisfaction by VendorRate. Check out the report.

Leave a Comment

Power of Informix Extensions – Take 1

Sorry for the loooooong break! With the election fever and kids homework, things got really wound up :-) . Now that one is out of the way, I have found some lost time! Today I want to touch on a powerful Informix capability that can either help solve some interesting problems for game developers or find new applications! This capability is known as Informix Extensions – a capability that allows users to extend the capabilities of the Informix data engine and thereby open the door to some really innovative solutions.

Informix provides extensions using it’s datablade technology. Extensions in the Informix context can be thought of as domain specific data-types and their associated routines that are treated as a standard data type by the engine. As an example, consider the Informix spatial extension. The Informix spatial extension consists of data types such as Point, Polygon and include manipulation and query functions such as Intersects(), Boundary(), Union() and so on. The power of extensions is obvious when you consider that they are loaded on demand , executed in the data engine’s process space and accessible via regular SQL, thereby providing both flexibility and performance.

Informix provides an API that allows users to define their own extensions. These extensions can then be registered with the Informix engine as user defined extensions. Let’s say you wanted to manage asset dependencies in your game (see visual below) – for instance, let’s assume that changes to a mesh would trigger changes to the compiled model, the texture page file and the final character. Tracking these dependency changes becomes complex and error prone if it’s done using application business logic. However, by creating an Informix Node extension that represents these dependencies and the actions to be performed on them drastically reduces the complexities and makes it so much easier to use by encapsulating the data type and providing functions such as GetParent(), Compare(), Ancestors() and so on.

node_example21

If you are excited about the potential this holds and would like to dive into the details let me know. Also I recommend starting with the following material :

The IBM Informix datablade family overview

Developing Extensions to IDS (from the online Informix Information Center)

In the next post, I am going to lead you into another built-in extension in Informix that can be useful in MMOGs and Virtual Worlds.

Leave a Comment

Blogging from the GDC 2008 event, Austin

The GDC 2008 kicked off Monday Sept 15. The exhibit floor seemed very familiar to what I saw in 2007 in terms of technology platforms and vendors, some of the prominent vendor exhibits being Icarus Studios, BigWorld, Simutronics, Multiverse and of course many of the service providers were present – like Vivox and Aria systems.

In terms of the overall roadmap and business models, many vendors continue to focus on “serious games” along with attracting MMO developers and publishers. Learning and education seemed to be primary areas for serious games. There is also an increased focus on the need to get more out of the data from gameplay – improved metrics and deeper data mining.

Icarus Studios exhibited “Fallen Earth” which is now content complete. I believe Fallen Earth would be the first MMO in production on Informix.

In the overall scheme of things, providing rich content and intriguing gameplay to keep customers challenged, happy and coming back still ranked as the top priority. So was there talk around and interest in database technologies ? Indeed yes if you talk to MMO developers who are serious about managing data efficiently and having flexible options to scale data – which by the way most of them are serious about. I am going to blog the database perceptions and challenges in this industry in a separate post – I invite any experiences from you as an MMO developer or publisher on this topic.

Leave a Comment

Older Posts »
Follow

Get every new post delivered to your Inbox.