Internationalizing Microsoft Products


The Seattle Times has an interesting article today about Microsoft’s efforts to extend beyond the “basic 30-or-so” languages we already support into languages with somewhat smaller market shares (Urdu, Kiswahili, Nepalese etc). 

It’s actually cool, and I’m really happy that we’re extending our outreach to locales where there’s relatively few speakers (ok, Hindi doesn’t have relatively few speakers).

But I do need to take issue with at least one comment in the article:

Microsoft began localizing its software in different languages about 15 years ago.

We’ve been localizing our products for as long as I’ve worked at Microsoft.  At a minimum, Microsoft’s first Japanese field office opened in 1977 (ASCII-Microsoft), 27 years ago, our Japanese Subsidiary was founded in 1986 (18 years ago).  All of these produced localized products for the Japanese market.  In 1985, I was working on MS-DOS 4.0, which was shipped localized in French to Goupil.  I still remember a demo of Arabic Windows 2.0 from the mid 1980’s, the person doing the demo started writing in Arabic (a Right-To-Left language) and the text appeared to the right of the cursor (as would be expected).  He then got a HUGE round of applause when he switched from typing in Arabic to English (a LTR language) and the text started appearing to the LEFT of the cursor.

One of the stock interview questions a friend of mine used to ask was about how you handle cursor up and cursor down motions in GWBasic – it dates from at least 1982.

So we’ve been doing localization since just about forever; I don’t know why they picked 15 years ago for the Times article. 

Localization has ALWAYS been a big deal to Microsoft; it’s literally illegal to sell non localized products in some countries (don’t ask, I don’t know the specifics).  And since we want to ship our software everywhere J

And I’m REALLY glad that we’re finally targeting the smaller languages, it’s cool.  I also love the mechanism that’s being used to do the localization.  Instead of localization being done in a centralized location, the localization is being done by local groups – so instead of Microsoft having to have native speakers of the various languages, we’re engaging communities in those countries to produce the localized content.

We currently have language packs available for Windows XP in Bulgarian, Catalan, Croatian, Estonian, Hindi, Latvian, Lithuanian, Romanian, Serbian (Cyrillic), Serbian (Latin), Thai, and Ukrainian.  There’s a similar list for Office (only in Catalan or Norwegian currently though).

 


