Translation update process implements a forced push of English locale into non-English locales.

Discuss translation contributions here.
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Translation update process implements a forced push of English locale into non-English locales.

Post by valneq »

I am involved with the translations into German, where we are at 100% translated strings.
The translation activity of other locales has greatly increased since the last announcement of the freeze for English in FFF349.
It is great to see such an amazing game being playable even when you don't know English very well.

However, I realized there is a problem in the current workflow for translations. Currently, the English locale is being proofread (by Altagram?) and the first corrections to English have hit the experimental releases, where many of the latest changes were minor replacements of words for English.

The current translation workflow appears to be:
  1. Changes are made to the internal English source strings, replacing previous strings albeit with only minor corrections.
  2. Changes of English are pushed to Crowdin: previous strings are removed, new strings added.
  3. Next minor version of 0.18 is published.
The last two points happen practically simultaneously. They could even happen in the other order. I have no exact time stamps right now to be certain of their order.

Because of this, previously translated strings just disappear from Crowdin, leaving the updated locale strings entirely un-translated in the published version of the next minor release. For all practical purposes this is a forced push of the English locale strings to previously well translated locales, resulting in a mix of English and non-English strings in the game.

One example that was changed in 0.18.30 is "entity-description:rocket-silo". Its value changed from
> Used to build and launch a rocket to win the game.
into
> Used to craft and launch a rocket to win the game.
I fully approve of this change. And it is easy enough to translate it again, since crowdin keeps an internal copy of the previous translations: It suggest the previous version for the next translation, highlighting the changes to the source. That is great!

However, 0.18.30 now comes with the English locale string for the rocket silo description for all locales irrespective of whether they had previous translations or not. I updated translations to the changed strings as soon as I could, but they will not make it into the game until 0.18.31. Then, I expect this process to repeat and more changes to be applied to English due to proofreading, creating other forced pushed English strings into other locales. Again, creating a 0.18.31 release with a wild mix of English and non-English.

While this behavior may be acceptable for an experimental release cycle like 0.18, I highly recommend to change the update workflow for the locales for the 1.0 stabe release.

One option is to leave more time for translators to update the locale strings between seeing them on Crowdin and having them released in the game. Alternatively, the source strings could be changed instead of entirely replaced. Maybe automatically remove the "approved" status from changed source strings.

I don't know exactly what kind of (semi-automated) workflows Crowdin supports, but I can tell you: many of the strings in my locale needed only similarly small changes or no change at all, and seeing them forcefully replaced by English strings in the released version is just frustrating. This does not increase the degree of polishing in 0.18 but drastically decreases it when you don't play with English locale.
Last edited by valneq on Fri Dec 18, 2020 8:21 pm, edited 2 times in total.
TheEnemy42
Long Handed Inserter
Long Handed Inserter
Posts: 52
Joined: Wed Jan 10, 2018 7:12 pm
Contact:

Re: Translation update process implements a forced push of English locale into non-English locales.

Post by TheEnemy42 »

I've noticed the same thing. Good writeup.
Currently primary Danish translator of Factorio. Feel free to contact me in regards to the translations.
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Translation update process implements a forced push of English locale into non-English locales.

Post by valneq »

0.18.33 was released and force-pushed about 27% of English locale into non-Englsih versions. One of the biggest change to the locale, yet. Albeit mostly typos, commas, capitalization, etc.
Now we need to wait for
1. the translators to go through the translations
2. release of version 0.18.34
to experience Factorio with our preferred language settings.

Will this process be changed in the time after 1.0? Would be bad if in the final product, the English locale needs fixes that other languages may or may not require, force-pushing English into the final product for an entire sub-version. Considering that sub-versions will most likely not come out every week after 1.0 is released, this may be more of a problem than it is now.
User avatar
Klonan
Factorio Staff
Factorio Staff
Posts: 5266
Joined: Sun Jan 11, 2015 2:09 pm
Contact:

Re: Translation update process implements a forced push of English locale into non-English locales.

Post by Klonan »

valneq wrote: Wed Jun 24, 2020 5:45 pm 0.18.33 was released and force-pushed about 27% of English locale into non-Englsih versions. One of the biggest change to the locale, yet. Albeit mostly typos, commas, capitalization, etc.
Now we need to wait for
1. the translators to go through the translations
2. release of version 0.18.34
to experience Factorio with our preferred language settings.

Will this process be changed in the time after 1.0? Would be bad if in the final product, the English locale needs fixes that other languages may or may not require, force-pushing English into the final product for an entire sub-version. Considering that sub-versions will most likely not come out every week after 1.0 is released, this may be more of a problem than it is now.
I don't think it will be a big problem after 1.0, and I don't think its a big problem now

The unfinished locales are only pushed to experimental, and we always try to ensure there is time to fix locales before we want to set a release stable
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Translation update process implements a forced push of English locale into non-English locales.

Post by valneq »

If the mixed locales will only ever be in experimental, I am fine with it.
gyorokpeter
Inserter
Inserter
Posts: 43
Joined: Sat Jul 23, 2016 5:53 am
Contact:

Re: Translation update process implements a forced push of English locale into non-English locales.

Post by gyorokpeter »

This problem is very much real with the Hungarian translation. When 1.0.0 came out I was surprised that the language has automatically switched to Hungarian (it was always English before) but lots of strings were still in English. Then I looked up how to actually do translations and noticed that (apart from the spidertron-related strings that got into 1.0.0 with zero chance of being translated) most of the untranslated strings were actually found in the translation memory which highlights differences, and all of the differences are English-specific and don't change the meaning (e.g. replacing can't with cannot, adding or removing dashes).
This is poor practice. First impressions matter and Hungary is notorious for being a country with a low penetration of foreign language knowledge - Netflix was initially struggling to gain traction due to the lack of Hungarian subtitles, for example. While I would expect anyone who is interested in more technical games like Factorio to have good English knowledge, having this mixed language in-game would give off a first impression of a poor job by translators, or treating certain languages as second-class citizens.

Additionally the release cycles of translations should be decoupled from the release cycles of the game. Currently there has been no minor release for a month so this half-translated state keeps persisting for an unnecessarily long time, even though in crowdin the strings are 100% translated again.
Post Reply

Return to “Translations”