Globalization of Software in a Flat World
These days you will see numerous articles on how the world is becoming “Flat” and how the playing field is getting leveled. Inspired by Nandan Nilekeni’s quote, Thomas Friedman has written an entire book on this topic. Quoting Friedman “Several technological and political forces have converged, and that has produced a global, Web-enabled playing field that allows for multiple forms of collaboration without regard to geography or distance - or soon, even language.”
All this wouldn’t have been possible without the advancement in technology. In today’s times, businesses are not restricted to any single city, country or continent. The reach of services or products is expanding across the globe and the user base is forever increasing. In such a business scenario where the users or consumers belong to diverse cultures, speak and understand different languages, it is becoming imperative to produce software and offer services which cater to the globalized world.
As the world is getting flatter, it is a business risk for companies to ignore the huge consumer base offered by emerging economies like India and China. Companies can no longer afford to ignore the business potential of such diverse geographic locations. It is no longer enough to be the best in your neighborhood. The market is expanding. Companies have to invest in making their products or applications suitable for use in multiple geographic locations and across multiple cultures and languages.
The concept of Globalization of Software is not new. Companies like Microsoft, Apple, IBM, Oracle etc have realized the potential long back. All these companies have a huge user base thanks to their multi-lingual products which are customized as per the consumer’s location, culture and language. Apple’s iPod probably wouldn’t have found so much success if it had an ‘English only’ user menu, The Windows operating system by Microsoft has a huge user base in non-English speaking countries simply because it has a customized version available for different languages. There are many more examples which all point to the fact that in today’s world, no company worth its salt can ignore the business potential offered by the emerging economies across the globe.
As globalization increases, the importance of outsourcing cannot be underestimated. Software services based companies have to realize the business potential offered by this growing demand of globalized software. Companies have to invest in imparting the skills required for Internationalization (I18N) and Localization (L10N) of a product or application. They have to come out with offerings which can help product companies across the globe to globalize their products. Software Internationalization and Localization is a very niche area which IT consultancy and services based companies have to tap.
If by now I have managed to convince you as to why there is a need for globalization of software, let me touch upon the key considerations for making software which is ready for global use. Internationalization is the first step towards producing a globally accepted software product. It ensures that the software is ready to be adapted to different languages and cultures without making engineering changes. Localization is the next step to Internationalization. It ensures that the software is customized for a specific region or language by adding locale specific components and translating text. Together, these two steps are sometimes referred to as Globalization (G11N).
One of the key considerations during Internationalization is to write software whose environment can be modified dynamically without the software needing to be recompiled. This means that the software should have an architecture wherein add-ons or plug-ins can be added to the software in order to support a new language or language feature. Any UI specific labels, messages, titles etc should be separated from the application executable. All user displayable text should be moved to a resource bundle or message database which can be translated for all the supported languages without the need to recompile the software. The user interface should be designed in such a way that it supports left to right text and user controls for languages such as German, French etc and also support right to left orientation for languages such as Arabic and Hebrew. Along with this region specific issues such as date/time format, currency format, number format, address format, name format etc must be tackled. Third party integration issues should be handled, help files and application manuals etc should be translated, the software installer itself should support different languages and the same installer should be able to install the software for all the supported languages. In addition to all this database issues related to internationalization and localization must also be addressed. Today when M&A is not very uncommon, we must also understand the integration complexities when software from different geographic locations is required to be integrated. There is a cost and effort associated with making these changes which depends on the level of globalization required.
Most software users expect the software to be written in their own language. Though there is a definite cost to making software available globally, we cannot ignore the long term benefits it offers. If the software is well adapted to the user’s language, the user can understand and use the software better, there will be less customer support issues which indirectly translates to better business. Software globalization can give a product strategic advantage over its competitors in the flat world.

