Japanese Localization Help?
TwoPumpChump asks: "I'm a young engineer, with only modest programming training and experience, (Nothing to match you Gods of the code,) and I have just been assigned with the task of traveling to one of our Japanese factories to learn, then translate and localize some VB 6 code for a product line that we'll be setting up here at our American facility. The application's purpose is to run various tests using GPIB communications, with NI-DAQ hardware for instrument control and dump results into a database, all of which I'm comfortable with. My question is, before I travel half around the globe for the first time ever, is what issues can I expect when localizing Japanese code to US English and what sort of 'toolkit' should I take?"
localhost$ sed --in-place s/l/r/g *
You must have pissed someone off in a previous life, because this is usually a non-trivial exercise, and the company is trying to do it on the cheap.
Presumably you speak Japanese.
Try Google, searching for localization and internationalization. There are some sites out there that discuss it, even for VB.
How much string processing will you need to do? Will there be data file changes? What is the scope of the UI changes required?
There are companies out there, like Lionbridge or Basis Technology, that make good money doing this for people. Usually they get called after a company has already spent too much trying to do it themselves.
how does this affect me as a proffesional visual basic computer security program develloper?
i work in delhi for an american bank to improve their account-management with newest security and marcomedia flashtechnology.
i use a one string for american, one string for french etc.
then i select which string to use with if-question in the code everywhere i need to:it's easy if you have some experients with the visual basics; i cannot understand why you americans need indian contractor to do such easy programming.
Lonely Planet and Pimsleur.
Japanese write software like crazy and there are plenty of open source coders out there. Make contact w/ a few of them and try localizing their projects to English (US) for the hell of it.
Sounds like you're on a mission impossible, good luck.
[o]_O
I lived and worked as an embedded engineer in Japan on cellular technology, so there are few NB I can perhaps throw your way.
All the strings are most likely hard-coded.
What this means for you is: you will not have the luxury of running this code through a perl script, extracting strings to eventually provide one-to-one correlations in the other target langauge (in this case, English).
Given that Japanese and English grammar differ greatly enough to affect the formatting of strings, many of the strings that will require translation will necessitate rethinking how the data is displayed on the GUI. This is only exacerbated by the fact that VB allows you to build strings with semtantics like "Processing test #" & testIdx & "'s results." (in Japanese: testIdx & "banme no tesutokekka wo shorichuu") -- damn slashdot completely removed my Japanese when I tried to input it!!
I am not sure about VB in this regard, but you may run into issues with the character set encoding they are using. Most likely this will be Shift JIS on older Windows systems.
ASCII is pretty much universal accross code sets, but it would be wise to port everything over to UNICODE, just incase you are going to have to support other langauges in the future.
I am sure there are other things you will run into, but I wouldn't sweat it. As much as possible, use tools for internationalisation of strings, i.e. gettext.
Hope this helps.
Some of your challenges:
1) User expectations. Become friends with your testers (I hope you got a testing department?) and continuously ask them to evaluate whether the software works like expected. Obvious things to watch out for: date, number formatting issues, and the fact that alphabetic sort is expected to be by the table of fifty sounds, not the abc order.
2) Input verification. Strip half-width kana, save yourself a LOT of pain later. Make sure you use a consistent internal representation of Japanese (if I see another person trying to compare Shift-JIS and Unicode for equality by casting to integers and using the equals operator I will stab my own eye out with a pencil).
3) Canonicalization issues in data. Be prepared to weep tears of blood for this. My bank still hasn't figured out how to do it right, so I can't access my account online because my name is written in romaji in their database but their web site accepts only hiragana. Be especially careful with using consistent romanization. This probably means waging total war on both your users and existing data -- have fun!
4) Conversion of postal addresses. You would think this is easy, but people screw it up anyhow. Make sure any input UI asks for addresses in the order expected locally and parses them correctly! I have some business contacts in the US who have my city listed as my apartment building due to software which made assumptions about address ordering for them.
5) Suicide. Japan doesn't have a love affair with it -- thats a myth. You'll want to commit it by the end of this project -- thats a fact.
Help poke pirates in the eyepatch, arr.
I'm very grateful so far for the advice, (I submitted this,) I should have mentioned that yes, I do not speak a lick of Japanese but will have a couple of bilingual assistants. Only one of whom, however, is fluent enough in English to be of any use. Also, he is a decent VB programmer in his own right and as you may guess, I'll be buying him dinner to keep him on my good side. Unfortunately, he's a busy fellow so he won't be dropping in to help, except sporadically. The only other saving graces is that the software will have limited users (all in house; not released to the public, so I can indeed babysit the application.) But the biggest tip I'm picking up is to learn at program inside and out while I'm there, around the original developers, so when I get it stateside I'll know intimately what it's supposed to do and what it's supposed to accomplish. That, and to pray and pray hard ;-) Thanks, y'all
Honestly, who did you get on the wrong side of? They're sending you to Japan when you have absolutely no Japanese language skills in order to work on translating a program written in a language which is not going to be suppored by its creator in a few months.
;)
To top it off, you have only two assistants for this on the native language side of things, only one of which is any help and he's not going to be there all that often.
It sounds like a project someone wants to fail before it's even started. I'd be asking myself if you angered one of your bosses (or if it's a power play between two higher ups and you're just a pawn).
Please tell me your boss didn't catch you in bed with his daughter or wife
In all seriousness, though, this may be (though is not necessarily) a rather negative indication of your life expectancy at the place you are currently employed (wether it is because of something you did or if you're just a sacrificial lamb...)
My advice? Do the best you can without killing yourself and try to have some fun while you're there. Good luck. You're going to need it...
Everything I need to know I learned by killing smart people and eating their brains.
I've been living in Tokyo for three years now, working for a software development company. Even though I'm a systems administrator, I've had to do localizations on occasion. Both ways: Japanese to English and English to Japanese.
If you were to do an English->Japanese localization you would be in deep trouble. But you say that the work is in the opposite direction. In that case it's not that hard, assuming that you can read some Japanese or that there's someone in the company who can help you with the translation.
Some of the problems you'll be facing:
- Get used to work on a Japanese Windows. Your English Windows will not be adequate for this.
- Dates. They are written as YYYY+(kanji for year)+MM+(kanji for month)+DD+(kanji for day).
- Input validation. You'll have to REMOVE lots of code that you won't need in the (more simple) English version. And in order to know what you have to remove, you'll have to understand it first. Learn about hankaku-zenkaku characters, katakana, hiragana and kanji, and how they're encoded in Shift-JIS.
Mail me if you need help/advice.
My site
I had the job of translating some Swedish surveying software into English. I also had to convert it for use in the southern hemisphere, which was non-trivial as well.
By the time I finished, I swear I knew every line of that code. It's a BRUTAL job, trying to translate variable, class, functions etc. names to English. You know how you may abbreviate a variable named "count" to "cnt"? Guess what, they do the same in Sweden too, except they abbreviate Swedish words.
If I was doing this again, I'd
- NOT agree to have it working within a specific timeframe, because the work consists of loads of breakthrough thoughts and ideas that are essentially unplannable
- give serious thought to a rewrite from scratch. As your code is VB6 which is now out of MS support, and not that easy to support anyway, you may want to consider this option
- demand a local, bi-lingual coder who'd worked on the code to work with me, at least in the initil phases
- state very clearly that I'd be working 8 hours a day, 5 days a week, and no more on this project. It's extremely easy to fall into working huge hours with a project of this type, as you wind up having to hold huge amounts of info in your head and time just blows out the window in those cases
- try to get a work partner, as the task is mentally draining and you need someone else to look at things when your brain starts to wind down
Good luck, and enjoy Japan - it's an incredibly beautiful place to visit. Make sure you set aside time to have a look around