Category Archives: OpenStreetMap

Random Scribbles

1. The FOSS teacher training cum workshop (2nd edition) at WBSUB, Kolkata on March 13-14 was great. IDG, Susmit, Subhodip, me along with 3 other wbut-lug guys trained them about the basics of FOSS, desktop environments, openoffice, productive internet etc. Really, it was good to find school teachers getting trained in FOSS as they would have a ripple effect on their students. The sessions were exhaustive and handouts/handbooks were also distributed. The photoset is here.

2. Google Summer of Code 2009 is on and OpenStreetMap, Fedora, KDE & lots others are participating this year. Student applications have started yesterday. Head out here to open the doors of freedom. Btw, this is the 5th year (anniversary) GSoC is happening and hence the Retro 60’s logo theme. :)

3. Went to Burdwan yesterday for some work. But the cool thing is drove all the way (up & down 160 kms) from durgapur myself. It was fun! Never went so far considering me a newbie in driving cars.

4. Kinda pissed off that college tech-fest is not happening this year. Permission problems and all. well, a long story in itself!!

Initial release of the i18n branch of osm rails-port

Now, we have a working i18n branch for the osm rails_port. This setup is done by using globalize and click-to-globalize plugins. As of now all/most strings of website can be translated using the present translation interface. We even have l10n statistics, translation update feeds and more…

SVN Branch: [http://svn.openstreetmap.org/sites/rails_port_branches/i18n/]

Wikipage: [http://tinyurl.com/osm-i18n]

More detailed writeup: [http://makghosh.googlepages.com/gsoc-writeup.pdf]

Loads of thanks to my mentor Mikel Maron and the entire osm community for guiding and helping me out in internationalizing the rails-port :)

Another major chunk of work that will follow this is, map-tile localization. Also there are some enhancements to be done, listed in todo section of the wikipage. So discussions are open. And, i’m really glad that I passed my final evaluation of Google SoC, thanks again goes to my mentor :) It was a rocking summer!!

day out @ kolkata

It was all about mapping and macboook. couple of pics:

I had been mapping different parts of ccu, parts of salt lake, park street, rashbehari avenue, ruby hospital, and the brand new shopping mall South City at Prince Anwar Shah Road, South Kolkata. It was a day full of fun (and exhaustion). Will try to upload them by tomorrow…

@Apple Store: got my macbook replaced (apple guys were really helpful). witnessed the mad rush for iPhone3G, with tv interview going on the other part :)

Language filtering of diary entries!!

This feature was originally proposed by Dan Karran as a comment in one of my earlier posts. Anyway, so here we have “show all / filter by my language” tags in the user diaries’ pages. By default, all entries are shown. We can click on ‘filter by my language’ so as filter the posts by the locale selected by the user in his preferences. We can also have feeds for these filtered entries. The screen-shot of current diary entries page,

openstreetmap-language-filter-diary-entries

Image #1: openstreetmap-language-filter-diary-entries

And for this we need to specify the language of each diary entry. So new entry page has an option or rather a dropdown menu from where we select the language of the entry. This preference, by default takes the value of user’s current locale and is saved in language column of diary_entries table. The screen-shot of ‘new diary entry’ is as follows,

openstreetmap-new-diary-entry

Image #2: openstreetmap-new-diary-entry

Also put up your suggestions… :)

Localization Statistics

After translation updates, I did the l10n statistics. This basically give the translators an idea of number of pending/completed strings and percentage of localization done for all locales currently supported by the app.  For this i created a Statistics table in database using migration. Now the statistics are updated when user clicks on the l10n link on his/her home page. The logic (in TranslateController#stats) is if the current language of the user is not present in the statistics table, it is added. Otherwise normally the values are updated with the help of globalize_translations table. The screen-shot of the l10n statistics,

openstreetmap-l10n-statistics

Image #1: openstreetmap-l10n-statistics

Its’ the ‘l10n statistics’ that apears first when the translator clicks on l10n link in his/her home page. Another nifty feature is that, s/he can view the sort the l10n statistics in two ways, ‘by percentage’ or ‘by number of completed strings’ in descending order. Also, every locale has a link to the pending/completed strings page associated with the numbers.

Apart from this, i have kept this l10n statistics page (without those pending/completed strings link) visible to all users, just to motivate more of them into translation. The screenshot of user’s home page with l10n link (view rendered in bn-IN locale as you can see one string i translated for example),

openstreetmap-l10n-example

Image #2: openstreetmap-user-home-bengali-partial

The difference between user/translator is done by tr_status column in user table,

0 = User
1 = Translator
2 = l10n Admin (proposed)

Todo: For now, the tr_status is updated manually. We have thought about a admin page for the l10n admin where s/he can add/remove translators, add/remove coordinators etc. Thoughts??

Please put up your comments or suggestions…