The perils of translating words blindly without verifying them in context

My fancy new office phone has an option to change the language of its user interface, so naturally I chose Swedish. Once I did that, I saw some obvious translation errors.

  • The Edit command was called Bearb... instead of Redig.... Apparently, the Swedish translation was created by starting with the German version, and they missed a spot and left a word in German (Bearbeiten). This also illustrates the perils of not leaving enough room for expansion. The English word Edit is just four letters long, but the German word is ten letters long (and the Swedish one eight letters), and the longer German and Swedish words get truncated.
  • The label First name was translated as Första namn. Första namn does mean first name, but in a literal sense, as in the sentence "There are ten names. The first name is Wilson." The correct translation is förnamn, which means given name (in contrast to efternamn, or family name). Similarly, the button Forward was translated as Vidare (opposite of backward) instead of Vidarekoppla (to forward a phone call).

The first example above is just sloppiness, but the second one illustrates how a simple LocalizeString("some text") algorithm doesn't work. As Lance Fisher's teacher put it, "Russian is not a translation of English." You can't just take words and phrases in one language and put them through a simple mapping table and expect the result to be accurate.

Back in the Windows 95 days, the German translation team needed some beta testers, and I volunteered. The most interesting translation bug I reported was one in which an English menu item Sort was translated as Art (which means class, kind) instead of Anordnen (which means to arrange). The one English word has two different meanings, and a blind dictionary translation won't know which one is intended.

