Internationalizing your software will help to provide your business with strategic flexibility when it comes to expanding your software for use in other markets. Does the business want to expand into Canada or the UK? If your software is properly internationalized, that should be easily done. If you haven’t designed your software from the start with international scale in mind, market expansion will be a herculean task.
Key Terms in Software Internationalization
The first step is to understand the terms, so let’s lay out the definitions of the terms “globalization,” “internationalization,” and localization.” The definitions below are from W3C, one of the leading authorities on software development for the internet.
In business, globalization entails a strategic approach to expanding products and services to new customers in a more connected world.
Although globalization and internationalization are often used interchangeably, they’re not the same thing. Rather, internationalization is the specific practice of implementation that arises from a globalized mindset. If you hear the term “software globalization,” chances are that it refers to the implementation rather than the mindset.
You can think about this as the process of designing flexibility into a given software system. Internationalization is a preliminary process before focusing on localization for a specific target locale.
Translation is a central activity within the localization process, but date and time formatting, text direction, and location-specific design choices are all part of this process.
A locale the closest thing that we have in the software internationalization world to representing a target culture. Examples would include French Canadians or Taiwanese Chinese.
Focus Internationalization Efforts on These 3 Areas
By creating a flexible software system, you can unlock the enterprise-scale benefits of accessing new markets with minimal effort. Let’s take a look at 11 software features that you can begin internationalizing today.
1. Networking and Infrastructure
Server Location / Load Balancing:
Where your website is served from can have a major impact on your users’ experience. Content delivery networks (CDNs) can help you optimize your site to be served from locations closer to users, but you will still need to make an infrastructure-level decision about how many instances of your application or service you want to run, and in which geographies those will be located. If you want to serve content in countries with country-wide firewalls such as China, there will often also be additional licensing requirements that go along with owning and running websites.
Storage of Sensitive User Data:
Most web applications are really a combination of the application code plus the user’s own data, which must be safely stored and called to play when the user uses the application. Therefore you must decide how you want to replicate the databases that store those data. If you have a great website that loads quickly, but your users in Germany can’t log in as quickly because their account information is only stored in the US and every time they log in they are pinging a server in Kansas, then you still have not properly localized your product for that user group.
Many locales will have their own legal requirements for operation that you’ll have to comply with. For example, in the European Union, there is an increased focus on internet privacy. The primary internet privacy law, GDPR, establishes some strict, and strongly enforced, rules about where you can store the data of users from the EU, and what you are allowed to do with that data. As it applies to infrastructure, the GDPR mandates that any EU customer data that you store must be able to be anonymized, to protect the individual’s privacy.
2. Website Configuration
There are three options for how to structure your localized websites with relation to one another: Subdirectories (example.com/de/), subdomains (de.example.com), and country-specific domains (example.de). They each have their own advantages and disadvantages. For example, country-specific domains and subdomains add credibility to your company in other markets, but are usually harder to configure and require more time to develop.
Search engine optimization (SEO) becomes exponentially more complicated when you expand your business into different locales. You will need first to consider how to design your system so that you can modify meta information on the fly to satisfy the different demands of international search engine crawlers. You will also need to define your pages’ cultures and languages to avoid them being flagged as duplicate content.
Login / Persistence Model and Redirects:
How does your website handle users that are cross-browsing, that is, shopping on two or more websites — will you allow them to stay logged in? Is the user’s cart and/or login going to persist across sessions in Germany and the UK? What if a user lands on a localized experience that they are not supposed to be on? Will you show them a modal popup that lets them choose where to go next, or will you simply redirect them automatically (potentially irritating users who are just investigating your international offerings)?
3. User Experience
Translation is probably the first thing that comes to mind when you say the word ‘internationalization.’ You must create a system that can take the text content that you have on your website and translate it, with a focus on maintaining the contextual meaning and the emotional sentiment of that text. You also need to make a decision as to which languages you are going to target, how you are going to hire your translators, and to what extent you want to automate your translation.
Different locales have different standards when it comes to formatting numbers, currency values, and dates. You need to be able to adapt flexibly your site to the expectations of each of your user groups. For example, the number one thousand three hundred and two and ninety-three hundredths is “1.302,93” in Italy and “1,302.93” in Great Britain.
The privacy rules in the EU also affect what data and customization you are allowed to opt your users into. You need to build your site in such a way that you can stop tracking if your users do not want certain types of data collected about them.
Design and UX:
Certain cultures have a focus on trust, certain cultures have a more collectivist nature to them; different cultures shop and make decisions in different ways on the web. There is a massive difference between the information that feels simple and easy to a Canadian person and the information that feels natural to a Chinese person. It is the designer and the UX researcher’s job to understand how users are interacting with the site and the developer’s job to build a system flexible enough to allow for changes.
Finally, Quality Assurance or QA is one of the most important components of software internationalization. The effort required to test your website will increase exponentially as you add new locale support and it is essential to be on top of the QA process as you begin expanding into different locales. Visual testing software, snapshot testing, and pseudolocalization testing are all tools that will allow you to maintain quality across the world.