Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm starting a new company, and our software will be a SaaS solution offered to municipalities around the world. Their interface will be web-based. I am trying to figure our which software development frameworks and which software platforms would be able to support a fully multi-lingual system. In this I mean that I need to be able to have the same screens operate in different native languages (including right-to-left), both for display and data-entry. I want to be able to maintain a single application for all languages. I need to be able to add new languages pretty quickly (= no development) once the system is set up.
Since I am starting from scratch, I have the privilege to research and choose in advance, and not force a solution into an existing application.
Also, I have experience in leading development on Java, .NET, C++ and C, so I am open to use any technology that will meet my business needs. I would appreciate recommendations with pros and cons.

share|improve this question

closed as off-topic by gnat, MichaelT, GlenH7, Dan Pichelman, Bart van Ingen Schenau Oct 8 '13 at 10:27

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – gnat, MichaelT, GlenH7, Dan Pichelman, Bart van Ingen Schenau
If this question can be reworded to fit the rules in the help center, please edit the question.

add comment

3 Answers

Being easily implemented in other (spoken) languages is really an element of the design itself rather than a feature in a framework. Most mature web frameworks can read XML files and use them to localize labels, character sets, date formats ... etc.

share|improve this answer
add comment

If you start from the ground up with internationalization/localization in mind, ASP.NET* handles the problem pretty well. I was involved in a web application about 5 years ago that supported nine languages (including Hebrew, which meant we also supported RTL). Honestly, of all the challenges in that project, internationalization/localization ended up being the easiest part.

That said, System Down is correct - the hardest part isn't the implementation, it's really understanding the problem. Layout becomes a big issue (especially in headers and dropdowns) because the lengths of words vary wildly. LTR/RTL is tough; you can get 90% of the way there by setting some flags, then struggle with the last 10%. Handling input properly is a big issue (make sure you understand the difference between CurrentCulture, CurrentUICulture, and InvariantCulture). And if you don't understand Unicode, may God have mercy on your soul.

  • This was old-school 'postback' ASP.NET - I can't vouch for ASP.NET MVC in this area.
share|improve this answer
add comment

Since you are familiar with Java and are looking to create a web-based application, I would suggest using the Spring Framework. It offers good internationalization support.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.