ISO Latin-1 and Canada i18n

Targeting a first time internationalization effort for Canada is one of the more forgiving target locales from a technical risk perspective when working with code that is US English-centric. If there’s a missed string, chances are the user be able to work through it. Currency symbols are represented the same. Numerical units use the decimal point the same. Address formats are the same other than postal codes. However, this can also present a false sense of internationalization compliance. It has consistently been our experience that firms who thought they had internationalized their code for Canada and Canadian French, had much missing upon further examination.

There are a few reasons for this:

  • It’s actually very hard to detect and then measure many internationalization issues. Because understanding of i18n is likely to be limited, there’s a disconnect in the feedback loop to developers when i18n is incomplete.
  • Many developers used on internationalization projects tend to be new to the process and are often not the people who wrote the code. Unless they have powerful tools and strong guidance for architectural changes and planning, they are not going to understand the i18n requirements and be able to fully recognize what changes will be needed – yet they will perceive tasks as completed.
  • Without clear diagnostic tools, it often takes companies at least three release cycles to deal with many stray internationalization issues. New issues tend to crop up with continued development activity. The worst is the first time through.
  • Typically there is an over reliance on creating pseudo-translations and working through a QA process to visually inspect strings. While this is a good process, it is limited by nature in its incompleteness and late and iterative cyclical inefficiencies.
  • I18n is initially understood as a string externalization exercise. While strings are a highly visible component, they are far from the whole story.
  • Locale handling and changes to the database schema represent larger changes that can effect an entire software system. However, they are often implemented the first time in a way that doesn’t account for what is learned later on for more complex internationalization efforts.
  • Programmatically, many things in code can look like strings when looking to find and externalize them. The heuristic logic of this process is difficult, so searching a code base for string externalization usually misses much.

While the above internationalization changes are easy to overlook for Canada, we’ve found that they make themselves more obvious when going to markets, like those in western European locales. They are exacerbated when going to Far Eastern locales, where support for Unicode will require another significant phase of i18n development. Supporting bi-directional languages adds further complication. All of these business developments are greatly supported by using Globalyzer along with additional Lingoport products such as Dashboard and Resource Manager.

Demonstrations of each solution can be requested by contacting Lingoport staff.

Static Analysis for Internationalization and Localization

The other half of localization: Internationalization

Internationalization is the other half of localization, and the two are like yin and yang, requiring different but intermingled tasks and knowledge. For internationalization I’m referring to developing software, sites and applications so that they are capable of dynamically supporting any language or locale preference needed for their marketing and use. That’s a bit of a difficult abstraction, and after all these years of me doing it, I’m pretty sure my mother still doesn’t really understand.

Think of it this way: software doesn’t just work in another language because you localize the U/I. If you want to globalize, you actually have to make source code so that it can support multiple languages without creating a new product. Software also doesn’t just display an interface. It deals with all kinds of data input, data manipulation, storage/retrieval, comparisons, calculations, reporting and more. To support all that, the fundamental logic and processing of how software presents information needs to be adapted so it’s pretty flexible on issues like language, sorting, date/time presentation, numerical formatting, parsing addresses, phone numbers and more. Generally, for software localization to work at all, internationalization needs to be in place, and becomes an ongoing requirement for all new product development activities once a company takes on localization.

Trouble is, internationalization can be very expensive in money and time if you haven’t built it into your product in the first place, or it can be hard to maintain as your team pushes for new product features. It’s difficult to quantify, test and verify internationalization issues and often there is only limited verification after localization is well under way. It’s no wonder global releases are often late, way over budget or worse, not really tested and just pushed out to market.

Tracking down and measuring internationalization issues

A challenge with internationalizing existing applications is tracking down and measuring internationalization issues when they are buried in hundreds of thousand to millions of lines of code. Most people take a testing route, but it is extremely difficult to test potential use cases and their conceivable permutations. Additionally, by nature testing happens at a more costly time in the development process. Engineers usually have moved on to new features or other development efforts and tracking down and fixing bugs slows down releases.

