What do Shanghai and Taipei have in common? Mahjongg solitaire!

by Michael S. Kaplan, published on 2006/10/18 12:01 -04:00, original URI: http://blogs.msdn.com/b/michkap/archive/2006/10/18/839225.aspx


Yesterday, Norman Diamond posted (in the microsoft.public.win32.programmer.international newsgroup, which more and more often has been a home to non-programming topics):

Here's how to do I18N the Vista way.

Some mahjong tiles that are made for export have notations such as E W N S 1 2 3 etc. instead of the standard 東 西 北 南 一 二 三 etc.

Vista has a built-in game using mahjong tiles.

Even native versions of Vista have Microsoft's internationalized mahjong tiles with E W N S 1 2 3 etc. instead of the standard 東 西 北 南 一 二 三 etc.  Even when the user has NOT used Control Panel - Regional Options to change their locale to English, even when the English MUI pack has NOT been installed, Vista uses English localized mahjong tiles instead of standard ones.

Today Microsoft told me that this is by design.

Lest there be any suspicion that one part of Microsoft didn't know what another part of Microsoft is doing, let me clarify:  Today Microsoft told me in Japanese that this is by design.

So now you know how to do I18N the Vista way.  Do not support your own language.  Choose one foreign language and make your product use that language worldwide, even in your own country.  

Obviously not the most positive spin one could place on things, but let's look past that for a minute and look at the actual issue. Norman is talking about the Mahjong Titans game:

Let's click on it and see what happens:

 

 Now Norman is right, we're not talking the actual game of Mahjong, but clearly we are using Mahjong tiles. Let's try one of them out:

 

Ah, now I see. This is an updated version of the Taipei game from the old Windows Entertainment Pack, with cool new visuals and the same tile faces as before. Cool, I always liked Taipei (though to be honest I always like Qix and Tetris better!). I try to avoid games when I can since they can be so distracting, but I could probably play this one once in a while....

So now let's talk about the issue that Norman raised about this update to Mahjong solitaire.Maybe somebody needs to update that Wikipedia article to talk about the Vista port? :-)

I wonder how we moved the game from Shanghai to Taipei with no one commenting? Ah well, I don't think Brodie was from any of these places, so perhaps that is not strictly relevant

Now one could argue (since we are talking about Mahjong tiles here) that whether we call the game Taipei, of Shanghai,or the centuries old Chinese game "The Turtle" that writing the game such that those images were available to localization would perhaps make sense, there is of course the matter of how many versions of the game out there in the wild do not do this, no matter where they were created. And it is not like it is the actual Mahjongg game with its 28 varieties that would suggest the need to have the particular expected tiles.

Would that be the expectation?

Now the truth is that the choice for the text on the tiles is not exposed to localization (although the full names of the tiles are). And it probably would have been better to make that choice available. Given that it was not, Norman is correct (as was whoever he contacted from Microsoft Japan who said that this was by design). If a choice is not made available to localizers then whether a user expectation exists or not, the design does not allow such a change.

But does this truly point to an overarching strategy of Microsoft localization, as Norman is hinting? Not really. Any more than my blog pointing some grand overarching strategy of Microsoft language support. In both cases, we are looking at the efforts of individuals here. At some point a higher-up person gives a lazy nod of approval, or perhaps they never even noticed. But if it is strategic then it is poor strategy since no real high-level planning by executives went into it?

With all of that said, I think it would be very reasonable to expose this in a future version (the full tiles, not just the letters put on each one, in case there are other stylistic variants here?). Or possibly I am wrong the tiles are available now via some piece of the resources that I couldn't find in a quick look. Though if that is true then either the localizers couldn't find it either (oops!) or they chose not to change the tile faces (in which case it is not even a bug at all!).

 

This post brought to you by (U+4e09, a CJK ideograph)


# Andrew West on 18 Oct 2006 12:38 PM:

Now that Mahjong tiles have been accepted for encoding (see <http://www.dkuug.dk/jtc1/sc2/wg2/docs/n3171.pdf>), the next version of the game could use a font-based appoach (imprinting the appropriate glyphs onto blank 3D tile images), and localization would just be a matter of switching fonts ... though I guess it would be difficult or impossible to get the polychromatic effect that you get with pre-drawn tile images.

# Mihai on 18 Oct 2006 1:21 PM:

If we have to look a bit at Vista, there are a lot of cool improvements. And some blunders, usualy in stuff that is version 1 :-)

Like the Mahjongg game.

Or like the calendar gadget, which forces one to have Sunday as first day of the week :-)

But since I want to make a gadget just to see how the technology works, a better calendar is going to make for an interesting project :-)

# Mike Dimmick on 18 Oct 2006 3:21 PM:

Do the legends on the court cards change in Solitaire when you change locale? As far as I'm aware, they don't. If I remember correctly, the Queen is labelled with a 'D' in the German set (for Dame) and the Jack a 'B' (Bube).

# RubenP on 18 Oct 2006 6:05 PM:

Correct, the cards' legends do not change. So instead of Dutch H (Heer) V (Vrouw) B (Boer), you get K Q J. And no French R D V either. I've always regarded such anglicisms in software as broken.

