Lingoport Resource Manager Release Notes

Manage your resource localization process using Lingoport Resource Manager!

Should you encounter problems or have questions, please email support@lingoport.com.

LRM 2.0 release

The Lingoport Manager (LRM) 2.0 release allows for seamless integration between source code repositories and translation systems to support continuous globalization. It reduces considerably the manual steps development teams and L10n management may need to handle translation of application resource bundles. The updated framework permits the addition of repository types and of translation systems to match the client’s ecosystem.

  • Get source code from the repository
  • Analyze and report the translation status in the Lingoport Dashboard
  • Notify configured recipients of different events via email
  • Determine which files need to be sent for translation and shows in the Lingoport Dashboard
  • Facilitate sending the necessary files to a configured translation system
  • Facilitate receiving translated files
  • Import the files back to the repository
  • Pseudo-localize base resource bundles

Some of the benefits

  • Visibility and clarity of translation for development projects
  • Much shorter translation cycles
  • Much fewer (none) number of people handling the files back and forth
  • Automatic tracking of translation status
  • Supports Agile type development
  • Supports Continuous Globalization
  • Automatic Notification
  • Strong checks on translated files and on base (U.S. English typically) files
  • Reduced number of errors due to translated files

LRM 1.5 release

  • Android Extension ‘xml’ is supported
  • IOS Extension ‘strings’ is supported
  • Ability to send a translated file for retranslation:
    • LRM_RESEND tag is used above any key in a translated file that is to be retranslated.
    • Error NONBASE_RETRANSLATE_TEXT is reported in the –source-issues report.
    • Any file with an LRM_RESEND tag is reported in the –files-to-prep report.
    • Any file with an LRM_RESEND tag will be in the next prep kit.
  • Ability to detect whether a project exists: Command –project-exists –project-name xxx will return successfully if the project xxx exists.
  • Ability to pseudo-localize project files: Command –pseudo-loc –locale is_IS -f C:\Lingoport\LRM-Client-1.5\lrm_pseudo_loc.xml –project-name xxx will pseudo-localize all xxx project files. In this example, the locale of the pseudo-localized files will be is_IS and the pseudo-localization configuration file that determines how to pseudo-localize is found at C:\Lingoport\LRM-Client-1.5\lrm_pseudo_loc.xml

Should you encounter problems or have questions, please email support@lingoport.com.

LRM 1.4 release

  • Prep Kit Due Date: Set the prep kit due date on a per locale basis. This due date will appear on the PrepKitStatus report.
  • Parameter Mismatch Error:
    • For a properties file, a PARAM_MISMATCH error will be reported if the translated file’s parameters do not match the non-translated (base) file parameters.
    • Error is reported in the –source-issues report.
    • Error is reported in the –import-issues report.
    • The flag that determines whether to detect parameter mismatch errors is located in the project definition file.
  • Modified Text Error: If the non-translated file (base file) has been modified since the last prep, then a MODIFIED_TEXT error will be reported rather than a MISSED_TRANSLATION error.
  • Missed Translation Error Detection: A MISSED_TRANSLATION error occurs when the text of the translated file is the same as the base file. The flag that determines whether to detect a MISSED_TRANSLATION error is located in the project definition file.
  • Reimport: Allow the user to import a previously imported prep kit file.
  • Files to Prep Report: Report on the content of the next prep kit.

LRM 1.3 release

  • Ability to create a changes-only prep kit: The option –changes-only has been added to the –prep-kit command in order to create prep kit files that contain only those key/values that have changed since the last prep kit.

LRM 1.2 release

  • Ability to ignore programmatic strings when importing a kit: Some resource files may contain strings that should not be translated; for example, the resource file may contain UI directives. To automatically add ignore tags to all keys that were not translated, the option –insert-ignoretags was added to command –import-kit.
  • Detect Client/Server mismatch: LRM will now issue an error if the client version is incompatible with the server version.
  • Change in location of LRM Project data: When installing the LRM client, user data, such as the lrmUserConfig.xml file as well as the report folders (logs, reports, prep_kit) will now be located in folder Lingoport_Data/LRM under the user’s home directory.

Lingoport Resource Manager 1.1 Features

  • Start an LRM Project with Translated Files: LRM simplifies the initial setup of a project when you already have some translated resource files. During the first --prep-kit command, LRM will find, verify and incorporate those translated files into your LRM project. Similarly, when a new target locale that already has translated files is added to an LRM project, LRM will validate and incorporate the additional translated files.
  • Simplified Project Definition File Creation: A wizard is now available to help you generate your LRM Project Definition XML file. Instead of copying and editing one of our sample project XML files, follow the wizard’s clear instructions to create a Project Definition XML file that you can then use with the --create-project command.
  • Stricter Import Command: To help ensure that the translated resource files are valid prior to importing them into the source code tree, the --import-kit command now requires a --kit-version option.

Lingoport Resource Manager 1.0 Features

  • A Product for Development Teams: Lingoport Resource Manager (LRM) is used by development teams to manage the delivery, validation and integration of translated resource files. It is not a translation product or a Content Management System.
  • Customize your LRM Project: An application’s resource files comprise a single LRM Project. You customize your project by modifying a Project Definition XML file, setting resource file types, target locales, and other information just once for your project.
  • LRM Kits contain all needed files for translation: Each time you need translations for your project, create an LRM Kit to send to your localization vendor.
  • Kit Version for tracking: Each kit is marked with a version number to track its translation progress and, once returned, is checked against the pre-translated files for errors and omissions.
  • Multi-User Project Support: There are two components to Lingoport Resource Manager: a server and a client. The server is installed once, while the client can be installed on many user systems. The server keeps track of Projects and Kits, allowing multiple users to share in the creation and integration of Kits for the same Project.
  • LRM’s Command Line Interface: Run simple commands or automate scripts to prepare kits for translation and to import translated kits into the source code.
  • Improve Processes: LRM will streamline your localization process, reducing risk and increasing quality.
  • Interaction with the Lingoport Dashboard: Install and configure the Lingoport Dashboard to show your LRM project’s localization status per locale and any potential issues. For details on a specific issue, use the Dashboard’s drill-down feature to view the individual lines in the corresponding resource file.
  • Continuous Integration Support: Update your Lingoport Dashboard with your LRM project status during a nightly build so that tracking the localization effort is part of your ongoing development.

