SGPro and Language Localization

Hi folks,

We have long wanted to support different languages in SGPro, but a small outfit like MSS just doesn’t have the resources to execute and maintain the translations as SGPro grows. One thing we have been considering is crafting a localization system that acts as a sort of toolkit to interested folks in the SGPro community. While it would be moderately time consuming to build, it would, in fact allow SGPro to support any number of languages. Before we engaged in something of this magnitude, we are just gauging interest. If none of our multi-lingual users are inclined to participate, there is no point. Every language would essentially have a custodian and this person would have free SGPro for life, our eternal thanks, their name in the About box and, most importantly the gratitude of an entire country of non-English speaking astronomers.

The process of a language custodian would look something like:

  • Send us a note to check on the status of the language for which you are interested.
  • Become the language custodian
  • In SGPro, enable Translator Mode for your language
  • Periodically modify a text file that has English phrases in it and add the proper translation
  • Load that text file into SGPro and ensure that the translation fits in the space provided and, if it doesn’t, abbreviate it or ask us if we can rearrange some stuff to accommodate
  • Put this translation text file into a folder on our dropbox account and it will be distributed with the next release of SGPro.
3 Likes

Hi Ken

I can provide translation from English to Danish. :smiley:

Best regards
Soren Rasmussen

@Soren Thanks you! I’ll let you know if this is this project get scheduled for release.

Hi Ken
I can provide translation from English to Chinese

Hello Translators,

Based on feedback here and certainly requests we have received over the years, we have been hard at work building the framework to support community-based translations. By “community-based” we mean that translators are not dependent upon Main Sequence Software (MSS) for almost any part of the process. Once you have been formally identified as a SGPro Translator, you will be able to:

  • Work to translate all English text in SGPro to your language
  • Upload and publish your work for others to use

All users are free to download whatever language translation packs they’d like to use and none of these resources are part of a SGPro release. In other words, the entire process is almost completely separated from the SGPro release cycle.

Note: You can absolutely publish partial translations. For any English text that is not found in the translation resources, the English will continue to be displayed.

We have taken a pretty significant amount of time to develop a set of tools that translators can use.
These tools are designed to:

  • Quickly identify missing translations and the overall completeness of the language
  • Quickly identify if a new release of SGPro added new text to be translated
  • Quickly find a specific item (maybe fixing a typo or similar)
  • Quickly identify, in general, the areas of SGPro that the text is used
  • Show any notes from MSS about the translation
  • Allow a translator to make their own notes about a translation item
  • Expedite the translation process and identify errors in the translation
  • Publish the translations for general use by other users
  • Show any differences in the length of the translation
  • Show, at a glance, the status of your work (e.g. if it has been published or not and more)
  • Identify resource conflicts if multiple people are working on the same language

Here is a quick preview of the tool set:

All of this will appear in formal documentation… this is just a preview.

Some notes about translating:

  • Size is important. It is unfortunate, but true… in many areas throughout SGPro, the length of text is constrained by the interface. Having translation text that is significantly different from the original English text may result in a situation where the translation is now misaligned with other UI elements or maybe a situation where the translated text is clipped. This will often be the most difficult part of translating. We are working to make the areas where the translations are displayed as easy to locate as possible (so you can check the results of your work). In general, you’ll want to stay as close to the original English length as possible even if it means using different words or abbreviations. If it just can’t be accomplished we will absolutely work with you to find a solution that will work even if means changing the layout.
  • A lot of the translations are simple. For instance, the word “Warning”. Nothing complex here…
  • Some translations use variables. A variable is essentially a part of the the translation that cannot be known in advance during the translation process. Some examples include numbers, time of day or even other words.

Because languages have different rules governing pronouns, articles, adjective order and verb conjugation, we have attempted to give variables as much context as possible so that you can better understand how to position a variable in the translation. Here is an example… lets say the final displayed English in SGPro is:

Hello, I have 0 pants and my angry mother is on the beach.

The translation presented to a translator looks like this:

Hello, I have {numPants:number} pants and my {emotion:adjective} mother is on the beach.

A translation to Spanish may look like this (forgive me if this is wrong, my Spanish is not good, but you get the idea)

Hola, tengo {numPants:number} pantalones y mi madre {emotion:adjective} está en la playa.

Notice that the adjective “angry” is easily moved from before to after its noun.

@Soren @Mssstar Or anyone else interested, please let us know if you can think of anything else that would be helpful to translators.

IMO adding language localization support makes support a true hell and also makes it less likely for people to solve a problem on their own.

If a user gets an error message or has a problem they can do a search on the forum or google and often find the answer easily when using english, if they suddenly start searching in another language it’s almost 100% sure they will not find anything helpful.
This will also make it much harder for the community to help other users unless they use the same language.

For the simple reason of finding help much easier on the internet when using english i very rarely use software language localized to my own language.

Right now there’s one “big” community helping eachother, what language localization will do is segregate the community, might not be such a good idea for a software so specialized as SGP.

I think that points like this are valid for some folks and maybe not so much for others. If you are of this mindset, then you won’t use translations, but to say that translating SGPro to somebody’s native language is not useful or productive because they might have a harder time finding an answer to a question seems like a taking a broad sword to a more nuanced situation. There is an entire swath of people who, because they are not bilingual, have never even thought of using SGPro. The barrier to entry is just too high… for these people, they may have a more challenging time finding answers that English-speakers, but I don’t think that this invalidates the usefulness of translations.