Internationalizing and Localizing Your App, Part 1: Understanding Different Cultures

In this four part tutorial, learn how to internationalize your app from a technical perspective and how to think globally about different cultures and customs.

Perhaps you have just begun a greenfield project (or like us here at OkCupid, are working with a teenaged codebase) and want to internationalize your application. The truth is that国际化,本地化和翻译are all incredibly complex undertakings, and there are countless considerations before diving into converting your codebase and user experience to support it. Here are just a few such lessons that we’ve compiled from our learnings here at OkCupid after a major overhaul across all of our platforms to support launching our first non-English translations and localizations.

Many things change when you cross physical, social, and linguistic borders。如果您希望您的产品在这些边界之间无缝地工作,那么至关重要的是要认识到我们只是人类,因此根据我们所熟悉的文化和语言对其他文化和语言做出了各种假设,这些假设自然而然地将和我们创建的软件。

Consider, for example, something as simple as the capitalization of characters. It is commonplace on the western, predominantly English-speaking web to use the sociolinguistic effect of capitalization as a way to emphasize and de-emphasize words or phrases. Just think of the difference between receiving a text from a friend that saysTHIS IS THE BEST DAY OF MY LIFEvs.this is the best day of my life。Given the context of a message between friends, the latter uncapitalized message has almost a deadpan (even possibly interpreted as sarcastic) feeling to it, whereas the first could be interpreted as sincere excitement.

You can find examples of using capitalization as a means of emphasis in countless software user interfaces. Contextually the capitalization here matters, but it operates under an assumption that capitalization doesn’t matter that much. This could be highlighted by contrasting it with a language like German. In German, nouns always have their first letter capitalized as a rule of grammar. Take for example the first line of The Metamorphosis by Kafka, in its original translation:

Als Gregor Samsa einesM或者gens aus unruhigenTräumen erwachte, fand er sich in seinemBett zu einem ungeheuerenUngeziefer verwandelt

And in English (note,we would not capitalize nouns this way in English):

As Gregor Samsa awoke from troubledDreams oneM或者ning, he found himself in hisBed, transformed into a monstrousVermin

Seeing a message in German thatdoes not遵循此规则可能会使理解该语言的用户感到震惊,因为在技术上具有错误的资本化是不正确的语法。重要的是要了解我们通过使用大写字母来实现的假设,因为案例是许多语言拼字法的一部分,甚至没有大写和小写字形的语言。如果您的消息不改变案件,将如何解释?这只是一种语言的众多功能之一,在翻译 /本地化从英语转换为其他语言时会发生变化。

Alongside that, there are still other more complex language features to solve for, such asplural and ordinal rules或者grammatical gender。我们的假设基于这些功能如何适用于英语,使许多人忽略了这样一个事实,即在我们的软件中的某个时候需要处理这些事实。在后面的部分中,我将对这些内容进行更深入的深入,但是正确的这些对于确保消息清晰,语法上正确并保留其最初意图至关重要。

Along with the linguistic assumptions we make, we also makestylistic assumptions。Consider an error message being displayed on your site when something goes wrong:what color will it be?Most westerners would probably answer red, as the color is often culturally associated with negatives (danger, stoplights, a negative balance). However, in Chinese culture for example, red is associated with positives like happiness and prosperity. A great example of this difference is demonstrated by the contrasting choice of colors in stock markets: Western financial markets use green to signify increase and red to denote decrease, whereas Eastern financial markets will do the exact opposite.


Stylistically, we can’t even assume that our colors and themes make sense. We need to make sure that our assumptions are curbed here, too. We should provide layouts, fonts, and colors that make sense to our users given the context of their language, location, and use-cases.

Lastly, it is imperative that we recognize ourcultural assumptions。For a product like OkCupid, it is a fundamental feature to be able to specify things about yourself like your pronouns, sexuality, and drug use, because these are part of your identity, and subsequently are crucially identifying characteristics of those you’d like to date. How could we even handle the fact that some languages like Turkish do not have the concept of gendered / non-gendered pronouns?

Not only that, but despite this specificity being something so core and fundamental to OkCupid’s product and beliefs, there are still places in the world in which identifying as gay or as a weed smoker (even if just on an internet platform) can lead to criminal charges. We certainly don’t want our software to be the cause of problems like this for our users. Truly, this is both a difficult philosophical and engineering problem; however, it’s an important highlight of the cultural assumptions we make with our software.

Check out part 2 of this serieshere

OkCupid Tech Blog

Read stories from the OkCupid engineering team connecting millions of people every day