Internationalization is an adventure
I was tasked late one afternoon to come up with a list of UX considerations in regards to internationalization (i18n). We had a deadline approaching to have our web application "localizable," which actually meant that we needed to have a proof-of-concept that our framework accounted for everything we'd need in order to fully comply with i18n. Not fully compliant, but all the pieces in place.
It was surprisingly hard to find a comprehensive breakdown on internationalization in the user experience. I was looking for a "what to expect when you're expecting" take, to try and get a handle on what we may run into in our first localization tests. I never did find a big list, so if anyone knows of one, please post in the comments.
I had to start by learning what the difference between localization (l10n), internationalization, and globalization were. Localization converts software to a single locale, while an internationalized system accounts for multiple language variants. Globalization introduces cultural considerations.
I put a query out to the general public, and got... not much of anything, actually. I spent a few hours reading in the Googles, finding one good blog post that got the ball rolling for me. There were a few others (here and here namely), and plenty written from the backend perspective, that allowed me to cobble a first draft of what we'd need.
In the interest of possibly saving someone else the same initial digging, I post my list here. This is my first whack at internationalization concerns for the user experience, and by no means comprehensive. Some of these overlap into development, and all of these are cobbled from the various resources I found. My list is focused on DEFIGS (Dutch, English, French, Italian, German and Spanish), however, some of these are concerns as well for globalization.
In no particular order:
• Misalignment and/or truncation of labels or content
• Resizing of form fields to allow for larger content elements
• Maximum character settings
• Date, time, number and currency formatting and grouping (both language and cultural considerations)
• Field input requirements (what fails validation
• Differences in how and when the system renders capitals (scripts or URLs for example)
• Differences in names and titles across cultures
• Differences in how cultures use symbols (single quote, double quote, or the French >>)
• Forced formatting (breaks)
• Hard-coded text or fonts
• Sort order and collation
• Additional fields: province, international postal codes, time zones
• Renaming fields (Social Security Number vs. National Insurance Number)
• Use of security or invite codes containing special characters
• Contact numbers (technical support, sales)
• Gender dependencies of terms
• Encoded special characters, HTML and CSS encoding
• Hot keys and tab indexing (user-controlled properties)
• Harder-to-discover localizeable items: page titles, buttons, dialogs, errors, alt tags
• Error pages localized: 404, 501, 500
• Proper display of jQuery and Captcha; some but not all localization is built-in
• Failures in user flows due to localization requirements, especially registration and sign on
• Translations for terms of service and other documentation
• International rules around cookies and privacy policies
I reiterate - this list was only a start, and directly related to our first iteration. I'm sure it will grow as we expand our product offering, and expand our requirements to fully globalized, introducing layout and unique cultural visual considerations.
Comments welcome, along with any additional resources you've run across.