Quantcast
Channel: Recent posts across whole site
Viewing all articles
Browse latest Browse all 49209

[GSoC Idea] Expose Drupal translation activity

$
0
0

Localize.drupal.org is a great site providing a web interface for community translation. Due to technical and scalability reasons the site uses custom code to provide translation of 7000 modules and about 20000 releases of these modules. Each release is parsed and ends up in the database of the site which results in almost 270000 strings to translate. That's a lot of stuff! Now add up that we have almost 100 languages and each string can have any number of suggestions for any language. Finally, each of these suggestions have their own "commit" history with data on who submitted them, when, via which method (multiple sources supported with a remote API in the mix), when was it approved, declined and approved again by whom and when, and so on. So you can consider this a 3 dimensional version control system in a database (version control per strings * languages * suggestions).

Now since this is all stored in this form, the activity happening is pretty "invisible". Moderators and fellow translators see little of this activity. Some teams use a wiki page to list things they work on, informing moderators that new stuff is available to review. Without that, reviewers can only look actively for stuff to review, which is tedious. Its a definite characteristic of communities online and offline that seeing the momentum, the activity and work being done energizes others and moves them to contribute more. So exposing all this information in natural and automated ways is crucial.

Activity streams

The first part of this GSoc proposal is about choosing the right existing components to base activity stream functionality on for localize.drupal.org and building the streams for the site and for language specific groups as well as tying in data from the localization server with newly built module code, extending the Localization server module suite with a new module.

Examples of desired activity messages:

  • Views 7.x-3.4 became available for translation
  • Joe joined the German team
  • Edith is now promoted to be administrator of the Italian team
  • Josh left the Greek team
  • Aaron submitted 6 new translations (in the past hour) for Pathauto, Views and Calendar in Danish
  • Jill imported 354 suggestions for Views, Display Suite, Drupal commerce, Drupal and 14 other projects in Korean
  • Dana approved 23 translations and declined 9 suggestions (in the past hour) for Date and Panels in Estonian
  • Announcement: new moderation functionality available (link)

The activity should be visible on the site level (such as for announcements and new releases made available), and on the language group level (such as for the language and team specific activity messages). Note that all these activity messages should be possible to generate based on user activity, without the user explicitly typing in any part of this message. Generating a good list of top related modules for translation submissions and imports would be most tricky. It would be great to provide the possibility to inject custom written messages to the activity stream too, but we are not to build a Facebook clone here!

Activity graphing

The second part of exposing the activity is graphing. Showing the growth of teams over time, the submission and moderation activity via graphical means can expose really telling details about a team and would help moderators notice if suggestions outnumber active translations, for translators to see that others are active on the team and energize them to keep contributing.

This part of the proposal involves evaluating the available solutions, picking a good one for localize.drupal.org and like in the previous part, implementing integration code to provide the data in the right form. The source data to be graphed is definitely available, but it will need some processing to be graphed.

These two key improvements would set Drupal's localization service up for even more growth and activity, helping people realize that they work in an active team, moderators to recognize contributions and better organize their work and translation users to have more data points to asses the quality of translation teams when related to certain projects.


Viewing all articles
Browse latest Browse all 49209

Trending Articles