We use static analysis with our Globalyzer software to pinpoint internationalization issues right in the code either during the development process or at staged intervals like a nightly build. Another advantage is instead of cataloging a bug, you are creating lists of exact issues exactly where they are in the application. Think of this as a very strong to-do list, guiding the developer through internationalization. This is not to say that testing isn’t needed, but it should be a last verification step, and not necessarily an investigative and scoping tool as it has often been used for internationalization.

Static analysis

With medical products, using static analysis as a process is especially gaining acceptance. With a particular emphasis on quality control, and consequences for bugs, examining code at the source level for constructs, bugs and security is becoming a regular part of product verification. We know of one medical products client that started working with Globalyzer directly because of a dangerous issue regarding locale support that they missed in testing. It is very hard to recreate every possible user scenario for multiple locales, including misuse, so static analysis becomes a strong way to mitigate that risk.

Conclusion

Medical products offer a case where lives are potentially at stake, but given how global customers, revenues and organizations play such a strong role in so many companies, tools that quantify, monitor and help remedy internationalization issues efficiently should be important to every development team.

About the Author

Adam Asnes is President and CEO at Lingoport and enjoys investigating how globalization technology affects businesses expanding their worldwide reach. Adam is a sought after speaker at industry events and a columnist on globalization technology as it affects businesses expanding their worldwide reach. He often writes articles for localization, internationalization and globalization industry publications and enjoys cycling and Colorado’s Rocky Mountains.

About Lingoport

Lingoport helps globally focused technology companies accelerate and improve how software is built for world markets. Lingoport’s suite of products is the market leader for companies looking to remove surprises in coding software for the world by automatically checking, measuring and fixing source code for internationalization (i18n) defects. Combined with comprehensive outsourcing services, Lingoport offerings enable our clients to make world-ready software development a priority for their worldwide customers.

Contact Lingoport by phone at +1 303 444 8020, by email at info@lingoport.com, or find and follow Lingoport on Twitter at https://twitter.com/Lingoport, on LinkedIn at http://www.linkedin.com/company/lingoport, on Facebook at https://www.facebook.com/Lingoport, and our i18n blog at http://i18nblog.com/.

This article was authored by Lingoport CEO Adam Asnes and originally published in Net-Translators’ June 2012 eNewsletter.

Bringing i18n Awareness to the Enterprise – via a Dashboard

A customer once told me that his organization had over five hundred dashboards to track progress and measure success based on key performance indicators (KPI) they had set. Yes that is right, five hundred. To leverage the long old cliché of “if it can’t be tracked, it can’t be measured,” and “what gets measured, improves,” companies are in a constant drive for operational efficiency, with respective stakeholders, priorities and KPI’s they want to track as part of that drive.  500 then doesn’t seem all that unreasonable if you think that a large organization has 75,000+ people and measure their respective process.

The software development and globalization groups that produce world-ready software are especially hard at work looking to fulfill the elusive but all aspiring goal of most “quality” with least amount of spend. Producing quality involves harmonizing processes across multiple disciplines, integrating systems and blending tasks with other groups to drive “improvement,” all within the magical realms that modern management and technology allows.

To really understand and share intelligence on all components involved in the release of world-ready products within the enterprise via dashboards, I could imagine a company requesting and asking the following to track and measure quality:

  • Translation Manager: How consistent and uniform is terminology in our content?
  • Localization Manager: Are we extending translation memory reuse consistently across languages?
  • Internationalization Manager: Are we making progress in reducing the most common i18n bugs in our software?

In this instance, there wasn’t a standard dashboard available to measure software engineering and refactoring of i18n projects, visible to both development teams and management. Much of the progress and intelligence companies have produced over the years have focused on localization-only process.

That missing piece will be filled over the next two weeks as Lingoport we’ll be announcing the official launch of the Lingoport Dashboard. Integrated and now standard with Globalyzer, it provides managers, engineers and management the ability to view and share intelligence on all components of coding quality for world-ready products within the enterprise, including:

  • A holistic view of software quality and compliance amongst all components to produce world-ready software
  • Continuous integration with Globalyzer’s Command Line for development and managerial teams to review violations and their priority for completion, scan summaries across i18n projects and errors.
  • Summary and in-depth analysis on internationalization progress, all in real-time.

