a companion discussion area for blog.codinghorror.com

The Ugly American Programmer


I have a disk with russian Visual Studio inside… But I’m never input it in my CD-rom… and never will. And no one in company is do this. :slight_smile: So yes, English is the only language we speak in the code.


Whatever country you live in, whatever language you speak, you have the same access to the accumulated knowledge of the world as every other citizen of the planet Earth.

…you really haven’t traveled much have you, or tried to use the internet in Dubai, Thailand, China, Australia etc…


You wrote:
Anon on March 30, 2009 09:15 AM

  • 1C DBMS (a Russian firm 1C is making enterprisey software like 1C Enterprise)

Why would they do it? Tailoring to a user base that may not be proficient in English?

As russian speaking programmer that have to write some piece of code for 1C systems I need to say that russian coding for 1C is a trully CODDING HORROR for programmer. And it’s confusing a LOT. I’d preffer a russian comments in the code, not the code.


do we really code in english? i’ve been coding for a while now (8+ yrs), i speak and understand english fluently, speak some french and very little german as well as being fleunt in my mother tongue and several other languages in my country (important for swearing).
my point is, which ever language i am speaking, i find myself thinking in it as well. isn’t that the same with code? do we write significant paragraphs in comments so that one can look and say that is english or geekspeak? really.
what i would really like to know is, what language do you think in as you code? are your english words in your code actual communication of ideas or just symbols that just so happen to have english meaning?
could linus trovald have reached all of us just as well with UML?
i work with filipinos, indians, a malagasy and a whole rainbow of africans. when i say connect as sys, dump database, su root, reboot server, load dump to test, start uat, brb, thnx was that english?


I’m from Mexico. And I find that, in fact, English is the languaje people should program in. I’m into games, and it is really hard to find good information in Spanish, so I don’t even bother any more.

Also, good programming books in spanish aren’t hard to find, THEY DON’T EVEN EXIST. I have never, ever, seen a translation to Code Complete or The Pragmatic Programmer.

It’s a shame, because most programmers I know in Mexico aren’t proficient enough in English to read these books or the internet. And the good stuff never gets a translation


It’s a similar situation with music. Most music uses Italian annotations (forte, piano, crescendo, andante, presto, con sordini, etc.) though some contemporary stuff uses English. Italian is just the de facto standard. The thing with music is that one only needs to know a few words and doesn’t need to read pages of documentation or books.


For the ultimate in English-centric programming:



The article is fine, there are very few grammatical errors, spelling is superb,… But in essence, to sum it all up, the whole point came down to this: The sky is blue.

It is. English, english and english. All the other languages are all, but useless to developers.


You’re wrong. The Polish example is just a sample of one people in one specific country. Hardly statistically relevant.
It so happens that many programmers in eastern European countries would find it a little insulting to insinuate that they don’t understand English. Most of the rest of the world feels differently though.
One thing you’re not talking about (that in itself is absolutely amazing) is that you are excluding most of the population of the world from ever learning programming, which would be immensely damageable to the industry as a whole.
I learned programming way before I learned English and that is how it should and will be for most people.
Most of the world doesn’t speak English. The approach you’re advocating is just laziness and arrogance.


I’m from france, my english is certainly not perfect, but every books or documentation I read are in English. When people in France asks me if a french version of a book exists I say always you’re a programmer your life will be awful if you think to read a technical book in french.

To me it became easier to read technical documentation in english than in french.
When I talk to other french programmer I always use English technical terms (not their translation in french).

I don’t say : une propriété but une property, I don’t say un champs but un field.


East End is a great, tiny brewery. The brewer Scott is an awesome dude and quite the opposite of an ugly american. If you like barleywine and can visit his shop, I’d suggest a bottle of this: a href=http://www.eastendbrewing.com/?q=node/24http://www.eastendbrewing.com/?q=node/24/a


I don’t care which language a coder speaks as long his/her product is Unicode clean. There are still too many, especially American, coders who seem to think that ascii is the only encoding their crapplication needs to be able to handle.


Shouldn’t By any metric you can possibly measure be By any IMPERIAL ?


I would agree that its not really practical to work in IT - programming, support, anything IT related - without an advanced ability to read and understand english. I know a few excellent programmers who can barely understand me if I speak to them in english (I’m a native speaker) but haven’t the slightest problems with emails. They hate the translated technet and switch to english for support.

We use a few tools which have small macro languages built in which are not in english. The (non-english-speaking) guys here are always cursing the products because the syntax is horrible to work with. (si x entonces y sino Z)

However it should also be obligatory of all students in US colleges to have to learn how to handle non-ascii text and non-english languages.

