For people saying that programmers need to know English. I agree, I speak English as a second language myself. However, learning English is not easy for everybody as isn't learning programming. Some people find easier to learn something in their native language. They can learn English later. Also, you can be a good programmer without speaking English at all, provided you have access to learning material. (Naturally, speaking English will be a huge advantage)
In the 1600s you had to speak Italian fluently if you wanted to be a musician. Today you can learn the meaning of words like "forte" and "stringendo", without having to really speak Italian. Programming is pretty much the same; one can learn the meaning of things like "if" and "function" and learn the big concepts (abstraction, algorithms, etc) in their language.
EDIT: formatting