Globalyzer Release Notes

Globalyzer 4.7 Release

Note: As of the 4.6 Release, Globalyzer requires Java 1.7. Please make sure that JDK 1.7 is installed on your machine before attempting to install the Globalyzer Client.

The following lists new features in this latest release.

  • The Globalyzer API: The Globalyzer API allows you to create Globalyzer projects and scans, execute scans, and generate reports from a java program. This enables projects to be created “on the fly.” For example, during code check-in, the check-in process could trigger the execution of a java program that calls the API to scan the source code, enabling timely feedback on its internationalization status. See the Globalyzer API reference page for more information on how to use this new feature.
  • LDAP for Enterprise Servers: The Globalyzer Server can be configured to use your company’s LDAP system. All Globalyzer user access and information is then managed by LDAP. Note: This feature requires special licensing. Please contact sales@lingoport.com.
  • Improved Rule Sets: Updated Globalyzer default rule sets, with specific attention on JavaScript and Objective-C.

Read the Press Release Here

Globalyzer 4.6 Release

Note: The 4.6 Release requires Java 1.7. Please make sure that JDK 1.7 is installed on your machine before running the 4.6 Client.

The following lists new features in this latest release.

  • Introducing String Operand Filters/Patterns: This feature (available for all languages except HTML) allows you to filter/retain string literals that are compared with, or assigned to, variables. For languages such as XML, you can use this to filter out string attributes.
  • Filter Strings used as Array Indices for C#, PHP, and JavaScript: C#, PHP, and JavaScript support Associative Arrays, where strings can be used to index arrays. String literals used in this manner are not user-facing and should be filtered. This filtering is now performed automatically; there is no Rule Set configuration work required. Note that this has only been implemented for C#, PHP, and JavaScript.
  • Managers can Assign Ownership of Rule Sets: Prior to this feature, only Rule Set owners could assign their Rule Sets to another user within the company. Now, managers can assign Rule Sets of team members to other users within the company.
  • Email False Positive Scan Results to Lingoport: Feedback from Globalyzer users regarding false positive Scan Results has been invaluable. To help facilitate this feedback, the Workbench now allows the user to select entries in Scan Results and email them to Lingoport via a menu selection. This information will help us further refine our default Rule Sets.
  • Improved JavaScript Rule Set: New filters have been added to the JavaScript Rule Set and help for JavaScript Locale-Sensitive Methods has been enhanced.
  • Secure HTTP: Globalyzer now supports the additional security of HTTPS for all data that passes between the Client and the globalyzer.com Server.
  • New version command for the Command Line Client: The Globalyzer Command Line Client now supports --version and -v to provide version information for both the Client and the Server.
  • String Method Filters/Patterns now filter/retain Strings within Nested Methods: If string literals are passed to a nested method, they will be filtered if the outer method is a String Method Filter, and retained if the outer method is a String Method Pattern.
  • Reason Field in Scan Results more Descriptive for Embedded Strings: In addition to displaying the pattern of the rule (that either filtered or retained the Embedded String), the Reason field now includes “Literal”, “Line”, “Method”, or “Operand”, to indicate the type of the rule.
  • Reorganization of Reference Section Help: The Reference Section Help has been organized into Command Line, Server, and Workbench Reference sections.

Should you encounter problems or have questions, please email support@lingoport.com.

Globalyzer 4.5 Release

  • Rule Set Inheritance: Rule Sets now support inheritance! A Rule Set can be created to extend an existing Rule Set. The new Rule Set inherits all the rules of the parent Rule Set and can add new rules and/or override inherited rules. This allows companies to centrally manage core Rule Sets and project teams can then inherit the modifications.
  • Comparing Rule Sets: Available from the Command Line Interface, Rule Sets defined on the server can now be compared, generating an HTML report with the differences.
  • Support for Android: The Java Rule Set has been enhanced to support android applications. New String Method Filters, String Literal Filters, and String Line Filters have been added to weed out false positive Embedded Strings.
  • Time Stamps in Console Output and in Show Log: Time Stamps have been added to the Console output as well as the Show Log HTML page.
  • Updated RESX Resource File: The generated RESX Resource File has been updated from version 1.3 to 2.0.

We skipped 4.4 as those are unlucky numbers in some parts of the world 🙂

Globalyzer 4.3 Release Notes

  • Shared Globalyzer Projects: Globalyzer project and scan configuration (without scan results) can now be shared. Instead of explicitly importing and exporting projects, Globalyzer manages these tasks automatically, enabling team members to work on the same project seamlessly. See the Shared Projects reference page for more information on how to use this new feature.
  • Import/Merge: When importing a Globalyzer project that already exists in your workspace, you now have the option to either Overwrite or Merge. Overwrite deletes your existing project before importing the new one; merge combines the imported project with your existing one.
  • Globalyzer Data Directory Location: During Client Installation, you are now prompted for the location of the Data Directory, where Globalyzer stores application data and log files as well as the optional HSQLDB database. The default is [userhome]/.globalyzer, but this can be set to another location.
  • Additional Help on Headless Globalyzer Install: The Client Installation download page includes instructions on how to install the Globalyzer Client via a script as opposed to a GUI. You’ll want to use this when installing Globalyzer to build machines where Globalyzer scanning can be part of the nightly build.
  • Suggested Rule Sets for Unsupported Languages: The Create Rule Set reference page provides Rule Set suggestions for currently unsupported languages.
  • File Inspector Report Line Counts: Line counts have been added to File Inspector Reports.

