The Xerces XML parser recently localized its error messages, which seems like a nice thing to do. However sometimes good actions have unintended consequences. It turns out the localized error messages are a lot harder to find with Google than the English ones. Paste an English exception message into Google, and you’ll probably find 10 people who have already had and solved your problem. But the same message in Greek or Croatian? Maybe not.
I suspect that error messages intended for programmers (as opposed to end users) should probably stick with English, though that’s only a feeling. It may well depend on the non-English native language of the programmers in question. For instance, I’ve noticed that Dutch programmers are somewhat more likely to prefer working in English than French programmers, who are themselves more likely to prefer English than Japanese programmers.
This is all just for programmers though. End-user-visible strings should always be localized. If you’re showing exception messages to end users without sanitizing them first, well, you’ve got bigger problems to deal with than localization.