Continue reading "Internationalization considerations for Mobile applications" »
Continue reading "Internationalization and its dimensions in Product space" »
Continue reading "Software service in the Japanese market" »

Continue reading "Unicode roadmap for the Indian rupee symbol" »
Crowdsourcing is the new buzz word floating around the internet lately. Wikipedia defines it as "the act of outsourcing tasks, traditionally performed by an employee or contractor, to a large group of people or community (a crowd), through an open call". Though this a new term, the concept itself is not so new. It literally means outsourcing to the crowd. The Open source revolution which started almost a decade back is successfully tapping the power of the community to develop software. The key driving point of Crowdsourcing is participation and collaboration with the general crowd (or users) who use your applications and leveraging their expertise and time to enhance your product. Companies like Microsoft, Apple and Google etc have successfully tapped the potential of Crowdsourcing and made millions out of it by virtually investing nothing.
Continue reading "Leveraging the power of Crowdsourcing for Localization" »
We have often noticed customers developing cold feet over suggestions of reimplementing an existing legacy product completely onto a new technology. There is resistance towards venturing into the unknown especially with respect to time-tested running products, which have done well in a specific geography. To do business in a wider market, the product would need to be internationalized, and then localized to specific regions. It is of course much easier when the product has been developed in an internationalization-aware technology like Java or the .NET languages. But, when the product is a legacy product implemented in C/C++ targeting a specific geographical market (and developed in the pre-globalization era), the challenge is acute. The demand is often to magically transform the existing code base into an I18N aware one with the minimum changes possible. To top the icing, some customers (especially in Japan) demand source code portability across operating systems.
I18N enabler tools in the market available today surely help in identifying very obvious I18N issues (hardcoded strings, non-Unicode aware APIs etc) in existing legacy code, but for a wholesome solution, there are other critical dimensions especially with regard to encoding that need consideration.
Continue reading "Internationalizing Legacy Software - The Other Dimensions" »
Continue reading "Internationalization - Concepts of String Collation and approach" »
Staffing for i18n/L10n projects is normally done by bringing in people who have prior experience of Internationalization along with a team which is well versed in the technology underneath (Java, C++ etc). In these cases, there is generally the overhead of training the team on i18n and L10n concepts. Unless the whole team fully understands the Internationalization process, they will not be very productive. In the real world, it is almost impossible to get a perfect team which has good Internationalization experience in addition to the required technical skills. Also, with tight deadlines looming over us, most of the times it is not possible to invest a lot of time in training the team on i18n/L10n concepts. So the best way to execute the project is to improve the productivity of the team by using Software Productivity Tools and in turn enhance the productivity of the Internationalization process itself.
Continue reading "Enhancing Productivity of the Internationalization Process" »
Continue reading "Globalization and the Japanese Software Industry" »
Almost always, during the design discussion of any Internationalization project, one of the questions asked by the client is, “So, will Internationalization have any impact on the performance of the application?”. No matter what you think, there is no denying the fact that Internationalization does have a performance impact on the application, whether it is big or small. There may be situations where the business benefits of Internationalization will outweigh the performance criteria and in such situations it makes sense to go ahead with Internationalization even at the cost of some amount of performance degradation. However a good design can help you in avoiding severe performance hits.
Continue reading "Internationalization and Performance considerations" »
Over the years our project teams have matured in the way they handle the implementation of an Internationalization project, however things were not always so smooth. There were times when the project was tested and delivered to the client, but it refused to work on the client’s machines. The offshore team just couldn’t figure out the reason for this to happen. A lot of fire fighting effort was then required to get things back on track and take corrective actions. Most of the problems were due to wrong planning, lack of technical understanding and incorrect assumptions. Things are pretty much streamlined now with an i18n Center of Excellence (CoE), i18n frameworks, analysis tools, POC’s and best practices in place. Here I am going to recollect my earliest Internationalization experience and what we learnt from it.
Continue reading "Is Big Bang the right approach to Internationalization?" »
The concept of Globalization and the estimation model has been explained very well by Aviraj Singh in his post Effort estimation for a Globalization project. Being a database person I always look at it from a different perspective, giving a bit extra weightage to database. There are lots of granular intricacies that one has to think of before deciding the solution for supporting Unicode data in databases. It can be achieved though Unicode database i.e. Upgrading database character set to one that supports UTF-8 encoded characters as SQL datatypes like CHAR/VARCHAR2 etc. Another option can be Unicode Datatype i.e. to support multilingual data only for certain columns by using Unicode national character set to store multilingual data in SQL NCHAR datatype attributes , without making any changes to database character set. The most confusing and key decision for Globalization project is whether one should opt for Unicode database or Unicode data types for supporting multiple languages in database. This is a key decision for the success of any Globalization project and will also have a considerable impact on effort estimations. An incorrect choice at this stage can lead to a lot of rework and end hour surprises.
Continue reading "Deciding Optimal Unicode Solution for Globalization Database" »
Imagine yourself going to Japan to open a restaurant. Your market research says that your burgers are going to sell like hot cakes there, so you have planned a major investment there and drawn up plans for expansions. You land at the Narita airport and are absolutely clueless on how to get out of there. You look around and find that all directions and signs in Japanese. You try to ask for directions but all you get is blank stares because no one understands English. Somehow you manage to find your way out and get busy with your work. After a lot of hard work, you finally open your restaurant but you don’t find many people walking in. Your business goes dry and it’s difficult to survive with so much local competition around. What is really going wrong? Didn’t your market research say that you are bound to succeed?
As a product company your team has come up with a brilliant concept which has tremendous marketing potential in your country. Your marketing survey shows that the concept will soon catch up with other countries across the globe and you can capture the overseas market too. The only catch is that the product will be required to be globalized before it is launched in the international markets. A global launch is still 5-6 months away, so what product strategy will you adopt? Develop the product in English and later when you have access to the global markets, think of internationalizing it or start developing an internationalized version of the product right from conceptualization stage so that you are ready to penetrate the global markets when the time comes? This is a question most product managers will face while developing a product.
Continue reading "Internationalization and the development life cycle" »
Effort estimation is the first step to undertaking any software project and a Globalization project is no different. Effort estimation for a product or application which needs to be Globalized follows more or less the same estimation principles as regular maintenance projects, yet there are no defined methods specifically for estimating the amount of I18N or L10N changes required. While working on the proposal for a Globalization project for one of our clients we were faced with the dilemma of adopting standard methodologies like SMC based estimation, FP based estimation etc or trying to create a hybrid and come up with our own estimation model which follows the same estimation principles but is more tailored for globalization projects. Finally we came up with a raw estimation model which was fine tuned over time and gave us estimates which were statistically inline with the results from other maintenance projects.
Continue reading "Effort estimation for a Globalization project" »
Have you ever got involved in an Internationalization related project and faced a very basic question, “Which encoding should I use in my application?” I have come across this question several times and have realized that I still don’t have a simple and straightforward answer to this question. There are a lot of factors which need to be considered while going with a particular encoding and that choice might be the crucial factor which determines the success or failure of the project. Choosing the wrong encoding for the product, might result in severe performance issues which might ultimately cost a lot in terms of rework, delayed product launches or even loss in market share.
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.
Continue reading "Globalization of Software in a Flat World" »