The following lists new features in the Globalyzer 4.2 release:

  • Objective-C Rule Set: We’ve added this important rule set to help you internationalize your iOS and other Objective-C applications. In addition to scanning for i18n issues in Objective-C source code, Globalyzer supports string externalization to Objective-C’s preferred text resource file type: strings
  • Ability to Assign Rule Sets to Others: Though team members can share rule sets, only the rule set owner can made modifications. This feature facilitates passing rule set ownership to another. Just edit the rule set and select a new owner in the Owner dropdown.
  • Launch Client without First Creating a Rule Set on the Server: This feature supports the natural process of using Globalyzer: first create a Project, then run File Inspector, then create Rule Sets and Scans.
  • Create Rule Sets from the Client: To facilitate rule set creation, Globalyzer now supports the ability to create new rule sets directly from the Client. You may still want do some customization on the Server, but it’s now even easier to create that first set of rule sets as you’re running the Client, creating your Globalyzer Project and looking at the results of your File Inspection report to determine which rule sets you’ll need for scanning your source code.
  • Additional default Scan Views: In addition to All Active, there are now default Scan Views for Priority 1Priority 2Priority 1 and 2IgnoreInvalidToDo,FilteredAll, and All but Active and Filtered.
  • Notification of Newer Globalyzer Versions on Client Startup: On Client startup, a popup displays if there is a newer version of the Client available or if there is a Client/Server version mismatch; the popup includes a link to the latest Client download.
  • Demo Results displayed based on Priority: When a demo user executes scans, up to 100 active results are reported. This feature focuses on reporting mostly higher priority issues. It reports 50 Priority 1 issues, 30 Priority 2 issues, 20 Priority 3 issues, 5 Priority 4 issues, and 5 Priority 5 issues.

The following lists new features in the Globalyzer 4.1.1 release.

This release includes various bug fixes and the following new features.

  • Additional options when pseudo-localizing your resource files:
    • Pseudo-localize all your base resource files at one time by using the new Localize All button.
    • Use the new Start and End fields to specify characters to be displayed before and after each string. This helps you quickly identify layout issues where the full string is not fitting. For example [String]
    • You can also specify that each character of the string itself be replaced by an accented character for easier differentiation from English strings. For example Šţŕîñĝ
  • Support for Delphi RC resource file type: The Delphi language requires its own version of the RC resource file type. Upon string externalization, a .pas file is created and updated, along with the .h and .rc files.
  • .NET Tutorial: To accompany our Java tutorial, the .NET tutorial takes your through the basic steps involved in internationalizing a simple .NET Web application.

The following lists new features in the Globalyzer 4.1 release.

With this release, we have added features to streamline the scanning and filtering process, enhance resource file management, and improve overall scanning efficiency.

  • Refine your Rule Set from within the Client: The Globayzer Client now allows you to create both filter and detection rules, rescan your code to see their effects, and update the Rule Set on the server when you are satisfied with the results. This Scan Result driven approach to fine-tuning your Rule Set should help you significantly streamline your scanning and filtering process.
  • Prioritize your internationalization work: Globalyzer now prioritizes its locale-sensitive method, general pattern, and static file reference detections (in addition to embedded string detections implemented in version 3.5), helping you focus on the most likely issues first. These priority settings can be customized. You’ll see the priority breakdown both on screen and in the many reports that are provided for you to track and manage your progress.
  • Retain and prioritize strings passed to specified methods: Rule Sets now include a new detection, called String Method Patterns. This feature allows you to specifically identify methods that are passed strings that would be displayed to the end user. For example, in javascript we have added confirm, in C# Show, and in java JLabel. By identifying these types of methods and configuring them in your Rule Set, you can set the priority for these string detections and ensure that they are addressed during your internationalization process.
  • Disable Scan Feature: Scans can now be disabled. Disabled scans can be configured but are not scanned (automatically or manually) and the scan results are not available/displayed. This feature is useful for limiting the amount of rescanning that occurs when configuring scans. The user can focus on one scan, disabling the others.
  • All resource types now support group mode: In group mode, externalized strings are grouped by file in the resource file.
  • All resource types now support comments: Comments can be added to resource files and will be preserved during subsequent string externalizations.

The following lists some of the features that are new for Globalyzer 4.0:

Globalyzer 4.0 takes advantage of the Eclipse Integrated Development Environment. Globalyzer 4.0 can be installed as a stand-alone application or as an Eclipse 3.7 plugin. This new architecture means you’ll be able to check out source, scan and fix internationalization issues with Globalyzer, build and run with your modifications, and check in your changes, all within your development environment!

Here are only some of the new capabilities you’ll have with Globalyzer 4.0:

  • Interact with source code repositories from the Workbench: CVS is included with the Globalyzer Workbench; plug-in for other source control systems can be easily added.
  • Manage multiple Globalyzer Projects from within the Workbench: Just click on each Globalyzer Project in the Explorer Window to switch projects.
  • More powerful searching: Search results are now in their own window for easy management.
  • New Resource File Editor: Create and edit your locale-specific resource files and check for duplicate, missing and unused resource keys.
  • Improved Globalyzer Help: To ensure that you have full use of Globalyzer, we’ve added several kinds of help – Context sensitive, Cheat Sheets, as well as an extensive online Help System – all within the Workbench.
  • More powerful Project Explorer window: With Eclipse’s underlying support, Globalyzer’s features can be applied at subdirectory and file levels, giving you much more flexibility in how you do your internationalization work.
  • Enhanced editing: Enjoy the full editing capabilities of an IDE from within Globalyzer.
  • Plug-in extensibility: Add additional functionality to your internationalization and application development environment using Eclipse’s plug-in support.

Be sure to check the help and run a tutorial to get a better idea of Globalyzer 4.0’s enhanced usability.

The following lists some of the features that are new for Globalyzer 3.7:

This is a minor release, with one particularly useful feature and a few bug fixes:

  • File Extension Filters: The new feature we’ve added for this small release allows you to filter files and directories from a scan by setting up File Extension Filters. The filters can be written using Ant patterns (useful when filtering directories) or regular expressions (useful when filtering files with common characters in their path).

The following lists some of the features that are new for Globalyzer 3.6:

