Team CAT Project: Otter Awareness Month

Introduction

At MIIS, our approach to learning is hands-on, especially in the Translation Technology course, where we practice through projects that mirror the industry’s real-world demands. As the culmination of our studies, we formed a team under the banner of Amazing Five Translation. We embarked on a project that would see us partnering with Monterey Bay Aquarium during Otter Awareness Month, translating vital campaign materials. Our mission was to adapt these materials for an international audience, ensuring the message was as impactful and engaging as the original. Amazing Five took on the task, providing translations in Chinese, Japanese, Korean, and Portuguese, and managing the workflow with professional tools like SDL Trados, from the drafting of our proposal to the final delivery of our work.

Statement of Work (SOW)

The SOW for our “Otter Awareness Month” project captures the essence of AFT’s translation services.

The document meticulously lays out the workflow stages from preparation, production, and finalization stages. It also outlines communication protocols, pricing, and payment details, while also profiling the expert linguists and tools engaged in the project. It serves as a comprehensive guide for ensuring our client is fully informed and played a crucial role in securing the green light for our project during the initial kick-off meeting with the client.

Kick-Off Meeting with the Client

After meticulously crafting our proposal, our team had a kick-off meeting with the client, affectionately known as Prof. Wooten. He played the role of a client unfamiliar with translation work and we thoroughly guided him through our plan, and while he seemed impressed, he suggested having a minimally bilingual employee review our work, challenging us to defend our professional integrity.

As professionals, we were confident in our skills, but this mock scenario was a lesson in client dynamics. We advocated for our expertise, yet learned that clients often seek external opinions. Having spent a good amount of time in the language industry, I am still discovering new aspects to learn. This project was a brilliant simulation, offering valuable insights into client relations and real-world challenges in translation.

Deliverables

Leveraging our amazing teamwork, we successfully delivered all the required materials to our client on schedule. The deliverables consisted of thoroughly translated documents, Translation Memory, glossaries, and pseudo-translations for Chinese, Japanese, Korean, and Portuguese, ensuring a comprehensive and well-rounded translation package.

Future Improvements

Reflecting on our group translation project, I recognized key improvement areas for more professional and effective project management in real-world scenarios. The significance of having a dedicated project manager became apparent, especially for larger projects. A project manager could optimize workflow in the CAT tool, improving the use of translation memory and glossary management. I also realized the importance of a task tracker such as JIRA to streamline communication, as relying solely on Teams chat proved inefficient. These realizations have equipped me with a deeper understanding of how to enhance both our management and communication strategies for future translation projects.

Reflections

Regular Expressions for CAT tool

Helpful rules for EN-KO translation on Trados

When localizing to a different language, it is essential to adapt the text for the target audience. Using the proper typographic conventions, such as curly quotes, aligns the translated content with the local language’s standard writing style.

1. Rule: Switching from ” ” to “ ” (from straight quotes to curly quotes) 따옴표 바꾸기

Find: “([^”]*)”

Replace: “$1”

This RegEx rule is designed to find text enclosed within straight quotation marks (“). It then replaces the found text with the same content, enclosed in smart quotes or curly quotes (“ ”) for enhanced typographic presentation.

Switching from straight quotes to curly quotes in translations from English to Korean is crucial for several reasons. Curly quotes enhances the visual appeal and professionalism of the text, ensuring cultural and linguistic appropriateness in the target language. Consistency in using curly quotes maintains text cohesion, preventing distractions and ambiguity, especially in technical or legal content. Overall, this transition improves quality, readability, and cultural relevance in the translated material.

2. Rule: Removing cent sign (two decimal digits after the decimal point)

Find: \.\d{2}(?=\D|$)

Replace with:

You can apply this regular expression to locate instances of two decimal digits (decimal places) following a dot and remove them.

In Korea, we typically do not use two decimal places after the dot. Removing them during translation can be quite cumbersome. However, with the help of this RegEx, we can significantly enhance our productivity and save valuable time.

3. Rule: Changing English date format to the Korean date format.

Find: \d{4}[-/.]\d{2}[-/.]\d{2}

Replace with: YYYY-MM-DD

When translating content, you might encounter dates written in various formats, including the typical English format, which is MM/DD/YYYY or DD/MM/YYYY. However, in Korea, the standard date format is YYYY-MM-DD. To ensure that the translated content adheres to the Korean date format, this regular expression can be applied.

4. Rule: Identifying incorrect spacing

Find: [\s][.,?!]+[\s]

This regular expression is for identifying and locating spacing errors. Overall, this regular expression is used to find instances in the text where a punctuation mark (period, comma, exclamation mark, or question mark) is surrounded by whitespace, ensuring that there is a space before and after the punctuation. This will allow you to make adjustments if needed.

Translation Technology

From Babel to AI: The Future of Human Translators in the Age of Advanced Translation Technology

Charting the future of translation: A vibrant depiction of technology's role in the language industry.
Charting the future of translation: A vibrant depiction of technology’s role in the language industry.

What exactly is translation technology?

The quest to understand different languages dates back to ancient times, with the story of the Tower of Babel often symbolizing the genesis of linguistic diversity. Traditionally, translation relied heavily on individual translators, with the quality of translation directly linked to the skill of these linguists.

Today, modern translation is intricately intertwined with technology, aiming to make the process faster and more efficient. This technological evolution in the field of translation includes tools like Computer-Assisted Translation (CAT), Machine Translation (MT) software, and Translation Management Systems (TMS).

One of the first questions that crossed my mind when I began the “Translation Technology” course at the Middlebury Institute of International Studies at Monterey was: Will these technologies replace human translators, or will they become invaluable allies? This course, led by Professor Adam Wooten, started with this intriguing query and guided us through a comprehensive exploration of how to use technology both effectively and ethically. We explored the strengths and limitations of translation technology, understanding its goals and capabilities.

