Fog Creek Software
Discussion Board

Programming books in your native language

99% of all the programming books that I own are written in English. This is partly due to the fact that a lot of new books aren't (yet) translated in my native language (Dutch).

But it is also a preference of mine, because translated books tend to translate *everything* while I am also used to a lot of the English terminology.

So my question today for all the not-native-English-speaking-people: what do you prefer? native- or English programming books?

Guyon Morée
Friday, August 6, 2004

Till I can actually program in my native language, IF-ELSE, CASE, FOR, FUNCTION, etc, it is better to have the manuals in English. That way the explanation language and its idioms do not clash with the implentation language.

Friday, August 6, 2004

I prefer programming books in english for several reasons. First of all it's like you say, in translated books everything is translated. Often by translators without a technical background

Secondly, only books that apply to a wide market are ever translated. Books that appeal to a narrow market are never translated.

Friday, August 6, 2004

I'm German and I prefer my technical literature in English as well.
Because a.) I'm fluent in English and I get along fine with the original. I also prefer consuming (real) literature, movies, news, etc. in the original language. b.) Obviously, not all technical literature gets translated, so if there's no German version, I don't want to check to see if there's a translation in the works. c.) The translations are at least half a year out of date, usually more.

The only reason I ever get German translations is that they're usually much cheaper than the original. I would think that because there's additional work involved, they would be more expensive. E.g. when I bought Scott Meyers "Effective C++" (which is very well translated) the German edition cost half what the original cost (on amazon now it's 29 Euro/German vs. 50 Euro/English)

Friday, August 6, 2004

I think the difficult part of the "translate everything" problem is that every workplace creates it's own technical dialect. Some terms are always used in the original, all programmers I know in Germany would say "compiler", although especially in older technical literature, it might be translated as "Uebersetzer".

Other terms aren't so clear. Some people say "pointer" some "Zeiger", sometimes you alternate between the two terms. Sometimes two terms with literally the same meaning are used to express diffrent nuances of the same concept. But the translation won't ever be able to consistantly use the same vocabulary mix that you're used to, so translations usually have a weird "sound" to them.

Friday, August 6, 2004

English please. Half assed attempts of translating the jargon always trow me off and leave me scratching my head what these "creatively" made up terms are supposed to mean. When they stick to the normal terminology, you get an unpalatable mix in which 50% of the words on the page are English anyway.

Just me (Sir to you)
Friday, August 6, 2004

English is fine for all the reasons stated above.

However, many, usually American, authors could vastly increase the usability of their books by not using slang or words that are not common English (Nirwana, nada, zilch, etc.), or abbreviations (DIY, IMHO, IANAL, FYI, etc.).

Other problems for an international audience: references to typical local products (e.g. Tinkertoys), shops, or cultural manifestations (such as Shakespearisms or nursery rhyms).

And finally: always use international standards for dates, times and physical units.

Karel Thönissen (
Friday, August 6, 2004

I sometimes buy non-essential programming books in my native language (Russian) because these are cheaper and quicker to get.

Friday, August 6, 2004

Speaking of (bad) translation, I was checking out the caller ID feature in modems recently so we could have a pop-up screen on all the hosts on our LAN when someone calls in.

It took me a couple of seconds to understand why the word "Anneau" was displayed in the modem's log file.

FWIW, "Le seigneur des anneaux" is the French translation of ... "Lord of the Rings" ;-)

Friday, August 6, 2004

Hi Guyon.
My native language is Russian. I studied in Israel. Can't read professional books on any language rather than English. The problems are same as you mentioned...

Leonid Beliak
Friday, August 6, 2004

And finally: always use international standards for dates, times and physical units.

OK, but which international standard?

Ian H.
Friday, August 6, 2004

Under which rock have you been hiding?

Karel Thönissen (
Friday, August 6, 2004

  Here in Brazil another problem is that they only translate books related to a single technology, like the "Learn in 24 horus" series.

  You won't find classics like Code Complete, Pragmatic Programmer, The Mitical Man-Month translated, although I've found a transated version of Peopleware (1st edition).

  Another big problem is, besides translating tecnical terms, they even do it wrong.  "Graph", for example, is always replaced for "Graphic".

  The only problem with imported books is that one dollar today is more than 3 Reais, so they end up been very expensive.

Ricardo Antunes da Costa
Friday, August 6, 2004

This is fascinating and something that, oddly enough, never occurred to me.  I think it's great that we are moving, incrementally towards a single language.  It's a bit unfortunate that we chose one of the most complicated ones, but still, very nice.

In another few years we can all start working on this idea I've had for a tower so tall it can reach the heavens.

name withheld out of cowardice
Friday, August 6, 2004

Like Just me (Sir to you) said, it becomes a pain when the translators start to translate literally each word, and makes one for it when it doesn't exist. Sometimes, it's really obvious that they don't have any training in Computers Science. At least, they don't translate the source code :)

And other question is if you like to code in your native language? At a previous job, we had a set of C #define's for writing our code in French, such as:

#define si if
#define sinon else
#define entier int
#define caractere char
#define principal main
#define affiche printf
#define retourne return

entier principal(entier argc, caractere** argv)
  entier i = 0;
  si (i == 0)

  retourne 0;

Eric V.
Friday, August 6, 2004

I seem to vaguely recall there having been "translated" versions of BASIC in the 80's.

Just me (Sir to you)
Friday, August 6, 2004

Most of the technical books I read were in English. Most of those that I own (except some we got with the products) are in English as well. The selection of books available in Hebrew is quite limited, and it is possible that they are not translated well.

Shlomi Fish
Friday, August 6, 2004

How about content that isn't in the form of a published book?  Personally, I have my Google preferences set for results in English (native) and German (secondary).  I often come across articles written in German that are far better than similar pieces on the same topic in English.  Of course, this is due to the author's knowledge and skill, and not the language itself, but still...

Friday, August 6, 2004

Absolutely, what's the point of trying to figure out what the translator meant when he translated "device context", "property sheet", "property page" etc.

Plus translators try to leave out the source language completely (a footnote with the phrase in the original language, for clarity, means the translator has done a bad job!).

You will be amazed in how many ways "handle to device context" can be translated in one single language.

Amazingly, I've found Russian translations very easy to read. Perhaps because they have completely different language roots (no Latin mix-ins) and had to reinvent every term. Terms are different, but sharp clear.

>> It's a bit unfortunate that we chose one of the most complicated ones,

name withheld, I wouldn't be so sure. Compared to Russian, English is as easy to learn as Esperanto.

Friday, August 6, 2004

If a good translation (or the original book) is available, I much prefer reading a book in my mother tongue, especially if it deals with complex subjects.
Unfortunately, the more high-level a book is, the narrower the market will be, and the less likely the translation. The good side is that with the current level of the dollar, US books are less expensive.

Friday, August 6, 2004

The English used in programming books is probably the most primitive widely used language in the world.

I always buy media in the original language if possible. For computing, that is English (and almost exclusively American English at that). As others have stated, the programming languages and environments are all in English anyway, all on-line references and most articles are in English, all on-line communities worth participating in use English, and during the last 20-30 years or so German computer science has no longer bothered creating German equivalents of English technical terms, so any "translation" is an unholy mess of Denglisch.

By the way, this programming business has caused me to switch from British English to American English. BE is what I learned at school and know from classic literature, but eventually it just felt weird to combine two different flavo(u)rs of English when writing programs so I switched to AE wholesale. As far as I can tell most other non-British/Canadian/Aussie programmers switched as well, making "International English" for BE a bit of a misnomer these days.

Which brings me to another point: localized software. Note to all shrinkwrap developers on this board: DON'T YOU DARE TO FORCE YOUR LOCALIZATION ON ME! Don't presume that because my Windows settings are German (required for German keyboard & currency) that's the language I want to run my software in. Defaulting to the local language is okay but give us the choice to use English instead. And always make content settings (spell-checking etc.) separate from interface settings (menus, dialogs). Thank you.

Chris Nahr
Saturday, August 7, 2004

> The English used in programming books is probably the most primitive widely used language in the world.

If by 'primitive' you mean 'simple grammar', then perhaps Chinese.

Christopher Wells
Saturday, August 7, 2004

Rather a combination of all aspects... Chinese has lots of complicated characters, or so I'm told.

English OTOH doesn't even have accented Latin characters, and the language's idiomatic subtleties or its irregular pronunciation don't come into play in programming textbooks.

Chris Nahr
Sunday, August 8, 2004

In Québec, Canada, translations are more expensives than originals most of the time. Most el-cheapo "learn to be a complete dork in 24 seconds" are quite horribly translated. However, classics & important books are usually well-translated by domain experts (someone who knows his CS).

There are also some pretty good books written directly in French. Often on academic/non-mainstream language originated in France (O'Caml, Prolog).

Monday, August 9, 2004

*  Recent Topics

*  Fog Creek Home