Comments (25)

  1. Rick says:

    How about a localized version for Canada. What I mean is one that has both English & French.

    For example, if a French user sends an email to an English Exchange server and it bounces, have the NDR in both English & French.

  2. We don’t have an explicit EN-CA version because Microsoft doesn’t localize to sublanguages (we don’t do EN-US, EN-UK and EN-CA for example). We DO respect culture differences beyond the translation though, things like currency symbol, etc.

    In the case of an NDR, I believe that the NDR language is a function of the MUA – the NDR is transmitted as a standardized NDR message (I forget the RFC currently), it’s up to the client application to figure out how to display it.

    For Longhorn, we’ll be supporting MUI technologies which will allow multiple languages to simultaneously exist on a single machine, so your FR and EN system can become a reality.

  3. Scott says:

    Where’s the Ebonics version man? What about the southern localized version of "Winders"? Where’s the dudeified version for Southern California natives?

    Until Microsoft addresses these vital markets, I can’t believe that they are truly serious about localization!

  4. Mike Dunn says:

    How about Klingon? ;) I wonder what code page that is…

  5. I’m waiting on the Piksburgh version of Winders myself. I can’t wait until I read "yins" on a dialog box.

  6. Mike Dunn says:

    Heh, I can imagine the socal translation now…

    "Dude, this program TOTALLY blew up."

    Or the Valley Girl one:

    "OhmyGAWD I can’t beLIEVE how gnarly this program was! We had to, like bag its face ‘cuz it was SO grody!"

  7. Centaur says:

    And then the joke about “Windows XP in Goblin’s translation was released” might come true :)

    (Side note: Goblin makes unofficial dubs of movies into Russian. The motto is “Obscene language must be translated as obscene language”. Goblin’s translations are regarded as more accurate than the official ones throughout the country.)

  8. Petr Kadlec says:

    When I am looking at the list, I am a bit surprised that Czech made it into the first-class list 15 (or how long it was) years ago. When I compare Ukraine (not to mention India) with Czechia, we are indeed a little bit smaller. :-) Is that because we are understood as an IT-developed country and Ukraine not?

  9. art says:

    is there any specific dll that i can load to get localized OK and Cancel etc etc etc…

  10. Christian K. says:

    I’m not sure there isn’t a sublanguage distinction between Latin American Spanish and "Spanish" Spanish (the one spoken in Spain) products. There are a lot of differences in vocabulary for quite fundamental terms (e.g. "archivo" vs. "fichero" for file, "computadora" vs. "ordenador" for computer, etc.).

  11. karan says:

    How about a Farsi version?

  12. Art, I believe you can set the Language of Windows using the regional control panel applet. That should change all the text, including OK and cancel. If not, you need to find a copy of windows localized to your language. In Longhorn this gets better (language support is handled differently with the MUI support).

    karan, I’m not sure – I’m sure it’s on the list but…

  13. art says:

    Thanks larry but this was for programs not using common dialog boxes

    Keep up the excellent blogs as it has become a daily read :)

  14. Portuguese has the same difference. Here in Brazil it’s "arquivo", in Portugal it’s "ficheiro", for instance. So we have "pt" for Portugal and "pt-BR" for Brazil.

  15. DaveH says:

    I’m not sure I understand the comment "For Longhorn, we’ll be supporting MUI technologies which will allow multiple languages to simultaneously exist on a single machine, so your FR and EN system can become a reality."

    I currently have a MUI version of Windows XP with Japanese and English installed. One moment the system UI is in English but I can fast user switch to another acount and the system UI appears Japanese.

    What will Longhorn MUI do in addition to this?

  16. Last I had heard, in XP, the user interface strings were still included in the binaries. With longhorn, the strings are split from the binaries.

    In XP, you can’t install languages that aren’t a part of the binaries that you get from Microsoft. For longhorn, all you need to do to get a new language will be to get new .MUI files from Microsoft that will contain all the strings for you.

  17. Jeff Parker says:

    Larry first a comment, I really love your blog. How I have managed to miss it before I don’t know but I discovered it tonight and it has been fabulous reading. Definately adding it to my subscriptions. You actively blog and speak whats on your mind and are very knowledgable (Or maybe not, maybe you just make sense).

    I have a question on this. I am a developer from way back in the ADA 83 standard, and progressed throughout the years C, VB, Java and so on. I learned enough localization to be dangerous and pass my cert test. However I have never ever had to localize an app till recently. Now I have read MS Press Developing International Software

    http://www.microsoft.com/MSPress/books/5717.asp

    and found it an outstanding book, but it seems to be one of the only really good resources on this subject. Can you recomend any other good resources on this subject? While a great book I always like to see several views and ideas on a subject.

  18. Why thank you Jeff :) My boss likes to say that I’m "forthright" :) I think that’s a euphemism for a "pain in the neck".

    Unfortunately I don’t have any good resources for this. I’ve got a copy of REALLY old reference books, but they all involve way out-of-date technologies.

    In general, there are three aspects to internationalization. The first is cultural: Respecting the various local cultures – It’s 5,000 in the US, 5.000 in other parts of the world, $ in the us, the yen symbol in japan (I can’t seem to get the comment edit control to accept the yen symbol).

    The other is separating out your text into resources so it can be localized.

    The third is to have support for multilingual character sets. The easiest way to do this is to make your application unicode, but there are still gotchas (see http://weblogs.asp.net/larryosterman/archive/2004/06/30/169997.aspx and http://weblogs.asp.net/larryosterman/archive/2004/07/01/171078.aspx for more details).

    So I’m sorry I can’t help on this one :(

  19. Jeff Parker says:

    Thanks Larry and Yes, My boss tells me I am opinionated. But he also tells me don’t change that as it has saved our asses a few times by me holding very "strong opinions".

    And thanks for the links, I did see them I went back and browsed through your blog. And yes that one got me as well couldn’t think of that 4th thing, the culture info.

    Anyway you have been a great help. You do not find many people discussing International applications. I imagine it is going to be a huge topic in future years as more and more corporations go global. Microsoft has done it for years but not many others it seems. Or if others have done it it seems to be implemented in an add hock kind of way.

    Anyway thinaks again

  20. Norman Diamond says:

    Regarding the base note:

    Why aren’t language packs available for all supported languages? If a language was considered important enough to get "first class" support then it’s only available in MUI packs, which are only available to large corporate customers and MSDN subscribers. If two users want to share a PC with one using it in English and one in Thai then they can get the language pack that you point to, but if it’s one in English and one in Japanese then they can’t.

    Also why isn’t there a language pack for English? If two users want to share a PC with one using it in English and one in Japanese, and if they already had to pay for Japanese XP when buying the PC…

    For Windows 2000 it was possible to download help files in English and several other languages. So even though the menus and dialog boxes couldn’t be converted to English, it was still possible to display help in English. Why aren’t help files downloadable for XP?

    English language packs for Office 2000, Office XP, and Office 2003 can be bought on CD. Why can’t they be downloaded the way you imply they can be for Catalan and Norwegian?

  21. Norman, I can’t answer that. I know that for Longhorn, the MUI story is different, but I don’t know about XP.