With this release, we have added some new programming languages, as well as support to help your team share the string externalization work.

  • Qt Rule Set: Qt is a C++-based cross-platform application framework that has good internationalization support.
  • ActionScript Rule Set: Globalyzer can now scan and externalize strings from ActionScript code, used in Flex and Flash applications.
  • XML Rule Set: Scan attribute and tag data using Globalyzer’s new XML Rule Set.
  • MXML Rule Set: Used in Flex applications, MXML is a variant of the XML Rule Set. Scan the CDATA sections using an ActionScript Rule Set.
  • Shared String Externalization: Share the work of externalizing strings. Set up in Preferences, Globalyzer prefaces each string ID with your Unique User ID, ensuring string key uniqueness across your team.
  • Internationalization Scorecard: While this feature currently must involve Lingoport’s service team for configuration, we have created a new scorecard system that provides a dashboard of internationalization status and progress using XML data collected via scan history using Globalyzer’s Command Line. Please email scorecard@lingoport.com for more details.
  • Globalyzer Scorecard webinar recording: We recently discussed the new i18n scorecard in a webinar presentation which also featured guest-speakers Mike McKenna, Sr. Manager, International Engineering, from Zynga, and Leandro Reis, Senior Globalization Program Manager, from Adobe Systems. Click the following link to view the webinar recording of: Is it Internationalized? A New Way to Keep Score.

The following lists some of the features that are new for Globalyzer 3.5:

With this new release, our focus has been on making your internationalization work as productive as possible.

  • Streamline your project creation: We’ve added Copy Scan to the Project Properties dialog box, allowing you to set up a first Scan with all its customized settings and then make copies which retain all your prior customization.
  • Prioritize your internationalization work: Globalyzer now prioritizes its embedded string detections, helping you focus on the most likely issues first. You’ll see the priority breakdown both on screen and in the many reports that are provided for you to track and manage your progress. Issues of other scan types can also be manually prioritized.
  • Quickly ignore false positives: With our new features, Ignore this Line and Ignore this Issue, you can now select one or more issues in the Scan Results table, and then choose to append NLS (National Language System) comments at the end of the corresponding source code lines, indicating that Globalyzer is to ignore these issues during its next scan. In combination with Globalyzer’s rule set filters, this is an efficient way to ensure that your scan results only contain valid internationalization issues for your team to address.
  • Divide and conquer your work: The Scan Results can now reflect parts of the entire project by clicking on a subdirectory or file in the Source Tree pane and choosing View Directory/File Scan Results. This is an easy way to partition the internationalization work among a development team.
  • Locale-Sensitive method grouping: In version 3.4, we added groups to the Globalyzer Server; now we show those groupings in our Quick Summary pane as well as various Globalyzer reports. This allows you to manage and track your internationalization efforts one locale-sensitivie area at a time.
  • Use Globalyzer’s new XML report: This latest reporting format rounds out Globalyzer’s extensive reporting capabilities.
  • Monitor and manage your globalization work as part of your build process: Globalyzer Command Line and Ant Clients now support an XSL reporting option, which gives you the ability to transform your Globalyzer data into customized layouts and file formats as part of your nightly build. Check out our new XSL Reporting help to learn more about this feature and about the default XSL files included with your Client installation.

With this new release, our Globalyzer Server has been overhauled for increased customization of Rule Sets, along with management features, such as support for teams within your company.

The following lists some of the features that are new for Globalyzer 3.4:

Should you encounter problems or have questions, please email support@lingoport.com.

With this new release, our Globalyzer Server has been overhauled for increased customization of Rule Sets, along with management features, such as support for teams within your company.

The following lists some of the features that are new for Globalyzer 3.4:

  • As a Team Member you can:
    • Share Rule Sets with other team members
    • Create and manage Groups of Locale-Sensitive Methods
    • Add new Locale-Sensitive Methods to your Rule Sets, along with help links
    • Save Rule Set data to the Globalyzer Server respository to either download to your local system or allow others to add to their set of Rule Sets
    • All Rule Set data, including File Extensions, Filters and Detection Patterns can now have help associated with them
  • As a Manager you can also:
    • Create Project Teams and assign Team Members
    • View a team member’s Globalyzer Client scanning history and usage data which is now sent and available for viewing on the Globalyzer Server
  • In addition, as a Globalyzer Enterprise Administrator you can:
    • Alter the default Rule Set data that newly created Rule Sets will have
    • Modify and manage the Globlayzer Client’s File Inspector default groups

And here are some other important Globalyzer features that were available previous to this release:

  • File Inspector – Run this Globalyzer Client tool to get an inventory of your application files and their underlying programming languages. The File Inspector also helps you determine which Globalyzer Rule Sets you’ll need to create.
  • Batch scanning across multiple programming languages – Internationalization issues are quite different among programming languages, requiring Globalyzer to use different Rule Sets to detect the various internationalization issues. Use our batch scanning process across your multi-language code base. For example, for JSP’s you can combine HTML scanning with Java scanning in one effort.
  • Fast performance – How fast source is scanned depends a lot on the code you are scanning, but Globalyzer is running on well over a million lines of code in about the time it takes you to go get a cup of coffee. Subsequent scans are also much faster because of Globalyzer’s intelligence in not repeating work it has done already (e.g. skipping files that have not changed since the last scan).
  • Dictionary-based Filtering – Compares embedded strings found to dictionary entries, which helps further filter programmatic strings that should not be translated. This is particularly effective in isolating embedded strings for localization, while reducing the number of custom Rule Set filters to avoid false positive reporting. This feature can be enabled/disabled in the Edit=>Preferences dialog box.
  • Scan Results Reason – Scanning results list the filter or detection pattern used in categorizing an issue. For example, if the issue is filtered, the Reason column will display the Rule Set filter that was applied. In the case of a General Patterns scan, if the issue is not filtered, the Reason column will display the Rule Set’s General Pattern that was used to detect the issue.
  • Keeping track of issues you want to ignore – Besides Globalyzer’s great filtering capabilities for isolating complex internationalization issues, Globalyzer tracks your code line by line, so that you can elect to ignore, or even emphasize issues, and track and revisit them without Globalyzer needing to insert its own comments in your code. That keeps your code clean, just the way you like it.
  • Tight integration between Globalyzer Client and Server – You can quickly navigate to your Globalyzer Server account to access your Rule Sets, customizing them for more refined Globalyzer scan results.
  • Command Line, Ant and Maven Support – Command line and Ant integration offer tremendous power in supporting entire teams of developers in monitoring and measuring internationalization. With this integration, Globalyzer can be used in assessing world-wide readiness. Read Globalyzer’s Maven Integration help to assist you in setting up Maven to run Globalyzer Ant tasks.
  • Database enabling of Globalyzer Client – Globalyzer Client uses a database for project and scan data. It can use its own embedded (file system-based) database, or you have the option to create a database on an existing MySQL database server. This facilitates comparing Globalyzer results over time, tracking individual internationalization issues across scans and sharing results and fixes with your fellow developers.
  • Easy sharing of scan results for fixing i18n issues – Scan results can be quickly and easily exported and imported so that teams of developers can work together to fix internationalization issues efficiently.
  • String externalization – String externalization supports both grouped and appended resource files for incremental translation support.
  • Globalyzer Client PseudoJudo – Simulate another language for your resource files by adding non-English characters to grow each of your strings by a set percentage.
  • Globalyzer reports – With our extensive reporting functionality you can produce summary and detailed reports in various file formats (txt, csv, Excel) for sharing Globalyzer output with your colleagues.