I constantly have to fight with apps which mangle á, é, í, ó and ú when they are exported/saved/transmitted. It not as if they’re even unusual characters - they’re present in almost all western european languages.


in communist soviet russia - English programs YOU


I think that English Docs are more accurate. My native language is Spanish, and you have to choose between the great and rich variety or Spanish types (Spanish from Spain, Chilean Spanish, Mexican Spanish, any-latinoamerican country Spanish) or the standarized de facto technical English.

The choice is very clear. And more of the great programmers and engineers talks and writes english so english docs are the more confident source and that are less error-prone.

This are my reasons of choosing English as the language for reading or studying technology.


So VB.NET to C# was tough, huh? Even though they are basically the same language? VB.NET to C# is like moving from Hindi to Punjabi (dialects), or perhaps from Italian to Spanish (very similar languages). Can you imagine learning Mandarin? Can you imagine being so fluent in Mandarin that you could have a meaningful discussion comparing the implementation of enumerations in C# and Java? That’s a big ask.

I suggest you spend a year learning Mandarin (or perhaps Lisp!) and then do a follow-up post!


English is THE worst choice of a hacker lingo. But it would be even worse not to use a single language… and English is the language that is prevalent.

It’s really, really bad as a thinking language. You can’t even express math, instead you have to reinvent separate languages (mathematical notation, programming languages et.c.), you can’t express logic, you have to reinvent separate languages for that too. You can hardly express anything without using a separate language (diagrams et.c.). English is a dumbed down pidgin language that constantly needs crutches.

English has a very rigid structure. You can’t express a trail of thoughts in the most natural order for every idea. Leading to a very long-tounged language where the listener have to remember details about things that where said several minutes ago. And a lot of repetivness, because the speaker have to take artificial care that the listener can follow his trail of thought.

Worst of all, it’s boooring. There are funny languages that make joking easy, like Jiddish, Finnish, Dutch and Swedish, and there are boring languages, like German, Polish, Esperanto and on the far end: English. Funny languages are usually harder to learn (with exceptions, like Finnish) and boring languages are usually easy to learn (with English almost as hard to learn as a funny language). A brain needs teh funny to generate good ideas.

As for Linus using English in his comments. Swedish had a CS vocabulary that was superior to English until the late 80’s (mostly borrowed from German and Norse, neighbor countries that also was front runners in CS, logic, math and other science/technology from the 18’s century until the 1990s). But US organisations had a bigger home market and US based technology, although technically inferior, won because it had more money behind it. Technology developed in other countries had to support English to be competitive. Nobody updated the technical nomenclatures in other languages and kids today don’t learn any technical vocabulary except English. If Linus had learned CS in the 70’s, he would have used Swedish, and Linux would have failed, not because Swedish is unsuitable as a hacker language (it’s superior to English as a thinking language), but because he wouldn’t have been able to get enough supporters.

I bid farewell and good night with a link to a (Swedish) comedian singing about why there is no German comedians (it’s a hyperbole of course, but German comedians have to work harder to be funny), English have similar limitations:


Advocating the adoption of English as the de-facto standard language of software
development is simple pragmatism, the most virtuous of all hacker traits.

Language planning is never simple pragmatism. There are considerations about language (e.g., Which English do we advocate?), economics (e.g., What will this cost companies? Developers?), education (e.g., Will the educators need to be familiar with technical concepts? Who trains them? Who pays for them?), history (e.g., What is the historical relationship with English by the developer’s nation or culture?), demographics (e.g., What natural languages do developers already speak?), culture (e.g., What are potential cultural issues that could impact such a policy?), psychology (e.g., What considerations are given for the relationship between language and identity?), and so on.

I recommend reading a book edited by Thomas Ricento entitled, An Introduction to Language Policy: Theory and Method. It covers many of the issues related to language planning and policy – and not only from a nation-state perspective, but also from that of corporations and so on.


One of the previous post allready mentioned that the lingea franca changes from time to time, depending on the imperialism of the time and the region.

It also changes with the technical field. Most computer science as we know it originated from the US. Most publications where in (american) english. To keep up, people didnt have time to wait for the (often bad) translations.

Same happend with chemistry in the 19th century, only the the leading language was German. Germany was big and influential enough that a lot of people where aware of it and its developments anyhow. So it was easy to pick up in other countries. Scientist not reading the language where at a disadvantage. This changed after WWII when focus shifted to the US.

Nieuw fields of study will probably aquire a different language. Maybe japanese for robotics :wink:

If China where to dominate a completely new and influencial technology, a lot of terminology would be chinese and a new generation of students would learn the language to be able to read its literature in its original form.

So start learning it now and have a head start … :wink: