Localization

Translate House with Dwayne Bailey and Ryan Northey - Episode 92

Summary

What is internationalization, when should you add it to your program, and how do you get started? This week Dwayne Bailey and Ryan Northey tell us about their work with Translate House and the different projects that they have built to make translating your software easier.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable.
  • When you’re ready to launch your next project you’ll need somewhere to deploy it. Check out Linode at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for running your awesome app.
  • Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
  • To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • Your host as usual is Tobias Macey and today I’m interviewing Dwayne Bailey and Ryan Northey about Translate House and the process of internationalization and localization for software projects.

Interview with Dwayne Bailey and Ryan Northey

  • Introductions
  • How did you get introduced to Python?
  • Why did you get involved in localisation, what got you started?
  • How would you describe the difference between internationalization and localization? Are there cases where it makes sense to only do one of those things?
  • Why should people localise software into other languages?
  • Translate House is an organization focused on localizing and internationalizing software projects. To that end there are a collection of projects that you develop and maintain. Can you briefly introduce each of them and describe their purpose?
  • What was the first project that was created in that list and how did it lead to the creation of the other tools?
  • At what point did you decide that creating an organization to own and support the tools that you were building was the right choice to make?
  • You run a distributed organisation, how do you manage that?
  • I was recently speaking with Michal Čihař about the Weblate project and he mentioned that he uses the Translate Toolkit for handling the low level aspects of managing the translation files. What are some of the architectural and design challenges that arise from needing to support so many different systems for managing source text and translations?
  • How do Pootle and Virtaal compare to other tools for web or desktop based translation? Are they primarily used for translating software or do they get used for other sources of text as well?
  • Given that Virtaal is intended for use on desktop systems by people who aren’t necessarily technically adept how have you approached the packaging and deployment aspects of it? What are some of the challenges that you have had to overcome?
  • Given the fact that multi-lingual translation requires interacting with a large quantity of text in numerous alphabets, what kind of impact has the unicode handling in Python 3 had on your projects?
  • What do you have planned for the future of your projects?

Keep In Touch

Picks

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Weblate with Michal Čihař - Episode 88

Summary

Adding translations to our projects makes them usable in more places by more people which, ultimately, makes them more valuable. Managing the localization process can be difficult if you don’t have the right tools, so this week Michal čihař tells us about the Weblate project and how it simplifies the process of integrating your translations with your source code.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable.
  • When you’re ready to launch your next project you’ll need somewhere to deploy it. Check out Linode at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for running your awesome app.
  • You’ll want to make sure that your users don’t have to put up with bugs, so you should use Rollbar for tracking and aggregating your application errors to find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
  • To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • Your host as usual is Tobias Macey and today I’m interviewing Michal Čihař about Weblate

Interview with Michal Čihař

  • Introductions
  • How did you get introduced to Python?
  • Can you explain what Weblate is and the problem that you were trying to solve by creating it?
  • What are the benefits of using Weblate over other tools for localization and internationalization?
  • One of the advertised features of Weblate is integration with git and mercurial. Can you explain how that works and what a typical translation workflow looks like both for a developer and a translator?
  • Given that part of the focus for the tool is to allow for community translation, how do you simplify the experience for first time contributors?
  • I understand that Weblate is written as a django application. Is it possible to use Weblate with other Web frameworks or non-web projects?
    • Can this be used with projects implemented in other programming laguages? Are there any capabilities that are lot in this scenario?
  • Why should developers and product managers be concerned with localizing an application? How does Weblate help to reduce the level of investment necessary for such an undertaking?
  • What are some of the biggest difficulties that you have encountered while building and maintaining Weblate?
  • What are the most common problems that you see people encounter on both the translator and developer side when dealing with internationalization and localization?

Keep In Touch

Picks

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA