Falsehoods Programmers Believe About (Human) Languages - Common pitfalls in interface translation


See this talk at Open Source Bridge 2017! Register today!

Accepted Session
Short Form
Scheduled: Tuesday, June 20, 2017 from 4:45 – 5:30pm


Making open source software translatable is easy, right? You just take out all the strings, put them in a translation file in your git repository, and start accepting pull requests. Simple! Well, not so fast. There’s a lot more to this than meets the eye, and if you take a quick and dirty approach you’ll end up with upset translators, complaints from users, and mysteries like “what is ١٢٬٣٤٥٬٦٧٨ and why does my code want to parse that as a number?”. Thankfully, there are open source resources and libraries that can take care of these things for you.


Many languages have interesting features that make internationalizing software more complicated than an English speaker might imagine. There are libraries for this, but to get the most out of them they have to be used correctly. In this talk, I will discuss tools and best practices for interface translation, and show you some of the interesting features of human languages that make translation complicated.



Speaking experience

I presented at Open Source Bridge in 2015 (http://opensourcebridge.org/sessions/1626 as David Chan's sidekick), 2014 (http://opensourcebridge.org/sessions/1247), and 2013 (http://opensourcebridge.org/sessions/1021), 2012 (http://opensourcebridge.org/sessions/877). I also gave a presentation at linux.conf.au 2015 (https://www.youtube.com/watch?v=mG3bTVF-EGo) and a well-received lightning talk making light of the topic of my talk at linux.conf.au 2017 (https://youtu.be/brNmfD1Lb7M?t=57m28s) and LibrePlanet 2017.


  • Me cropped

    Roan Kattouw

    Wikimedia Foundation


    Roan is a software engineer at the Wikimedia Foundation. Over the past 10 years, Roan has worked on a wide variety of wiki-related things, from JS/CSS asset delivery on Wikipedia to an in-browser WYSIWYG-like editor for wiki pages, and he’s learned a few things on the way about building software for a global audience.