Do all programmers speak english?


I got in a little discussion with a colleague tonight about how many non-English speaking developers are using the .NET Framework.  He asserted “all programmers speak English”… The general jest behind his argument is that developers tend to pick up English if they learn to program in an “English” programming language such as VB.NET or C#.   So, I’d love to find out if he is correct or not.   I’d like to hear from non-English speaking developers and maybe see some examples of VB.NET or C# code written in a non-English language posted in my comments to this post.  So please (translate) and forward this post…

 

Comments (102)

  1. zzz says:

    I write english pretty averagely <- like you see.

    But when it comes to talking out loud, I do it well in my mind, but it just comes out as bunch of mumbo-jumbo out of my mouth.

    What comes to the subject, quite few c# sample codes I have seen have had foreign language comments, sometimes even variables. Personally I’d prefer if everyone in the world had English atleast as a second language. But that would be all too easy wouldn’t it.

  2. I have a friend whose from italy. His brother programs in italian as does he when he’s working in italy. Its fun to see.

  3. Stefan Daugaard Poulsen says:

    Sometimes i use danish in my code, but generally i prefer English in my code.

  4. I often use italian in my code (even if I prefer english):

    public void SalvaConsumo(Consumo consumo)

    {

    if (VerificaConsumo(consumo))

    {

    Consumo tempConsumo = _consumiManager.CaricaPerId(consumo.Id);

    if (tempConsumo != null) // Aggiorno

    _gestoreConsumi.Aggiorna(consumo);

    else // Inserisco

    _gestoreConsumi.Inserisci(consumo);

    }

    }

  5. na57 says:

    man,I speak Chinese~~~

  6. I tend to agree. All programmers have to speak English. If you need current information on some topic, it’s usually available in English before being translated into any other language. Another reason is international cooperation. If you work with colleagues from different countries you have to use a language that everyone speaks. And often that’s English. And after coding in English for years I find that code using non-english terms looks weird 🙂 I’m from Germany, btw.

  7. hDrummer says:

    I do use English in my programs, despite on I’m living in Ukraine. But probably I’ll try to use my own language. You’ll need some cyrillic fonts to read this code 🙂

    class Ющенко {

    string статус;

    public Ющенко( string статус) {

    this.статус = статус;

    // президент

    }

    }

  8. Norwegian guy says:

    To reiterate the last poster, I often use norwegian in my code even if I prefer english 🙂 Here is some code written with norwegian variable-names from some randomly selected test-code. Hope it doesn’t get too garbled.

    string sti= "D:\somePath";

    int linjeTeller= 0;

    foreach( string fil in Directory.GetFiles( sti) )

    {

    StreamReader filLeser = new StreamReader(fil);

    string innhold = r.ReadToEnd();

    string[] linjer = innhold.Split( new char[]{ ‘n’ } );

    linjeTeller+=linjer .Length;

    }

  9. yoshi says:

    I am Japanese. I would like to use Kanji-character to programming. But it isn’t possible to use multi-byte characters for variable or function name. So many Japanese programmers use English their codes therefore they can’t speak English well.

  10. hDrummer says:

    I do not speak English well too. Read and write well enough – that’s true 🙂 But I program about 14 years (I’ve started when USSR was alive 🙂 and get into the habit usage of English language in my programs. Now it’s hard to break this habit.

  11. Chris Nahr says:

    German here. I’m programming in English.

    1. All programming languages use some "natural language" terms that are always in English. (Okay, not sure about APL…)

    2. Nearly all programming textbooks are available first, and often only, in English.

    3. Most developer tools and online references (MSDN Library!) are available only in English.

    4. Standard algorithms and patterns are known with all names in English. Keeping those names is easier than translating them.

    5. If you ever want anyone who doesn’t speak your language to read your code, you have to write in English anyway.

    6. Many tools still cannot process source code that contains non-English characters outside of strings (and sometimes inside, depending on the language). Even the Windows command line vs a Windows editor may give you trouble here — remember DOS code pages?

    7. Even if I wanted to use German in source code or documentation, I couldn’t use it everywhere, for the reasons outlined above. Therefore, the best I could do would be some ugly English-German mishmash (known as "Denglisch" here), and I prefer English to that.

  12. I write all code and comments in english… The idea behind it is that I can not be sure if the code will be maintained by someone who speaks polish and that I have to be more focused when writing comments in foreign language, so they’re more thought over.

  13. My english is so so, but every developer has to know a few of english at least: too much example and solutions are still untranslated. If your question was "is VB language translated" the answer is: "luckly NO"! VB is "a cross-cultural language" based on english. I never heard about a serious programming language with words different than english: you’re lucky it’s the american cultural hegemony!

    If your question was are there developers that are speaking about developing in other languages then come on:

    http://blogs.ugidotnet.org/

    blogs of the largest european community about dotnet (it’s italian and here we write Italian of course).

  14. My english is so so, but every developer has to know a few of english at least: too much example and solutions are still untranslated. If your question was "is VB language translated" the answer is: "luckly NO"! VB is "a cross-cultural language" based on english. I never heard about a serious programming language with words different than english: you’re lucky it’s the american cultural hegemony!

    If your question was are there developers that are speaking about developing in other languages then come on:

    http://blogs.ugidotnet.org/

    blogs of the largest european community about dotnet (it’s italian and here we write Italian of course).

  15. JD says:

    1. Would the international coders here say that they prefer the .Net exception messages to be in English or to be translated to their own language?

    2. Do the .Net Design Guidelines make the code easier to read?

  16. Chris Nahr says:

    JD: 1. Leave them in English, please, unless they’re intended to be shown to the user.

    And for the love of Gates, give us access to the predefined messages so that I no longer have to redefine them in my own resource files to construct exception messages!

    2. Yes, insofar as common guidelines are generally better than none. I’m not aware of any guideline specifically that makes code easier to read, though.

  17. hDrummer says:

    1. I’m commonly using Ukraine/Russian

    2. agree with Chris Nahr

  18. I’m a french developper.

    Most of time, I’m using English in my code but, If I need to develop an application with some of my friends, I prefer to use French 🙂

    Bye.

  19. Goran Pušić says:

    From Belguim (French-speaking environment), but my origin is Serbian…

    As for the question from the title… First, it is difficult to get proficient in programming without English, because literature, examples, APIs, docs are mostly written in English. Yes, there is all of that in other languages, but not as much/good/whatever as in English. I’d say, one learns English in order to learn programming. Fact of life, no need to get excited about it. So, yes, "all programmers…" at least a little bit (at least, they read it :-))).

    On "what language should we use in our code"… I was told at the university that one should use identifiers etc in English, to facilitate reading of the code. Why? To avoid subconcious translation when reading/writing! I agree 100%. It certainly is tiresome to read such code. In my experience, from both Serbia and Belguim, code is written in English. Comments, not always. maybe because they require greater proficiency in English?

  20. Tene says:

    One thing is sure: getting some code with non-english variable/comments is a pain!

  21. Sam says:

    I don’t care if the exceptions are in english or in my own language, but I do get annoyed when the translation does miss the context, and it often enough does.

    I got that problem with every translation: translations are nice if they are correct, but when translated for the wrong context they suck.

    A generic example is for example the daily status mail in SBS 2003. In english I guess the processor speed is written as ‘Frequency: 3GHz’ and it is translated into something meaning ‘Commonness: 3GHz’.

    Thats fun when you are able to translate these terms into english and see why they went wrong, but for people who dont speak english this can prove a real problem.

    And error messages usually are worse! Quite often I cant make head or tail of some error message until I find the english message for the error code – please let some native speaking developer proof-read the errors! With examples of code where they occur.

    Sam

  22. (French speaking Belgian, who worked for several years in Norway, is now working in Denmark, but did also work for some times in the USA).

    I use English because the only good computer science and SF books you can find are written in that language.

    I actually LEARNED English mostly reading computer science and SF books. How is that? The funny part of the story is that reading books don’t give you a clue about *pronouciation*.

    This has been a great source of joy and happiness when I was in the States. You say poTAto, I say POtato. You say MAYTOD (method), I say MISSOD.

    How comes that, you English speaking guys, can’t be consistent regarding phonetics, uh? Well, French is not consistent either (but, hey, it’s FRENCH after all). Because of that you guys *FORCED* me to watch and listen to CNN. That’s tough.

  23. (continued and more to the point)

    A good (?) reason for using English is purely estethic. I don’t like seeing mixed languages statements like:

    /* Where are my French accents, by the way? */

    while (compteur < 100 && nonTrouve(entree))

    {

    entree = entreeSuivante(entree);

    cout << entree.nom << entree.prenom;

    compteur++;

    }

    Another one is that, English (or a subset of it http://jeanpaul.nerriere.free.fr ) has become the *de facto* "Esperanto" for programmers around the world.

    So, for exceptions thrown, I would *hate* to see the corresponding error messages in French. The only messages that should be shown in French are the end users ones. And I should be the one who decides on that.

  24. hDrummer says:

    I think that exceptions for "end users" MUST be written using their native language. Or probably both English and native language. Or you can write complicate msgs in English and simple user-friendly using native language of the end user.

  25. Xavi says:

    The short answer to the question is "no".

    Obviously, non english-speakers won’t be reading this post, and english-speaking developers tend to make use of english forums-newsgroups-blogs, so it’s difficult to american and english developers to be aware of the thousands of developers that can’t even read english.

    But I can tell you for sure that the sentence "¿Dónde puedo encontrar esta información en español?" (Where can I find this info in spanish?) is pretty common in any spanish programming forum 🙂 (and I guess that this is true for other languages too).

  26. hDrummer says:

    good question, good topic, interesting answers.

  27. Steven says:

    One of the programmers who worked for me was Hungarian. I’d get quite annoyed at maintaining his code. There were very few comments (averaging one line of comment per 240 lines of code) and they looked like:

    // Eloszor nezzuk, meg, hatha valamelyik vertex a gombbe van.

    // ezzel megnezem, hogy a face planejaba belelog e a gomb.

    Not to mention variable or function names like:

    kellklippelni

    indexetbasztat

    naakkoridajigeljutott

    kirakniafelsorakoztatottobjecteket (I kid you not!)

    He had a function which was called "That which f*cks up the index" in Hungarian (or so another Hungarian told me). Could be the second one in my list above, but I seem to recall it being much longer.

    Good grief.

  28. definitly no, not all speak english.

    But the more important thing is, that complex things can be better understod if i read it in my native language

  29. Frederik says:

    Hmm… Well, asking the question in a English blog isn’t going to bring you far, is it?

    I can assure you: most of the programmers don’t speak English. Take Spain for example, I’m quite sure most of the people who program there don’t speak English. So the answer would be no: for sure, not all the programmers speak English. Let alone that they would be able to understand, let’s say, any complex SDK or so.

    Now this was funny (I’m happy to be able to read Cyrrylic 😉 – hit: think Ukraine):

    class Ющенко {

    string статус;

    public Ющенко( string статус) {

    this.статус = статус; // президент

    }

    }

  30. Corrado Cavalli says:

    My code is totally written in English (even comments) but i must admit that in some cases finding English counterpart for some terms is quite difficult.

    I saw many lines of code entirely written using Italian words, maybe because _many_ Italian developers don’t understand English (strange but true)

  31. Craig says:

    I’ve had my code translated into five different languages, so there must be demand for it. What’s funny is to see is sometimes when the expository prose has been changed to (say) German, but the comments remain in English.

  32. Dan says:

    I’m french-canadian.

    Since i am a consultant, my coding language will always be the same as my client. Afterall, he’s the one that will be maintaining my code when i’ll be gone.

    So it is either all in french or all in english (except for the framework). I prefer english since all names will be shorter. But even if i prefer english, there’s still a advantage at coding in french: the difference between our classes and the framework’ classes are much easier to see.

    Anyway, i think that we should always write code in the language we get paid for, wich is probably the one known by those who maintain the code afterward.

  33. Joaquin says:

    I have to agree with Dan (and with Xavi). We used to have a sign in the wall stating "Mi lenguaje nativo es el español. No deseo declarar variables en inglés." (My native language is spanish, I don’t want to declare variables in english). In that particular group everybody understood english, but it is fairly common to see programmers that don’t here (Argentina)… and I could never understand how they get any information, how they read exceptions, how they read documentation, etc. I think they understand their language of choice, and the few phrases they need in their everyday life…

  34. . says:

    2 words.

    INTENTIONAL PROGRAMMING, you can have it in ANY DAMN LANGUAGE 😀

  35. Sergio Pereira says:

    I speak Portuguese-BR and although I live in the US and program in English I have many brazilian friends programming .Net in pt-BR. Some of those do not speak English to save their lives and it shows when they ask simple questions that are clearly documented in the programmer’s reference or many articles all over the web. No speaking English is a serious roadblock for any programmer IMHO.

  36. Alfred Gary says:

    You can be sure that there are many non-English speaking developers.

    You’re colleague is wrong when he asserts that all programmers speak English.

    I was born in Seattle but left USA when I was 8. Having some of my relatives being owners of an English school helped me to not forget all of my English.

    Today I’m capable of reading and hearing almost everything. But writing and speaking are another story.

    When coding, I tend to use English for computer related terms since all these terms are created primarily in English. But there are lots of terms that either are ambiguous or do not have correspondence in English.

    So what ends up happening is a mix of English and Portuguese through out my code.

    In my team however, everybody else is Brazilian. Their code tends to have even more Portuguese than mine.

    I prefer to read technical documentation in English. The reason for that is that they are generally written originally in English and translations generally are of poor quality. They generally are made by people who don’t know what the subject they are talking about is. They translate terms that shouldn’t be translated and don’t translate others that should. Worse, sometimes they do a word-by-word translation which sometimes results in “language Franken steins”.

    I like to compare it with making analog copies of audio cassettes. Each copy made of a copied cassette results in loss of signal (quality).

    The same thing happens to translation. There sure are some ‘digital’ translators, people who known what they are translating and have the sensibility to tweak the end results.

    My understanding is that the main computer languages should continue to be written in English. Maybe there are some niches for computer languages based on non-English.

    Documentation should be available primarily in English and then translated to the main target audiences which is something Microsoft already does.

    Translations however, should be better revised since most of them are of poor quality.

    Some points based on other replies to this post:

    • The Framework already displays localized messages if you installed a localized version.

    • FxCop helps programming Windows Forms the “proper” way in non-English languages.

    • Comments for computer related stuff tend to be in English. Comments for business rules tend to be in Portuguese.

    • As David Brabant said, a subset of English is the de facto Esperanto for programmers but that doesn’t mean they can read English other than computer terms or the keywords existing in their computer language.

    • Xavi, there’s a huge difference between English-speakers and computer-related-stuff-readers.

    • Steven, bad programmers are bad programmers no matter what language they speak. And there are various levels of “badness”. The code can get the job done but be horrible to maintain.

    To finish, English knowledge is not binary (0 – don’t know, 1 know) It’s more an analog thing.

    A guy can have different levels of knowledge in the different skills (read, write, listen, talk).

  37. I’m just happy that all the feedback is in english here:P

  38. Like David Brabant said, I hate to see mixed French and English words in my code and comments. That’s the main reason I’ve always coded in English. The second one is because we, as a Component Vendor, offer our source code. Thus, it must reach as many developers as possible.

    On the other hand, being a French Canadian, I’ve learned English since age 9, so I’m less behind on my English than David! It’s much more of an effort for me to write blog entries than to code in English.

  39. Mischa Kroon says:

    Dutch developer here, using dutch / english mixed in programming.

    Comments mostly in dutch variables / function names mixed dutch english depending on projects / existing code etc.

  40. Steven says:

    I realised I only mentioned a guy who used to work for me (not anymore for precisely the reasons I mentioned) and not my own practices:

    English all the way, if possible. There are a few cases where I have to use Dutch because the terms in the business logic have no direct equivalent in English (at least, my dictionary doesn’t give me anything usable).

  41. marklio says:

    Excellent synopsis! Looking forward to hearing more. Indeed, Agilent and Teradyne have little to gain from OpenStar at this point. Their intent is probably to understand it early on and develop an internal strategy to be able to quickly embrace it at the point where their market share is threatened by those who do. But, the force working in the opposite direction is that semiconductor technology is VERY difficult to predict and any standard created today is in real danger of being obsoleted by the demands of the future.

  42. Arild Fines says:

    I’m norwegian, and I’ve *always* detested seeing comments and variable names in Norwegian. Everything I write uses english.

  43. Juan Felipe MAchado says:

    I’m Colombian so I speak spanish. We all here at my group speak spanish, so ALL our comments are in spanish. But the variables are a mix some in english, some in spanish and some in Spanglish (whatever language is more descriptive/compact for the variable name).

    I agree with Sam, the exception translation (at least to spanish) REALLY SUCK, and we all have the framework running in english so we can understand what’s happening (the spanish translation is so messy you can’t possibly guess what’s the problem the exception is trying to point out…)

    Well here’s the example

    namespace Instrumentacion.Mediciones.Visualizacion

    {

    /// <summary>

    /// Interfaz que deben cumplir las visualizaciones de planes de medición.

    /// </summary>

    public interface IVisualizacionPlanMedicion

    {

    /// <summary>

    /// El administrador de instrumentos que se utilizará tomar los instrumentos con los

    /// que se modificarán los planes de medición

    /// </summary>

    Instrumentacion.Drivers.IAdministradorObjetos AdministradorInstrumentos

    {

    get;

    set;

    }

    .

    .

    .

    As you can see everything is in spanish except for the namespace Drivers because Drivers is more compact and more descriptive than Manejadores which is the spanish word…

  44. I’m belgian living in Italy, so I usually speak italian. Generally I use to code in english for the following reasons:

    1. the framework is in english, then have mixed languages in the application is confusing

    2. the english words are less verbose than italian (usually), then the code is more compact and maintenable

    3. technical english is a must for every developer. Most of the documentation is in english.

    My 2 cents.

    Pierre

  45. I’m belgian living in Italy, so I usually speak italian. Generally I use to code in english for the following reasons:

    1. the framework is in english, then have mixed languages in the application is confusing

    2. the english words are less verbose than italian (usually), then the code is more compact and maintenable

    3. technical english is a must for every developer. Most of the documentation is in english.

    My 2 cents.

    Pierre

  46. YM says:

    An odd one:

    Some time ago a friend of mine showed off with an interesting version of VB6. The funny part was that along with the UI some "smart people" translated the syntax of the language into Russian (mind you it was not a very legal version). Fortunately I didn’t get a chance to work with that one. Imagine what it would be like to have people switc to the regular version of VB.

  47. C++ Guy says:

    Interesting example: The Ruby language was invented and designed by Japanese in Japan. The FAQ’s code samples are in English, with Japanese strings.

    http://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=FAQ%3A%3A%C6%FC%CB%DC%B8%EC%A4%CE%BC%E8%A4%EA%B0%B7%A4%A4

  48. Jerry Pisk says:

    IIRC Excel translated its macros into the local language, creating a huge mess, where you had to keep several versions of the same code to support your users. And it was actually more difficult to use the localized version due to the fact that languages don’t translate directly, word to word to each other. Most programmers realize it’s just simpler to stick to English as even bad English is a lot better than using their native language in the source code.

  49. Marco Russo says:

    I’m italian too – guys, we’re a strong lobby, you americans have to speak Italian as a second language! 🙂

    Personally I try to write everything in english, leaving comment in italian if other developers are supposed to put hands on the code. But I have to admit that in some specific fields (like fiscal terms, for example), is really a nightmare to find an english equivalence for acronyms (ok, leave it as we know, like IRE, IRAP, IRPEF, etc) or terms (I really don’t know if any other country in the world has developed the concept of "ritenuta d’acconto" – for the curious here it’s a retain that a contractor make on a compensation that is deposited monthly (to the fiscal bureau) as an anticipation of taxes that will be paid by the consultant. Crazy, right?

    So, sometimes I still use variable names in italian when a translation would be absolutely fictious.

  50. All of my code is written in only english.

    I speak 3 different languages: english, danish and french. However, I still feel that software should only be written in one language to avoid the whole "Tower of Babel" issue.

    Obviously, since a great deal of business these days is conducted in english, most of the significant computer science was developed in english speaking countries and syntax for all of the major languages is in english, I believe that english should remain the default language for which all programming is done in. In this way, just as math is a universal language, it will mean that all programmers alike can read each others code and share from each other.

  51. Kjell Holmgren says:

    I’m a Swede and even though I had regular English classes in school, for the longest time I thought "WEND" as in "WHILE…WEND" from BASIC was a real English word.

    I guess a good programming language to learn English would be COBOL, don’t you think?

  52. mch says:

    I’m a Taiwanese. I speak Taiwanese, Chinese (sometimes) and English. I wrote my code comment in both T.Chinese and English. It depends on who pays for the project. If it’s a internation project, I use english. But if it’s a project that is only used in my country, I will use T. Chinese.

  53. Suisui says:

    I was born in Shanghai, in China. We speak Chinese. Most of us write codes in English. Sometimes I add Chinese comments in my codes. Many documents and examples have been translated in to Chinese. But recent knowledge are written in English. So we force ourselves to read english documents to learn more.

  54. SpiderMan says:

    I am also a Chinese software developer. I think a programmer must know how to read and write in English, at least in the area of CS. Though a programmer might not be able to order meal in English for him/herself in a restaurant. 🙂

  55. Kevin Daly says:

    to David Brabant: At least it didn’t force you to watch Fox News…that would be going to far.

    I think that logically comments, being intended to communicate information to other human beings, should be in whichever language is shared by and most natural to the people who will be maintaining the code. Comments written in a language which is not well understood by one or both of the author and the reader could be a source of all sorts of unfortunate misunderstandings.

    As a New Zealand English-speaker I have to admit that the fact that the natural language in code is based on what is supposed to be my own language can sometimes be a source of irritation, since it’s close enough for differences to be annoying: Deep down inside, I *want* to be able to refer to "Colour.Red" and so on (naturally my variable names use the spelling that is natural to me).

    Do people whose native language is *not* English have any particular programming language preferences or aversions based on that fact? (Languages such as COBOL and BASIC for instance tend to contain more natural language-derived elements than the curly bracket brigade – COBOL in particular is positively verbose – does that influence anyone’s preferences? It’s a mildly interesting question)

  56. Kevin Daly says:

    to David Brabant: At least it didn’t force you to watch Fox News…that would be going to far.

    I think that logically comments, being intended to communicate information to other human beings, should be in whichever language is shared by and most natural to the people who will be maintaining the code. Comments written in a language which is not well understood by one or both of the author and the reader could be a source of all sorts of unfortunate misunderstandings.

    As a New Zealand English-speaker I have to admit that the fact that the natural language in code is based on what is supposed to be my own language can sometimes be a source of irritation, since it’s close enough for differences to be annoying: Deep down inside, I *want* to be able to refer to "Colour.Red" and so on (naturally my variable names use the spelling that is natural to me).

    Do people whose native language is *not* English have any particular programming language preferences or aversions based on that fact? (Languages such as COBOL and BASIC for instance tend to contain more natural language-derived elements than the curly bracket brigade – COBOL in particular is positively verbose – does that influence anyone’s preferences? It’s a mildly interesting question)

  57. Kevin Daly says:

    PS. I meant "too far". Now I can’t even spell.

  58. Sherif says:

    I am from Egypt. All programmers I know program in English (with a lot of spelling mistakes if they don’t speak good English). Programmers don’t even use Arabic version of Windows, Office and other application. They use the English version most of the time. Most web sites and applications are developed with English user interface as well as Arabic, and in many cases only English. In Egypt you must know English not only to program, but to browse the internet and use the computer.

  59. Chris Nahr says:

    Now that you mention it… I also use mostly English applications, not just developer tools (Windows, Office, FrameMaker, Photoshop). All the good resources on the Internet are in English, and translating back and forth is such a bother.

  60. Andrei says:

    I use English as often as I can: I code in English, I take notes in English, I write into my schedule using English. And note that I’m not a native English speaker. Maybe this is caused by the repulsion I have for the country I live in, but I also consider that if everyone would know English, communication would be way better. Books and movies wouldn’t have to be translated in so many different languages, so less time wasted, not to mention the loss that happens when translating. It is a different experience when reading a book or watching a movie in the language it was written in without any translation.

    I consider translating the resources on the Internet in several languages a serious waste of time.

    Not only that everyone should be able to speak English easily, but I don’t even imagine a developer not knowing English (although, as some of you said, there are lots of developers that can’t speak it).

    It is such an easy and beautiful language, if you’re not going to learn English, what are you going to learn? Latin :)?

  61. Goran Pušić says:

    As others have pointed out, another pro-English argument for lazy typists :-)): English is easily the most dense of all languages I’ve been in touch with (French, Hungarian, Serbian, Russian, Dutch, but less so there).

    On a more serious note: as I said, my mother tongue is not English (it’s Serbian), so I feel the "pain" of non-English people here.

    But, exactly for the purpose of "internatinalization of code", it needs to be in English! Otherwise, it’s limited to its linguistic origin. In this increasingly intertwined world, this won’t work. So, I think we need a common denominator, and it’s English.

  62. I want to note that there’s a big defference between ‘technical-english’ en natural-english. most programmers code in english and CAN understand technical-english.. but some of them (like me:P) have problems with natural-english.. And I can write better than speaking it..

  63. Xavi says:

    "All the good resources on the Internet are in English, and translating back and forth is such a bother."

    "…I also consider that if everyone would know English, communication would be way better."

    "I consider translating the resources on the Internet in several languages a serious waste of time."

    "So, I think we need a common denominator, and it’s English."

    It’s so sad to read this…

    I just hope not every developer to be so culturally limited.

  64. I live in Brazil and speak brazilian portuguese, but since the time I worked for American Express, I got used to writing my code in english, so that it was easier to share it with AMEX teams in Miami, Mexico city and Buenos Aires. As I had attended classes at Cultura Inglesa school for 3 years, it was not so difficult to adapt myself. But, I know a lot of people, in the company I currently work for and in other places, who do not speak english or who are not proficient in the language and that prefer writing their code (variable names, function names, classes names, etc.) in brazilian portuguese. I also remember once I received code from Buenos Aires written in Spanish. It was a pain to decrypt it that time.



    Luciano Evaristo Guerche

    Taboao da Serra, SP, Brazil

  65. alois from austria says:

    Hi,

    i´m a native german speaker, but i speak english too.

    The reason why a developer has to learn english, is not because of the coding itself. It´s because of the huge benifit you can get from persons like you "at the source" in Redmond. It´s because most of the "reachable" .net programmers speak english or sit in the us. that´s why english is so necessary.

  66. egilh says:

    I am Norwegian,live and work in Italy but I write my code in English.

    Writing in Norwegian was not an option when I started coding:

    – most compilers do not like the special Norwegian characters øæå in variable names

    – brackets and semicolon are moved on the Norwegian keyboard layout requiring the constant use of Shift and AltGr so coding in C becomes a major PITA

    – I think in English when I code so it is the most natural language for me to use. I guess it’s because I taught myself programming from English books

    I particularly agree with Jerry’s comment: "Excel translated its macros into the local language, creating a huge mess" I know. I worked for Microsoft on Norwegian Excel 5.0 and I argued against translating VBA but I lost the battle (http://www.egilh.com/blog/archive/2004/09/16/204.aspx). All VBA code examples became useless overnight.

  67. Chris Nahr says:

    Xavi: "It’s so sad to read this… I just hope not every developer to be so culturally limited."

    What the hell is that supposed to mean? We learn English as a second language, well enough to read technical texts and discussions in that language, and that’s "culturally limited" to you? I guess you consider people who only know their mother tongue cosmopolitan?

    By the way, I can also read French and Latin. I guess that makes me even more "culturally limited" in your eyes…

  68. Although almost all German .NET developers understand English, about the half of them prefer reading documentation and articles or attend conference sessions and webcasts in their language. So from my experience its 50%:50%.

  69. Jerry Pisk says:

    Kjell, wend is (well, used to be) a real English word – http://www.m-w.com/cgi-bin/dictionary?book=Dictionary&va=wend.

  70. Xavi says:

    Chris:

    I guess my post is more rude that it was intended to be, so I apologize.

    But the senteces I quoted show a disturbing trend to consider software development as an english-only task, as english is the best know language in the world. So, following the same reasoning, any knowledge exchange made through internet should be made in english, and since any translation would be a waste of time, english will be the only mean to get any kind of knowledge or information.

    I realize that this sounds kinda apocalyptic but, being a person who made the effort to learn several languages, do you know what I mean?

  71. Chris Nahr says:

    Xavi: I think I get your meaning, but I still completely disagree. The totality of human culture is far greater than technical discussions. If anything, a language used for discussing technology is going to be stifled by the subject matter.

    For technology, the nuances of language are all but irrelevant, and it would be best to settle for a common standard, no matter which one. English is great, actually, because it’s simple when restricted to such a narrow field.

    But what I *enjoy* reading in English is Shakespeare or Lovecraft, not Brad Abrams (begging your pardon). My knowledge of French enables me to read Balzac, and my knowledge of Latin enables me to read Cicero. Those are constitutents of culture that I’d like to experience in the original — not some French programmer talking about .NET (just to use an example). For those subjects, language doesn’t matter and we might as well use English.

  72. Wow — I am right up there with Shakespeare and Lovecraft.. very cool 😉

  73. Finn says:

    I think there’s more finnish devs that communicate in english than english that talk finnish. So english it is. Or you prefer finnish?

  74. Louis Parks says:

    hDrummer, I’m glad to see Ющенко’s status is president too.

  75. Kevin Daly says:

    (and my deep apologies for the double post earlier, must’ve been sticky finger syndrome or something).

    Anyway,

    The slightly interesting thing about "wend" is that its past tense is still in frequent use: "went" (which originally was not part of "go" at all). Which I’m sure gave rise to lots of anguish for English language students.

    Something very similar happened in French, where the descendants of Latin "esse" and "stare" were fused, whereas Spanish and Portuguese kept them separate (in both languagees as "ser" and "estar" respectively).

    OK, that’s enough of my relapse into language geekdom: for purposes other than writing code, the simple fact is that most people find it easier to understand a language other than their own than to express themselves clearly in it…so it depends a lot on your audience and how comfortable you are with the target language. If you’re comfortable with English and have a reason to use it, that’s fine, but someone who is *not* confident in English shouldn’t feel compelled to use English when communicating with an audience of people who understand that person’s native language well.

    (I like reading French language websites such as http://www.codeppc.com, http://www.c2i.fr and http://www.pdafrance.com, because they expose me to technical vocabulary and jargon that I’d otherwise have no idea of (especially since most of it didn’t even exist when I was a student). Good practice too).

  76. Andrei says:

    Xavi, as I said: "I consider translating the resources on the Internet in several languages a serious waste of time.".

    That’s because instead of translating an article, or a tutorial sentence by sentence, this time could be spent doing something more useful like writing a whole new article on a different subject.

    Furthermore, not being a native English speaker, I frequently see some technical books translated in my native language.

    I must say I’m very confused by translated terms like ‘structure’, ‘class’, ‘mirroring’, ‘instance’, ‘method’ inside programming books. At least in my language, the equivalent to a technical term like that is very odd, and sometimes you figure out very hard that the author is referring to a method or to a constructor, for example.

    Maybe computer translators will get smarter and smarter and hopefully there won’t be necessary for people to translate (at least) technical documents to other languages.

  77. Kevin Daly says:

    The Holy Roman Emperor Charles V is reported to have said "I speak Spanish to God, Italian to women, French to men, and German to my horse"

    …today he might add "and English to my computer".

    Except he was of course Management, so he’d get his PA to do it.

  78. On any open source project there should always exist an agreement on the language to use to enable foreign programmers to understand/modify the code. Also in our international team at work we agreed to use english (working in the german slang speaking Liechtenstein). If the code is only local to a company that do not any international business then the natural language must not be an sometimes implicit) agreement. All the agreements I have seen yet are: use &quot;english&quot; overall, then later localize the UI and visual strings.
    <br>
    <br>Just for fun: this.статус = _consumiManager.CaricaPerId(&quot;M&#252;ller&quot;);

  79. I’m also a Norwegian and I prefer to read, code and write in English. Especially technical writing, since you often end up using a lot of time translating terms into Norwegian.
    <br>
    <br>VBA in Norwegian was just funny.. glad I didn’t have to use it too much, except for some high school assignments 🙂
    <br>
    <br>And error messages get really wicked sometimes when they are translated to Norwegian. I’m using a Norwegian Windows XP now, and occasionally I have to translate them to English to really understand what went wrong.

  80. Joseph Bubba says:

    I’ve often wondered how foreign programmers (where the decimal point is represented with a comma) type in numbers in the source code. In other words, does the compiler recognize numbers such as 4,56 or does a decimal point always have to be a dot "." in source code.

    Just something I’ve occasionally pondered.

  81. First to mention Hebrew here, am I? Cool.

    Code written by Hebrew speakers tends to be divided between that developed in English (be it good or bad, depending on the coder) and that written in "Hebrish" – the (abominable, in my eyes) hybrid of writing Hebrew using English letters. .NET, like old Access versions before it, now allow us to use most Unicode characters to make up our variable names, but I’m just glad that the practice never caught on. The switch from LTR to RTL in my code is really, really annoying.

    Which is not to say I haven’t been forced to do so. Sharepoint uses reflection to build a web-part’s Properties taskpane. If you want a combo-box to be generated, it has to be linked to an Enum in your code – and if you want these user-visible values to be in Hebrew, your Enum constants must be in Hebrew (and with no spaces) too. Urgh.

  82. Cheong says:

    I’m a Chinese programmer live in Hong Kong.(Native language cantonese)

    Most of my codes as well as comments are written in English, partially because Chinese character won’t pass correctly on the compilers in the early days.

    And in the university, all computing classes are taught in English, so sometimes I do have difficulties to find equivalent technical terms in Chinese. For this reason I’d rather writing everything in English.

  83. Martin says:

    I’ve had to maintain code written by German, Japanese, Russian, and Israeli programmers, and sometimes combinations of the above. No, they don’t all speak English, I can tell you first-hand.

  84. Chris Nahr says:

    Joseph: Programming languages have a formal grammar that defines acceptable numerical input formats, and any formal grammar I’ve ever seen requires a dot/period for decimal numbers.

  85. Mitch says:

    Kevin, What’s wrong with Fox News! I personally find it very fair and balanced, I’m afraid I can’t say the same thing about CNN though 🙂

  86. romeok says:

    I think software developers are very lucky because majority of work is based around English.

    What other professions you can go from country to country and keep all your experience and qualifications given you know a bit of English?

    Let’s keep it all in English please.

    On another note, I got very sick trying to understand something in Open Office source code. Not only that particular area of code was messy, it had comments in German all over it.

  87. Jerry says:

    The best thing ever happend was that we ordered the devlopers to write everything in english – but they used german, polish, hungarian and english.

  88. Does an Italian computer speak Italian? Brad Abram’s blog gets hectic when he asks for sample .NET code in any language. The comments delve into some interesting discussions about the "universal language" of code, the hegemony English has in technical…

  89. Please send me links or your comments.

    I will start hiring in March.

    Will compensate for placements.

    Regards,

    Stuart P Lindow

    stuart.lindow@imsicorp.com

    http://www.imsicorp.com

  90. Soft man says:

    I’m from Russia 🙂

  91. C# and .NET supports Unicode and it’s super-cool that you can use variables and literals in your own…

Skip to main content