Question: This question is for anyone who has learned programming in a Spanish speaking country.

Seeing as though the key words for programming languages like Java, C, Python etc are all in English I have a couple of questions:

* Do courses in Spanish speaking countries expect some knowledge of
English as a prerequisite?
* Do they teach you what English keywords mean?
* Are you taught to use English names for variables, classes, methods
etc or Spanish ones (Confusing?!)?
* Lastly, can you get/do you use, things like Javadocs in Spanish?

Thanks = )

Answer: 
I learned to program in Spanish, in Peru.

> 
> Do courses in Spanish speaking countries expect some knowledge of English as a prerequisite?
> 
> 
> 

No, they don't expect you to know English. I'm very sure on this point. Sometimes even teachers don't know English. On the other hand, most people can read documentation in English, sometimes with the help of Google Translator (which is very good for technical stuff). The best programmer at my work doesn't know English and he has more than 16 years of experience. Sure, he knows the meaning of a lot of words.

> 
> Do they teach you what English keywords mean?
> 
> 
> 

I learned by reading magazines about programming written in Spanish (this kind of magazine was very popular in the 90s). They don't mention the translation but explain the use and give examples ("IF sirve para expresar sentencias condicionales"). I give lectures on "Scientific programming" (MATLAB and R) and I do mention the meaning of English words, but just the first time. 

> 
> Are you taught to use English names for variables, classes, methods etc or Spanish ones (Confusing?!)?
> 
> 
> 

For work, I use names in Spanish and comments in English. I think is a bit confusing if you share the code with non-Spanish speakers, I'm trying to improve that for lots of reasons, particularly because I don't like to avoid "tildes". Also, I'm using Java for my PhD and my advisor does the opposite: variables/methods/classes in English, comments in French (she's French). For lectures, I use variables and function/methods names and comments in Spanish cause knowledge of English is not a requisite to learn programming (and for most people programming it's hard enough).

> 
> Lastly, can you get/do you use, things like Javadocs in Spanish?
> 
> 
> 

I learned java a couple of years ago using books in Spanish. There are very good documentation in Spanish to learn for most programming languages. But when looking for help in internet, It's almost sure it will be in English. Now I prefer to use documentation in English, but mostly because I really want to improve my English. As a final remark, all students who do internships at my lab are encouraged to learn English and we provide them documentation in English, despite there are good translations in Spanish.
I learned programming in French. Since French is of the same root it is fair to assume it is the same in Spanish. I followed programming courses in highschool in my native country as well (Colombia, where spanish is spoken) and it was the same as in France.

> 
> **Do courses in Spanish speaking countries expect some knowledge of English as a prerequisite?**
> 
> 
> 

Yes they usually do. If you don't have english proficiency or at least some basic knowledge you won't have access to most internet based resources for that programming language. Most importantly the documentation that is not always translated into spanish. Of course there are some exceptions in which they use a spanish tutorial book and that's all they need, but those, as said, are exceptions.

> 
> **Do they teach you what English keywords mean?**
> 
> 
> 

In my case sometimes they did, even if we already knew english. They would only teach the meaning if it is really relevant to the method or procedure it is referring to. For instance the method String.isNullOrEmpty(). 

> 
> **Are you taught to use English names for variables, classes, methods etc or Spanish ones (Confusing?!)?**
> 
> 
> 

In my case I wasn't taught anything about it. That I had freedom to choose Spanish or english (or French) as long as I stick with it throughout the program. It is not confusing since the program would be for Spanish-speaking programmers. Specially if the keywords are highlighted in different colors as the methods and variables (in most languages and editors anyway). Blue for public, private, static, void, string, int, etc... and black for names made by you. 

> 
> **Lastly, can you get/do you use, things like Javadocs in Spanish?**
> 
> 
> 

Depends, if what you are looking for is easy to find then spanish, or more complicated in english. There are more chances of finding it in english than in spanish. In the case of JavaDoc, for making a custom documentation it depends on the public that will read it. Spanish for spanish speakers and english for all others. As for the standard documentation I'm not sure if there is such a documentation in spanish for java. 

As a last note, all these are personal thoughts based on personal experiences. I am not talking for all cases and don't pretend to either. 
Keep in mind that this greatly depends on the teaching style of the institution and the skills of the students, sometimes the students will have only a rudimentary knowledge of english and english classes are given separately to fix this, but while that is done everything related to programming is done in their native language(as it happens in France)