Opened 8 years ago
Last modified 6 years ago
#2320 accepted enhancement
Global stats for GlotPress to identify possible future GTE
Reported by: |
|
Owned by: |
|
---|---|---|---|
Milestone: | Priority: | normal | |
Component: | Translate Site & Plugins | Keywords: | 2nd-opinion has-patch |
Cc: |
Description
On some locales (like Catalan), most of the translations are done by 3-4 people (with 2 of them being GTE), even if according to https://translate.wordpress.org/locale/ca there are 10 GTE, and almost a 100 contributors.
This is a problem not only because it simply doesn't scale (with the amount of strings that themes & plugins have, 3-4 people are not enough), but also because is extremely hard for GTEs to identify "active" contributors to help and guide them so they become one day GTE, and for contributors to find active GTE so their strings get approved and don't stay forever as pending.
Ideally, there should be a way of "filtering" the teams page (https://make.wordpress.org/polyglots/teams/?locale=ca) with some kind of "active" filter, with active being a rule such as "has translated/reviewed more than X strings (could be 0) in the last 3-4 months".
That could help to really asses the health of a team, as you could quickly identify how many people is actively contributing to the project.
Also, if that filter included some kind of aggregated cross-project stats (similar to the ones you get "per-project" in translate.wp.org), pointing to the projects they contributed, it would be easier to "measure" the amount of contributions people is doing: I, as a GTE, am more in validating strings translated by someone who contributes regularly than strings from someone who only translated 1 string two months ago. Computing such a huge amount of stats won't be light in terms of resources, but in order to be useful, these stats don't need to be "live": a weekly update would be more than enough to get a sense of the current state.
This would also give extra visibility to the health of the team, on top of the "activeness" filter: knowing there are 100 people active when 99 of them only have translated one string isn't a sign of healthy at all.
Attachments (2)
Change History (15)
This ticket was mentioned in Slack in #polyglots by xavivars. View the logs.
8 years ago
#3
@
6 years ago
- Keywords 2nd-opinion added
I'm not sure the query in get_translation_contributors()
can be easily or efficiently adapted to do this.
#5
@
6 years ago
- Keywords has-patch added
attachment:2320.diff takes a simple approach to this, by dividing the list into current translators and past translators. I used 365 days as the threshold. See the screenshot for an example of how it looks.
Is this an improvement? Good enough to consider it a fix?
This ticket was mentioned in Slack in #meta by tellyworth. View the logs.
6 years ago
#7
@
6 years ago
This is a great start @tellyworth
Reviewing the original ask it was one thing to define the current/past contributors which you've already done here which is great but @xavivars point about single-string contributors can be frustrating as some users will just submit one every couple months just to stay in the 'Active' list. Could the active list have a limit of say 10 strings per month/year or something?
Or we could take a page from the Tag cloud and add weighting to the names so those who contribute more have larger names and those who only contribute one string are much smaller in comparison.
Just throwing in my two cents. This is a great start but wanted to indicate it doesn't seem to fully resolve the original concern.
Thanks
#9
@
6 years ago
This would be a big step forward, and would clearly raise the point of not having "contributors" listed that haven't submitted any string for years. I'd love to see the same for PTE and GTE though ¹
On the other hand, as @garrett-eclipse mentions, having the amount of translations each person has done², or increasing the "active" criteria to something more meaningful, like 10 strings instead of one would help. So I would like to have at least this to consider this ticket fixed. But I'm happy to create another more specific if needed.
Finally, as an extra bonus, #1664 (knowing what are the projects each person has contributed to) and #2184 (knowing how much each person has contributed to) would make the task of identifying new potential GTEs way easier.
¹ As an example, when I initially wrote the ticket, we had 10 GTE for Catalan. As an experiment, I removed 8 of them two months ago: I wanted to confirm they were not active at all. And, sadly, I have confirmed that: there hasn't been any interaction with any of them
² I know the current query only does a select distinct user...
, and changing that to a select sum(*), user ...group by user
would have performance implications, but it would really be aweseome.
#11
@
6 years ago
I've deployed 2320.diff as a starting point. Adding an extra filter like WHERE accepted > 10
for inclusion in the "current" section seems like it's probably feasible performance-wise, but I'll need to do some further investigation to figure out if that actually achieves what I think it does.
#12
@
6 years ago
I really like that feature. More than that, it could also add gamification to the process and make translations and approval like a game.
Related: #1908, #2231.