We strongly believe that localization is one key element of successful application or service. Good example is Facebook which basically skyrocketed after providing their service for other languages as well.
I’ve personally crowdsourced successfully my application localizations quite long time already in my hobby projects and saw that for some people, it’s extremely important to have version available in their own language. After turning these hobby projects to business, supporting multiple languages started to feel difficult and I decided to release commercial version in English only. That was due to the urgent need to turn the application fast to commercial solution. Managing multiple languages, starting from application level support to translations and testing is really time and money consuming process so for small company like us it’s not often even a good solution. It could go once but there’s always next release around the corner so how in earth you are going to support multiple languages in this agile and lean world where you’re suppose to release often, release early.
Well at least that was the situation yesterday. After recognizing this problem, we’ve been working with the solution (actually already from spring ’09). After all, by localizing we can grow our potential market and create more revenues so it’s worth it. We had three requirements for localization system:
- It needs to significantly decrease the overhead needed by localization.
- Low cost
- It needs to natively support the platforms we develop on (specific localization files etc.)
We noticed that there’s no tools for our needs so we started to develop our own. The solution consists of two simple elements:
- Location Management System (LMS). Something similar for localization what we have for source code already e.g. SCM.
- Crowdsourcing: our users are going to translate our applications. And yes, they are willing to help us. Why? I’ll give an answer in upcoming posts.
This allows us to create separate process for localization which is running concurrently with our development processes. Which is exactly what we need, no more hassle with the strings. I just post the modified or new strings and they get translated.