Logo
hhlee
2024-10-29 14:33:12

Behind
Developing a Global Version Website with GPT & Copilot

When developing a website, it's tempting to focus solely on the native language, but for SaaS services with global potential, that approach can feel a bit limiting. However, aiming for global reach from the get-go can be quite overwhelming and resource-intensive. Our team has devised a method that allows us to develop in our native language while still supporting global users without breaking a sweat.

Complete Translation Within the Editor

Drawbacks of the Variable Handling Method

Standard i18n libraries often handle multilingual support in the following way: they create keys for each message and provide translations for each user language. This seems like the most logical approach at first glance.

This method represents the simplest form of running a multilingual version. It offers the advantage of being able to flexibly add more languages as the business grows. However, for smaller teams or when the business is not yet fully scaled, this approach can lead to transitional issues, such as:

  • When implementing the UI, there's the challenge of naming and securing language keys for numerous error and user messages.
  • Translating into various languages becomes an issue (though this can be somewhat mitigated by external services or GPT).
  • You have to check if a key is already in use and add it if it’s not, requiring a search process.
  • If a user reports an error message that requires code modification, you must first search for the related language key before locating the error.
  • These might seem like trivial tasks, but when you're developing the front-end that interfaces directly with user messages, these processes can drain already scarce development resources.

    Embedding Language-Specific Messages in Code

    To minimize these inconveniences, our Videostew team is developing the multilingual version at the same pace as the single-language native version. For now, we're limiting the multilingual version to just "English." While this approach may not be sustainable as the market expands, it's extremely useful during the initial global phase to appeal to the "English"-speaking user base.

    At Videostew Team, we register and use a global helper called directTrans in both the backend and frontend. The implementation of this code is quite simple. It takes a Korean message as the first parameter, and an English message as the second parameter.

    To display messages to users, it’s as simple as writing the following code:

    You might think, "Don’t I have to translate to English while coding anyway?" But, with tools like Copilot or Cursor AI, that's not the case. These tools refer to the helper functions or patterns you frequently use in open tabs, so they understand how to apply commonly used helpers like the one above very well.

    When you input dtrans('.. with Korean, it infers the translated English message in the second parameter, allowing you to create a global version while coding in the editor.

    copilot.gif

    < Just type in Korean, and the translated English is automatically added >

    Using this method, you can overcome all the drawbacks of the traditional way of developing a global version.

  • You can write user messages in your native language while coding, so there's no need for a separate translation system, saving time.
  • You can write the necessary messages right away, regardless of existing keys (though it might make the code longer due to duplicate messages, but duplicates are rare).
  • You can quickly find code parts based on exposed user messages (since the messages themselves are in the code).
  • As mentioned earlier, this method aims to implement a global version quickly without much effort. It’s not suitable for creating more sophisticated translations or multiple language versions. As the service grows, the language system needs to be updated.

    Asynchronous Translation of User Guides

    Beyond the user messages included in the code, our service employs numerous messages and texts. For fixed pages like landing pages or terms of service, translating them once is sufficient. However, for dynamic content such as guides or blogs that are constantly being created and updated, manual tracking becomes a challenging task.

    At Videostew, we address this by registering guides in our native Korean, and after a set period, automatically detecting and translating the modified sections into English using the GPT model in the backend. While there are various API services for translation, using LLM offers the following advantages:

  • We can naturally tailor the writing style to our liking.
  • System messages allow translations that consider the nature and characteristics of our service.
  • It prevents mistranslation of technical terms or jargon specific to certain sites.
  • In practice, for large guides (almost book-length), it's impossible to translate the entire content every time there's a modification. Thus, we create hash keys based on each paragraph's content and automatically translate only the changed paragraphs.

    < Hash values for editing only changing paragraphs >

    This call type could be more cost-effective for bulk translations using GPT's bulk call discounts, though we currently don't utilize this option.

    Customer Support Handling

    To ensure a perfectly consistent customer experience and real-time user information integration, we have developed our own chatbot. When a user's information is in a language other than their native one, we automatically attach the native language to the original message. If we respond in the native language, it's then translated back into the user's language for delivery.

    cs.gif

    < Questions not in your native language are automatically translated >

    This helps reduce delays caused by translations and allows us to provide seamless global service.

    Conclusion

    It seems that many services are already integrating GPT into their development and operations. For small teams like Videostew, using AI tools like GPT can efficiently make global services possible.

    Go to Article
    πŸ€” Developing a Global Version Website with GPT & Copilot When developing a website, it's tempting to focus solely on the native language, but for SaaS services with global potential, that approach can feel a bit limit...
    Developing a Global Version Website with GPT & Copilot
    hhlee 2024-10-29
    πŸ“£ Why Video Editors Choose VideoStoo Over Premiere EduPlus is the educational media arm of ET Edu, a part of the Electronic Times Media Group, established in December 2018 with the goal of nurturing key talents ...
    Why Video Editors Choose VideoStoo Over Premiere
    Junwoo 2024-10-24
    πŸ—žοΈ [Update] Launch of AI Image Generation Feature We have introduced a new feature that allows you to generate and use AI images directly from the library.No need for complex scene description prompts—AI images...
    [Update] Launch of AI Image Generation Feature
    Junwoo 2024-10-18
    πŸŽ“ The Ultimate inVideo AI Alternative for Content Marketers Hello, in this age of AI-powered video editing tools flooding the market, have you ever wondered which tool to choose as a content marketer?In this post, we wil...
    The Ultimate inVideo AI Alternative for Content Marketers
    Junwoo 2024-09-26
    πŸ“£ Engaging Students with VideoStew: Real-Life Examples and Practical Guide Digital Transformation of Education Using AIIn today's educational landscape, digital transformation is no longer optional but a necessity.Especially with the i...
    Engaging Students with VideoStew: Real-Life Examples and Practical Guide
    Junwoo 2024-09-04
    πŸŽ“ Short-Form Content Strategy for Media Companies: 3 Key Tips for Running a Successful YouTube Channel Recently, traditional newspapers and online news outlets have been paying attention to short-form content. This is a strategic move to adapt to the changing tre...
    Short-Form Content Strategy for Media Companies: 3 Key Tips for Running a Successful YouTube Channel
    Junwoo 2024-08-28
    πŸ—žοΈ [Product Update] Improved Performance for Reading Numbers and Units in TTS The functionality has been improved so that all AI voices in Korean can properly pronounce numbers and units.If some sentences are not read correctly, you can c...
    Junwoo 2024-08-27
    πŸ€” UX Details to Make All TTS Engines Properly Read Korean VideoStew offers a variety of AI voices. From Google Wavenet, Amazon Polly, KT AI Voice, Naver Clova, Azure, to ElevenLabs...As a result, a natural issue arises...
    UX Details to Make All TTS Engines Properly Read Korean
    Junwoo 2024-08-27
    [Stop]