views:

597

answers:

5

I18n/L10n/G11n all equal localization to me, but people keep making distinctions among these, especially in corporate and marketing, but I'm failing to see how these 3 tasks, from the programmer's point of view aren't the same thing, are there special requirements behind each one of these? What is some honest programmer to programmer explanations of these terms that doesn't involve global markets, in other words what's the nitty-gritty differences behind these three terms, when translated to developing (coding) software?

thanks!

A: 

While I'm not going to attempt to answer your question about the impact on coding, due to a lack of experience in that arena, I think you will find the following Wikipedia article of some use in differentiating between the 3 terms.

http://en.wikipedia.org/wiki/I18n

Jordan S. Jones
+6  A: 

Here's an article from the W3C: Localization vs. Internationalization

The short answer from them seems to be:

Localization refers to the adaptation of a product, application or document content to meet the language, cultural and other requirements of a specific target market (a "locale").

Internationalization 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.

So, it seems that internationalization is making the product able to be localized to a specific market. According to the W3C, globalization is another term for internationalization.

Personally, I use them mostly interchangeably but check out the article for more specificity of what each entails.

Steven Lyons
Nice to know what the W3C thinks
Robert Gould
+4  A: 

I18n - Internationalization - Providing some kind of framework so that you can easily swap out strings, graphics, sounds and other resources and generally handling different conventions of communication.

L10n - Localization - The process of creating a bunch of strings, graphics, sounds etc. so that you can target a specific nationality, language or region.

G11n - Globalization - Doing both Internationalization and Localization steps :)

There are many methods and frameworks that support the 'strings' part of these processes and they usually involve using unicode. The other parts are usually handled by creating resource files with a bunch of graphics and sounds in them. Depending on the framework you use, the strings may be stored here too. I find Qt has an excellent system for handling strings for I18n.

Arnold Spence
Indeed the strings part is what I typically think about
Robert Gould
+2  A: 

I don't know about the "G" one, but for me:

  • I18n means it can be done
  • L10n means it has been done
1800 INFORMATION
I'm kind og slow today, don't get it :/
Robert Gould
It's just the way I think of it. If you have internationalised, then you can do the work required to translate and localise your program.
1800 INFORMATION
After reading the W3C information I now understand what you mean, good way to put it, but not easy to understand to start out with.
Robert Gould
+1  A: 

Just think about it in terms of McDonald's (bare with me).

McDonald's is internationalized because it can be localized. You can't easily localize, say, an American flag shop unless you expanded your company to make all the countries' flags.

McDonald's is localized because when you go to the McDonald's in Japan, there is very different food there than there is in, say, the USA. It's also all written in Japanese. This means they have adjusted their product to the language and culture of Japan.


To me, localization is when you make specific products for different cultures. For example: www.google.com and www.google.co.nz. They are both Google. One is for the US (or generic) and one is for New Zealand. They are both in English... but they are localized to the culture of their respective audience.

Does that make sense?

KyleFarris