l10n & i18n Engineering

Photo by Brett Zeck on Unsplash

While doing the daily job-hunting I came across a listing seeking a Software Engineer with an emphasis on “internationalization.”

So, I read on and found it’s a company, of which, I’ve used their product before in a project and was quite happy with the outcome.

They were seeking an engineer to “work closely with our localization teams to understand and improve our existing internationalization tooling and processes.”

I honestly didn’t really understand what this meant or how the teams are structured.

From context, it seemed that in order to become a better international company they needed to overcome the language barrier. Therefore, they needed someone familiar with “translation management systems (such as SDL Studio, PhraseApp, Memsource, Lokalise, etc.).” As a foreign language lover myself, I might have to explore these sometime soon.

I continued to read about what they’re looking for in a potential hire and I’m nowhere near qualified for this intriguing specialized role but, I stopped in my tracks as I saw “i18n” thrown into the requirements.

What the heck is “i18n”? Is this another new language or framework I haven’t heard about?


Are you ready for this?

“i18n” is shorthand for “internationalization”

Basically, “i” + the 18 characters in between + “n”

Yeah, count it out and you’ll see.

How ingenious! I wish I had thought of this in university for all the lectures I attempted to take notes in.

What Does Internationalization Mean To An Engineer?

According the the W3C site it is the “design and development of a product, application or document content that enables easy localization for target audiences that vary in culture, region or language.”

I’ll come back to i18n later but, first…

What Is Localization?

This term was also mentioned in the job listing as the new hire would “enable rapid localization of new products” and “work closely with the localization teams.”

The W3C defines localization as “the adaptation of a product, application or document content to meet the language, cultural and other requirements of a specific target market.”

AND, it is sometimes written as ‘l10n’.

‘l’ + 10 characters + ’n’

It almost seems as though l10n and i18n are the same thing but, it’s the internationalization tooling and processes that enable localization.

The Complexities of Localization from W3C

The Process

My guess is that the localization team is acutely aware of the values and norms of the target market and strives to present the product or application to be well-received.

Now, imagine a company based in one country is trying to have their product and/or application reach customers in another country. To be successful they will not keep everything as is.

The localization team will review the original product and create a long list of changes to make it the best user experience for the target audience. So, a little bit of linguistics and a little bit of marketing and a whole lot of proofreading.

To minimize human error and to automate the translation process, many localization teams use translation management software. This is where an Internationalization Engineer can step in to design and/or maintain that software.

After reading a little more about localization teams, developers are definitely apart of the team and collaboration is crucial for a viable product.

Back To i18n

Sometimes referred to as ‘globalization’, as Microsoft does here in their documentation.

Internationalization focuses on the design and development practices to remove barriers to localization or international deployment.

This can allow for a variety of characters to be used and determine how string values are handled. Depending on the language, it can allow for vertical text or bidirectional text (right-to-left or left-to-right).

The format of data (such as dates, times, numbers, names and addresses) can be displayed correctly.

It also includes keeping the localized elements separated from the source code so that they’ll load only when needed. I always liked that feature on a web page where I can select the country of origin or language and the content will adjust accordingly. So easy for the user. Maybe a bit of a challenge for the localization team.

Language Tidbit

I’ve studied a bit of Japanese but I’m not fluent so, I have definitely used Google Translate a couple times.

Sidenote: I’m not sure if Google translate can be considered a translation management system in itself since it’s more of a machine translation tool. And I think some systems may use Google Translate or DeepL as part of the system but this will require deeper investigation.

Here, I’ve typed in a short and simple sentence in English and Google translated it to Japanese.

English to Japanese — I love to code.

Localize It
1/ Completely different set of characters. Latin/Roman characters versus Katakana/Hiragana/Kanji.
2/ Spacing — English has space between words while Japanese does not.
3/ Punctuation — The period at the end is different.
4/ Length /Space— Although they coincidentally are both 15 characters long (with spaces and punctuation), the Japanese sentence requires a little more wiggle room.

i18n will allow for all of this to be displayed correctly without being parsed oddly as well as allow for more space for the content to stay intact.

English to Japanese — quotation marks

Here’s another example of punctuation differences as Japanese uses hook brackets (kagikakko) for quotes. These would be brought in with all the other characters and symbols needed for localization.

Browsing The International Web

I want to see l10n and i18n in action so I’m going to compare a couple localized websites.

Is there a country that doesn’t do Facebook?

Facebook in Korea

At the bottom of the login page there are links to the other localized Facebook sites. Clicking on each will change the country code in the url as well as the language of the content displayed.

MIcrosoft — US vs Japan

Here, Microsoft uses a same general layout but different colors and images. The currency is also different. I haven’t translated anything but the ‘wording’ is probably slightly different, too.

Red Bull — US vs Japan

Red Bull is SUPER localized. Which is pretty cool! Same general layout but totally different images of activities and people for that target country.

Final Words

This is all so fascinating to me! I definitely want to learn more about l10n/i18n and translation management systems. Maybe one day I’ll be qualified to work for a localization team to make it all happen.

Signing off — j5e n5i

And yes, I will update my Google Chrome browser as soon as I post this blog. 😜



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Jonelle Noelani Yacapin

Jonelle Noelani Yacapin

Certified Sommelier and Flatiron School Software Engineering Grad