Live data from Hacker News

What they don’t tell you when you translate your app

ericwbailey.design

141–150 of 236 posts

Re: What they don’t tell you when you translate your app

#141
post #5

> People may prefer the English experience because they expect the translated version to be inferior As an Italian, I can relate so much to this, because translated apps will happily treat verbs as adjectives and vice versa. A couple example: * Flixbus' app translates "Open ticket" to "Biglietto aperto" (treating "open" as an adjective, not as an imperative verb). Correct translation should be "Apri biglietto". Nothi…

I always use the English version of everything simply because error messages in Dutch or any amount of troubleshooting isn't going to helpful at all. In the Netherlands, almost anyone who has about any device he owns configured in Dutch is almost certainly technically illiterate. People keep everything English not even because the Dutch translation is inferior but because any online documentation one will find is bas…

Same here. Some IT departments even have a policy of setting up every server in English to make troubleshooting easier.

Re: What they don’t tell you when you translate your app

#142

Earlier quoted context omitted.

If someone sets the language to (say) French but keeps their locale as English, do you write a thousand as 1,000 or 1.000? What about the reverse case?

Congratulation: You just opened the Pandora box of locale vs language! My understanding would be that locale should dictate numerical formatting. But one could argue the opposite and also be right.

If we're opening Pandora's boxes...

I've got GNOME set up in English, but my region to be the Netherlands. It will helpfully display local dates, but that also results in the month names being in Dutch.

Re: What they don’t tell you when you translate your app

#143
post #128

Earlier quoted context omitted.

What do you mean? Having parts of the interface in one language and other parts in another? I'm fluent in multiple languages (as most European devs) and I've never really heard or thought about this concept so I'm intrigued. What kind of software are you referring to that could have this feature?

I'm talking more about the behavior of websites or applications. For example, I'm on macOS. I want the OS GUI to be in English and to use the US keyboard layout, because I'm used to that and buttons/labels aren't a big deal anyway. However, most of my communication with my coworkers (for example, MS Teams) happens in Italian, so I'd prefer those programs to display their UI in Italian (so that everyone using the prog…

Ah ok, I agree and I have some of the same issues. I'm using Firefox and the spellchecker works well. I regularly switch between 3 languages. Same for Thunderbird, plus there is an extension that remembers which language I'm using with a specific contact, which is great.

Regarding the en-US locale, I've read that some people use the en-CA locale instead, this way you get (partly) American spelling, but with metric units and international standards like A4 paper size and reasonable date format.

Re: What they don’t tell you when you translate your app

#144
post #135

Earlier quoted context omitted.

>The actual identifier should be something like “Open a ticket (imperative, button)” Or even better: "ui.ticket.actions.open" — trying to shoehorn linguistic categories into translation files is a painful experience, but dumb specific IDs work great and make untranslated captions apparent.

Or even Create Ticket. From the description, it seems a ticket is being created not opened, despite the slang that people incorrectly use for buttons.

If a ticket is closed upon completion, it stands to reason that creating a ticket is "opening" it.

Re: What they don’t tell you when you translate your app

#145
post #21

Earlier quoted context omitted.

I think the issue is many translation databases just hold the English text and then all the translations. So the entry is “Open ticket” and then you just drop in the translation anywhere that phrase shows up. But sometimes “open” is a verb, sometimes a noun. The actual identifier should be something like “Open a ticket (imperative, button)” and then that phrase has translations, including the English “Open ticket”.

That's actually a nice idea in forcing even the default language to be handled by the same workflows, processes, and tools as the other languages. I've found that in a lot of those cases there simply is lots of context missing from the strings that should be translated. If all you get is the English text without any indication of how and where it's used in the UI, you're bound to make such mistakes in the translation…

In most places I worked that used translation systems, all languages where translations including the default one. Within code using message keys like "thing.title", "thing.add_action", "thing.on_save_error", etc or something like that.

I really like this approach because it makes the code and especially templates much more readable. You usually don't care about the verbose form of the text that should be displayed and those type of keys give you just enough information to understand what it is.

Problem is, it makes it harder to outsource the translations, and well, as it is known, naming things is hard.

Re: What they don’t tell you when you translate your app

#146

Earlier quoted context omitted.

About as tempting as switching all cuisine to Soylent to save us the mild indecision when having to choose a restaurant for date night.

Having just recently been picking a restaurant for an anniversary, I can tell the problem is real and I'm appalled at the sad state of technology for restaurant discovery.

Soylent for two?

Re: What they don’t tell you when you translate your app

#147

One nitpick about localization: If you speak several languages, try setting your device to use one _language_ and keep your locale to US. Now you can spot which developer understands the difference between a language and a locale and which one doesn't (hint: on large enough apps you'll land on pages using the wrong one, ie determines the language using locale). Or the opposite (watch the UI quote you prices in Euro d…

If someone sets the language to (say) French but keeps their locale as English, do you write a thousand as 1,000 or 1.000? What about the reverse case?

Ouch. If you are writing user interface for something that doesn't need to be "correct" (legally, or whatever), I find it best to accept whatever decimal separator (what you want, or change by locale, or both, whatever), and never use or allow thousands separators. Bonus points if you document it somewhere on the interface.

If you really, really, really need a thousands separator, use spaces.

Re: What they don’t tell you when you translate your app

#149
post #13

> People may prefer the English experience because they expect the translated version to be inferior No, it is not about expectations. In +95% of cases[1] the localized[2] version is objectively worse, to the point where it often only is possible for me to understand by first translating it back to English. If you give me a localized version first, and don’t give me an obvious way to permanently choose English, I’m l…

>[1] Mostly excluding the big ones (MS, Apple, etc), but quite often they fail too

MS docs

I mean they're good when displayed in English, but defaulting to "native_language" is annoying.

Re: What they don’t tell you when you translate your app

#150
post #5

> People may prefer the English experience because they expect the translated version to be inferior As an Italian, I can relate so much to this, because translated apps will happily treat verbs as adjectives and vice versa. A couple example: * Flixbus' app translates "Open ticket" to "Biglietto aperto" (treating "open" as an adjective, not as an imperative verb). Correct translation should be "Apri biglietto". Nothi…

“Open ticket” doesn’t even really make sense in English. Maybe “Buy ticket” or “View ticket” or similar would make sense there. Flux bus is German, I suspect the translation was from German and not English in this case?

An open ticket, in English, means a flexible transport ticket rather than one with fixed departure times.
Post reply on HN