Google Translator becomes a paid service

Inara Pey reported that in a little less than a month, Google Translator would stop being a free service, and what this would mean for SL residents who regularly use this built-in feature on most (not all) viewers, both from LL and from third-party viewers.

Inara explains how LL is going to deal with this issue: by allowing users who pay for the service to be able to add their special registration key with Google so that the LL viewers can integrate with Google Translator — and have residents being charged for their use of the service while they’re logged in to Second Life®. To give residents more options, Linden Lab also developed the same interface for Microsoft Translation, which provides a slightly cheaper but equivalent service. The feature is under development and I’m sure it will be regularly available before the end of the month, when Google is scheduled to stop all free use of their translation services.

Now this worried me because I still sold the GUUD Universal Translator, a HUD which relied on Google Translator to quickly translate chat among 70+ languages (even though many language pairs were not supported, at least the majority was. This created a problem for me. I had to get a quick fix for the (few) users of my GUUD Universal Translator, since in a few weeks, I’m sure to get a ton of complaints!

Now let’s be fair with Google. Page, Google’s current CEO, has been clear about the new roadmap for his corporation — all projects not directly (or at least indirectly) contributing to Google’s revenue are to be shut down. No more “nice Mr Google” for us — unless it pays off. Can we criticise Google for this attitude? Of course not. Sure, they’re getting US$42 billion or so in revenues from ads, but they also have a huge infrastructure cost to maintain to keep those freebie users happy. Since the dot-com bubble, this has been a major issue for all technology companies which place their focus on “how many users are registered to the service” instead of “how many users pay for the service”. Successful companies are the ones that found a valid business model, where some users pay enough to cover all infrastructure costs for all users, freebie or paying ones. Google is a good example of a successful model. Linden Lab is another!

But Google is also not stupid. Since they launched the Google Translator API, lots and lots of companies have been successfully using it to make money on their own, by connecting to Google’s services for free, but charging end-users for access. I’m one of those nasty rascals 🙂 After all, my translation HUD took me some time to develop; why shouldn’t I get something in return for my work? But my HUD is worthless without access to Google’s amazingly good service, which used to be for free. Like my own greedy self, thousands or perhaps millions of companies and individuals were doing pretty much the same — using resources from Google for free to earn some money.

Well, of course I’m not a millionnaire because I sold an uncountable amount of HUDs; in fact, since most TPVs and LL’s own viewers include Google Translator on the viewer itself, I haven’t sold many copies of my HUD. That’s ok — there was still the odd resident not using a Google-Translator-enabled viewer which occasionally bought my HUD. Or perhaps I gave them more choices (I never really used the built-in translation facilities of the LL/TP viewers to compare them). On the other hand, my “service” was not really abusing a lot of resources from Google.

Or was it?

One thing is to occasionally translate one page on a blog or two. A lot of companies and individuals sell automatic translation services, usually embedded in plug-ins on common content management systems, like WordPress. The same applies to iPhone applications and similar devices. In those cases, even on a heavilly-used website, every now and then, a few KBytes have to be translated. Well, after December 1, those KBytes have to be paid for, and either Google’s or Microsoft’s rates are actually quite reasonable. For many low-end sites/applications which cannot afford human translation, machine translation is actually very cheap, and while Google gives excellent results, Microsoft’s not that far behind — both are good alternatives for a low-end translation. Just remember how many webpages would be completely unintelligible for you if your favourite browser (well, assuming it’s Firefox or Chrome…) wouldn’t be able to automatically translate them on-a-fly. Would you be willing to pay a few cents to continue to benefit from that service? Many would definitely say “yes”.

But consider Second Life’s text chat. At one stroke — a single discussion event, for instance — hundreds of KBytes of messages will require translation, and each text line counts as an individual translation transaction. Google and Microsoft cap the translations at “a few million characters” per month (if you want more, you have to pay). Well, attend half a dozen events in a few days, and that limit is off. Similarly, they place the lowest tier for machine translation fees at “a few thousand translation transactions per month”. In a single Thinkers’ session, there can very easily be a thousand or so translation transactions. Worse than that: since people don’t check the box on and off, but leave it on all the time, it means that in little time all limits are exhausted.

I’ve considered the following business model: allow people to pre-pay, in L$, how many translation transactions they wish, and how many characters they want to translate. Then have the HUD automatically debit that amount; when it reaches zero, no more translations are possible until people recharge their account with more L$. In fact,  I have pretty much all the code for that kind of environment — I’ve used it for a client which allowed two-way SMS text messages between Second Life and the whole world, and it was also a paid service. The advantage of such a model is that I would be able to buy in to a much higher tier — instead of dealing with Google or Microsoft as a single individual, I would be able to aggregate lots of users together — and this would actually mean a lower cost per translation transaction. With that model, my humble HUD could compete with LL’s own upcoming built-in service, since it works for each user individually.

But at the end of the day I though that it would be worthless to pursue such a business. After all, the vast majority of SL users are freebie users; they aren’t interested in paying for recurrent services, but expect pretty much everything in SL to be free, avoiding what isn’t. And the ones that have the opposite mindset — say, because they’re Japanese, speak only broken English, but have established themselves as successful merchants — will have enough money (and the will) to subscribe to those paid translation services directly integrated into the LL viewer (and I’m assuming that TPVs will quickly follow LL’s model, too, or else face the anger of residents who suddenly realise that the translations don’t work any more).

No, I believe that anyone providing translation services in SL will have to provide them for free, because that’s what people expect.

So I spent some time evaluating what other services beside Google and Microsoft there are. I couldn’t find many; I’m still waiting for two replies from companies providing such a service for a small fee. I have no idea, however, how well they compare with Google and Microsoft. Most are more keen on providing “fast” (but not real-time) human translation services, and provide machine translation as a fall-back option. And, as said, most “free” translation APIs out there actually integrate with Google and will stop working on December 1st, 2011.

For now, there seemed to be just a single option left: the old Babelfish translation system, originally developed by AltaVista, and bought by Yahoo!. But let’s not keep hopes high: Babelfish is nowhere near the quality provided by either Google or Microsoft. It’s technology from 1999, and it shows. The number of available languages is tiny compared with Google’s massive offering, and even the number of language pairs is very restricted. Sure, it covers the top 10 most spoken languages in the world, including Chinese and Japanese, but excluding Arabic — but the only language that can be translated to every other one is English (and vice-versa). And the quality of the translation is… hilarious. It’s not even bad. It’s worse than bad. It’s good enough for jokes, but not for much more. While Google Translator at least makes a reasonable attempt to convey the overall meaning of what has been translated, even if it rarely comes out with flawless, idiomatic sentences, at least it is understandable (specially if one of the translation pairs is English). Babelfish doesn’t even come close to that! Sentences come out broken, half-translated, and some words just get literally translated and make little sense when assembled together.

My favourite one so far, which very likely might be employed in many romantic conversations in SL, is the Portuguese phrase “Eu gosto de ti” which means “I like you” (which you can confirm under Google Translate; Microsoft also gets it wrong). Babelfish renders that as “I taste of you” 🙂 I’m sure that romance in SL might reach new levels of intensity…

Anyway, the point is, with all its faults and bad translations, Babelfish seems to be the most easily available free system out there. Yahoo! doesn’t even provide an API for it, so there is no other choice but to use an intermediate gateway which captures the HTML page and parses it for the translated sentence, which is pretty much what I’ve implemented. It works well — except, of course, for providing acceptable translations. Still, it’s either that or nothing at all.

So I’ve slashed the price of my HUD in half and I’m offering it for free for anyone who bought version 1.0 and can send me the transaction ID as proof of purchase. But not even I would recommend my own HUD! It’s really only worth for someone terribly desperate to make themselves heard in an international audience…

The only good news is that people will laugh a lot more at each other while trying to decipher what Babelfish is saying 🙂

And, of course, I’m still looking for alternatives.