[:en]How to Effectively Complete Localization Projects with Small Number of Hands[:]

[:en]

From a Project Manager’s Point of View:

Our Projects:

The first project we got as Team Albernaz is a website localization project for Body & Earth, a project which assisted people to explore harmony between nature and their own bodies created by Andrea Olsen and Caryn McHose with dance and digital media artist Scotty Hardwig and collaborating performers and videographers. There are eight videos with text instructions need to be localized, including subtitle creation and localization, Chinese voiceover for the videos, and translation for nine .doc files. However, due to the limitation of the semester-length, we were only asked to complete the document translation.

Our second project is a subtitle translation project for a Sichuan opera The Dragon Pearl from aimusic.com. The source text was assigned as a PowerPoint file and we used Memsource as the CAT tool. We also got two .rtf files from the client as a translation style reference and terminology guide separately.

Workflow:

Since there are only 6 people in our group and we didn’t ask external translators to help, we adopted a simple but efficient workflow for these two projects.

Since we only have 6 people working on these two relatively urgent projects, we conducted one round mutual peer review before the final delivery as the editing and proofreading process when all the files have been translated. To ensure the quality of the translation, we discussed the project in detail before work allocation on potential problems such as how to keep the consistency of our translation style and translation preparation such as creating our terminology list for the project. I found this kind of beforehand discussion is very effective, especially when there aren’t many people involved, as everyone has enough time to ask questions and get answers. This can also save us a lot of unnecessary trouble in the later translation process. Use of CAT tool played an important role to improve our working efficiency, too. Because we don’t have a lot of people doing extra proofreading work, the CAT tool can largely decrease the ratio of words needed to be re-translated, for example, the creation of translation memory can ensure the consistency of translation to a great extent.

Challenges:

The first major challenge we met is how to negotiate with our client on project expectation and timeline, and since our communication with clients is mainly based on emails, sometimes we cannot get their timely response.

The second challenge I want to mention here is about the file processing. We used Memsource as our translation tool and one thing about it is that we are not able to assign one task to multiple translators at the same time. Therefore, we have to divide one file into several parts. However, we struggled whether to assigning translations to different translators by segment or by word count. This also leads to another similar question – how to set up the deadline for internal team translators because sometimes the word count that each translator gets may vary greatly.

The Tool We Used:

We used Monday.com as our project management tool to make projects more organized. The interface of this website is very simple, and its users can find all functions needed (timeline, discussion board, file transmission, etc.) easily. Here’s a screenshot we took from this website.

Another cool feature of this tool is that it can provide your business group an independent domain name (for us, it is albernaz.monday.com). And more importantly, it’s free!

From a Translator’s Point of View:

As a translator, a limited number of translators means that the amount of translation he/she has to undertake will be relatively large. Therefore, he/she must try to guarantee the accuracy of every single sentence for the first time.

For the Body & Earth project, the required translation direction is from English to Chinese. The content itself is not complicated and is pretty easy to understand. The difficulty lies in finding the corresponding equivalence in Chinese since there are some concepts about yoga and meditation which I personally am not familiar with. In order to guarantee the quality of the translation, I carefully discussed with my group members and asked my friend who has relevant knowledge background. Our second project, The Dragon Pearl, is a bit more tricky since its contents were written in an ancient Chinese Prose style. To maintain the concise writing style and the rhymes of the original text, I spent a lot of time looking for the appropriate words.

 

 

 [:]

[:en]How Do I Localize a Music Video from YouTube[:]

[:en]To localize this music video I found onre YouTube, the very first thing I did was checking with the band to ask for their permission. I’m a big fan of this band and I’m so glad that they kindly replied to my message and said “go for it”. By inserting “vd” in front of the YouTube URL I downloaded the original English music video and then started to localize it into Chinese. For this project, what I have done are basically adding a Chinese subtitle and localize the on-screen texts originally in the music video.

Subtitles Creation

Since there are no Chinese translations for lyrics, I need to translate them by myself at first. Due to the huge syntactic differences between English and Chinese as well as the language contracts for Chinese subtitling, I didn’t use any CAT tool for this lyrics translation.

The tool I used for subtitles creation was VSS Enhanced, which is a very straightforward tool for beginners. All I have to do is selecting the dialog for which I want to create a subtitle and then add a new one. There aren’t any major problems in this project, the only thing I need to pay attention to is the font since the initial one doesn’t work well with simplified Chinese. The following two pictures show the before and after the change of subtitle font.

 