The following lists some of the features that are new for Globalyzer 3.3:

  • New Aggregate Summary Report – The Quick Summary information from each of your scans can now be output to an Excel file, for an easy way to report on your overall scanning results.
  • New XML Detailed Report – In addition to Excel and CSV format for your scan results, Globalyzer now supports XML format.
  • Better PseudoJudo – Simulate another language for your resource files by adding non-English characters to grow each of your strings by a set percentage.
  • Maven Integration Help – Read Globalyzer’s Maven Integration help to assist you in setting up Maven to run Globalyzer Ant tasks.
  • Command Line and Ant Enhancements – Added support for Batch Scanning from the Command Line or Ant Clients.
  • Change your Globalyzer Client’s Data and Log File Directories – Read Globalyzer’s Command Line Client Help for detailed information on how to change the location of Globalyzer’s Data and Log files from its default [userhome] directory.

The following lists some of the features that are new for Globalyzer 3.2:

  • Dictionary-based Filtering – Compares embedded strings found to dictionary entries, which helps further filter programmatic strings that should not be translated. This is particularly effective in isolating embedded strings for localization, while reducing the number of custom rule set filters to avoid false positive reporting. This feature can be enabled/disabled in the Edit=>Preferences dialog box.
  • Scan Results Reason – Scanning results now list the filter or detection pattern used in categorizing an issue. For example, if the issue is filtered, the Reason column will display the Rule Set filter that was applied. In the case of a General Patterns scan, if the issue is not filtered, the Reason column will display the Rule Set’s General Pattern that was used to detect the issue.
  • General Patterns Line Filter – The General Patterns scan now supports a line filter which filters detections based on patterns found in the source code line.
  • .properties files – .properties files as a Resource File type are no longer restricted to only Java Rule Sets. Globalyzer now supports this key-value format for all programming languages, allowing more customization and flexibility during string externalization.

The following lists some of the features that are new for Globalyzer 3.1:

  • JVM max memory increased – The max memory for the JVM that Globalyzer runs in has been increased to 1024 MB. If you need to modify this (due to memory limitations or other reason) you will need to change the max memory startup argument (in the shortcut or startup script) from “-Xmx1024m” to another value (e.g. “-Xmx512m”).
  • File Inspector – You can run this utility to get an inventory of the programming languages you have within your source code, and help with which Globalyzer rule sets you’ll need to create.
  • Improved default rule sets on the Globalyzer Server – This gives you better results faster, increasing the number of default filters within many rule sets.
  • JavaScript enhancements – Added Unsafe Method support to JavaScript rule set, and string externalization to .JS resource files.
  • Client-Server rule set integration – Tighter integration of rule set creation on the Globalyzer server, with auto-updating on the Globalyzer Client.
  • String externalization enhancement – Enhancement of string externalization when appending existing resource files for incremental translation support.

The following lists some of the features that are new for Globalyzer 3.0:

  • Database enabling of Globalyzer Client – Globalyzer Client now uses a database for project and scan data. It can use its own embedded (file system-based) database, or you have the option to create a database on an existing database server (MySQL or PostgreSQL). This facilitates comparing Globalyzer results over time, tracking individual internationalization issues across scans and sharing results and fixes with your fellow developers.
  • Command-line and Ant integration – Command line and Ant integration offer tremendous power in supporting entire teams of developers in monitoring and measuring internationalization. With this integration, Globalyzer can now become the benchmark for localization readiness.
  • New reporting functionality – With the new reporting functionality you can produce summary and detailed reports in various file formats (txt, csv, Excel) for sharing Globalyzer output with your colleagues.
  • Easy sharing of scan results for fixing i18n issues – Scan results can be quickly and easily loaded into Globalyzer’s Client desktop interface so that teams of developers can work together to fix internationalization issues efficiently.
  • Single-pass scanning of large code volumes – Previous versions of Globalyzer were limited in the amount of source code that could be scanned in a single pass, so when you wanted to scan large applications you needed to break up the source. Now with Globalyzer, you can scan literally millions of lines of code at a time.
  • Batch scanning across multiple programming languages – Internationalization issues are quite different among programming languages, requiring Globalyzer to use different rule sets to detect the various internationalization issues. We’ve now allowed you to batch scanning processes across your multi-language code base. For example, for JSP’s you can combine HTML scanning with Java scanning in one effort.
  • Keeping track of issues you want to ignore – Besides Globalyzer’s great filtering capabilities for isolating complex internationalization issues, Globalyzer now tracks your code line by line, so that you can elect to ignore, or even emphasize issues, and track and revisit them without Globalyzer needing to insert its own comments in your code. That keeps your code clean, just the way you like it.
  • Faster performance – How fast source is scanned depends a lot on the code you are scanning, but Globalyzer is running on well over a million lines of code in about the time it takes you to go get a cup of coffee. Subsequent scans are also much faster because of Globalyzer’s intelligence in not repeating work it has done already (e.g. skipping files that have not changed since the last scan).
  • New look on the interface – We redesigned the Globalyzer Client’s UI, giving it an updated look and feel. We did this to enhance usability and provide flexibility for upcoming feature enhancements.
  • Improved programming language support – Globalyzer already supports a wide variety of programming languages, and we’ve enhanced the support.
  • Tighter integration between Globalyzer Client and Server – You can now quickly navigate to your Globalyzer Server account to access your rule sets, customizing them for more refined Globalyzer scan results.