The Dashboard reinforces Lingoport’s commitment to help enterprises shift the emphasis of globalization left by placing greater importance on ensuring software code is i18n compliant before localization and QA, and not afterwards. The first part of that component is driving visibility to the process, which may have previously been unknown to anyone at a company beyond the localization, QA or even customers.

We’re hosting two Lingoport Dashboard focused webinars in June and you are cordially invited to join us. Gary Lefman, Internationalization Architect at Cisco Systems, will be our guest presenter and we’re very excited to have him. If you don’t know Gary, make sure to follow his tweets at @CiscoL10n.

Targeting managers of software development teams, on Tuesday, June 19th at 11am PT, we’ll be presenting the Lingoport Dashboard in an hour long online session titled Internationalization Quality and Progress at a Glance. Learn more and register for this event by visiting: http://www.lingoport.com/webinars/internationalization-quality-i18n-progress/

On June 21st at noon PT, we’ll give software developers, program managers, and localization and internationalization managers the opportunity to learn how the Lingoport Dashboard could increase their productivity and also make it easier to report i18n progress to management. Learn more and register for webinar Analytics for Internationalization at: http://www.lingoport.com/webinars/analytics-internationalization/

Also, don’t hesitate to contact me directly if you’d like a personal demonstration of the Lingoport Dashboard.

Best,
Adam

Globalyzer 4.0 Release

Lingoport is proud to announce the release of Globalyzer 4.0, the premier internationalization software, refashioning how developers support and manage internationalization from the root of development. The latest incarnation of Globalyzer features a completely reworked development workbench that may be installed as a stand-alone version or as a plug-in to an already existing Eclipse environment. This enables software developers the ability to run, modify and check i18n code quality within the development environment.

To kick off this release, we will be hosting a one-hour webinar on Thursday, April 19th at 11am PT led by Lingoport’s Globalization Lead Olivier Libouban. Registration is available at: http://www.lingoport.com/globalyzer-4-i18n-webinar

In this demonstration, Libouban will internationalize a basic code repository while illustrating how to externalize, manage and pseudo-localize strings, how to correct locale-specific issues such as date and time, and account for general programming patterns that spark i18n issues. Those involved in streamlining their respective globalization process as well as program/project managers, i18n & L10n experts, development managers and software engineers are encouraged to attend.

Please submit any questions you have for the webinar to sthomas(at)lingoport.com. You may also comment below by liking the post or inquire to @Lingoport.

To get a taste of how Globalyzer operates, view the Globalyzer tutorials section on Lingoport.com. See below for part one.

Challenges to Internationalizing Mobile Devices & Tablets

At last week’s Internationalization and Localization Conference, Globalization Guru Edwin Hoogerbeets was kind enough to join me to share some of his insight on the challenges specific to internationalizing mobile devices. How does the small screen size of a mobile device affect the user interface and how are phone numbers affected by i18n?

We have posted video recordings and slides of the presentations for all those who attended. If you did not attend and would like to have access to the presentations, please contact sthomas(at)lingoport.com for details.

Thoughts from the 2012 Internationalization & Localization Conference

A big thanks goes out to everybody who attended the 2012 Internationalization & Localization Conference, and the event sponsors Acrolinx, Alchemy, Cloudwords, e2f translations, Jonckers, Moravia, Rearden Commerce and VistaTEC, for making our vision become a reality. Attendees from companies big and small made for a great environment for networking.  From Twitter’s translation crowdsourcing, to an intuitive globalization scorecard from experts at Adobe, AutoDesk and Zynga, to how i18n departments can empower a company, all presentations were well received and informative.