(French cards are really confusing when you're used to Dutch cards, with V being either Jack or Queen, depending on the language. But then again: what does one do on a holiday without playing cards?)

Personally, I think not localizing Solitaire/Freecell cards is even worse than not localizing Mahjongg tiles. The English-centric tiles used by Vista are used all over the world IIRC, 'cause few can read the various symbols and characters without training. The one letter legends on Mahjongg tiles have little meaning to most people, unlike the legends on playing cards.

# Dean Harding on 18 Oct 2006 8:48 PM:

Norman is asking for a new feature, but he phrases it like it's a bug. And moreso, that the bug is the result of some conscious design desicion that Microsoft has made (as if "Microsoft" is one person).

# Mihai on 19 Oct 2006 1:33 AM:

<<Norman is asking for a new feature, but he phrases it like it's a bug.>>

It is a bug. Asking to have the software properly translated in Japanese on a Japanese system is not a feature request.

And this is even more ironical when you think that the real Mahjongg   (the model for the computer game) uses Kanji.

<<And moreso, that the bug is the result of some conscious design desicion that Microsoft has made (as if "Microsoft" is one person).>>

I agree that here Norman is wrong. S**t hapens. And in general MS does a way better job at i18n than other companies.

I would rather believe "that one part of Microsoft didn't know what another part of Microsoft is doing"

# Dean Harding on 19 Oct 2006 3:24 AM:

> It is a bug.

A bug is an unintentional mistake. A new feature is something that was never implemented before. Of course software should be properly translated to Japanese on a Japanese system, but that is work that actually has to be done - it's a feature of the software. If that work simply hasn't been done, then it's not a bug.

For example, is it a bug that the Windows calculator only works with the digits 0-9? Is it a bug that it has not been translated to allow for Arabic numbers, or Thai number, or Ethiopic numbers? No, that's simply a feature that hasn't been implemented (the fact that it probably WON'T be implemented doesn't really matter).

I'm kind of going around in circles here, but I think you get my point.

# Mike Dimmick on 19 Oct 2006 5:19 AM:

Would most Japanese playing the game not be familiar with Romaji anyway? And when all is said and done, it's a pattern-matching game - you match identical tiles, apart from the 4 season tiles and 4 flower tiles (where you can match any season with any other season and any flower with any other flower). That's probably less of an issue than the court cards, where most games using them will be using the card's value in some way.

I've been familiar with the 'turtle' pattern for about 15 years, from Ron Balewski's 'Mah Jongg VGA' program (http://www.ronsshareware.com/). Ron's version could use your own tile graphics, and I spent quite a lot of time designing a computer-related tile set (about ten years ago). Unfortunately on my parents' upgrade to a Pentium II (I'd long left home), the timer calibration loop was too fast and it periodically would crash on startup with a divide by zero error, so I wrote a small hack that detected the crash and tried again. Then about five years ago they upgraded again to a P4 and now even the hack didn't help. So my dad scanned in their actual MahJongg tiles to get higher-resolution graphics, and wrote a version in VB6.

# Mihai on 19 Oct 2006 12:29 PM:

<<A bug is an unintentional mistake. A new feature is something that was never implemented before. Of course software should be properly translated to Japanese on a Japanese system, but that is work that actually has to be done - it's a feature of the software. If that work simply hasn't been done, then it's not a bug.>>

Imagine you are in some new application. You work on your document for 2-3 hours, saving once in a while. But in the end, there is no file on disk, "Save" did not save anything.

You ask tech support, and they tell you "it is not a bug, because this was never implemented, is a feature request" :-) And you have to pay for tech support, because it is not a bug :-)

For me, if you translate 98% of an application, and 2% is not translated, is a bug.

If you accept Unicode in 12 edit controls, and don't accept it in the 13th one, is a bug.

But I am not going to argue about the definition of "bug". I will stop here.

# Michael S. Kaplan on 19 Oct 2006 1:47 PM:

Actually, I would describe it differently. And everything  I am about to say applies to the original Solitaire game, too....

If the data is not exposed to localization (in other words if the project was not designed to have all elements that could potentially be localized in fact localizable) then I would say it is an error in the ability to see the localization happen. Whether I would consider that error a "bug" or a "design flaw" or "by design" would depend on

If the data was exposed to localization, then it would just be a simple localizationg bug unless the localizer(s) made the explicit choice in each case based on their own knowledge of the language and the market.

I would not suggest that tech. support consider it anything other than a bug/design flaw, unless they have specific knowledge to the contrary?

# Mihai on 19 Oct 2006 11:00 PM:

<<If the data is not exposed to localization ... then I would say it is an error in localization.>>

Correction: it is a localizability error :-)

# Michael S. Kaplan on 19 Oct 2006 11:22 PM:

<<fixed to what I was trying to say>>

kate on 23 Aug 2009 10:14 PM:

this game is fun to do in your spare time

maria luiza pessoa Sinões on 12 Nov 2012 8:33 AM:

Quero colocar o meu este jogo no meu gmail


go to newer or older post, or back to index or month or day