Infosys delivers concept-to-market software engineering services across the engineering value chain. Our blog will discuss the latest trends in software product engineering, outsourcing, technologies, and address business challenges.

Main

August 5, 2011

Will C++0x stand the test of Unicode?

C++0x is going to be the next ISO C++ standard which will replace the existing C++ standard C++03. It was earlier scheduled to be released in 2009, but most likely will get released in 2011. We will probably see it rechristened to C++11 once released. This new standard will have several additions and improvements to the core language and will extend the C++ standard library. The last publicly available working draft of the new specification was submitted on 28th Feb, 2011 and is available for public access here. For the C++ developers all over the world working on Internationalization of software; the most awaited improvement to the C++ standard is going to be native Unicode support. Will C++0x meet all the Unicode requirements or will developers still have to depend on third party libraries like ICU, Rosette, Boost etc for their i18n development?

Continue reading "Will C++0x stand the test of Unicode?" »

December 2, 2010

Internationalization considerations for Mobile applications

Mobile devices of today are no longer restricted to making or receiving phone calls or text messages. The capabilities of modern mobile devices or smart phones have exceedingly surpassed those of commercial cell phones that were launched way back in the 70's. A typical mobile device today is a mini computer in itself. Such devices have the capability to exchange emails, play songs, videos, multimedia, weather forecasting, GPS and a lot more. The developments in the mobile world seem to reflect the evolution that happened in the desktop computing world in the days gone by. As the operating system for mobile devices evolves with each passing day, developers around the world are creating more and more varied mobile applications catering to different user groups. For example, there are mobile applications today for social networking, banking, retailing, games etc. In order to expand the user base for these applications, it is essential that the applications should be internationalized and localized so that it may be possible for users around the globe to use them.

Continue reading "Internationalization considerations for Mobile applications" »

November 23, 2010

Internationalization and its dimensions in Product space

Enterprise application development is quite different from product development. An enterprise application is generally developed for a set of targeted users, organizations and region(s). The platform on which the application has to be deployed is also predefined in most of the cases. The number of deployments/installations of the application is also limited. However, that is not the case with a product. A product is targeted for a much wider range of users, organizations, region(s), deployment platforms etc. Also, the number of deployments/installations of a product are much higher than that of an application. Besides, a product in general, has to be much more configurable, customizable and scalable. A successful product should be designed to be able to adapt easily to varying environments and markets. Considering that products today are being developed targeting a wide range of markets, product internationalization is a key consideration for wide spread acceptability. When it comes to Internationalizing a product, it should remain configurable, customizable and scalable.

Continue reading "Internationalization and its dimensions in Product space" »

November 14, 2010

Software service in the Japanese market

The Japanese market remains an important target in localization schedules of internationalized products. Despite China replacing Japan as the world's second largest economy, the number of requests to support 'Japanese localization' in internationalized software products as a priority does not see any immediate decline. Understanding Japanese encoding schemes requires a great deal of effort - especially for someone who has been spoilt by the simple elegance of ASCII encoded text. Though Unicode is THE way ahead, one must understand that there are still thousands of legacy products out in the domestic market - a complete rewrite of which is not a viable business option in the current economic climate in Japan. As more and more important Japanese businesses outsource legacy software maintenance /enhancements to service providers, quality handling of such software will require a decent understanding of Japanese text representation and encoding schemes.

Continue reading "Software service in the Japanese market" »

July 29, 2010

Unicode roadmap for the Indian rupee symbol

Indian_Rupee_symbol_svg.png

The Indian government recently announced a new symbol for representing the Indian rupee. The symbol was selected from among five shortlisted symbols and designed by an Indian Institute of Technology (IIT) postgraduate D. Udaya Kumar. The rupee symbol is a reflection of India's growing economic strength in the global economy. With this, the rupee will join the elite club of other major currencies like the US dollar, British pound sterling, Japanese yen etc. The question on everyone's mind is, "When will we be able to use the rupee symbol from our keyboards, cell phones, applications etc?"

Continue reading "Unicode roadmap for the Indian rupee symbol" »

July 6, 2010

Leveraging the power of Crowdsourcing for Localization

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" »

May 27, 2010

Internationalizing Legacy Software - The Other Dimensions

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" »

May 18, 2010

Internationalization - Concepts of String Collation and approach

Locale is a terminology that is very widely used in the I18N world. This refers to culture specific processing  of data for various types of formatting (date-time formatting, currency/number formatting, calendar) and string handling (such as string comparison, sorting etc).
This post provides high level insights into the concepts of string collation, its significance and approach followed in various technologies/frameworks. This post should help in understanding the concepts and can be used as a pointer for additional details. This should enable designers and developers in building internationalization ready products with this specific feature of collation more efficiently.

Continue reading "Internationalization - Concepts of String Collation and approach" »

May 3, 2010

Enhancing Productivity of the Internationalization Process

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" »

February 3, 2010

Globalization and the Japanese Software Industry

Japanese products in the manufacturing sector have most often than not withstood intense competition from competitors all around the world. Except for the recent glitch, Japanese cars have been the most sought after the world over for various engineering attributes like performance, reliability, design etc. But, unfortunately, the same cannot be said about the Japanese software industry – though there are efforts currently underway to change the structure of this industry.

Continue reading "Globalization and the Japanese Software Industry" »

January 28, 2010

Internationalization and Performance considerations

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" »

January 11, 2010

Is Big Bang the right approach to Internationalization?

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?" »

December 31, 2009

Deciding Optimal Unicode Solution for Globalization Database

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" »

December 11, 2009

Don’t think local, think locale

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?

Continue reading "Don’t think local, think locale" »

November 25, 2009

Internationalization and the development life cycle

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" »

November 11, 2009

Effort estimation for a Globalization project

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" »

July 8, 2009

The Encoding Dilemma

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.

Continue reading "The Encoding Dilemma" »

June 5, 2009

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.

Continue reading "Globalization of Software in a Flat World" »

Subscribe to this blog's feed

Follow us on

Blogger Profiles

Infosys on Twitter