Beware vendors bearing gifts

Resellers of open source software survive by making life easier for their customers. For example, Website hosting providers handle the setup, backups, updates, load balancing and server management for you. Yes, you could run Apache for free on your own servers — but would you really want to?

Those that do more than survive but make it big, typically follow one of four strategies (or a combination thereof):

  • Low, low, low prices.  Nothing beats a discount except an even bigger discount. These guys make money by selling a bare-bones product to vast numbers of customers.
  • Pleasant user experience.  Many people are willing to pay a little extra for an interface that doesn’t make them want to kill themselves.
  • Custom development. If you want a fancy Website, but don’t know how to make one, these guys will build one for you to your exact specifications. They typically bill by the hour or by the project.
  • Custom features. These guys do more than just create a new user interface for you to manage your website with. They add extra functionality to the site, which may require action on the part of the user. Flash is one example of a proprietary product that sits on top of a standard website, and requires users to download a plugin. Many more such products are available in the enterprise space.

Since few vendors want to get into a price war with a bulk discounter, creating a nice interface is astoundingly difficult work, and custom development is not easily scalable — as you get more work, you have to hire more staff — many are tempted to experiment with rolling out custom features.

But this poses a grave danger for customers.

Say, you have a website and want to add video to it, and standard HTML doesn’t support it. At one point, you would have had to choose between Quicktime and Flash. If you had bet on Quicktime, then at some point you would have had to scrap your investment and convert everything over to Flash because Flash won the standards war. Fortunately, the conversion process is not too difficult in this particular case. But I know of companies that invested millions in proprietary content management systems that pretty much had to start over from scratch because the proprietary products weren’t able to keep up with advances in the open source community.

Meanwhile, in the case of Flash, the next generation of Web browsers will support HTML 5 and WebGL, making Flash irrelevant – and it’s already not supported by iPhone and iPad devices.

Something similar is now happening with OpenSim.

Open source development can seem slow at times, and vendors are quick to roll out proprietary alternatives that are in advance of what the open source community can offer.

Today, for example, the folks behind the Avination grid offer Vivox voice — a proprietary system that is significantly better than the open source Freeswitch alternative and while similar to Whisper in functionality, already works with all Second Life and third party viewers.

If your company were to host their private grid with Avination, you would be able to enjoy the benefits of Vivox right now, without having to wait for Whisper to become fully integrated with the viewers. Once Whisper is fully integrated, however, switching over will not be much of a problem, since Vivox doesn’t require any up-front expenditures or setup work — you would just turn off Vivox and install Whisper.

Similarly, if your vendor offers a particularly nice user interface for managing a grid, and you were to switch to a different vendor, you would have to learn a new user interface — but the work you’ve done on the grid wouldn’t be lost.

However, if your vendor offers a proprietary scripting language and you write your scripts in their language, then switching to a different vendor might require that you rewrite all the scripts. This is a significant barrier to switching — you might decide to stick with your vendor a little longer instead. And the longer you stay, the more painful the eventual switch will become. After all, vendors rarely go out of their way to dismantle their cash cows by providing an easy transition path to a new technology.

This could be the case with InWorldz’s new Phlox script engine. The question is — will the script engine simply support existing Linden Scripting Language and OpenSim Scripting Language commands? Or will it also support cool new commands unique to Phlox? If Phlox simply lets existing LSL and OSSL scripts run faster and better, then moving from InWorldz to another grid will not require any rewrites to the scripts. But if Phlox supports new commands — new commands that users want very much, but which aren’t available elsewhere — then the temptation not to take advantage of that might be too strong to overcome.

But a hosting provider doesn’t have to build its own scripting engine to create scripting problems for users. OpenSim allows the use of custom modules to extend OpenSim’s core functionality. There are modules for mesh support, for groups, for search, and for many other much-needed functions. Many are open source and available to everyone. But if your hosting providers use proprietary modules that are unique to their platform, and you grow to depend on the functionality of those modules for your scripts to work, then migrating away to a different vendor may be problematic.

Another proprietary feature that several OpenSim hosting providers offer is proprietary currencies and marketplaces. Switching to another hosting provider could mean that you lose access to both.

OMC in circulation since Spring of 2010. (Image courtesy Virwox.)

One option for currencies is the OMC, from Virwox, currently available on 26 different grids, with more grids added every month. If you’re unhappy with your hosting provider, you can take your regions, or your entire grid, to another provider, and keep all commerce-related services unchanged, since the OMC is a multi-grid currency.

Is the proprietary tech worth it?

Here are some questions to ask yourself before deciding on whether to use a proprietary technology from an OpenSim vendor.

How much do I need to have it now? Or can I wait?

Mesh support is currently available from the RealXtend community, and is part of the Naali viewer. In fact, it’s been available for a couple of years now. But the RealXtend version of mesh isn’t the same as the mesh that Second Life is currently in the process of rolling out — which is already supported by their experimental viewers, and by experimental releases of OpenSim.

Is mesh a “must have now” or can you wait for it to become standard in all the Second Life and compatible viewers, and in the main-line release of OpenSim?

If you use RealXtend for your grid, your users will have to use a special viewer, not any of the Second Life compatible viewers that they may already be familiar with. And every month you spend in RealXtend means that much more content developed in that format, and that much more familiarity your users will gain their with their viewer — and that much more difficult the switch.

Meanwhile, the OpenSim community will be developing and sharing content that you can’t access, and building hypergrid links that you’re cut off from.

Similarly, the open source community is busy working on improving script performance, improving voice options and improving stability. They do work slowly, since most of the developers are volunteers working around their day jobs, and only work on projects that spark their interests.

