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?