On-screen Text Localization

There are two types of on-screen texts required to be localized in this video. The first one appears in the middle of this video as a kind of subtitle which explains the storyline. To localize them, I created a new project in Adobe After Effects and simply added an adjustment layer with camera lens blur effect which could cover the original subtitles and created new Chinese translations with the same color. I also added a drop-shadow effect to make the Chinese ones look more like the original ones.

The second one appears as the title of this song at the very beginning of this video. I firstly tried the same method I localized the first one, but I failed as the Chinese translation of this song’s name is much shorter than the English one and the blur effect didn’t work very well.

I then tried to add a solid color mask to cover it but the result was not very satisfactory, either. The primary challenge here is that the background is rather complicated and has been changing through all these seconds. It was really hard to find a suitable color. The picture follows shows the best attempt I did. It seems okay but okay is not enough.

To make it better I saved every related frame into a Photoshop layer and did the manual work. Thanks to the content aware fill function in Photoshop, my life becomes much easier. I know this may not be the most efficient way since it cost me several hours to do it, but the final effect makes all the efforts worth.

Typewriter Effect Localization

To make it more interesting, I also localized the texts typing from the typewriter in this video. I don’t really have to do it (basically because a typewriter for Chinese sounds crazy…), but I did it anyway. The way I localized it is quite similar to the one I did for the on-screen subtitles. I firstly added a blur mask and created the corresponding Chinese. I separated the last half line word by word to make it looks like a typing effect. I also chose a different font KaiTi for these lines to so that these words look more like prints.

Here is a 10 seconds trim of this part.

After making all these changes and burning the Chinese lyric subtitles with HandBrake, I tested the video again in VLC to see if there are any problems. And yay, I successfully make it works!

 

(Special thanks to the coolest britpop band in this century – FUR)[:]

How to Localize an IOS App with Xcode

[:en]

In the case of Fojusi Watch

Fojusi is an IOS application we found on GitHub. It’s an originally English app and we first decide to localized it into our mother languages – Chinese, and then just to make more fun we also localized this application into Russian. This app is basically a timer which helps you being concentrated and focused while working or learning. Since this app follows the language of the system automatically, we didn’t add any language picker or selector.

Because this is an IOS app, we used the localization function in Xcode to do all the wrapping works, and then generate the .xliff files, one for each language. Then we import the .xliff files into MemoSource to get them being translated. The reason why we choose a CAT tool like Memosource is because there are many repeated strings in this project and we created a TM to make our work more efficient. After all translation works are done, we loaded the .Xliff file back into our project and, yay we can start testing them.

I know this sounds easy but actually it is not. We had some challenges but luckily, we also found the corresponding solutions.

.xib or .storyboard

The first problem we got is that we didn’t find our .xib file in the source files. To enable localization we need to add languages in localization section in .xib file. Since there is no .xib file in the folder, we only added languages in the Info page. Then when we finished the exporting and importing work and started to test the app, the English content simply didn’t show up. We then did a little research and found out the .storyboard file is the one we need to work on. There’s no big difference between these two but some programmers just prefer using this file type.

Wrapping Strings

The second challenge we met is when we began to wrapping strings. There are just so many strings in different files, so what we did is debugged again and again to find all the translatable strings.

1

As shown in the screenshot, all strings are in these swift files. We located all the strings and wrap them this way:

2

However, the problem is, when we tried to localize the “min” string in the setting menu, wrapping the whole string can’t pull out the translation. Follow the instructions given by Max, we separate the number and the “min” string, Here’s how our concatenation looks like:

3

Another problem with warping strings is the messed up sentence structure in the notification message.

4

The Chinese and Russian translation just cannot follow the same grammar, therefore we changed the code of this line into:

5

Layout & Fonts

The third challenged occurred is the UI issue. The Chinese font size was too small and there are some expanded and missing texts in the Russian version. We tried to insert an “if {…} else if {…} “ command into the .swift file but we failed. So we turned into our best friend – Google, and found out this answer from Stackoverflow.com:

6

So we rewrite our code into this:

7

And then everything just worked perfectly.

