Thanks to some character encoding and translation fun (okay, rigmorale), I was able to chat with a Russian guy today in his native language, even though he knew very little English and I knew only two or three words of Russian.
My IRC client interprets all incoming bytes as cp1252, the standard Windows character set. This is usually annoying, but on this occasion it proved helpful since the guy dropped by unannounced in a public channel and started typing words such as "ÎÁÄÅÀÓØ". I've been through this sort of thing before in other channels, so I was able to guess from experience that the character encoding was iso-8859-5, a Cyrillic charset. In fact, he was using the other popular Cyrillic charset, koi8-r, and he understood enough of what I was saying in English to inform me of that.
Then I recoded his koi8-r as utf-8 and spat it back at him. He realised that I meant we use utf-8, and he switched to utf-8 for us. I was at least able then to read the Cyrillic in the HTML logs, but I still had no idea what it meant. When this has happened in the past, I've Googled for Russian-to-English translation services but not found any decent ones. But I thought I might as well give it another go, and I came across PROMPT-Online, which turned out to be awesome.
So then I was able to conduct the conversation as follows. The Russian guy would type a line to me. I would copy that line, in utf-8 wrongly interpreted as cp1252, and paste it into my Encoding Normaliser service with the option u-cp1252 to utf-8. Then I'd copy the result and paste it into the Russian-to-English translation form to find out what he's said. When I wanted to paste a reply to him, I'd type my response into the English-to-Russian conversion form, and copy the result into the Encoding Normaliser again, this time selecting - to pyraw, which prints out escaped byte sequences such as \xc3\x8e\xc3, etc. Then I'd take that and put it into Python, saying something like "print '\xc3\x8e\xc3[...]'", which would print out the bytes for me, ready to copy into IRC and send.
This made for a rather slow conversation, but it worked! Barely a word of one another's language understood, and we still managed to communicate pretty well—to about the level that two 10 year old pen pals would communicate, I would say. One of the factors is that you have to write in extremely simple terms into the translation service so that it doesn't get mangled; but not only do you have to be simple, you have to be translation-unambiguous. In other words, you have to avoid words that have multiples senses. One additional technique that I used was to put synonyms in parentheses after particularly difficult or ambiguous words.
I suppose for French and similar languages, this process would be no big deal, something not even worth commenting on, and so really the main barrier was the accessibility problems that Russian poses to non-Cyrillic language speakers. I'm really glad that it was possible to overcome it. Incidentally, прикольно means "cool". The translation service didn't know that, so I Googled for it instead.