Here is an unusual post for the GeoServer blog - an interview! We have been asking Frank Gasdorf to write a blog post, to thank all the amazing translators, for some time. Finally in an act of desperation Jody managed to hunt him down on Skype for a few questions on how GeoServer translation works and how you can get involved.
Q: So frank I am used to working with you on uDig or the Live DVD. When did you start with GeoServer?
Let me try to answer. My first contact with all these open source projects was in 2008 - with uDig as I used to use at work as a platform for our GIS system.
uDig is a desktop application with uses OGC services (WFS, WMS and whatever) therefore we needed to use GeoServer and MapServer. And we chose GeoServer as we were familiar with the GeoTools library.
Q: When did you start getting involved as a committer with GeoServer?
Around about two years ago, I have no idea maybe we can check. I think it was about Wicket and the UI and some missing externalized strings - so we can translate it into German.
Q: Ah so you started out with GeoServer and translation from the get go.
Yes. GeoServer was still using subversion, and we requested commit access. We had to show were familiar with GeoServer build, issue tracker and so on.
Q: Was that difficult?
Not really, always had a guiding hand from the mailing list, committers and my questions were answered quickly.
Q: I want to ask you about all the amazing translation work you have set up, every release seems to have more languages coming on board. How do you do it?
We had several stages of success. First part everything was about finding an easy-to-use crowd platform for translations with support to synchronize from and back to the core code base. The second step was about setting up the environment for several resources identified as translatable UI elements. And finally we initially set up languages teams everybody can join after approval.
While posting the progress on Twitter, Google+ GeoServer Community or massages on the Mailing-list the community of translators has grown rapidly from few translators during 2.1.x release cycles to currently around 80 for release train 2.4.x.
We started with the GeoServer 2.1 with 15 resources and set up the main languages and some others already existed from other translation platforms or in source repository of GeoServer.
Now GeoServer is up to 25 translations, with a total of 25 resources to translate.
Q: Hold on what is a resource you are going too fast.
A resource is like a text file, where the developers have separated out all the human readable text from the applications user interface. Like dialogs, table headers and forms.
Here is an example from the web-wms module:
<code><small>AbstractStylePage.confirmOverwrite = Really want to overwrite the current editor contents? AbstractStylePage.copy = Copy ... AbstractStylePage.copyFrom = Copy from existing style </small></code>
Q: In each release you have been showing these great graphs illustrating the progress translating into different languages. Where are those from?
The screens are taken from the Transifex platform, which you can see at the following link:
The content is stored in the cloud and the platform allows you to host translations for open source projects for free. Different plans for commercial and open source projects.
As long as these projects are publicly accessible, and the core project is open source, the service is free.
Q: Can you show me what translating looks like?
Well you can probably login with Facebook or other social accounts. Have a look.
Q: Yeah that worked (it did Twitter, Google, Facebook) and I can now go in and view the French translation.
That is it - the translation screen is similar, but you would be allowed edit the string.
To edit you have to request to join the organization, when you have joined there is different roles: Administrator, Translator and Reviewer.
Q: So how do people contact you to help out translating GeoServer?
There are two different ways people join:
For existing languages they can join a translation team, for e.g. Italian
If a translation team does not exist yet they request a new language team for GeoServer project.
This month Thai, Indonesian and Vietnamese teams were set up!
Q: Wow that is amazing, do they have to sign a code license agreement like code committers, or are you putting this in on their behalf?
Right now we team up with GeoServer committers to bring the translations back to the code base. The Transifex platform has a nice feature for CLA agreements. Once users request to join a Team, they have to accept the CLA. Only who accepted the CONTRIBUTOR ASSIGNMENT AGREEMENT_ _ is allowed to edit.
Q: Is this the same technology you use for the Live DVD?
Not yet, but we are considering it. Actually there isn’t any support for Restructured Text available at the moment.
Q: How are the translations being received by the community? We obviously do not get a lot of feedback on geoserver-devel which is an english email list.
The developers can mostly speak English and prefer to work with GeoServer in English. In the emerging world users only speak their own language and therefore they have no access of open source projects or capabilities. If it is not translated it is not usable. Another hurdle may be the lack of knowledge about developing tools and infrastructure. Translators are mostly Users and not Developers, who knows how to checkout, modify and push back changes from and into a source repository.
Translators form a bridge between the users and the developers allowing open source to be used in their own language.
I direct message that can answer that question:
I would like to thank all these amazing guys who have been contributing 25 languages at the moment. Special Thanks goes to Oscar Fonts, who helped a lot during project initialization phase and describing synchronization workflows.
There are many other people - especially all team coordinators - who made it a success so far:
Thank you for giving me the chance to talk about it and I hope I’ll meet some of you at FOSS4G in Nottingham.
Q: That is right there is a GeoServer code-sprint - where can people sign up?
On the OSGeo wiki FOSS4G 2013 Code Sprint scroll down to the GeoServer entry and add your name.