June 20th, 2006 • 10:59 am
MacBU developer Erik Schwiebert recently posted about localized versions of Microsoft Office for Mac OS X.
Of particular interest to me is this description of the “pseudo-localization” process that Microsoft uses to “test” Office applications before they are actually localized:
One of the ways we deal with that is a process called ‘pseudo-localization.” This has nothing to do with ‘pseudo-code’; instead, it is a way of forcing text into some translation automatically, yet still have that text be mostly readable. It works by taking the normal Roman alphabet and changing each of the characters into some similar character, perhaps one with an accent, or a copyright symbol instead of a C. We also pad each string with extra text to make it wider to check for dialog mis-layout and string insertions.
So “pseudo-localization” might become “[=== Þšéü?ø-lõçålî?á?ïò? ===]” — still mostly humanly-readable, wider to force dialog layout, and bracketed so we can tell if a dev hardcoded string insertions. We can do this in an entirely automated fashion, and this technique lets us test perhaps 50% of Office as if it were localized, so that we can catch obvious dev mistakes right away. We thus reduce the risk of finding a bad localization bug so late in the release process that we can’t fix it safely.
The excuse for using this procedure instead of actually localizing the product first and then testing it properly is, apparently, the drastic compression of the delay between the release of the English version of Office and the localized versions of the product:
[…] over the last 10 years we’ve gone from a 6-month delay between English and localized releases to somewhere on the order of 2 weeks delay. This means that we’ve compressed the same amount of work into less time, so that the international Mac community gets their hands on the next version of Mac Office at almost the same time as English speakers do. That compression means that we don’t have much time to fix bugs in the main codebase that are only revealed by the localization process!
What Erik fails to explain, however, is the following.
First of all, Mac OS X has an entirely different way of handling localized versions of applications. Instead of releasing a different version of each software application for each language, Apple releases a single package that includes the code of the application and all the localizations.
Mac OS X itself is like this: When you buy Mac OS X, you automatically get the multilingual version, i.e. a version that already includes a large number of localizations. The only difference between the French version of Mac OS X and the English version of Mac OS X, for example, is the packaging (the text labels on the disc itself and the text on the packaging) and the printed materials. When you launch the Mac OS X installer on the disc, the very first thing it asks you is to select your language, with each supported language listed in its own language. So if you are French, you see a list that includes “English” and “Français” and you just select “Français” and then the remainder of the installation process is in French and the default language used throughout the system is French.
Even after you do this and install Mac OS X in French, you still have the option to switch to another language (provided that you didn’t do a customized installation of Mac OS X in which you removed the other additional languages that Mac OS X installs automatically by default). All you have to do to switch to another language is go to the “International” preference pane and change the order of the languages in the list of languages in the “Language” tab. After that, once you log out and log back in, your entire Mac OS X environment is in the new language you selected.
This also means that, if you have multiple users on the same machine, which of course Mac OS X fully supports, each user can have his own preferred language. You can use Mac OS X in English in your own user environment, and your wife can use the same Mac OS X in French in her own user environment. The only area of Mac OS X that is stuck in one language or the other is what lies beyond your own user realm, i.e. the main folder hierarchy at the root level on your startup volume, and the login window itself. Those areas use the language that you selected during the installation of Mac OS X itself. But everything else is flexible and switching from one language to another does not require any software installation or reinstallation.
This was all introduced more than five years ago.
Apple also extended this same multilingual architecture to software applications. When you get a software package such as iLife, for example, all the applications included in the package are themselves multilingual. Here again, the only difference between the French version of iLife and the English version is the text in the packaging and the printed materials. When you launch the installer to install the software, the installer automatically uses the language that you are currently using in Mac OS X, and the applications it installs will themselves automatically use the language of your system when you launch them. For example, if you install iTunes and the language in your user environment is English, then when you launch iTunes the user interface will be in English. But when your wife launches the same iTunes application in her own French environment, the user interface in iTunes will be in French.
Finally, the same thing applies to Apple’s software updates. When Apple releases a software update for Mac OS X itself or for one of its software applications, you don’t have to pay attention to the language of the software update itself. All software updates automatically include all localizations. In other words, even if you download the latest Mac OS X system update from the English-language Apple web site in the US, you still get a system update that includes all the localizations. You don’t have to download a different update if you are using Mac OS X in French. (This probably makes the software update files a bit larger than they would be if they only included one language, but in this day an age I think that it’s an acceptable trade-off.)
This same multilingual architecture can also be used by third-party developers. They too, if they want to be multilingual and support Mac users throughout the world, can release multilingual applications that automatically use the user’s preferred language when the user installs and launches them in his own user environment. And many third-party developers do indeed do just that.
But not Microsoft. Oh no, not Microsoft. Five years after Apple first introduced this new multilingual architecture with Mac OS X, Microsoft still does things the old-fashioned way. If you want to use Microsoft Word with a French interface, you have to buy the French version of Microsoft Office for Mac OS X, which is a different product altogether. And each time Microsoft releases a software update, you need to make sure that you are downloading the right one for your version of Office.
And once you get a version of Office in a specific language, be it English or another language, then the application always runs in that language, regardless of the language of the rest of the user environment. In other words, if you buy the English version of Office for your computer, and install it on your machine, the user interface will be in English both in your English user environment and in your wife’s French user environment. Conversely, if you buy the French version of Office, the user interface will be in French for all users of the machine, regardless of what their language of choice is.
This doesn’t mean that the software applications themselves are not multilingual. They are. Even if you install the English version of Word, you can still include in the installation the French dictionaries (they are not included by default, but you can include them with a customized installation), and you can still do word processing with French text and have access to all the French-language spell-checking and typographic features. But the user interface of the application itself will be in English, and many of the default behaviours will be the ones for English and will need to be changed. (Each user can have his/her own Word templates, of course, which means that you can configure Word so that the default language for Word documents is French in her user environment, and English in yours.)
The fact that the language of the user interface in Office applications does not change depending on the user’s preferred language in Mac OS X is annoying enough. But that’s not the worst of it. The worst of it is that Microsoft’s process for fixing bugs is completely screwed. And there is no better example of this than the bug with non-breaking spaces and PostScript fonts in Word 2004.
In a nutshell, what happens is that, if you are typing a Word document in a Postscript (Type 1) font, whenever you insert a non-breaking space in your document, Word changes the font to… Times New Roman!
It is extremely annoying, and makes the English version of Word 2004 completely unusable for typing French text in a Postscript font. Why? Because non-breaking spaces are an essential part of French typography! Non-breaking spaces might be rarely used in English typography (although they should probably be used more often, for example to avoid having “Mac OS” at the end of one line and “X” at the beginning of the next one in a paragraph of text, which does not look good and is not very reader-friendly), but they are used in French typography all the time, in combination with the colon, the exclamation mark, the question mark, the French quotation marks, etc.
Needless to say, this means that the bug with non-breaking spaces and PostScript fonts in Word 2004 is an absolute disaster for French users of Word 2004. (This bug didn’t exist in Word X, and I suspect its appearance is related to changes made to the Word code to increase support for Unicode documents, which is, of course, a separate issue altogether.)
And yet it is such an obvious bug. How could anyone typing French text in Word 2004 using a Postscript font not notice it? Like I said, non-breaking spaces are used all the time in French. Indeed, even Word itself uses them automatically when you select the option to replace the straight quotation mark with the appropriate French quotation marks automatically when typing French text (which is an option that has been available for years in Word).
The fact that Microsoft did not catch that bug in Word 2004 before they released the product is a clear illustration of how flawed their testing processes are. Whatever benefits this “pseudo-localization” technique described by Erik Schwiebert provides, it is clearly not good enough to catch even such elementary bugs.
Now, it is quite possible that Microsoft did catch this bug during the process of testing the French version of Word 2004, and fixed it in the final French version of Word 2004 that was released back in 2004.
I do not know, because I bought the English version of Word 2004. I am a professional translator, and I work in both English and French all the time. Since the rest of my Mac OS X user interface is English, it makes no sense for me to buy the French version of Word.
What I do know, however, is that, two years and a dozen Office 2004 software updates later, Microsoft still has not fixed the bug in the English version of Word 2004! It is still there, and I am still completely unable to use Postscript fonts in Word documents on my computer.
Now what excuses does Erik Schwiebert have for this sorry state of affairs? I might find it acceptable (barely) that Microsoft is not able to catch such bugs in the hectic schedule that leads to the release of the initial versions of the product. But how can they justify not fixing the bugs in the next two years, even though the bugs are so obvious?
Oh, I am sure that, as a user of the English version of Word who actually does half of his typing in French, I am part of a minority. I probably don’t fit Microsoft’s profile of its “typical” Word user. But still… Does Microsoft really expect me to purchase a separate copy of the French version of Office 2004 just to see if, by any chance, the bug might have been fixed in that version—and then be forced to use a French-language interface in Word when the rest of my Mac OS X interface is in English?
This is, of course, utterly ridiculous.
We only have to look at Apple to see that it is perfectly possible to release multilingual software on schedule that automatically supports all of Mac OS X’s supported language without requiring the user to buy separate versions for each language and download separate updates for each language. It is entirely Microsoft’s decision not to have embraced this multilingual approach and structure in their own products for Mac OS X. And it’s entirely their fault if obvious bugs related to Office’s multilingual features still aren’t addressed properly more than two years after the initial release of their product.
And for all this, once more, all I can say is: Shame on Microsoft, and shame on the MacBU. They have absolutely no excuses here.