As Spaniard working in Ireland, now I do all my code in English.
But I have worked previously on Spain for a multinational project and we have to code everything in English (although no one was English-speaker, mostly Spanish and French, which leads sometimes to some really funny weird comments). And after that, I worked on a Spanish company and all the code has to be on Spanish.
The problem on setting variables in Spanish is that you can't use (depending on the language) all the characters, as some are not available in ASCII. So that always leads to some deliberate typos on variables, which some times can be annoying.
For example:
// English
int size = 0;
// Proper, non-ascii Spanish
int tamaño = 0;
// Bad but ascii Spanish
int tamanno = 0;
Another curious effect is that there are a lot of characters used on programming (like #{}[], etc) that are much more easily accessible on a English keyboard than on a Spanish one. I found more comfortable to program on English layout (now that I have get used to it) as I have to make less weird key combinations.
These days, when I code for personal projects, I code in English, but probably because I'm used to it...
At the end of the day, it's just a matter of who do you expect to read your code, I guess... If I had to program just by my own for a while, probably I will revert to Spanish.