Cisco TelePresence

Cisco TelePresence, which debuted in 2006, is an advanced video conferencing system developed by Cisco Systems. Designed to link together conference rooms at any two points in the world, TelePresence provides a 1080p video feed along with spatial audio, creating a virtual conference room.

Scope of Work

Cisco initially hired Lingoport to audit TelePresence source code for internationalization (i18n) issues in order to avoid potential costly issues before moving on to localization (L10n). Through a static analysis of the TelePresence code using Globalyzer—a client/server software internationalization system—Lingoport was able to establish a clear picture of the internationalization issues and create a well-defined path toward internationalization. This avoided the uncertain trial and error outcome of relying on iterative testing, script-based searching or human line-by-line review, which are slow, incomplete and error prone processes. With this understanding, Lingoport architects and Cisco engineering discussed best alternatives for an internationalization architectural approach, and built plans that accommodated release cycles for concurrent i18n and new feature development. Cisco then contracted with Lingoport to implement internationalization development and testing services.

Challenges

Though there had been initial efforts in some of the code to support internationalization, there was a large effort needed. TelePresence included several distinct application components, including multiple programming languages as well as sophisticated hardware and build environments. Concurrent product development was extremely active. A nearly year-long project plan was developed to support the release of TelePresence into 28 languages, and a number of additional locales. This plan was implemented within a busy development, testing and release schedule that had already been set.

In order to maintain the original development schedule and implement a robust internationalization plan, teams were augmented and allowed to branch off and work on their piece of the code.

The Lingoport Solution

Through the use of Lingoport’s Globalyzer i18n software, the teams were able to itemize and walk developers through code refactoring efforts. This facilitated tasks such as string externalization and changing methods/functions/classes and programming patterns that inhibited or prevented locale support requirements. Globalyzer also made the effort more scalable as developers had a clear path of action and utilities to speed up the process. Lingoport’s engineering team added internationalization support to the architecture and refactored code to support worldwide locale requirements. Additionally, when Cisco engineering added new code and features to the build,  it was checked using Globalyzer for new i18n issues. Internationalization criteria were added to testing protocols and functionality was assured. Lingoport and Cisco also coordinated with localization efforts so that L10n testing could be integrated with i18n functional testing, without delay.

In May of 2011 Richard Faubert, QA Manager at Cisco, joined Adam Asnes of Lingoport and Gary Condon of Sajan to review and discuss some of the challenges faced in internationalizing and localizing TelePresence. Click here to view “Internationalizing and Localizing Cisco’s TelePresence – A Case Study.”

Conclusion

Internationalizing a large code base is an extensive effort, but it can be successfully executed even on an actively developing product. Using Globalyzer, developers can accurately gain valuable metrics for planning, step through and fix issues during implementation and facilitate i18n verification and testing. Lingoport’s services expertise ensured successful delivery, on time, and on budget. Augmenting the development team with expert tools and help from Lingoport allowed Cisco to concentrate on new feature development while the internationalization experts at Lingoport were able to refactor the existing code base.

When developing new software, internationalization can be an integral part of the process in order to avoid costly subsequent localization mistakes and a potential loss of revenues from new target markets. Internationalization issues, from basic to complex, are likely to develop with large development teams even when internationalization is within the product development requirements. Thinking that it won’t happen is a bit like thinking developers won’t accidentally create bugs and inefficiencies in code. Internationalization products that identify issues, help with remedies and monitor global readiness ensure quality and on-time global releases. Using an adaptable i18n tool like Globalyzer allowed Cisco TelePresence to be successfully internationalized in a timely and predictable manner.

Sycle

Code base internationalization support for Sycle by Lingoporti18n Project Support Services Accelerate International Opportunities

About Sycle

In six short years, Sycle built a dynamic, growing business supplying the most advanced online patient management and marketing application to over 3,500 hearing care practitioners in the US and Canada. But when the world came calling, a daunting task lay ahead.

Scope of the Work

A prospective partner approached Sycle to take their business to overseas markets. Like many growth businesses, however, Sycle didn’t have the depth of experience – or easily available resources – to take on the software re-engineering required for the task.

Sean Shofstall, Sycle’s CTO, understood the challenge: the company’s code base, developed for domestic markets, was full of common impediments to easy, repeatable localization. And the confusing array of localization options wasn’t easy to sort through, as well.

Lingoport’s Solution

Lingoport’s endorsement of a localization partner helped get the ball rolling, and under Sycle’s management, both the i18n and localization projects were completed in timely, cost-effective fashion.

“It’s easy to get bogged down in localization projects if you’re new to the space,” said Shofstall. “Unless you’re lucky enough to have in-house software internationalization resources – and we aren’t – it pays to bring in the experts. Lingoport’s work helped make our path to international markets smoother than we’d ever hoped.”

Internationalization and Localization Case Studies

Helping Technology Leaders Take on the World

Globally focused technology companies have turned to Lingoport to accelerate and improve how their software is built for world markets.

The following case studies are a sampling of Lingoport’s commitment to provide best-of-breed internationalization solutions to Fortune 500 enterprises as well as smaller technology firms with important globalization plans.


CiscoCisco Systems approached Lingoport for help meeting aggressive i18n requirements and deadlines for their critical TelePresence product. The effort involved using Globalyzer and i18n consulting services to enable this large application with multiple programming languages and a complex architecture, to support a wide range of locale requirements.

