The importance of manual override (or Google's country autodetection is broken!)
You're in Germany... no I'm not!
Google's country autodetection is borked. Whenever I access the Internet through a T-Mobile WiFi Hotspot in the UK, it thinks that I'm in Germany. I get a lovely German interface for Google services that I don't understand a word of and, here's the worst bit, there's no option for me to tell Google that I'm not in Germany. In other words, there's no Manual Override.
Manual overrides and dilithium crystals
Any Star Trek fan will tell you how important a manual override is, even in the 24th century (realigning the dilithium crystals also helps).
Software is never infallible (you write software with zero bugs? you lie!) and not providing a manual override for your latest Spiffy Automagic Feature doesn't make you a confident programmer, it just makes your interface arrogant. Especially when it fails.
Evolving software through feedback
There's nothing wrong with having something as difficult as automatic country detection failing. It's how software is built. You build it. People hit it in ways you never thought of. You evolve it. That's all cool. But it does mean that you need to build feedback mechanisms into your software so that your systems can learn.
The most important first step to evolving software, is to be notified that you have a problem. Since there is no feedback mechanism on Google's web page, I cannot tell them that their country detection is malfunctioning for me. A simple feedback link would satisfy this requirement.
The second step, regardless of how Fugginawesometastic your powers of automatic detection are, is to provide a manual override of some sort. For example, Google could ask you which language (not country) you want to experience their site in.
Finally, with regards to localization in general, it's quite an assumption to base someone's interface language on the country that they currently happen to be located in. Here's a lovely bit of advice from an unlikely source: in a Benny Hill sketch, Hill's character explains why you should never "assume" (because you make an "ass" out of "u" and "me"). I could, for example, be traveling through Germany or be an expat living in Germany who still prefers English to German. In other words, even if the country autodetection was working correctly, I could have legitimate reasons for not wanting my interface in German.
The solution to this problem is so simple (implement a manual override) that I hope Google gets round to fixing it sooner rather than later.
In the meanwhile, if you're not really located in the Glorious Nation Of Kazakhstan like Google thinks you are, and you want to access the site in English, you can use this direct link: http://www.google.com/intl/en/.
Have your say!
As in all things, my approach to blog posts is that they should evolve over time and your feedback is invaluable in achieving this by helping me fix factual errors, fill in details, and expand the original post.
Has Google's country autodetection failed for you? Do you think it's spiffy as-is? Have I missed something? Leave me a comment and let me know!