English as a required language for programmers?

This is unexpected. It’s worth discussion though. Scott Hanselman wrote a post titled Using Crowdsourcing for Expanding Localization of Products which is a very interesting discussion of issues around human v. machine translation of software documentation. This is a huge issue for many international companies. In fact writing software in a way to make messages more easy to internationalize is a worthy topic of discussion in any computer science program. It influences all sorts of design decisions and understanding of different concepts and tools. So far so good. But then the comments get interesting. For example one person says:

I absolutely agree with Erling Paulsen. If you don't know English, you're not a programmer!

That comment and several of the comments who agree were not made by people whose first language is English. The argument in brief is that most of the documentation is in English and that English is a sort of defacto common language for programming concepts. If you search the internet using your search engine of choice you will often not be able to look up translated error messages with much success. Therefore the argument goes that for many products, especially for programmers, English should be the one language in use. Please go read Scott’s post and the comments there. There should be a lot more since I wrote this post because I wrote it in advance. 🙂

Wow! These are all things I as an English only speaker never thought about. I just assumed that people would prefer messages in their native language. I remember my wife working in the NYC office of an Italian company having to call Italy for translations of that company’s computer error messages which were all in Italian. I always assumed that others would prefer to avoid the opposite problem.

So what do you think? What do your students think? In general what do people whose native or first language is not English think about this idea that serious programmers should (must?) learn English?

Comments (4)

  1. int19h says:

    "I absolutely agree with Erling Paulsen. If you don’t know English, you’re not a programmer!"

    This is 100% correct.

    I am a Russian software developer, working in a Russian company, and the developers use English OSes and development environments, English documentation, and we write all comments for both code and TFS check-ins in English. The reason is simple: there is a large amount of technical jargon in the industry that is really only comprehensible in English. Even when we talk among each other in Russian, probably half of the words we use are English words (e.g. we use "property", "method", "query", "override", "overload", "enum", "if", "string", "float" as is, even though there are more or less precise Russian translations). Also, of course, pretty much all docs are in English – and even though MS has now made a Russian translation of VS and MSDN, what about all the third-party tools and libs we’re using? What about all the blogs (with often valuable information), forums and newsgroups, and so on?

    In effect, reading and writing technical documentation is a requirement in the developers’ workplace here, and I do not expect this to change anytime soon. Fluent spoken English is something else entirely, though, and is rarely found.

  2. Bryan says:

    Just talked about this with my class. Some had never though about it and some just though that in say China they used Chinese. We had a good talk about it and how it might effect them and jobs they might want.

  3. I wonder if there are programming languages where the keywords are in something other than English. Anyone know for sure?

  4. Joao Viegas says:

    I agree that english is very important and in my opinion, its all about standards, english as world wide spoken language is perfect for a global trade of information/knowledge.

    Thats why i think english is essential for programmers and IT professionals.

Skip to main content