Es-Us and Es-Mx locale confusion

Recently I answered an issue where a customer was confused because sometimes we use the Es-Mx locale for the Es-Us language pack.  The reason we have to do this is Windows Server 2003 does not have an Es-Us locale.  If you try to create such a locale, you will receive an exception.  On Vista and Windows Server 2008 we do have an Es-Us locale, but that didn't help us when building Speech Server 2007.  Therefore, if you set the culture of the TelephonySession to Es-Mx, we will treat it as Es-Us.

I agree that this is quite confusing, and it did provide quite a few bugs and test issues during development.  Luckily, we do not currently ship an actual Spanish-Mexico language pack which would undoubtedly add a lot more confusion if it existed.  We do ship an Es-Es language pack (TTS only), which currently suffers from an issue where one of the voices doesn't work.  BTW, as I understand there is an update coming for this issue, but if you are seeing it and need a workaround please contact me privately. 

So for some reason Spanish in general seems to be a difficult language for us. :)  This seems to follow nicely with one of my laws of localization that states.

- Given a set of languages or locales that you must globalize/localize for, there is always one that has significantly more issues than any other.

 In a previous company I worked in, this was French.  Even Japanese had fewer issues than our French version, which suffered from some of the strangest bugs we saw.