After all, Flash first came out in 1996. It’s now 15 years later, and HTML 5 and WebGL just came out and still aren’t fully supported yet by all browsers.

But the open source developers do work, and they work in large numbers. And, with recent interest by universities in OpenSim development, we’re likely to soon see a new influx of volunteer developers.

How likely it is to become the dominant player?

There’s very little chance that RealXtend will become the default option for folks needing mesh support in their virtual environment. It’s difficult to set up, and is not compatible with any of the Second Life viewers.

I personally don’t know of a single public grid running on the RealXtend platform — and if it hasn’t taken off yet, it certainly won’t be taking off after mesh is supported by the default Second Life viewers and by the standard deployment of OpenSim.

Meanwhile, Flash was the dominant force in Web video for a long, long time. It made sense for companies to release their video content in the Flash format, since most users already had the plugin on their machines.

Similarly, Microsoft Office is the dominant player in its category, despite the existence of the free OpenOffice and other alternatives.

In OpenSim right now, it is too early to say whether any particular product  will come to dominate its category, aside from Second Life itself. If Second Life were to extend its Linden Dollar, online marketplace, or its search to the OpenSim grids then it stands a very good chance of completely dominating that market segment. After all, Second Life can prioritize its own option in its viewer, similarly to the way that Microsoft pushed Internet Exporer. And, of course, the OpenSim alternatives are currently all in their infancy, offering little competition to Second Life’s more mature products.

How many vendors offer it?

A product available from multiple vendors is always preferable to a product available from just one, all other things being equal. Multiple vendors means competition on price, on quality, and on service — always a good thing.

In addition, if one of the vendors goes out of business, or discontinues support for that product, the other vendors can pick up the slack.

So, for example, the RealXtend technology is currently available from a number of different OpenSim hosting providers. If one of them decided to stop supporting RealXtend, you can move your RealXtend grid to another vendor.

Similarly, a particular currency might be available only on the grid that uses it. If that grid closes, you might lose your entire balance in that currency, and so would your users.

However, the Virwox-backed OMC currency is available on many different grids, and is supported by a variety of OpenSim hosting providers. If you switch grids or providers, you retain access to your balance, and so do your users — provided that Virwox itself continues to stay in business.

And if you’re using an OpenSim currency module to create your own currency for your grid residents, and if your vendor discontinues support for that module, you can find another vendor to continue to support it for you.

What are the switching costs?

If you do decide to switch from one OpenSim vendor to another — whether you’re hosting a few regions on an existing commercial grid, or running entire grids on your own — how much time, effort and money will it take?

For example, if you want to move your region from one grid to another, will the first grid allow you to export your region as an OAR file? Or, better yet, will it give you a copy of the OpenSim database itself? And will it allow you to take your avatars and their inventories, in the form of IAR files?

Many commercial grids restrict these kinds of exports to protect content rights. Other grids will leave it up to you to ensure that you’re not violating any license agreements, and will give you everything you ask for.

If you’re on a grid with a proprietary currency, will you be able to get your money out? Will your users? If the grid uses a multi-grid currency like the OMC, this is less of an issue — you can simply go to another OMC-enabled grid, or use OMC on your own private grid.

An ounce of prevention

You may want to negotiate some of these issues when you first sign the hosting contract with your provider, since there’s usually little advantage to a vendor to make your life easier if you’re about to leave.

If a vendor promises ready access to OAR or IAR exports, or to complete region and grid databases, get it in writing. A verbal promise, remembered differently by each side, may be difficult to enforce if the parting is on bad terms.

Better yet, get regular snapshots of your regions or grids as you go along. If you’re leaving because the vendor is going out of businesses, and you wait too long, there might be nobody left to sue to get your content back.

If a vendor’s unique functionality is critical to your company’s operation, then start to diversify as soon as workable alternatives become available.

For example, if your business is developing virtual land on a closed, commercial grid then you might want to dip your toes into doing the same on other grids — and be ready to transition your customers over quickly if the first grid folds.

OpenSim grids are typically run by small startup companies and can quickly fall apart as a result of financial challenges or interpersonal difficulties.

Similarly, if you buy large amounts of content from a single vendor — for example, if you buy clothing for all your employees, or buildings and furniture for your virtual campus — ask your vendors to provide backup copies of all the content, and a license that allows you to take it off-grid if you need to change hosting providers. This may cost you a little bit more up front, but will help you avoid the significant expense of rebuilding everything from scratch if you have to move.'

Maria Korolov

Maria Korolov is editor and publisher of Hypergrid Business. She has been a journalist for more than twenty years and has worked for the Chicago Tribune, Reuters, and Computerworld and has reported from over a dozen countries, including Russia and China.

  • Ener Hax

    nice analysis and very true for the future of virtual worlds. standards are hard to agree on (i mean look at the US cell phone industry – 3 different formats vs. Europe's 1)

    my only opinion here is on real money for currency. this would also mean more accurate pricing for work (ie, Ener won't be selling chairs for 10 cents)

  • elqlippoth

    And this would matter if Inworldz were actually an OpenSim grid, which they aren’t. Inworldz is nearly as far from being an OS grid as Second Life is. The question, when making comments about interoperability of a system, is whether or not the creator of that system is concerned with it. If a proprietary engine is used on a specifically advertised and interoperable OpenSim grid then there are certainly questions to be asked about that. However, when a proprietary, non-interoperable, non-OS grid offers a proprietary engine to increase the potential for their own customers that is a very good thing for both the customers and the grid.

  • sseraph

    Please stop with the FUD. Phlox is NOT a new scripting language. It is a scripting engine. I runs scripts written in the same LSL with opensim extensions as everyone else.