Information technology is getting ridiculous. More likely, it always has been. Granted, what I’m actually posting is not as bad as the little text encoding hick-up in the title might suggest. But I’ve learned something interesting about G**gle Translate today…

It’s not about the translation functionality itself, but about the UI. Namely the language selection UI. The translation service supports a shitload of languages, so the designers decided to give the language selection menu its own search field. Makes sense to me. Here is what it looks like:

So, I’ve entered the search term “ro”, and the menu offers me a list of languages that have in their “ro” name. So far, so good.

But let’s say I want to translate to German, a.k.a. “Deutsch”. So I type that in and… nothing:

Hm, odd. Let’s try something else. Maybe «français»?

Still nothing. Looks like looks like language search only works with the UI language. My G**gle UI is in English, so I can only search for languages by their English name!

Is it really too much to ask for finding languages by their endonym? I’m fine with the menu listing them in English. But someone has decided that there should be a search field (again: good idea) and then they have also decided to make the search shitty?

Frankly, recognizing endonyms is the bare minimum. It’s just a matter of politeness! Or, is this considered too woke nowadays? Did G**gle pull another Lake America here?

But how about finding langues by their name in any language? When typing “Řečtina”, I’d like to find Greek! Or, how about supporting all the various language codes? When I type “es”, I’d like to find Spanish! But no, I have to spell it out in English! Don’t even get me started on “nihongo”/“日本語”!

(Btw, I’ve cross-checked the above behavior against the language selection menu on Wikipedia. Their search feature delivers all of the above! And that’s an open project driven by volunteers, not a billion $ corporation!)

Why bother?

Look, I know that all of this is very inconsequential. But really, you G**gle? Text search and language processing used to be your key competencies! You used to be good at Internet technology in general. And at creating pleasant web UIs.

Had I found a similar gaffe in an M$ product, I wouldn’t even have given it a second thought. All their products are utterly horrible. And their user experience has always sucked!

But G**gle? I’ve never been a fan of their core business model, but I’ve always acknowledged their expertise and their aspiration to creating good products. Heck, I still find their translation services pretty useful. Let alone their map services.

… but what about Muskatnuß?

What does the title of the post have to do with any of this? Not much, really. Just a different language gaffe. This post is about poor language support, its title is about character encoding flaws.

You can still see similar bugs on the web now and then. Sometimes even in print. It’s what happens when you encode text to UTF-8, and then decode the result as ISO-Latin-1. Here’s how you can do this on purpose, using a Python one-liner:

python3 -c 'print("Muskatnuß, Herr Müller!".encode("utf-8").decode("latin-1"))'

Here’s a JS variant, which you can paste into your browser’s console:

new TextDecoder('latin1').decode(new TextEncoder().encode('電気'))

As you will see, you can fill in any other text, too. But the effect only shows for non-ASCII characters. This is why I’ve used an outdated spelling, which sneaks in an “ß” on top of the “ü”. Also, because it’s a line from a 1966 movie – back then, this was the correct spelling.

I could have used any other phrase with non-ASCII characters in the title instead. However, I decided to misuse the title and pull in a movie reference. You may have seen the scene a hundred times already, but click below to enjoy it again: