Scott Hanselman asks, Do you have to know English to be a Programmer?
No. But you might find it easier to learn programming — and to keep up with the state of the art — if you did.
This has nothing to do with merits of English as a language. The use of English in programming and computer science is an artifact of history. Much of the early work in computation was done in English, and the transistor and integrated circuit were invented in English-speaking countries. It became an informal convention. Most of today’s programming resources are available first in English, and many resources are available only in English.
For similar reasons, it’s good for programmers to familiar with more than one programming language. Most of the code we write at Infovark is written in C#. But we look at many open source projects written in Java, Ruby, or PHP for inspiration. If we relied solely on the information and code available to us in C#, or in the .NET framework, or on the Microsoft platform, we’d be limiting ourselves.
While I think programmers ought to have a working knowledge of English, that’s not an excuse for software companies to produce English-only products.
Today, software companies that want to reach the broadest audience of programmers should provide English documentation and samples for their software. But they shouldn’t stop at just one language. There are large communities of programmers — and customers — that speak German, Hindi, Chinese, French, Spanish, and Japanese and Russian. The languages chosen will depend on the particular software application or market. English may be necessary, but supporting it alone is not sufficient.