So You’d Like to Start Computing in Your Own Language

Battle for Wesnoth (Scottish Gaelic localization).

Battle for Wesnoth (Scottish Gaelic localization). Image courtesy iGà, © 2017 Battle for Wesnoth, licensed under the GPLv2+.

A version of this post was originally published at r12n.

GunChleoc is Chieftain (project manager) for the strategy game Widelands and a free software localization expert. Here are her tips on how to start a localization initiative for a language of few speakers:

1. Translate free software.

It is much easier to get your locale added, and you can contact the developers directly if you are having any issues. It is usually also a lot easier to get to test your translation.

2. When looking at a piece of free software, make sure that it has an active developer and user community.

Then you can be sure that there will be another release in the future that can contain your language. Check out if it has a workable translation system, then download the software and make sure that you like it. Translating something you don’t like isn’t much fun. Also, software that can be run on multiple platforms is best (Linux, MacOS, Windows).

3. Start small.

Pick a piece of software that doesn’t have too many strings in it. It won’t be so scary this way, and you can take joy in the completed product faster. Then move on to high-visibility projects like Firefox.

4. Translate a piece of software that you would like to use yourself.

This way, you can spot mistakes more easily and correct them as you use it. You can also go for a piece of software that your language community requested, but make sure that it isn’t too big until you have a bit of experience under your belt. Or if it’s too big but you really want it, ask the developers if it is fine to translate just the most important strings, like menu entries.

5. Watch out for double terminology in the English source strings.

“Log in” and “Sign in” are the exact same thing, so are “directories” and “folders” on your hard disk. Some of this terminology baggage is due to the history of computing, and there is no need for you to take it on. Before you do this, make sure that the two English words really do mean the same thing.

6. Find somebody else to talk to about the difficult bits in your translations and about new terminology.

If you can find a second person to team up with on your localization effort, even better.

7. Use a translation memory.

Many projects are translated via online platforms that have an integrated translation memory, but you can also get free offline tools like Virtaal or Poedit. Especially when you start working on multiple projects, having everything in your own translation memory will help you keep consistency and speed up translation, because you won’t have to type your translation for “OK” for the bazillionth time. I use a mix of both, but always make sure that I at least download everything and feed Virtaal regularly.

8. When I need to request support for plural forms, I usually play the “Russian needs it too” card, to preempt any potential “not worth doing the work for your tiny language” responses.

When requesting things that you need for your language, remember to always be polite — most free software developers are doing this as a hobby in their spare time. So, it is really important to keep it a friendly and fun environment for everybody (not saying that work places shouldn’t be fun and friendly too…). Also, developers always have more bugs to fix and features that they want to implement than their spare time allows. So, please be patient and only send the occasional polite reminder when you need to.

9. Build up a publicly accessible terminology database.

If you don’t have any technical skills, a spreadsheet will do to get you started, but a real database will be better in the long run. This will help you keep consistency and also help your users if they wonder what a new term means. Consistency is very important for your users, otherwise they will get confused. For example, German has two different translations for “Log in,” one of which (anmelden) can also mean “Register” in different localizations. Not good.

10. List the software that’s available in your language on a website, so people can find it.

Have a look at iGàidhlig for an example on what such a website can look like. Depending on your language’s situation, instructions on how to install a keyboard and a font set might also be needed. If you can partner up with somebody who is good at working with the community and at marketing, great.

11. After you have gained some experience, get your locale added to the Unicode Common Locale Data Repository.

This will put your language on the computing map, and it’s a requirement if you hope to eventually get your language on mobile devices. You will need to provide the data, so this will be another (pretty geeky) localization job.

12. Remember that localizing is both useful and great fun!

Just keep working away at your files bit by bit and you will get your translation finished.

Start the conversation

Authors, please log in »


  • All comments are reviewed by a moderator. Do not submit your comment more than once or it may be identified as spam.
  • Please treat others with respect. Comments containing hate speech, obscenity, and personal attacks will not be approved.