From the pioneering IBM-Georgetown machine translation experiment in 1954 to the advent of Large Language Models and Generative AI, we examined how these technologies are applied in the world of translation. Join me as I share some key insights and takeaways from this enlightening class.

Game Localization: Ninja vs EVILCORP

Game localization is a buzzing trend in the industry, bridging players worldwide with culturally adapted gaming experiences. Curious about how it works? Let’s start with a simple JavaScript game localization project.

Welcome to the starting screen of our adventure, crafted by Rémi Vansteelandt.”

Nostalgic Pixels: From Arcade Classics to ‘Ninja vs EVILCORP’

Introduction

Growing up, my brother and I would often escape to a small, bustling arcade in our neighborhood, immersing ourselves in the world of arcade games. Our favorite was the Teenage Mutant Ninja Turtles game. Lost in the cacophony and excitement of the arcade, we never really understood the storyline behind the ninja turtles’ fierce battles, mainly because these games weren’t translated into Korean back then.

GIF from Teenage Mutant Ninja Turtles arcade game (Konami, 1990)

That childhood memory came rushing back when my team member, Zilong, showed me a uniquely stylish ninja game. Reminiscent of those 1990s arcade adventures, this game, featuring a charming ninja character battling an evil corporation, captivated me with its enthralling story and sophisticated range of difficulty levels. This modern ninja, devoid of traditional weapons like knives or shurikens, captivates with incredible sneaking and jumping skills.

“Ninja vs. EVILCORP,” a top 10 contender in the 2020 Js13kGames competition, truly deserves global acclaim. We decided to localize this delightful JavaScript game into Chinese and Korean by utilizing 24 Ways to internationalize JavaScript strings.

Workflow Outline

This graphic outlines the six-step process of game localization, starting with preparation by locating strings, through translation and in-context review, to final customization and delivery.

File Preparation

a. Locating user-facing strings

After downloading the game from GitHub, we began evaluating the code to identify potential localization issues, such as hardcoded strings or text embedded in images that would need additional visual editing. Upon opening the file, we immediately encountered this issue.

The issue we faced was due to template markers in the HTML code (like {{ CSS_INJECTION_SITE }} and {{ JS_INJECTION_SITE }}). These markers indicate that the game uses a special system to insert CSS and JavaScript code dynamically. For localization, which involves adapting the game for different languages, the text needs to be prepared in a way that this system can understand and use. Essentially, the text translations have to be ready to go as soon as the game’s webpage starts to load and set itself up.

To resolve this issue, Zilong and his friend with a CS degree came up with a clever solution. They modified the initialization of the game’s HTML file. They implemented a workaround to enforce the application of 24 Ways to internationalize strings before the game even starts to show anything on the screen, ensuring that the strings would be internationalized right at the start of the HTML file’s processing. Now, we’re all set to make the game internationally friendly!

b. Implementing 24 Ways for internationalization (i18n) and externalizing strings

We searched our game’s code for all the text that players see. This text is what we will need to translate. After finding all those text strings, we put them into a separate ‘.js’ files, one for each language like English, Korean, and Chinese.

Wrap Your Strings: To make sure those strings are recognized by the internationalization system, we ‘wrapped’ them using underscores and parentheses: _( ). For example, if you have a string “Play Now”, you would write it as _(“Play Now”) in your code.

Localization

Awesome, everything is set for translation now.

a. Translation

We began by directly translating the text in each language’s .js file. This straightforward approach allowed us to easily preview the changes in Visual Studio Code. We focused on translating the parts highlighted in orange into the target languages. Before long, we could see our game come to life in Korean and Chinese!

b. In-Context Review

Time to put our translated game to the ultimate test – by playing it! Now, full disclosure: checking the translations in context was a bit of a challenge for me. Why? Well, let’s just say my gaming skills haven’t exactly leveled up since those arcade days. I still vividly remember cheering on my brother as he tackled the final boss in the Ninja Turtles game, while I, well… let’s just say I was more of a ‘supportive spectator.’ Beating games? Not exactly my forte. But still I did manage to review all the strings for any pesky truncation issues. Small victories, right?

c. Customization and Delivery

After translating, a thought struck me – why stop there? What if we spiced things up with different color themes for each language? Time for a CSS makeover! Zilong got creative with a sunset theme for the Chinese version, painting the screen with warm, twilight hues. As for the Korean version, I opted for a bright, daylight theme. Who says ninjas only strike under the cover of night, anyway? Let’s bring some color to these ninja adventures!

English and Korean
English and Chinese

Lessons Learned

Now, the game is all set for players in China and Korea to enjoy! Working on this localization project has been quite the adventure, learning both wins and challenges of using ’24 Ways’ with JavaScript games. Here’s what I’ve taken away from it.

  1. ’24 Ways’ Has Its Limits It’s a handy tool for some games, but ’24 Ways’ isn’t perfect for everything. For more complex games, I’m thinking of trying more traditional localization methods for future projects.
  2. The Power of Teamwork At MIIS, we learn by doing, and that means working together, just like in real localization projects. This project taught me just how much teamwork can make or break the final result. Zilong was invaluable — without his help, I might’ve thrown in the towel way too soon. I’m incredibly thankful for his hard work and the team spirit that kept us going.

Game On!

Ready to check out how it all turned out?

Wrapping up this localization adventure, it’s been a rewarding ride filled with learning curves and collaborative triumphs. As we roll out this game to Chinese and Korean players, it’s a sweet reminder of how shared efforts and a dash of perseverance can translate into success. Stay tuned for the next chapter in our localization journey!

Credit to Rémi Vansteelandt for creating this engaging game – explore it here: https://js13kgames.com/entries/ninja-vs-evilcorp