Comments (51)
  1. BryanK says:

    Words and phrases through a simple mapping table (if you intend to combine the results), no.  Whole sentences or groups of them (or the entire contents of a label in a UI), though, could work; it just depends on what you mean by a "simple" mapping table.

    If a table is "simple" because all programs translating anything from language X to language Y use the same table, then a lookup won’t work.  But if a table is "simple" because it takes one input (the source string) and produces one output (the translated string), and it’s just built by human translators with enough context info, then it can work.

    I’m thinking specifically of GNU gettext here.  In your program, you call gettext() on each complete string you’ll end up outputting (or putting into a label or button or whatever).  You then run a program over your program’s source, which finds all the gettext calls and dumps out the source side of the translation file.  You then get human translators to copy this source file to a file labeled with their language, and add any translated strings that they can generate to it.  You distribute the translation files with your program.

    Then at runtime, the gettext call around the source string looks that string up in the table generated by the human translator, and returns the translated string.  If it doesn’t find a translation, it falls back to whatever was given to it, so before you get any translations, your program is untranslated.

    Anyway, I’d call this a "simple" lookup, and it seems to work well enough.  It seems to be somewhat similar to having resource strings in a Windows program, and outputting the resource strings instead of real strings.  You just don’t have the issues with having to create your own identifiers: you use the source string as its own ID.

  2. George Jansen says:

    A fiberglass stepladder we have has product information and cautions given in both English and Spanish. One day while I was moving it a bit of text caught my eye:

    May 2003 | Puede 2003

  3. Tim Smith says:


    It just isn’t that "simple".  When we have to translate our game dialogs, we have to supply context to each line to provide a better quality translation.  One of the reasons this is done is that many languages will have different translations of the same string based on male/female or social status.  Having a lookup of pretranslated strings might work for strict neutral translations, but it has limited application.

  4. Gabe says:

    BryanK, a simple input string->output string mapping does not work in all cases. The most common example of this is genitive dates ( Since "October" has two different translations based on how it’s used, there’s no single mapping into any language that has different genitive date forms.

  5. Some Guy says:

    As you probably know (since apparently you have some Swedish heritage(?)), the most "famous" translation error was the windows "Common files".

    This was translated into Swedish as "Vanliga filer", which has the meaning of "usual files", i.e. the wrong meaning of "Common" was used, not in the sense of something being common between two things, but the sense of something being like "a common occurance" etc.

    These are completely different words in Swedish (correct would have been "Gemensamma filer") so it’s quite fun to see it.

    The classic comment is "Aha, det där är dom Vanliga filerna, var är dom Ovanliga filerna?" (i.e. "Oh, that’s the ‘usual files’, so where are the ‘unusal files’") ;)


  6. Joe Butler says:

    Being responsible for translations is probably one of the most draining tasks I’ve ever had.

    I had to arrange for some program text to be translated to German.  So, understanding that context is important, due to haveing a smattering of Japanese, gave context for various strings, etc. and though, this will go smoothly, since I’ve pre-empted the kinds of mistakes mentioned in the article.  Anyway, the translations came back, some were written in hand on scraps of paper which was a real laborious task trying to decipher an unknown language with strange characters, etc.  Anyway, when the translator had a look at the text I had entered up in a spreadsheet for her, she commented that, "No! One would not use that form in printed text, only handwritten text".  She knew that the text she had handwritten, was to be used in a computer program, so why not handwrite the translations using the printed form?  It seems to me, that whatever process one comes up with to make translation painless, the translator will just ignore it and do what they want to do.  

  7. Paul says:

    What I find most interesting in a blog post about language translations on a phone is that everyone is apparently quite happy to accept that the phone even needs a user-selectable language, or that it even a user-interface to begin with?  What happened to the simple beige box with 10 buttons?  :-)

  8. dave says:

    "What happened to the simple beige box with 10 buttons?"

    Never mind that, what happened to the simple black box with a dial?

  9. BryanK says:

    Tim Smith / Gabe:

    While it is true that you need context to be able to translate a single word, I was not saying that you look up each word in the translation table.  You look up the whole string, which is supposed to be a sentence, or the entire contents of a UI control.

    Genitive forms of month names, for instance, aren’t a problem at all — the string that gets looked up is not simply “October”, unless the non-genitive form is requested (and will stand on its own).  The string that gets looked up would be “October 4” or whatever; this would be translated using the genitive form.

    (Though actually there’s another whole set of complexities for dates.  LC_TIME comes into play there as well.  I am not sure whether the LC_TIME data contains separate names for genitive vs. non-genitive forms, but I’d guess that it would.)

    Regarding different translations depending on male/female or social status — I’m not sure of any examples of that, but it would depend on the context of the rest of the string being shown to the user, right?  If you have the entire string, isn’t that enough to get a correct translation?

    (I can see a situation where more than a single sentence might be required, e.g. if you’re displaying an entire paragraph of text.  But then the whole paragraph should be translated.  It comes back to the “don’t concatenate translated strings” rule.)

    If a correct translation depends on anything outside the string being translated, where does that information come from?

    [“The entire contents of a UI control” is often just a single word. “Forward” for example. And look what happened. -Raymond]
  10. Some Guy says:

    You know, this brings me back to my pet peeve: STOP FRICKING TANSLATING STUFF COZ IT NEVER ENDS UP RIGHT ANYWAY.

    Can’t people learn ENGLISH!? How hard is that!?

    I’m from Sweden…. we do not dub our TV, so our kids hear the "John Wayne Accent" day in day out. My oldest son is only 12 and he is pretty darned fluent in English, simply from siphoning it off TV (yes yes, they learn English in School from 1st grade, but trust me, he picked up most of it by Osmosis, not through school)

    A US guy I know that visited Sweden noticed that – unlike the French – if he tried to speak Swedish to a Swede (trying to be polite), the Swede would just look embarresed, tell him "don’t bother with our Archaic language, please let me practice my English while talking to you instead".

    I invariably, when there is a choice, install my OS’s in English. It still annoys me to heck when software tries to be "smart" and basically reverse-engineers from the IP adress (or however it works) that it "should" talk Swedish to me. ARGH!


  11. felixk says:

    "Första namn" might imply that, despite the "Bearb…" error, the translation did not start from a German version — German uses "Vorname" and "Nachname" (the same as Swedish).



  12. mikeb says:

    > Can’t people learn ENGLISH!? How hard is that!?

    Well, it can’t be too hard; I managed to mostly get it.

    > we do not dub our TV, so our kids hear the "John Wayne Accent"

    My favorite bit of dubbing trivia is that "Mad Max" was dubbed for its US release.  I guess whatever they speak in Australia is a bit much for us Americans.

  13. The Steam online gaming client has a very visible button named "Support" that opens the Steam Support Home Page. In the Danish version this is translated as "Støttetropper", which has the meaning of Military Combat Support (as in Combat Engineering etc.)

    Since the Steam client contains plenty of military strategy games, this might be an entirely correct translation of a button named "Support" somewhere else in the Steam Client, but here it is completely wrong.

    So sometimes you need more context than the just the contents of the UI control. If the translator has little domain knowledge, even the dialog in which the text is displayed might be too little contex.

  14. Tim Smith says:


    In many languages, a translated line would be different depending on if you are talking to someone of a lower or higher class status.  Gender also plays a role.  So not only do you need the line of text, you need to know then sex and social status of the speaker and the listener.

    For most generic computer applications, this doesn’t come into play a whole lot.  But what if you have a help system with a female avatar as the main character.  You would have to be aware of these different issues when translating the help text.

  15. Threetwosevensixseven says:

    Not forgetting that Mel Gibson is actually American-born anyway!

  16. Sinan Unur says:

    I might side with "Some Guy" on this: Many of the words that are used as translations of computer terms do not actually exists in everyday Turkish. For example, ‘cursor’ is replaced with the word ‘imlec’ which does not mean anything to anyone.

    I cannot stand the fact that Google’s interface becomes a huge mess when I access it from Turkey.  Trying to fix things is a losing battle (in terms of my time and effort).

    For example, "Images" is translated as "Grafik".  The problem is, there is no good modern Turkish word that corresponds to the general category "images".

    Another problem, of course, is that when people invest a lot of time into learning these phrases ostensibly Turkish but foreign in use and spirit, it is hard for them to transfer that knowledge to the international labor market. To a large extent, the benefits of having a common UI are lost on those people who learned how to use various programs in Turkey and now need to work elsewhere or vice versa. You have to learn everything all over again.

    Keywords in a programming language are not localized and that has a benefit. The same can go for menu items or command buttons.

    Just my 2 new Turkish kurus.


  17. Mikkin says:

    This kind of idiotic transliteration is quite common, but really:  You would think a maker of telephones would have sufficient domain knowledge from their line of business to appreciate what translation is about, and to get it done competently.

  18. A Finn from Finland says:

    The clip art that came with MS Office 6 included a file that was named "Speaker" in English. The translators of the Finnish version didn’t get to see the actual clip art and had to translate the file names "in the blind", as it were. Due to this, "Speaker" was translated as "Kaiutin", meaning "Loudspeaker". Unfortunately, that particular clip art image happened to depict a man giving a speech behind a podium.

  19. Anders Munch says:

    Not bearbeiten, there’s probably no German involved.  Not that it helps much, ‘Bearb…’ still looks funny. Oh, and just so you know, when I write ‘funny’ I mean ‘rart’, not ‘roligt’.  I think all writers should be obligated to always write the same thing in two different languages to avoid any misunderstanding :-)

  20. BryanK says:

    Duh.  Why don’t I just learn to read?  OK, I give up, never mind.  :-P

    In any case, Tim:  The listener’s gender and social status are completely unknown, aren’t they?  So any choice you make is wrong (in some cases), then, right?  I’m not sure if there’s any way of doing the translation that would take that into account; it’s not like Windows asks "what’s your gender and social status?" at install time so it knows how to talk to the user.  (Frankly, it’s a good thing it doesn’t…)

  21. Neil says:

    I wish I could get more software translated into my language.

  22. zahical says:

    I’m really surprised we got that far into a discussion about the dangers of translating literally without anyone mentioning "All Your Base Are Belong To Us" :-)

  23. Stephen says:

    @Raymond: The "Forward" thing is a USism; it’s "Divert" in non-US English, which is probably easier to translate in a vacuum.  The other thing with label size is an inherent pain point; English, which nearly all developers work in due to English-centric programming languages, crams a lot of meaning into fewer characters than most non-Asian languages because we rely a lot more on context to disambiguate.  It’s particularly bad on things like phones where even the English words have to be abbreviated due to small screen sizes.

    @Mikken: You think we employ people that speak 200+ languages?  We prepare a list of words and phrases to be translated, send them to a bureau, and get back 200+ translated lists.  The same people translate everything from Ikea assembly instructions to phone labels to contracts.  We do, however, make our translations modifiable by end-users, and we occasionally get corrections back.

  24. dave says:

    "I think all writers should be obligated to always write the same thing in two different languages to avoid any misunderstanding"

    What, and miss out on the opportunity to deliberately use the ambiguity to convey meanings that would be difficult or impossible to spell out?

    (It would also kill off things like being able to show off by telling about the time I managed to use "recognize" where I meant BOTH "identify upon seeing" and "acknowledge the validity of".)

  25. Roland says:

    There is still a case in Windows Media Player 11. In the Tag Editor, you can specify the key of the song. In the German version of WMP11, the "key" text box is labeled "Schlüssel". However, a "Schlüssel" is used to lock a door. The musical meaning for key is "Tonart".

    I also reported a case to the OneNote GPM Chris Pratley (who replied instantly): In OneNote 2003, the "Record" button (to record a note using a microphone) was labeled "Datensatz" in the German version. However, "Datensatz" refers to a record in a database. In OneNote 2007, they corrected it: It’s now "Aufzeichnen".

  26. Mathieu says:

    > Can’t people learn ENGLISH!? How hard is that!?

    Very hard for some people. Remember that everyone is different and doesn’t have the same abilities.

    Also, some people didn’t have the CHOICE to learn english. During World War II, english was forbidden in France (which was occupied by Germany), and speaking english could get you arrested. So most kids never got the chance ton learn english (so is the case for my grand-parents).

  27. derruki says:

    Keywords in a programming language are not localized and that has a benefit

    Oh well, if it only were like that…

    In the German Version of Excel all Formula functions are translated. So SUM() = SUMME(), AVERAGE() = MITTELWERT(), LEFT() = LINKS() and so on…

    The sheet’s compatibelity is not bothered by this, though. But is is very confusing if you use an english (or behold, french,spanish…) version of Excel and all your knowledge is worth nothing (especially with the more complex commands).

    An even more outrageous example is the TI BASIC Programming language found on Texas Instruments calculators. Somwhen around 2000 the thought they could localize them, too! Thing is, that a calc running in "German" mode would not take english commands or scripts and vice versa, even if the othet language pack is installed. That was really a pain-in-the-ass if you were to receive custum functions…not to mention the space issue (e.g. "BUSY" = "InBea" or something wich is short for "In Bearbeitung")

  28. Messiant R says:

    I completely agree on how sometimes translations are done sloppy, or some words are forgotten, etc .. but even when *a lot* of time is spent on it, it can still go horribly wrong.

    I’ll give you the dutch language as an example: the spelling of words changes "frequently", that is every 10y or so (could be more, but it sounds right). In the recent past "CD" and "DVD" were translated as "CD" and "DVD" .. but the spelling changed and now suddenly we have to use "cd" and "dvd", but still have to use "RAM" for RAM.

    Other words half randomly gain or lose an "n" or a "s" somewhere, so just imagine how horrible it must be to be translating the newest Windows, Firefox, <insert your favourite application> .. from english to dutch.

    I’m sure it must be an *immense* task to properly do that, get it tested by people who aren’t accustomed to (or don’t know) the new spelling rules yet, etc etc

    I have to admit the Windows teams are doing a good job in that department though, even with the crazy capitalisation thing we have going on

  29. BOFH says:

    I didn’t react on "Bearb…" as not being Swedish either.

    I just read it as Bearbeta, which has sort of the same meaning, but is totally wrong in this context.

    It’s just another typical case of Swenglish travesty that I have seen all too many times before…

    Compare the incorrect word:

    With the correct word:

  30. Alex says:

    I’ve been doing software localization for a few years.

    Often times bad translation has as much to do with the translation process as with the technical process or system. Sometimes we run into people who don’t really understand what "context" means.

    There was a recent job when we put through a context query to the client for a setting string that had a variable "%.2f" in it. The client answered by telling us that it will print out a number and so and so, spent three paragraphs explaining what such as construct does, without saying half a word what that number actually was.

    But I digress.

    We’ve had many localization jobs where:

    1) Clients simply refuse to give anything more than a list of strings to translate. Even under NDA they will not give us complete pictures. And that’s with a long established vendor who operates in multiple countries.

    2) Jobs that get subcontracted and subcontracted and the schedule becomes so tight it is simply impossible to get any queries answered by the original client. But work has to be done, so we end up guessing.

    3) If you work through a localization vendor of respectable size, often the job goes through so many people there are bound to be a few who don’t know the languages or the subject field as well as they should. You’ll eventually run into people who can’t tell the difference between MB/s and Mbps somehow responsible for your network-related application localization.

    Still, I agree whole-heartedly that context is vital. Context is a translator’s best friend.

  31. Sven Groot says:

    One of the worst I’ve seen in the category of "out-of-context" translations was in the Dutch version of Windows Mobile 5 (no, I didn’t think your post implied MS wasn’t guilty of this, I’m just pointing to a funny example) in of all things, Solitaire.

    The bottom-left menu button for Solitaire says "Draw". This was translated as "Tekenen", which does mean draw, but as in "draw with a pencil on a piece of paper", not as in "draw cards from a stack".

    To be fair, they changed it to "Delen" in an update, which is the correct translation. They also took out a whole lot of other WM5 mistranslations and spelling errors in that update.

  32. Gene says:

    My favorite bit of dubbing trivia is that "Mad Max" was dubbed for its US release.  I guess whatever they speak in Australia is a bit much for us Americans.

    I read American motorcycle magazines (because they’re there) and British motorcycle magazines (because American motorcycle magazines, like American motorcycles, are crap)

    Anyway, I was reading an article in the American mag which turned out to be an article in the previous month’s British mag with all the British idioms removed (like "someone stole my rainsuit" substituted for "some cad nicked my waterproofs") but otherwise was word-for-word. It came out very dry, stilted, and bland.

    I emailed the editor and mentioned "this was a strange thing to do – did they do it often? and why wasn’t the original magazine credited?" at which point he realized the "author" had plagiarized it!

  33. TLKH says:

    Russian version of Windows (2000 and/or XP, I do not remember) has a good illustration to this topic.

    In context menus of scrollbars, the command "Scroll Here" is translated as "Прокрутка на месте" (it’s literally something like "turn around where you stand")

  34. Dean Harding says:

    In context menus of scrollbars

    Whoa! After all these years, I never knew scroll bars had context menus! hehehe :-)

  35. Matthias Hertel says:

    Some of these out-of-context translations that make me really really want to use a non-localized version of the developer tools are the cl error messages. At some point the VB-english slang of using "control" as a synonym for "GUI widget" made its way into the dictionaries. Since then, in the german version of VC, C2202 translates back to "not all widget paths [Steuerelement-Pfade] return a value".

    My favourite software translation problem is from the "Monkey Island" adventure game (yes, it’s been a while). The "monkey wrench" puzzle was an order of magnitude harder in the german version simply because the german name of that tool doesn’t suggest anything monkey-esque — "pun lost in translation error".

  36. Darren Winsper says:

    In EVE Online, the original Russian translation of "Warp to member" came out as "Jump on dick"!  I imagine the Russians had a little chuckle every time they clicked that one.

  37. That’s also something I wondered. I noticed those problems a while ago and I couldn’t come up with a viable solution. I mean, the default Windows resources or GNU gettext approach is, to pull out all string from their context; essentially this leaves the developers with just the text and they don’t have to bother with programming or anything distantly related but causes the aforementioned problems.

    Another way would be how VS 2005 handles a localized UI in that way that you simply switch the language in the Properties and redeine all strings on the UI (won’t help for code-embedded strings, though). You now have the context but require translators to handle Visual Studio which is probably also unfeasible.

    Is there some other way I overlooked?

  38. Puckdropper says:

    Oh why oh why didn’t the unified peoples building the Tower of Babel stop to think about the consequences 4 millenia later?  If only someone had stopped them and said "God will scatter our language if we continue in this arrogance, and computer software will require many man-hours of work to translate!"  maybe they could have stopped this problem from happening!

    It’s yet another computing problem caused by arrogance!

    (To be clear: most of this post is tounge-in-cheek.)

  39. Alex says:

    Although one can collect strings in one place so it’s easier to localize (which doesn’t necessary mean easier to translate), there are CAT tools like Catalyst that lets you look at the actual form controls and layout so you still have context.

    Things like resource strings and .PO files may be wonderful things in the eyes of computer programmers, I don’t really know, but I hate them as a translator.

    I must add, though, those amusing translation errors can also often come from translators guessing into the wrong direction.

    For example, in a first person shooter, you come across a message string "Use your flash!" Now does it mean a flash light (torch) or does it mean a flash-bang grenade?

    I have also seen amusing ones like "your notebook keys" as in laptop computer keyboard keys getting translated (into Chinese) as the keys (to a lock) to your note-book (the paper kind).

  40. Petr Kadlec says:

    In the Czech version of Windows XP, the Disk Manager contained a translation of “Volume” as “Hlasitost”, which means “loudness” in Czech.

  41. Barry Leiba says:

    OK, this isn’t necessary, but I’ll post my favourite odd translation here:

    An American seller had posted an item for sale on American eBay and also on German eBay.  A German friend of mine found the latter entry, and thought I’d be amused: in the payment instructions, it said, "Kein Kabeljau," which means, "No cod[fish]."

  42. I wonder why the German translation of Vista is so much worse than the translation of XP. Seems to be made in a great hurry or with an automatic translator in some places.

    Other example: Visual Studio. E.g. they translated Key (Registry) to Taste (a key on the keyboard is called Taste in German)

    Annoying is that my English Visual Studio switches back to German every few days *argh* since Service Pack 1. Haven’t yet found out why this happens. Why can’t it just stay in English?

  43. ender says:

    One thing that bothers me most with localized interfaces is that all the access keys (Alt+underlined letter) change, often without any real need to (I wouldn’t mind so much if they at least used the first letter of the word whenever possible, but it seems that the letters are picked at random in the translation).

  44. Florian says:

    I’ve even seen an application where the file menu was translated as "Feile", the German word for file: the tool for shaping wood or fingernails, which has to do nothing with computers whatsoever.

  45. poochner says:

    > Can’t people learn ENGLISH!? How hard is that!?

    Pretty hard, actually.  English is a mish-mash of different languages, with little regularity.*  My favorite description is "English is the bastard child of Norman foot soldiers and Saxon barmaids."  It’s a bastard, anyway.  If it wasn’t my first language, I’d probably never have learned it, Even so, I’ve had teachers ask me what my first language was.

    * Q: Is that "regularity" as in "according to set rules" or as in "good digestion?"  A: It doesn’t matter, as it has little of either.

  46. Jules says:

    Barry Leiba: "An American seller had posted an item for sale on American eBay and also on German eBay.  A German friend of mine found the latter entry, and thought I’d be amused: in the payment instructions, it said, "Kein Kabeljau," which means, "No cod[fish].""

    Ah, but did he also say there’d be no bobcats?

  47. James says:

    Jules: I’ve been reading my way through XKCD’s archive, and just hit a strip related to this topic. (In this case, did the guy asking for ‘pointers’ want advice, or memory addresses?)

  48. Some Guy says:

    I dunno… reading through all this it just underlines my thesis:


    So many "computer words", as said above, don’t even have a meaningful term in the other language. And then some idiot "Invents" a term, like the horrendous Swedish "pekdon" for pointing device (YUK).

    Swedish is really Anglified anyway, we wouldn’t actually say "Redigera", we would say "Editera"… at least I would… and everyone I know…. a "swedification" of "edit"!

    BAN TRANSLATION. STICK TO THE ORIGINAL LANGUAGE. Then at least a person can learn to run a program on PURE RECOGNITION of the durned BUTTONS!

  49. James says:

    Some Guy has a point here; a Belgian friend of mine tells me all his systems run in English, for much the same reasons: since the software is developed in English, even perfect translation of all the UI components into another language would only match the status quo with English, as well as leaving him with a mixture of local strings and English code: better to keep it all in English. He also notes that even now, some applications have issues with enabled strong crypto on non-English platforms, as some sort of holdover from the days of ITAR restrictions. (Come to think of it, some of these may stem from the French laws regarding crypto, which are still in place?)

    Meanwhile, my mother (who speaks fluent German and studied for part of her languages degree in Munich, but likes to experiment with websites) just told me an online translator she tried translated ‘Großbritannien’ as ‘largely britannien’, rather than ‘Great Britain’. Useful…

  50. Alex K. Angelopoulos says:

    A minor irony: the old common English way of saying ‘first name’, ‘forename’, has the same antecedents as the correct Swedish translation ‘förnamn’ that he mentioned. :)

  51. TLKH says:

    Whoa! After all these years, I never knew

    scroll bars had context menus! hehehe :-)

    What’s why this funny translation left unnoticed. It still there in WinXP with all the latest updates.

    I googled it, it’s found only on 3 pages (2 more pages seem unrelated), mainly about users asking what does it mean.

Comments are closed.