Next year we hope to make the event bigger and better and appreciate all the feedback we have received so far. Here’s a roundup of some great tweets from those who attended (search #2012i18n on Twitter to see for yourself):

  • #2012i18n learn to speak 3 langs in #l10n: executive (money), engineer (implementation), manager (ppl & time) –@TaliaBaruch
  • #2012i18n some companies see #i18n as a feature & not part of the product. –@TaliaBaruch
  • I’m really enjoying the #2012I18n conference, specially Kent Grave’s and Mike McKenna’s talks. Adam, Chris: great job pulling this together. –@__leandro_reis
  • A huge shout out to the organizers of the @Lingoport i18n conference – really good stuff! Special thanks to Chris and Spencer! #2012i18n –@camertron
  • #2012i18n conference was excellent. Well organized, interesting presentations, great people! –@hantalk
  • To convince your company to go int’l? Talk $$ w/ execs, time & people w/ managers, and bits & bytes w/ engineers. #2012i18n #i18n #l10n –@DynamicLanguage
  • Mobile games need to start capturing geo-locations to make served adds more relevant worldwide – Mike McKenna, #2012i18n –@AdamAsnes
  • HTML5 lets you design once to support desktop to mobile including cloud based desktops of the future #2012i18n –@AdamAsnes
  • fantasizing about dynamically designed buttons and boxes that flexibly expand to accommodate long text – you mean even German??? #2012i18n –@kumiko

We will be posting videos recordings and slides of each presentation in the coming days available for free for all those who attended. If you did not attend and wish to receive access to the presentations, please contact Spencer at sthomas(at)lingoport.com for more information.

 

2013 Internationalization and Localization Conference

To follow up on the success of the 2012 Internationalization and Localization conference, Lingoport will again play host to to the second annual event taking place March 13-14, 2013. The event will follow a similar format with a one-day intensive training on Wednesday March 13, 2013, followed by a one-day conference on Thursday, March 14, 2013. We have already received a great deal of feedback regarding what sessions attendees hope to see at next year’s event and we will work hard on making those a reality. Should you have any questions or want to contribute to the success of next year’s event, please email Chris Raulf at craulf(at)lingoport.com.

Concepts on Being a Globally Aware Company

In preparation for my moderation duties for next week’s 2012 Internationalization and Localization Conference in Santa Clara, I’ve been speaking with the panelists to learn about their experiences over the years in building a globally aware organization.

Some of the information shared with me reflects their systematic approach of shifting more and more of their focus to the start of the globalization process with their internal “customers”, sometimes even before code is written. This focus comes from the years of data they have collected on the cost, time and quality ramifications of shifting issues down the globalization process chain, resulting in other departments have to deal with them – or not at all.

Tools and technology that help organizations collect data, and I mean not just on translation metrics but an overall globalization process, have led to some interesting findings. One panelist on the “Internationalization and Localization Process – How to Make Your Organization Global Aware” will talk about the concept that not all bugs are the same.

What do you mean, Herr Blau? Well, should an embedded string be given equal weight to that of a time/date i18n bug that shows the date incorrectly to a bug that causes data to be read incorrectly with the web application and takes over a week to fix?

The answer to that question, and many more, will be addressed in the panel. The audience also be granted the opportunity to learn from the experts about i.) readiness programs they have instituted, ii.) scorecards that measure globalization acceptance criteria and iii.) how localization can embed into other departments to demonstrate which actions can positively or negatively affect making products world ready.

I encourage you to reach out, comment or email me at ablau(at)lingoport.com if there are other topics or themes you would like me to address to the panel. If you haven’t already signed-up, we only have a few spaces left and now would be a good time to do so to join us in the conversation. Sign up here.

2012 Internationalization Conference Agenda: Joint Tracks

The upcoming 2012 Internationalization Conference March 14-15 in Santa Clara, CA will feature two tracks: internationalization and localization. Attendees are welcome to float from track to track to sessions they deem most pertinent to their interests. Specific to the joint i18n & L10n tracks, presentations will include:


Integrating Internationalization with Localization

  • Presented by
    • Kent Grave of Cisco
    • Michael Kuperstein of Intel
    • Adam Asnes of Lingoport
  • Date/Time: Thursday, March 15, 10:00-10:55am
  • About: Most of the time, we’re internationalizing toward a localized release. Yet, we often talk of one without the other and there are many grey tasks in between. In this session we’ll give examples from Cisco’s globalization efforts with TelePresence, Intel’s work supporting globalization, and Lingoport’s experience integrating internationalization services with localization activities for faster time to market.