As for the truncation issue with Russian version, we first decided to rewrite the codes and tried to separate the long messages into two lines, but we failed as we lacked basic coding knowledge. What we did is to find a detour, we changed the Russian translation so that the shortened sentences can display very well.

Social media Hyperlinks

The very last thing we were confused is whether to localize the twitter link in the Chinese version because Chinese users don’t actually have to access to Twitter. We were thinking of changing twitter into some popular Chinese social media like Sina Weibo but we didn’t find any official page of this app so we just kept it.

8

After making all those changes we tested the game again to see if there are any linguistic or functional issues overlooked or unresolved. And yay, we successfully make it works!

 [:de]

In the case of Fojusi Watch

Fojusi is an IOS application we found on GitHub. It’s an originally English app and we first decide to localized it into our mother languages – Chinese, and then just to make more fun we also localized this application into Russian. This app is basically a timer which helps you being concentrated and focused while working or learning. Since this app follows the language of the system automatically, we didn’t add any language picker or selector.

Because this is an IOS app, we used the localization function in Xcode to do all the wrapping works, and then generate the .xliff files, one for each language. Then we import the .xliff files into MemoSource to get them being translated. The reason why we choose a CAT tool like Memosource is because there are many repeated strings in this project and we created a TM to make our work more efficient. After all translation works are done, we loaded the .Xliff file back into our project and, yay we can start testing them.

I know this sounds easy but actually it is not. We had some challenges but luckily, we also found the corresponding solutions.

.xib or .storyboard

The first problem we got is that we didn’t find our .xib file in the source files. To enable localization we need to add languages in localization section in .xib file. Since there is no .xib file in the folder, we only added languages in the Info page. Then when we finished the exporting and importing work and started to test the app, the English content simply didn’t show up. We then did a little research and found out the .storyboard file is the one we need to work on. There’s no big difference between these two but some programmers just prefer using this file type.

Wrapping Strings

The second challenge we met is when we began to wrapping strings. There are just so many strings in different files, so what we did is debugged again and again to find all the translatable strings.

1

As shown in the screenshot, all strings are in these swift files. We located all the strings and wrap them this way:

2

However, the problem is, when we tried to localize the “min” string in the setting menu, wrapping the whole string can’t pull out the translation. Follow the instructions given by Max, we separate the number and the “min” string, Here’s how our concatenation looks like:

3

Another problem with warping strings is the messed up sentence structure in the notification message.

4

The Chinese and Russian translation just cannot follow the same grammar, therefore we changed the code of this line into:

5

Layout & Fonts

The third challenged occurred is the UI issue. The Chinese font size was too small and there are some expanded and missing texts in the Russian version. We tried to insert an “if {…} else if {…} “ command into the .swift file but we failed. So we turned into our best friend – Google, and found out this answer from Stackoverflow.com:

6

So we rewrite our code into this:

7

And then everything just worked perfectly.

As for the truncation issue with Russian version, we first decided to rewrite the codes and tried to separate the long messages into two lines, but we failed as we lacked basic coding knowledge. What we did is to find a detour, we changed the Russian translation so that the shortened sentences can display very well.

Social media Hyperlinks

The very last thing we were confused is whether to localize the twitter link in the Chinese version because Chinese users don’t actually have to access to Twitter. We were thinking of changing twitter into some popular Chinese social media like Sina Weibo but we didn’t find any official page of this app so we just kept it.

 

 

8

After making all those changes we tested the game again to see if there are any linguistic or functional issues overlooked or unresolved. And yay, we successfully make it works!

 [:]

0hn0! How do we localize a JavaScript game?

0hn0 is a website-based game Iris and I found on GitHub. It’s an originally English game and we localized it into two other languages – German and Chinese. We also added a language picker to the game so that our users can switch between German, Chinese and English not just at the start menu but also at any point during the game.

To make this language picker, we googled how to make one and decided to employ the onchange function to realize it. Here’s our code:

1

To make the language picker show the correct language name of the locale, the trick is to put the corresponding option that contains the value of the local.html at the first row in the specific .html. For example, the screenshot we made is in a German HTML file, therefore the option with Deutsch is on the first line. We can also add one option as “language” but still, we need to use the corresponding language.

In order to get a general idea of how we are going to localize the game and find all the translatable strings, the first thing we did is playing the game for several times. We also downloaded the IOS and Android version of the game from App store and Google play. Just like the Bunny Hunt we have localized in class, the stings of 0hn0 are basically in its js folder and also the index.html file.