Read the Cisco TelePresence internationalization case study.


Copyright Clearance CenterCopyright Clearance Center (CCC) was prompted to adapt their multi-tiered platform for a German customer they signed. They worked with Lingoport to address their i18n technical debt while supporting concurrent development of new features.

Read the Copyright Clearance Center internationalization case study.


LanyonLanyon was challenged with supporting growing information interfaces that needed new multicultural requirements. By choosing Lingoport as their i18n vendor, Lanyon’s limited engineering resources were able to keep focusing on their core tasks. Read the Lanyon internationalization case study.


IronPlanetThis leading online marketplace for heavy equipment knew their global business prospects depended on a well organized i18n initiative. They turned to Lingoport for a successfully internationalized release with fast market results.

Read the Iron Planet internationalization case study.


Internationalization case study with sycle.netApproached by a larger corporate investor/partner to take their hearing care practice care management application global, Sycle relied on Lingoport to analyze their code and augment their team to get the job done.

Read the Sycle.net internationalization case study.

Customer Success Webinars

Below are a number of presentations Lingoport has held with its respective customers on their various successes in working with Lingoport. We’d love to help with your internationalization endeavors. Let us know how we can help.
Lingoport & VMware: Globalization of Partner Central

Partner sales make up the bulk of VMware’s revenue. When VMware set out to globalize its partner portal site, there was a lot at stake to create a successful initiative. In this webinar, VMware describes how they worked along side with Lingoport, on optimizing requirements, development and their ongoing portal globalization process.

Analytics for Internationalization with Cisco’s Internationalization Architect Gary Lefman

There’s a saying, what gets measured gets improved. In this webinar, Gary Lefman of Cisco teams up with Lingoport in describing methods of measuring internationalization issues that block software localization, and how to measure them in a dashboard so that the data can bring about improvements.

Internationalizing & Localizing Cisco’s TelePresence – A Case Study

Cisco, along with Lingoport, discusses how internationalization was successfully undertaken and implemented together with Lingoport’s i18n development services. Cisco’s TelePresence is a leading meeting platform involving multiple hardware and software requirements and a large amount of source code that all needed to be internationalized. Read the Cisco TelePresence case study.

Supporting i18n Across your Organization with Intel

Hear how Intel provides centralized internationalization and localization support across their development teams using Globalyzer.

Lingoport & Cisco: Building an i18n & L10n Plan in your Organization
Learn how Cisco and Lingoport worked together to analyze and plan internationalization and localization efforts by building metrics and a clear path forward, while effectively gaining support and budget.[/sws_toggle2]

Lingoport’s Management

Lingoport’s management team has years of experience in the software globalization industry as software engineers and managers. We’ve all felt the impact that software globalization efforts can have on release goals and revenues. Our engineering services teams are all highly experienced in a wide variety of software technologies and complexities.

Adam Asnes, President & CEO
Adam Asnes founded Lingoport in 2001 after seeing firsthand that the niche for software globalization engineering products and services was underserved in the localization industry. As Lingoport’s President and CEO, he focuses on sales and marketing alliances while maintaining oversight of the company’s internationalization services engineering and Globalyzer product development. Adam is a frequent speaker and columnist on globalization technology as it affects businesses expanding their worldwide reach. For creative inspiration and fun, Adam enjoys cycling and Colorado’s Rocky Mountains.


Lori Cameron, Vice President of Engineering
Lori Cameron is responsible for client project delivery as well as commercial software development at Lingoport. In her over 20 years in the software industry, Lori has served in engineering management roles at Software Publishing and NewWorldIQ, involved with the design, development, and delivery of shrink-wrapped and web-based software applications. She is a graduate of UC Berkeley’s Department of Electrical Engineering and Computer Science. Lori’s hobbies include running, biking, climbing, and her daily latte.


Nina Handler, Vice President of Operations
Nina Handler manages human resources, operations and finance at Lingoport, as well as overseeing financial resources on internationalization service projects. Prior to joining Lingoport, Nina served for 8 years with Fiduciary Trust International in New York as an Economist in the Fixed Income area. In addition, she worked in Washington DC for the Executive Office of the President in the Council on Wage and Price Stability. She holds a BA in Economics from SUNY Binghamton. Nina enjoys spending time with her two children and husband, and enjoys hiking with her dog.


Olivier Libouban, Software Globalization Lead
Olivier Libouban, a native of France, has been working for 25 years in the software industry, for large corporations and start ups, as a software engineer and as a project manager. Olivier has a wide ranging experience in the US, France, Switzerland, and Norway, in R&D departments as well as for client projects of all sizes with complex software environments. Olivier has a Diplôme d’Ingénieur from the National Institute of Applied Sciences in France and a Masters Degree in Computer Science from the University of Wisconsin at Madison.


Lingoport’s Privacy Policy

Your Privacy is Important to Us…

We will never sell or rent any information that you provide to Lingoport.

We follow the Can Spam Laws for best practices in email campaigning. If you have any questions, please .

Email List

Lingoport’s WorldReady Newsletter is an e-newsletter that includes internationalization tips, as well as related industry information we feel you may find of interest.

If you choose to subscribe to the email list, we will not provide your email address to any third parties. We firmly disapprove of Unsolicited Commercial Email, ‘spam’, and unsubscribe information is included at the bottom of every email we send out.

If you do filter your email, please accept emails from us by adding us to your address book. This will allow our site and staff to keep in contact with you.

You will be added to our newsletter if you fill out the Contact Us form on our home page. Keep in mind, you can easily and securely unsubscribe at any time.

Globalyzer Software

Lingoport’s Globalyzer Software helps development teams find, quantify and fix internationalization issues in large amounts of source code over many programming languages and globalization requirements.

If you choose to subscribe for a trial version or a paid version of Globalyzer, we will not provide your email address to any third parties. We firmly disapprove of ‘spam’.

