Pros and cons of Localisation of technical words?-Collection of common programming errors


  • paercebal

    This question is directed to the non-english speaking people here.

    It is somewhat biased because SO is an “english-speaking” web forum, so… In the other hand, most developers would know english anyway…

    In your locale culture, are technical words translated into locale words ? For example, how “Design Pattern”, or “Factory”, or whatever are written/said in german, spanish, etc. etc. when used by IT? Are the english words prefered? The local translation? Do the two version (english/locale) are evenly used?

    Edit

    Could you write with your answer the locale translation of “Design Pattern”?

    In french, according to Wikipedia.fr, it is “Patron de conception”, which translates back as “Model of Conceptualization” (I guess).

  • 19 Answers


  • Renato Soffiatto

    We do have some odd mix here in Brazil. Many books are translated into Portuguese, but the originals are commonly avaliable too. Mix that with the Internet and basically everybody has to know the terms in both languages, because you never know how the next person will reference them. And till recently most translations were conducted by some folks not linked with IT in any way. Some terms are simply bad translated.

    Design Pattern is a good example. The GoF book is called “Padrões de Projeto”. But projeto means project too. So most people do call it Design Patterns, but call the patterns with translated names (Fábrica Abstrata instead of Abstract Factory, Fachada instead of Facade). And I have seen people call Design Patterns as “Padrões de Desenho”, as some do think desenho (means design too, but also draw) reflect better the design phase of a software development.

    While I do see value in translate some terms to make the conversation more fluent (many, many brazilians have some trouble with the ‘th’ words. The phonem just doesn’t exist in portuguese…), this commonly cause misunderstandings when somebody just hasn’t been exposed to some obscure translation. It’s obviously better to sticky with the original terms. And be very strict to, when the need to use a translation exist, do not choose a obscure translation.


  • malach

    Coming from Switzerland and speaking German I vote for keeping them in English. I have been at an IBM congress some time back (OS/2 0.9 developpers conference, I0m giving away my age here). At that time most people were not as familiar with the names of interface components (combobox, listbox, button) as they are today, especially not the many mainframe programmers attending.

    So everything was translated simultaniously into different languages. And i mean everything. This let to the effect that:

    • A wrong standard set of names was put in place
    • Programmers from different nations were not able to talk to each other
    • It was really hard to follow the talks, especially if you had some previous knowledge

    The only way to go about was to have one ear covered with the headphones while listening to the English original speach and trying to put the English names of things in the right spot in the German translation. It was so tyring.


  • RSabet

    I am from Austria, hence learned German as first language.

    Design Pattern becomes ‘Entwurfsmuster’ which is a pretty decent translation not losing that much in translation, still we all use the English ‘original’ here in Austria, even people speaking an awful English use the English words. Makes it easier….

    For completeness: it is not completely right, that only the rest of the world is using English terms, ‘you’ also use some ‘foreign’ words:

    And recentry i stumbeled upon a site called: übernote from the German word über.


  • Thorsten79

    You can translate words to another language, but you are usually not translating the mindset they belong to (that’s why good translations cost a lot of money). Technical terms that build an obvious group in one language may also lose their linguistic connection in other languages.

    One of the worst examples I stumble upon regularly is the word ‘experience’ that is rampant in U.S. marketing lingo. Everything is an experience nowadays. Now some folks translate it into German “Erfahrung”, and it just sounds terrible because it does not fit with anything in the German mindset. We don’t think of using a tool or software as an Erfahrung. The word may be translated correctly, but completely off the mark considering the mindset.

    Edit answer: German for “design pattern” is Entwurfsmuster. It’s sometimes used in lectures and presentations. My almost daily fun event is the translation of English “to cast” as germanized verb “casten”. As casting in C/C++ has been considered evil for quite some time and causes lots of bugs, “casten” is usually a problem. Now “casten” sounds phonetically identical to German first name “Karsten”. So whenever casting is the cause of an error I can remark that it has all been caused by Karsten 😉


  • Manrico Corazzi

    No thanks. Leave the English technical terms be. Translation is awkward, generally ugly and confusing.

    Sometimes I have the opposite problem, here in Italy. You try not to mix english and italian… so methods and classes are named “findUserBySocialSecurityNumber”, “delete”, and so on. But business terms are often impossible to translate (italian unique identifying code is “Codice Fiscale”, which is not a social security number or anything), so it’s not unusual to meet methods named “findUserByCodiceFiscale”, which I admit is pretty silly. 🙂

    EDIT: design pattern in Italian might be translated schemi di progettazione (or struttura di progettazione, according to Wikipedia), but I’ve never heard it in conversations.


  • Tomasz Tybulewicz

    Most IT staff in Poland use english terms, polish language is used only when communicating with business or users.

    Personally I tend to set locale on all my computers to english – I know which word is used in english manual, but I’m not sure how was it translated in polish version.

    On my university all of lectures were in polish, sometimes we had no idea when tutor used some translated terminology (like “kompilator skrosny” [cross compiller] or “krotka” [record in a database]).

    “Design Patterns” translated to polish is “wzorce projektowe”.


  • bortzmeyer

    In my technical blog everything is translated in french. Using english words for computing, just because most of the concepts behind were invented in the USA would be as stupid as using only german words for printing (because of Gutenberg) or greek words for politics.

    Of course, like any rule, there are exceptions. It is sometimes difficult to find a good translation (I use “bit” and “pizza”, not the french translation). And it is better to have no translation than a bad one (such as “toile” for “web”, a serious translation error).


  • Jesper Blad Jensen aka. Deldy

    What I normally do is to danish-sify (I’m from denmark), or use the danish words for IT terms when talking to business people, or normal non-it people. If it is IT people i just use the english terms.


  • Thomas Koschel

    I am a non-english speaker from germany.

    In my opinion it does make no sense to translate programming related words from english into another language. At university (although it is located in germany) nearly all lectures were held in english, all good programming books are written in english, most important web sites (like this one 😉 ) use english. So you get used to terms like “design pattern” and “factory” from the very beginning on. Sometimes I even do not recognize, that I use some english technical words, when I talk to my colleagues in german.

    And it’s also very helpful, when you are a member of a team with people from different nations, because you have a common “language” and every one understands what is meant when talking about a “factory”.


  • AviD

    In addition to the other good answers, I would add that writing code that was transliterated from another language is just bad form. Makes the code clunky and non-straightforward, everybody will translate it differently (even speakers of the same language), and when it comes to multi-national teams it becomes impossible to understand. This includes variables, class and function names, even comments…
    I’ve performed code reviews for dutch teams, turkish teams, teams all over the world – we’ve actually had to hire translators to explain the code to us. This gets quite ridiculous, as the translator doesnt understand the code either… (eventually we gave up and had the local team give us some key words, but still…)

    If the coding conventions are localized, it becomes impossible to understand – even localized to a language I speak!


  • Nils Pipenbrinck

    Oh please, keep them english. Im a non-native english speaker from germany, and I always start to giggle when I come across german texts with technical terms translated to german.

    My personal favorite is the german translation for stack:

    Stack translates to Keller Datenspeicher. Translating this back to english gives something like Basement data storage. (Uh – where’s the stack, and what has that to do with basement?) No young programmer here understands the german anachronisms anymore.

    Stackoverflow translates to Keller Datenspeicher Überlauf btw. (Basement data storage overflow)


  • Tetha

    I think technical terms should be kept in their original language, which is english in pretty much any case. I remember lectures about operating systems – virtual memory specifically – and they talked of tilings. I thought “what the hell? There is a tiling in my kitchen and my bathroom, but not in my memory!” and ended up deeply confused. Later, I understood they translated mempages in a ridiculous way. Similar “interesting” translations involve stockpile for heap, cellar for stack and other things I forgot.
    Generally, I think the translation might be friendly towards users who don’t know what you are talking about. Anyone else will know the “real” term much better – even if he does not, he will find more information easier with the “real” term.

    I do not think there exists a real disadvantage to this. Doctors have their own technical language, too, and even construction workers have their own language, so why should be programmers have no special language for them? You just can’t talk to a surgeon without knowing the term “cut” (I cannot find a good example, because I do not know their language), and thus, you cannot talk to a programmer about what he does without knowing the term “design pattern”, “factory” or “minimized binary decision diagram”. If you don’t, accept you are unable to talk to the programmer, or ask him about the basics and learn more about the terms yourself.


  • Tobias Schulte

  • Davide Gualano

    I’m italian, and I think that technical words translated sounds totally funny!

    It’s better sticking to the english version, also for clarity: everybody know (should know) what design patterns are, but “schemi di progettazione” is somehow more obscure.


  • Jim C

    While I am a English speaker, I work for a Swiss company based in France. In my experience most people use English technical terms. The French Government tries to impose French terms , but no one pay any attention.


  • Ace

    Design pattern in Swedish – designmönster. So it works quite well, as do many other translations, but many just come out sounding silly. Usually swedes have a pretty good understanding of english, so in conversation it tends to be a sort of mix between swedish, english terms, and sometimes swenglish terms – usually english words with swedish grammar 🙂

    “Did you commit the branch?” becomes “Har du committat branchen?”

    Code should be all english though. Localized variable names are EVIL.


  • mir

    My Native Language is Arabic, and I speak French/English also.

    Arabic is one of the hardest languages for the tech terms… I strongly prefer to stick to the english version of the Tech word i Find users familiar with the tech terms in english more than arabic (at least the ones i dealt with) however the arabic use of terms has to be for legal reasons, so somehow we have to put up with that with some softwares

    We used to play a little game in the Tech Department, which is Guess the Arabic Synonym and we would laugh so hard at the unexpected word that a bunch of geeky guys didn’t know, so imagine how it would be like for users


  • Brian Rasmussen

    Design patterns in Danish would be something like “designmønstre”, but I have never seen anyone use it.

    With less than 6 million native speakers worldwide most computer science lingo is not translated to Danish. Instead the English terms are used. This obviously makes it easier for the reader to find other international sources on the subject, but it also leaves the original language somewhat mangled by the foreign terms.


  • Giulio Muscarello

    Italian here. Usually, Italian programmers prefer using English names for things, although they often misprouonce them (as well as most english words). The main reasons for this are:

    • Some terms are only used in the English form, and it’s hard or impossible to translate them: stack, for example.

    • Some words sound better in the English form: matrice (matrix) is the translation for array, but it’s quite uncommon because it sounds bad.

    Design pattern translates with schema di progettazione.