Source: http://www.gala-global.org/articles/internationalization-primer-how-helping-your-client-solve-coding-issues-can-give-you-compet
While recent industry headlines have been dominated by merger mania, I think the long term story for GALA
companies is really about how to provide better service, products and returns for our customers. Thats how we
compete for and keep customers. Within software localization, the functional emphasis is typically on words - word
counts, what they cost, when they will be received, translation memories, translation quality, localization engineering
and delivery milestones. But for our company, we get involved months, if not years, before our clients are ready to
localize. This article aims to show that you can put internationalization to work as a repeatable and successful activity
to differentiate your company further as a problem-solver, helping clients get to market faster and more efficiently.
1. 4/30/2010 GALAxy Newsletter | Internationalizati…
GALA Website / Contact GALA / Join GALA
NEWSLETTER: FEATURES Newsletter Main Page »
Internationalization Primer: How helping your client solve coding issues can
give you a competitive advantage
Adam Asnes, Lingoport, Inc.
While recent industry headlines have been dominated by merger mania, I think the long term story for GALA
companies is really about how to provide better service, products and returns for our customers. Thats how we
compete for and keep customers. Within software localization, the functional emphasis is typically on words - word
counts, what they cost, when they will be received, translation memories, translation quality, localization engineering
and delivery milestones. But for our company, we get involved months, if not years, before our clients are ready to
localize. This article aims to show that you can put internationalization to work as a repeatable and successful activity
to differentiate your company further as a problem-solver, helping clients get to market faster and more efficiently.
Why It’s Im portant
Internationalizing applications can be an extremely painful activity for softw are development organizations. If they do it
poorly, they can expect a pretty w eak localized product…and guess w ho gets blamed for that! There are many issues
for development teams to consider regarding locale requirements w hen they create applications. If they are
internationalizing existing code, it gets compounded by actually having to find and fix all the issues buried in hundreds of
thousands to millions of lines of code. Consequently, our customers tell us things like, “this is actually much harder to
figure out and do than w e thought.” Internationalization causes long delays in development and that means big delays
for localization projects. Plus, companies usually do it w rong the first few times, and have to learn through painful
lessons w hich initially seem like the localization company’s fault - not a good experience for your company to be
associated w ith. I’d w ager that many of you have lost customers because clients blamed localization issues on you,
w hich w ere actually their ow n internationalization issues.
On the positive side, w ouldn’t you w ant a new and earlier w ay to be involved w ith the development managers, product
managers, VP’s and CEO’s of your clients? Internationalization is a significant undertaking for many companies. When
it’s a new process, internationalization always involves executive decision making. It is not unheard of for our small
company to make presentations to the board members of large, publicly traded companies as part of budget planning
efforts and global decision making. We think that’s pretty cool! We have unique products and services that make the
internationalization effort both scalable and repeatable for development teams, even if they are spread out around the
globe. That makes us a strategic bridge for companies going global.
Internationalization 101
You can skip this part if you have a technical background, but it alw ays surprises me that there is still the need to define
internationalization w ithin our industry. Though clients often confuse how they use the w ords internationalization and
localization, w henever I talk to them, they are generally pretty clear on the differences in the processes, even if they do
throw the w rong terms around. Yet I meet many localization sales people and executive staff that actually don’t
understand w hat internationalization is at all. It’s simply a problem that they have never dealt w ith. Perhaps there’s more
than a touch of “eyes glazing over in boredom” w hen they see technical articles about the subject; but you really don’t
have to make major technical leaps to understand the issues. Simply put, internationalization is all of the planning and
execution that needs to be included in the development of softw are that lets the softw are support languages and locale
formatting (like numerical formats, dates, times, currencies, postal addresses and more). Applications not only have to
be capable of displaying any language, they have to correctly allow the input, storage, processing and retrieval of that
multilingual/multi-locale data. It mostly breaks dow n to engineering for a few categories of issues w hich include:
Character Encoding – Every character you see on the screen corresponds to a set of zeros and ones w hich
get “interpreted” into w hat you read on the screen. How an application supports character encoding determines
w hether it w ill actually w ork in Chinese, Japanese, French, German, etc. This is w here terms like Unicode or
ISO-Latin apply. The right character encoding strategy isn’t alw ays obvious and w ill depend on a balance of
marketing requirements, technical requirements and development budget, especially if the code already exists
rather than starting from scratch.
String, Im ages and Resource Managem ent – Every message presented and ultimately translated in an
application is referred to in softw are terms as a string. An important and time consuming part of
gala-global.org/…/internationalization-… 1/3
2. 4/30/2010 GALAxy Newsletter | Internationalizati…
internationalization involves finding all the user-facing messages (but can also include things like interface
sizing), extracting them from the source code, and placing them in some kind of repository files (or database)
appropriate to the softw are architecture. That w ay you can w ork on translating the w ords w ithout breaking the
source code. With the right engineering those w ords can be replaced w ith any language that the application is
supporting. Additionally, string management includes issues like sorting, string concatenation and the like. You’ll
also w ant to identify and manage any images that are embedded in the code (just like strings) so that they may
be localized as necessary.
Locale-lim iting Functions – Each programming language has its ow n set of functions or methods that do
things like limit the w ay a date is interpreted, or how many bytes a character can contain. There are hundreds
of these sneaky little things in C/C++ and there are dependencies based on your character encoding choice
(e.g. Unicode UTF-8). Other programming languages such as Java and C# have less of these issues, but still
have their ow n possible pitfalls. These functions need to be found and replaced w ith others that support the
locale requirements that w ill be needed.
Locale-lim iting Program m ing Patterns – Programmers may do many of the right things in terms of
extracting strings, using functions that support “w ide” characters and the like, but it’s still easy to get in trouble.
Think of programming patterns as logic created for a specific application, w hich doesn’t w ork once you include
issues around multiple locales. Programmatic sorting logic is a good example; a typical developer w ould sort by
alphabetical order rather than by character brush stroke. Programming patterns can be a big nasty area to re-
engineer, and it takes experienced examination and planning to manage.
Locale Operators - Simply determine how the softw are w ill detect w hat locale it needs to support and how it
w ill behave under the circumstances. For instance, does the user manually choose the locale, or does the
application check the operating system setting?
Third Party Product Lim itations – Most softw are makes use of other application components. These can
include databases, reporting mechanisms (i.e. Crystal Reports), email generators and more. Often these
components have their ow n internationalization support issues, w hich can create their ow n challenges to the
softw are developer.
Localizing When the Client Hasn’t Internationalized
Another comment I hear from localization companies is that they have localized applications that w eren’t
internationalized, even w orking on translating strings that w ere buried in the code. I have to say this is a poor practice
that should be avoided. I have had softw are companies come to us quite bitter about localization companies that w ere
just doing w hat they w ere told in this regard. Chances are very high the softw are is going to break. In addition, making
the interface translatable is just one part of the internationalization effort. If, by sheer luck, the application still w orks,
they w ill not be able to leverage the translation w hen they go to a new version. There is no w ay this is going to have a
happy ending in the long run. One w ay to help a customer in this situation is to suggest them checking their code, for
example by running it through our Globalyzer softw are. This w ill give them a very clear inventory of w hat they need to
fix. They can use Globalyzer to save 40% to 60% of time and resources to get the internationalization done, or they can
hire us to do it for them.
How can you use all this to m ake a difference?
When your client says they are not ready for localization, that’s your signal to ask them if they are w orking on
internationalization. If they still say no, find out if they have plans of going global w ith their softw are. The earlier they
start thinking about internationalization and putting practices in place, the less painful the transition w ill be. If the client is
experienced w ith localization, ask them if they are interested in learning about products that help them perform and
verify internationalization so localization is made easier. You are doing them a service to bring it up and discuss it either
w ay. This discussion can establish you as a strategic partner rather than another tactical translation company. Use
internationalization to help you get to know your client’s organization - from Product Manager, to the VP of Development.
to the VP of Marketing, to the CEO. Don’t try to talk techie if you’re not qualified. But discussing the concept can lead to
opportunities and help you build a strong relationship. When it comes to the technical side, w ork w ith an
internationalization expert w ho performs w ell both technically and professionally. Of course I’d like you to contact
Lingoport, as w e do a great job of partnering w ith localization companies, and, just as importantly, w e have products
and a w ell developed methodology that make internationalization far more efficient and complete.
Adam Asnes co-founded Lingoport in 2001, recognizing that there w eren't good scalable softw are solutions for the
costly delays and development problems companies have w ith softw are globalization. Adam recruited an inventive team
of internationalization experienced personnel. Lingoport has since attracted globally recognized companies as w ell as
gala-global.org/…/internationalization-… 2/3
3. 4/30/2010 GALAxy Newsletter | Internationalizati…
customers embarking on their first globalization efforts - providing a unique combination of internationalization softw are
and services. As Lingoport's President and CEO, Adam focuses on sales, marketing alliances and continuing to gather
quality technical team members. Prior to Lingoport, Adam w as Director of Business Partnerships at OneRealm, an earlier
softw are globalization firm. Adam also has a successful history leading sales efforts in the scientific data analysis
softw are industry, w orking on projects ranging from fixing the Hubble Telescope to medical applications. Adam can be
reached at aasnes@lingoport.com or 303-444-8020 x2.
gala-global.org/…/internationalization-… 3/3