To keep you informed of any changes to our software, you will be added to our Lingoport WorldReady Newsletter. For your convenience, there is unsubscribe information included at the bottom of every email we send out.

If you do filter your email, please accept emails from us by adding us to your address book. This will allow our site and staff to keep in contact with you about updated versions of Globalyzer, as well as new features.

External Links

This site contains links to other sites. Lingoport is not responsible for the privacy practices or the content of such Web Sites. However, we do try to make sure they are reliable. If you do encounter problems, please inform us so we can resolve them or remove links to potential problem sites from our site, in an effort to save others from a bad experience.

Contacting Us

If you have any questions about our privacy policies, the practices of our company, or your experience with our product or web site, please feel free to contact us. We can be reached by phone at +1.303.444.8020 (9am – 5pm Mountain Time) or any time by email at (available anytime).


Copyright Clearance Center

Internationalizing a Multi-Layered Application Suite with Concurrent Development

A Case Study Discussing Internationalization for Copyright Clearance Center’s RightsLink Customer Application

Internationalization Issues

Operating on a tight deadline, Copyright Clearance Center (CCC) had to implement internationalization while other teams were developing parts of their German customer’s application. This business and development plan is not unusual, as rarely can a development team focus entirely on internationalization rather than developing new features, and execute for a tight deadline. CCC’s code base was complex and their application suite was developed for needs of customers over time. It used different technologies across modules, leading to unique internationalization challenges, including:

  • Different applications developed by various teams and styles.
  • Architect’s differing ways of handling database requests, configurability, string handling, and other operations.
  • Implementing internationalization into concurrent development work.
  • Configuration standards specific to applications.

Business Case

CCC’s RightsLink solution simplifies the licensing of content that allows businesses and academic institutions to quickly get permission to use copyright-protected materials – all while compensating publishers and content creators for the use of their works.

Since its founding in 1978, CCC had predominantly worked with publishers in the United States. In a major foray into the international markets, CCC was able to sign on a key German consortium of publishers and was soon confronted with internationalizing and localizing its RightsLink customer facing application for Germany and other potential locales.

Why Lingoport?

After evaluating a number of internationalization providers, CCC engaged with Lingoport for an initial internationalization assessment. Lingoport used both static analysis of RightsLink source code using Globalyzer—Lingoport’s enterprise internationalization system—and architectural analysis of internationalization requirements and development planning.

CCC recognized that Lingoport’s expert i18n engineering staff would be a great asset working under release pressure to deliver a quality internationalized product.

The Lingoport Solution

CCC chose a hybrid i18n implementation solution and worked hand-in-hand with Lingoport’s engineering team. Tasks included i18n design, development and quality assurance based on agile methodology, with four sprints of four weeks each.

The internationalization included Unicode enabling of JSP pages to string externalization and JQuery date picker. JIRA was used to assign tasks in an agile approach.

Internationalization and Risk

Internationalization is its own development specialty. Expertise and experience count when identifying potential issues, planning for new markets, designing approaches and implementation solutions. Furthermore, potential delays and surprise costs are highly disruptive to business agreements and new customer relationships, potentially also dragging the development team from other core project development.

Successful Release

The internationalization effort for CCC’s Germany based customer was successful, on time, on budget and very well received. John Boyea, a Principal Engineer at CCC, commended Lingoport’s efforts, saying, “You  have it all wrong. It is I, who should be thanking you.  We asked you to work under difficult circumstances, with very aggressive goals and limited resources.  Linda Lawson (Lingoport’s Engineering Lead) met or exceeded my expectations in every regard.  The same for Olivier Libouban (Lingoport’s Globalization Lead).  We simply would not have had the success we have had to date without the two of you.  So I thank you both for that very much.  On a personal note I enjoyed working with the both of you as well.  I feel I got to know you in some limited way and for that I am grateful.  Best wishes on your future endeavors.”

About Copyright Clearance Center Rightslink

Copyright Clearance Center, Inc. (CCC), a not-for-profit organization, is a leading provider of collective copyright licensing services for corporate and academic users of copyrighted materials. The company procures agreements with rightsholders, primarily text publishers and authors for print and online, and also acts as agent for them. For additional information, please visit their website.

Next Steps

We have found that every internationalization effort has its own business needs and technical requirements, best served by getting started with a conversation. Contact Lingoport by email at info@lingoport.com or call +1 303 444 8020 to arrange a consultative discussion.

Lanyon

Lanyon Website Localization and Internationalization Case StudyOutsourcing Drives Competitive Advantage for Travel Technology Leader

About Lanyon

Lanyon, a leading information distributor to consumer travel sites like Expedia, as well as corporate travel departments, faced a problem familiar to every globally-ambitious technology firm.

Scope of the Work

Their international customers (chiefly hotel operators) preferred to work with the company’s information-gathering applications in their native languages. And when your business depends on the accuracy and timeliness of such information, internationalization becomes a strategic issue.

Philip Blahut, Lanyon’s director of software development, saw an opportunity. More than simply a convenience for their customers, language and culturally-specific interfaces represented a crucial competitive advantage for Lanyon.

Lingoport’s Solution

Blahut turned to Lingoport for several reasons. Like many firms, Lanyon lacked the specialized expertise for rebuilding information interfaces to support multicultural requirements. More importantly, Blahut needed to keep the company’s limited engineering resources focused on core tasks. And Lingoport’s long-standing relationships with leading l10n service providers made the choice simple.

Lingoport’s outsourcing team stepped in to manage the entire internationalization process, including coordination with Lanyon’s preferred L10n partner. “Lingoport’s team was completely professional, setting clear expectations and timelines, then meeting them,” said Blahut. “It allowed me to stay ‘hands off’ in completing the project, and insulate our critical internal resources from distractions we couldn’t afford.”

In short order, the work yielded top line results as well. A Chinese hotel customer chose Lanyon as their information redistributor, in part because Lanyon was the only alternative that supported native-language information exchange. Other Asian clients followed.

“As we expand our global reach, we’ll need more support in converting our applications for world markets,” Blahut asserted. “We expect Lingoport’s services to be a major part of those efforts.”