473,378 Members | 1,422 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,378 software developers and data experts.

Localization - how do you do it?

[ using C# with WindowsForms ]

Hi,

I think I've read everything there is to read about localization in dotNET
and I still don't get it.

I understand the concepts and I understand the code, but there's no way that
the scenarios described can be translated(!) to a real world application.

Here's what I got. I have forms with controls on them and I have constant
strings that I show in message boxes and the like.

The forms and controls I can neatly handle in the designer, just by changing
the langage name in the property pane (which behind my back is then stuffed
into some resource files). For the constant strings I need to create my own
resource file (e.g. a key/value type) and then load the strings with the
ResourceManager.

Here's my problem: I'm about to release a v1 of my application. So I send
all the resource-files to the translators, who in turn translates the files
and send them back. A while later I'm about to release v1.1. and... now
what?

It seems that I have to send the the same resource files again to the
translaters, who have to start all over translating what they have already
translated for v1 and continue with v1.1 - a complete waste of time...

There must be something that I have missed during this "cycle". There must
be some (simple) way to split the old and new resources, so I only need to
send changed and new text to the translator. How do you do it??

What I'm really after here, are some of your technical experiences working
with dotNET applications and (third party) translators.
Regards,
Sebastian

Jul 21 '05 #1
3 1558
Here's how I did it:

I have an XML file with the resource strings for my app. There's one XML
file for each language. Whenever I make changes to the English language
version, I need to make identical changes to the other language versions
(either add, modify, or delete strings).

So, assuming you give this person the XML file they used for the original
translation, they only need to update it, not redo it from scratch.

Pete

"Sebastian Bargmann" <sb@removedbecauseofspam.dk> wrote in message
news:gy*****************@news.get2net.dk...
[ using C# with WindowsForms ]

Hi,

I think I've read everything there is to read about localization in dotNET
and I still don't get it.

I understand the concepts and I understand the code, but there's no way that the scenarios described can be translated(!) to a real world application.

Here's what I got. I have forms with controls on them and I have constant
strings that I show in message boxes and the like.

The forms and controls I can neatly handle in the designer, just by changing the langage name in the property pane (which behind my back is then stuffed into some resource files). For the constant strings I need to create my own resource file (e.g. a key/value type) and then load the strings with the
ResourceManager.

Here's my problem: I'm about to release a v1 of my application. So I send
all the resource-files to the translators, who in turn translates the files and send them back. A while later I'm about to release v1.1. and... now
what?

It seems that I have to send the the same resource files again to the
translaters, who have to start all over translating what they have already
translated for v1 and continue with v1.1 - a complete waste of time...

There must be something that I have missed during this "cycle". There must
be some (simple) way to split the old and new resources, so I only need to
send changed and new text to the translator. How do you do it??

What I'm really after here, are some of your technical experiences working
with dotNET applications and (third party) translators.
Regards,
Sebastian

Jul 21 '05 #2
Any translation software worth its salt should be able to work out what
strings were added between version 1 and 1.1. The translators just translate
those.

We are gettings our strings translated by an external translation company,
who is choosing their own tool.

Paul Wardle

"Sebastian Bargmann" <sb@removedbecauseofspam.dk> wrote in message
news:gy*****************@news.get2net.dk...
[ using C# with WindowsForms ]

Hi,

I think I've read everything there is to read about localization in dotNET
and I still don't get it.

I understand the concepts and I understand the code, but there's no way that the scenarios described can be translated(!) to a real world application.

Here's what I got. I have forms with controls on them and I have constant
strings that I show in message boxes and the like.

The forms and controls I can neatly handle in the designer, just by changing the langage name in the property pane (which behind my back is then stuffed into some resource files). For the constant strings I need to create my own resource file (e.g. a key/value type) and then load the strings with the
ResourceManager.

Here's my problem: I'm about to release a v1 of my application. So I send
all the resource-files to the translators, who in turn translates the files and send them back. A while later I'm about to release v1.1. and... now
what?

It seems that I have to send the the same resource files again to the
translaters, who have to start all over translating what they have already
translated for v1 and continue with v1.1 - a complete waste of time...

There must be something that I have missed during this "cycle". There must
be some (simple) way to split the old and new resources, so I only need to
send changed and new text to the translator. How do you do it??

What I'm really after here, are some of your technical experiences working
with dotNET applications and (third party) translators.
Regards,
Sebastian

Jul 21 '05 #3
"Sebastian Bargmann" <sb@removedbecauseofspam.dk> wrote in
news:gy*****************@news.get2net.dk:
Here's my problem: I'm about to release a v1 of my application. So I
send all the resource-files to the translators, who in turn translates
the files and send them back. A while later I'm about to release v1.1.
and... now what?

It seems that I have to send the the same resource files again to the
translaters, who have to start all over translating what they have
already translated for v1 and continue with v1.1 - a complete waste of
time...


You have two main options:
- You manage everything (extract the new strings, send them out for
translation, integrate them back - see Pete Davis)
- Let all the trouble to a localization company (see Paul Wardle)

- First approach gives you full control (and full trouble). You can
create some scripts to help you (after all, a resx file is easy to
read/write, is just an XML, and .NET provides dedicated API for resx files)

- Secons approach can be trouble-free, if you choose your localizer well.
Any decent localization (l10n) company will use translation memeory tools
and will be able to leverage the strings from previuos versions.
Beside the fact that you get files ready to compile, you can also ask for
resizing (and they can also leverage some of the resizing), glossaries,
fuzzy-match (strings that are just slightly changed are offered as suggestion
to the translators, increasing consistency and decreasing time).
Ask any l10n company for a quote. Most of them will give you a free estimate
if you provide the files to localize. They will also spend time to explain
what translation tools they use, what services they offer.
It may be difficult to compare and choose, but if you choose well it may be
cheeper than doing this yourself, get better quality and less work.

Obviously, it is not a promise, there are companies and companies.
Shop arround.

--
Mihai
-------------------------
Replace _year_ with _ to get the real email
Jul 21 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Amin Schoeib | last post by:
Hi, I am a Postgres newbie who worked until now with Oracle. Now I want to know if it is possible (when yes the how?) in Postgresql To set dynamically the Localization? For example in Oracle you...
0
by: Amin Schoeib | last post by:
Hi, I am a Postgres newbie who worked until now with Oracle. Now I want to know if it is possible (when yes the how?) in Postgresql To set dynamically the Localization? For example in Oracle you...
6
by: Rental | last post by:
I'm having the sam problem as described below with the Localization toolkit. Does anyone know if there is a solution to this problem. --->When attempting to generate resource dlls with...
2
by: Julia | last post by:
Hi, We want to migrate out asp application to asp.net and take advantage on localization. I want to ask how it is advice to structure the site directory I am going to use resource only...
8
by: Olivier Matrot | last post by:
I encounter a problem with Localization features in ASP.NET 2.0. Is seems that the framework is not able to manage neutral cultures such as 'fr', or 'de'. Those are the culture sent by default from...
5
by: CMM | last post by:
I don't seem to "get" ASP.NET 2.0's Localization features. I've read up on everything... and of course, everything is explained in cursory softball terms- not any "real-world" usage way. I hope...
2
by: bruno | last post by:
I need to localize my ASP.NET app and I just used "Tools" --"generate local resources" command and everything works fine in my WebForms. Resource file name is: MyWebForm.aspx.resx under a subDir...
0
by: shapper | last post by:
Hello, Sometime ago I followed an article (I believe MSDN) related with localization in Asp.Net 2.0. To make pages localization I create a class named Localization: 1 Public Class...
3
by: Corey B | last post by:
I have an ASP.NET application that was built in ASP.NET v1.1. It has a SQL Server back end database. I have been asked to provide an estimate for the level of effort required to produce a Chinese...
3
by: Computer Guru | last post by:
I have a VB.NET 2005 application with several forms and a couple hundred "strings." I've been looking into all the localization improvements in VB.NET, and I can't seem to find anything that...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.