App Localization: International Keyboards and JavaScript

When you first dream of launching an app globally, the excitement of sharing your product with the world can sometimes blind you to the intricacies involved in the process. Regardless of how rose-colored your glasses are, however, taking an app global presents unique challenges which must be addressed.

app localization

Why App Localization is Needed

If you are a regular reader of this blog, you have seen many posts about what localization is and why it matters. For a brief refresher, you can check out the Dynamic Language “Guide to Written Language Services Infographic” or take a look at the article “Taking Your App Global – What Could Go Wrong?”

The goal of localization is to enable a user who speaks another language to have the same user experience as a user who speaks the language in which the app was first developed. Rather than a word for word translation, the aim of localization is to provide a comparable user experience to a linguistically and culturally diverse target audience.

What Happens If You Do Not Localize Your App?

Proper localization of an app may be the difference between global success and failure. B2C’s “App Localization: What It Is and Why You Should Be Doing It” puts it this way: “By localization, an app supports different languages and regions, thereby opening doors for more people to use the app. It ensures that the app reaches as many people as it possibly can, thus increasing its chances of success.”

The converse is also true. Failure to localize your app properly leads to a poor user experience for your international users, and ultimately spells doom for your global expansion project.

You Have Decided to Localize – Now What?

The best time to tackle localization is early in the development of your app. A good first step is internationalizing your code. If you write code that supports various languages, time zones, date formats, and currencies from the start, localization is easier later on when it is time to expand into a new country or language group. As a general rule, the less code you have to change later, the more smoothly your plans for global expansion will proceed.

Handling Localization Hiccups

Bringing an international translation company onboard early in the development process will help you avoid some common missteps in app localization. Resources such as text strings, layouts, and sounds are all components of your app which need to be localized for your target markets.

Do not be fooled into thinking that localizing your app is a simple process. For instance, suppose that your app is a game. You might first think that all you need to do is translate the text for the user interface from one language to another. If your in-game instruction reads “Click to begin”, you might think all you need to do is change the phrase to an equivalent phrase in the target language. Sounds simple enough, right?

However, what if the correct phrase in the target language is twice as long as the phrase in English? Or what if you need the words on the screen to read right-to-left, as is the case when translating into Arabic? Suddenly what seemed so simple a moment ago is a bit more complicated.

The Challenge of International Keyboards and JavaScript

Then there are the challenges inherent in dealing with international keyboards and the ways in which JavaScript works with them, or fails to work with them, as the case may be.

While many Westerners may assume that “a keyboard is a keyboard is a keyboard”, that is simply not the case. There are a variety of international keyboards in use. Keyboard layouts differ from place to place, largely because the written language differs widely from place to place as well.

There are many written languages that have too many characters for use with a keyboard. For instance, the vast array of Chinese characters in use for written material in Chinese is overwhelming for a standard keyboard.

For written languages that fall into this category, there are a number of keystrokes required to correspond with a specific character. Whereas with an English standard keyboard, you type “a” and an “a” appears in your text box, in another language you may have to hit several keys to produce a similar result.

This creates a challenge for JavaScript which developers must take into consideration when localizing their text strings. Since JavaScript is a scripting language that is designed to add interactivity to Web pages and to create mobile apps, you might think that it would play nicely with international keyboards. But that is not always the case.
app localization international keyboard
Developers, then, must account for language and keyboard input differences when localizing apps for a global audience. A best practice for using JavaScript in localization is to create a JavaScript resource file in the source language first and then multiply it for other languages as you expand. Keeping your text strings separate from your source code in this way enables more agile localization and makes it easy for your language support provider to pinpoint any problem areas during the localization process.

An international translation company can help you localize your app so that the end user, wherever in the world he or she may be, will have a seamless experience through your app’s user interface. What results can you expect from this? Simply put, a great UI for your app increases its global popularity and your bottom line at the same time.

From localizing text strings to providing marketing materials for your new app, an international translation company can smooth your transition from local business person to global entrepreneur with accuracy, precision, and clarity of language. For more information about how to go global with your products, contact us today to begin a discussion about your language support needs.


Let’s Talk.

Drop us a note in the form and one of our experts will set up a time to discuss the
ways Dynamic Language can help your business go further, faster.

  • Accepted file types: doc, docx, xls, xlsx, pdfjpeg, jpg, png, gif, svg, txt, ppt, pptx, ai.