We firstly tried to adopt the 24ways we learned in class but only 7strings in game.js are working.

2

For the rest of the strings, if we tried to put an underscore in front of the single quote, we’ll enter an everlasting loading page. With the help of my friend who is a CS major, we figured out it was because of the var function and we need to rewrite the whole codes. Therefore, we have nothing to do but gave up. We then duplicated the required js files (game.js, hint,js, and tutorial.js) into a new file holder with specific locale and manually localized the game.

3

For future translation, we prepared a word document for translators with all the text that needs to be translated divided by what page it belongs in, and the PM or someone who is tech savvy would need to manually reinsert the text.

Now that we have basically completed the first step of localization, the next step is to test how it works in German and Chinese version.

The very first thing about resolving the UI issue is how to change the location and style of our language picker. Originally it was at the very top of the page and was really small with no particular background color and fonts, which made the language picker hard to find and did not match the style of the whole game. What I did was to style it in the CSS file:

4

As you can see we changed the color, margins and the font to match the style of the game. We also make it a little bit larger to be more user-friendly. This is how it looks like then:

5

For the localization part of this project, there aren’t many problems for the Chinese version. There’s no DTP work needs to be done, so basically all I need to do is making the Chinese translation display appropriate without any truncation problem and changing the fonts. Luckily there’s no truncation or crashing issue with the Chinese translation, so I just changed the place of several br tags to make it display more reasonable.

As for the fonts, there’re several solutions to the fonts issue, such as using a font that supports the three languages. But we don’t want to mess with the English Fonts so what I did is creating a new .css file and dragged the TTF files into the fonts folder. The reason why I need to duplicate a new CSS file is just because that both the English and Chinese fonts we choose support both English and Chinese, but not in the way we want. In addition, to make it more match with the English and German version, I also used one handwritten font and one typed font. This is the first page in its Chinese version.

6

After making all those changes we tested the game again to see if there are any linguistic or functional issues overlooked or unresolved. And yay, we successfully make it works!

7

[:en]TMS Mini-Portfolio[:]

[:en]Hiya,

My name is Meng Yang, a Middlebury Institute of International Studies at Monterey (MIIS) 2018 graduate as well as a freelance translator.

This is a mini-portfolio based on what I have learnt in my Translation Management System (TMS) course and what experience and skills I have gained in order to better cope with the potential problems I may meet in future works.

As you can see this portfolio can be generally divided into 3 parts:a brief introduction to what I learned in this course and how I will apply it to my later works, the detailed explanation on what my teammates and I have done for the TMS final project, and some of my professional insights based on what I have read in this course.


Introduction:

My TMS course at MIIS basically consists of two parts: one is practice-based while the other focuses on how to understand many important concepts in TMS through a lot of readings. Under the guidance of the professor, this course, on the one hand, allows me to be more familiar with CAT, TMS and other mainstream tools, such as Trados, MemoQ, WordServer, XTRF, etc. In this increasingly technology-based industry, the familiarity with these latest software makes me able to work with a higher quality and efficiency. On the other hand, high quality readings deepen my understanding of many concepts and ideas, both basic and emerging, in the industry so that I can better treat the industry as a whole which allows me to confidently deal with the future works.

TMS Group Project Files:

In the final project of this course my teammates and I decided to conduct a English-Chinese translation project based on SDL WorldServer.

Here’s the link to our project proposal. You may find further information on this project in it such as our preparation for this project, the file scoping, our time schedules, etc.

To make it more clear, here’s our final deliverable which include a pseudo translation to let our client know everything needs to be translated is translated, an updated Translation Memory (TM) and Term Database(TD), our scoping info as well as the source text (ST) and target text (TT).

Finally, we also made a reflective presentation on what we have learnt through this project. Here’s the link.

Professional Insights:

As I mentioned, this course of TMS also provides me a great deal of high quality reading material that gives me a good grasp of many of the industry’s terms and concepts. The topic covers in this course include: TMS Tech & the Cloud, Quality Models & QA, TMSs for Crowdsourcing, etc.

Here are three of my presentations which I feel have more sympathy for:

Translation Crowdsourcing, TMS selection and implementation, and a Recommendation on ADP TMS-choosing.


Again, thank you so much for your patience and I’m looking forward to cooperate with you in the future![:]