First my advice:
1.) Leave everything in the code ready for localization.
2.) If you have competent people to do the localization do as many as you can. DO NOT, i repeat DO NOT use Google translate or similar tools to do your localization.
3.) If you can not do a good localization, deffer the work to volunteers.
Now, the reality. I am a Spanish speaker, fluent in English as a second language (For What Is Worth, long time ago, my ToEFL score was 293/300, but I am quite rusty now). I was a manager in telecoms for a long time, now a Teacher (Comp Networks II, mainly Layer 3 Stuff) for Comp Scy and Telecom Engineers in a Jesuit University here.
But my level of English is an exception around here, not the rule. Our university demands an English sufficiency test in order to graduate. And yet, most of the students are incapable of reading in English. Something as simple as reading a paper (for example: "OSI Systems and Network Management" Lakshmi Raman, ADC Telecommunications IEEE Communications Magazine, March 1998) my students will not do in English. They will rather OCR it, then use Google Translate, and will not even refer to the original article when the machine translation gets "wonky".
The fact that the documentation is written in English is of little concern, anything that is remotely interesting will have translations, or books written by native speakers within weeks/months.
*** As some other poster wrote: Non native English speaking programmers will treat the foreign syntax like a black box (in some cases, having to program in English as opposed to Spanish actually helps, in Spanish "Yes" and "If" both map to "Si", and you have to infer which is which from context :-S ). So, an effort to localize is well worth it.
*** And as some other posters wrote: Localize ALSO to show respect to the culture of the other person(s). And remember that part of that respect is to localize correctly, not taking shortcuts like using Google Translate to translate your strings.