Demo Derby

  • Date/Time: Thursday, March 15th, 11:00-12:00pm
  • About: Fast and furious, demo derby participants will be limited to ten minutes to demonstrate their technologies. We’ve chosen several software applications that provide productivity power to i18n and L10n. Expect quick action and not much PowerPoint. Time will provide for Q&A for each presenter. This is a great way to catch up on what’s new in software for your profession.

Panel Discussion: Internationalization and Localization Process – How to Make your Organization Global Aware

  • Presented by
    • Jean-François Vanreusel of Adobe
    • Kent Grave of Cisco
    • Tex Texin of Rearden Commerce
    • Michael Kuperstein of Intel
    • Salvatore Giammarresi of Yahoo!
  • Date/Time: Thursday, March 15, 4:30-5:30pm
  • About: Though we may work at companies with different degrees of global focus, it’s still important to build and emphasize global thinking among developers, managers, sales and marketing. There remains resistence, uncertain requirements, and uncoordinated directives that can cause expensive release delays (or cancelations) and hold back winning new customers. In this session, the presenters will share what’s worked (and hasn’t) in championing and delivering global products.

Register for the 2012 Internationalization and Localization Conference

2012 Internationalization Conference Agenda: i18n Track

The upcoming 2012 Internationalization Conference March 14-15 in Santa Clara, CA will feature two tracks: internationalization and localization. Attendees are welcome to float from track to track to sessions they deem most pertinent to their interests. Specific to the i18n track, presentations will include:

See below for more information on each.

Internationalization Customer Case Study

  • Presented by:
    • Tex Texin of Rearden Commerce
  • Date/Time: Thursday, March 15th, 9:00-9:50am
  • About: It is challenging to change the course of a large and extremely active development team to support internationalization. In this interactive session, Tex Texin, Chief Globalization Officer at Rearden Commerce, discusses how he has worked to analyze, architect and implement extensive internationalization work at Rearden Commerce.

Internationalization Scorecard

  • Presented by:
    • Leandro Reis of Adobe
    • Mike McKenna of Zynga
    • Paul-Henri Arnaud of Autodesk
  • Moderated by:
    • Olivier Libouban of Lingoport
  • Date/Time: Thursday, March 15th, 1:30-2:25pm
  • About: Internationalization leaders from Adobe, Zynga, Autodesk and Lingoport worked both together and individually to build an i18n scorecard system to enable managers and engineers on development teams to have guidance and ratings for their applications global readiness in summary presentation form. This has proven to be an effective way to monitor and implement internationalization focus. Panelists will present how they have implemented the scorecard and the results.

Building an i18n Department

  • Presented by:
    • Michael Kuperstein of Intel
    • Mike Mckenna of Zynga
    • Tex Texin of Rearden Commerce
    • Danica Brinton of LocLabs
  • Moderated by:
    • Adam Asnes of Lingoport
  • Date/Time: Thursday, March 15th, 2:30-3:25pm
  • About: A powerful approach and commitment to software globalization includes building an internationalization team that works among different development endeavors to guide and assist with internationalization and localization engineering concerns. In this session we’ll discuss how those teams are built, skills needed, commitment from management, how teams are received and the results from their activities.

Mobile Apps & Games Globalization Panel

  • Presented by:
    • Danica Brinton of LocLabs
    • Talia Baruch of Copyous
    • Mike McKenna of Zynga
  • Moderated by:
    • Adam Blau of Lingoport
  • Date/Time: Thursday, March 15th, 3:30-4:25pm
  • About: Mobile apps and games have their own accelerated global impact as smart phones, tablets and computers blur their distinctions. Yet, mobile apps are by nature customer facing and localization demand is high. Products range from games to front ends to sophisticated back end systems. Panelists will discuss business efforts and technical processes for internationalizing games and apps.

 

Announcing the 2012 Internationalization Conference

The 2012 Internationalization Conference is shaping up to be a tremendous event for the global software industry. We have received a great deal of interest from and already have presenters lined up from: Moravia Worldwide, Acrolinx, Cisco, Intel, Yahoo!, Adobe, Zynga, Rearden Commerce and Twitter

For a short introduction to the conference, check out this video:

For more information and registration, visit: http://www.lingoport.com/2012–i18n-conference