Good Day,

I haven't been able to find a similar feature request (and am not certain it is in the right queue.)

Is it possible to add a field (content defined by a drupal.org webmaster) that describes a users involvement in the Drupal.org project? It would help differentiate help provided by relatively light users of Drupal (who may unintentionally provide misleading information) and posts created by more knowledgeable users of Drupal.

Example of a forum posts with the above :

Post Title
username - January 24, 2005 - 20:12
Core contributor/Core Pacther

As of now anyone can click they are a module contributer, forum help contributer which can be misleading.

Comments

greggles’s picture

Status: Active » Postponed (maintainer needs more info)

We have a field for "Drupal contributions" which is available at user/UID/edit/Drupal

Is this field somehow different? If so how?

It sounds like you want the contents of this field to show up in the forums. I think that's beyond what we can reasonably squeeze into the current theme and suggest that perhaps the best way to achieve that is via feedback to the drupal.org redesign.

SteveBayerIN’s picture

Yes, the idea is for the field to appear in the forums.

The difference between the field I'm suggesting and the current one is that the field I am suggesting is non editable by the user. Only a d.o webmaster/admin would be able to assign the user their 'rank' of core code reviewer, core maintainer, core contributer, core patcher, etc. Some drawbacks are that someone has to sit down and assign the ranks/roles/fields to the users and it could place a bit more load on the server. The plus point is easier recognition for new users to see which posts are likely to have reliable information and which ones aren't.

It shouldn't be too difficult to add it to the theme compared to allowing (policy wise) such a field to appear.

If the above is achievable a further step could be to allow module maintainers the ability to assign fields such as module maintainer, module patcher, etc.. in the forum/project containers related to such modules (this ones a bit of a stretch.)

greggles’s picture

Status: Postponed (maintainer needs more info) » Active

So...this requires:

1) a new field (which is not hard) and design for the forum (a bit harder) and theme code to implement it in the forum (not terribly hard but not trivial).
2) Admins to assign, remove, re-adjust "ranks" of reviewers (a lot of work for an already overworked group)
3) The concept of "ranks" which the Drupal project just doesn't have...I think a more reasonable implementation would be indicators that could be derived automatically like the count of commits to cvs (code or themes or marketing material) count of issues submitted, count of forum topics etc. But really, that would motivate people to do things that are a little weird like making pointless commits ;)

My inclination is to "postpone" this idea for the ultimate drupal.org redesign (which, by the way, I highly encourage you to get involved in) or mark it "by design" - that information is available 1 click away on the user's profile and we just don't have this concept of ranks (and I don't think many people would really like it if we did, certainly not the site admins).

I'll leave it "active" for someone else to decide.

SteveBayerIN’s picture

The last step of part 1 is not easy but far less difficult than part 2 given the number of core commits (arguable starting earlier than later works here even if the theme and forum is not ready to display the field.)

Well rank isn't the right definition. Its more of a title that can only be achieved by having code accepted (rather than just provided as commits) in Drupal's core code. If there was a way for d.o to automatically assign a title based on a supplied patch (or forum post) being tagged/marked as accepted, an automated system could be used.

For automation, rather than assigning users by hand, how about adding an extra field to status (as highlighted in the attached screen shot) in the Dupal issue queue as 'to be committed' so that users in the Drupal issue queue with a patch status as 'to be committed,' are assigned a rank/role/title as core patcher. It would not totally automate the process but all future titles could be granted that way . The process can still be gamed by anyone creating a patch and assigning it as to be committed to core in that issue queue unless that field can only be assigned by a d.o admin. The advantage is that only one issue queue needs to be checked and all core worthy patches can be posted there. It could also be possible to have a counter for number of accepted commits by a user based on all new core patches being entered into one issue queue (I'll leave this suggestion for another thread.)

Having a field/role/rank available could also make life easier for code reviewers too. Patches submitted by users with the field/tag of core contributer could be reviewed ahead (by being automatically filtered) of code supplied by users who are not titled as a core patcher (whether they be new to patching core or pointless spammers.)

Off-site, another issue (which I found out through the grapevine) recently caught my attention. There are apparently presenters going around giving speeches/presentations about Drupal (and acting as if they have an active role in Drupal core development) while not being active on d.o, g.d.o or any other platform used as communication amongst Drupal devs. While such behavior is probably common, my suggestion of adding a field to the forums would discourage such behavior outside d.o as any one connected to the net can hop on to d.o, look at any post of the presenter and verify if the presenters claims check out or not. While more publicity is usually positive, publicity by fraudulent sources could have a negative impact.

Well I think I've made all the points I can think of right now. I've joined g.d.o re-design group for d.o. If someone wishes to follow up the discussion on g.d.o I'll suggest further advantages and ways to automate the process over on g.d.o.

kbahey’s picture

Seems like User Badges or a variation of it, fits the bill here.

It pulls the badge from the role(s) the user has, and we already have documentation, webmaster, ...etc.

Not trivial, but not specially hard either.

SteveBayerIN’s picture

User badges could work (with text instead of icons.)

Its unlikely user badges or a similar module would be able to automatically count the number of commits by a particular user but by re-using current roles, manual assignment of titles could be minimized. All d.o admins could be assigned the title/badge/rank of 'Veteran core contributer' assuming admins have played a significant role in the development of Drupal whether directly or indirectly:

I assume for users with accepted commits who don't have a d.o admin role

  • A role with cloned authenticated permissions with the addition of an assigned badges could be created for them (seems excessive to create a role just to assign a badge to that role) or
  • The default authenticated role could have an additional check box/option (accessible by only an admin or super admin) in their profile that when checked assigns a 'Core contributer' badge to all posts by that user.
dww’s picture

Status: Active » Closed (won't fix)

@SteveJB I don't think you appreciate the problem of scale here. There are over 300,000 registered users on this site, and it keeps growing exponentially. The number of site admins grows linearly at best. No one's excited about making this happen because no one can fathom how a system that requires admins to select checkboxes on user accounts can possibly scale.

Sorry, but I don't think what you have in mind is feasible. Feel free to reopen this if you come up with a different proposal that is a) 100% automated and b) requires little new code to run on the site.

Cheers,
-Derek

kbahey’s picture

I guess the use of user badges will solve the role based part, and it is a reasonable solution.

For commits to core, or accepted patches for contrib for users who have no cvs access, it is not feasible, and a better solution may materialize in the future if/when we move to a distributed version control system. That is another flamefest though ...

Michelle’s picture

I think user badges is a good idea in that a new user can see at a glance if they're talking to a maintainer / admin. Those of us who have been around a while know this is a doacracy and don't really care what "rank" someone has. But I think it's comforting to new people to have some idea.

Definite -1 to anything where maintainers have to go in and check boxes or, worse, make decisions on if a person has contributed enough to get X on their user info.

Michelle

merlinofchaos’s picture

Note that the user titles module can also do this (text rather than badge) and can create automatic titles by post count; but also, admins can give users customized titles. So it's a fairly easy solution (it's also lighter than user points but I believe the user points integration did finally make it in).

beeradb’s picture

Kbahey, Chx, Greggles, and Myself discussed this for a few minutes in irc today. One approach we outlined was to use a variant of the script Drumm showed off at Drupalcon Barcelona to parse CVS commits to get the names of code contributors, and then storing the number of commits each user has in an additional table. This would probably happen at weekly intervals. One downside to this approach is that it relies on humans making commits to follow a standard for attributing code to contributers. Currently this is done in the form of a "Patch #xxxxx By User1, User2, User3" at the beginning of the commit message. This should work fairly well in most cases for core, but my personal belief is that it would be a total failure in contrib, so it's not worth even trying it there.

There's a couple scripts already out there that do similar things, as noted before Drumm showed off one at Drupalcon Barcelona. In addition, greggles also outlines a similar approach in http://groups.drupal.org/node/8497

If there's momentum for this, I think there are a couple of us willing to spend some time on it, but I think we need to reach some consensus as to whether it's a desirable feature first.

Thoughts anyone?

SteveBayerIN’s picture

If a module such as titles module can create titles based on roles and customized titles (eg. Drupal x maintainer) that can work.

I have yet to figure out if its feasible for an automated system to identify patches being selected as RTBC to Core, linking it to the author (and co-authors) and generating a counter for the number of patches created and/or amended by the related user(s).(The above post was posted as I was writing this one)

oadaeh’s picture

This whole issue kind of assumes that the only way to rank someone is by the level of code they are involved with. What about for those folks who have not contributed to a single line of code, but who help out in the forums, the mail lists & IRC, and who write and/or update documentation? There are many people like that who are knowledgeable about Drupal, but who will not get the magic tag, because of how they help.

Like the module ranking issue, I think any system that attempts to rank the people involved is going to have to be a metric that involves more than one area of Drupal involvement. Even then, it won't even be close to accurate much of the time, because there are also those who may install and administer Drupal for several different sites, but who have not been very active on d.o, and who may be very qualified to answer questions.

Also, using myself as an example, while I won't be labeled core-anything, because of my involvement, I would certainly receive some level of ranking. However, there are many questions on this site that I have no business answering. Yet, if I did, my answer might be weighted higher than someone who did have more knowledge of that area, but not the ranking.

Michelle’s picture

I don't think we're going to be able to apply one label for all the ways of contributing. The problem with badges is that I believe they are role based only. Titles don't have to be, but you still need criteria for a title. I think, if we're going to do this, it makes sense to have multiple titles/notes per person. This takes space, though, and the forum posts would need to be themed to look more like a normal forum with the ranking info along the side to make it fit. So you could have something like:

User FooBar
Drupal Association (title based on membership / being on the board)
Site maintainer (title, based on role)
Project maintainer (title, based on having cvs access to at least one project)
Forum posts: 420 (post count, includes comments)
Handbook pages 50 (very tricky given our wiki style handbook)

That's quite a bit to stick on there and maybe we don't want all that, but it does cover a lot of bases and gives people a chance to earn a "label" in different areas.

Michelle

SteveBayerIN’s picture

Well ranking is probably most inaccurate of the terms (title, role, rank...) used for whats trying to be achieved.

The counting system (not part of the original idea which was to just give titles) is more about tracking number of commits rather than entitling a person to a rank because of commits they have done. If a person has 1 or 50 commits accepted, the rank (1/xxxx) won't be displayed in the post, just a title of core patcher. Probably the best place to place the number of commits would be in the user profile page.

While rank can be used for statistical tracking, I'm not too comfortable about having a 123/1234 displayed on anyones post or profile either since a person who has done a single code heavy patch and/or does a lot of code reviewing (which is just as valuable as the actual coding) could be ranked lower than someone who did 2 or 3 light patches.

At the end of the day, the goal of having titles in a post is to let new entrants to d.o quickly recognize whose who in d.o and when necessary, recognize which users are more likely to have the most insight to the issue (personally, I wouldn't want to inadvertently overlook much less contradicting advice from a code reviewer hence the suggestion.)

oadaeh’s picture

@Michelle:

Handbook pages 50 (very tricky given our wiki style handbook)

And the fact that the Book module currently changes the page and revision owner any time anyone saves a node.

@SteveJB:

At the end of the day, the goal of having titles in a post is to let new entrants to d.o quickly recognize whose who in d.o and when necessary, recognize which users are more likely to have the most insight to the issue (personally, I wouldn't want to inadvertently overlook much less contradicting advice from a code reviewer hence the suggestion.)

And really the only way to do that is to at least scan through the issue queue and the user's personal tracker (i.e.: http://drupal.org/user/UID/track) to see how much involvement they've had. No tag/rank/role system will eliminate that.

SteveBayerIN’s picture

@ #14

Perhaps the titles should have a hierarchy and only the top most (or top 3 titles) level should display in the post. The remaining titles can be seen in the user profile.

Example: (Not necessarily in the following order and limited to the following titles)
Code Maintainer 6
Code Maintainer 5
D.A President
D.O Maintainer
D.A VP of ...
Code Reviewer
D.O Admin
Code Patcher 7
Code Patcher 6
Code Patcher 5
(Authenticated?) Doc Writer
(Authenticated?) Forum Helper

Example of Post Display :
Username - Date - Time
Title 1, Title 2, Title 3, View More Credentials/Titles

SteveBayerIN’s picture

@ 16
The issue tracker is the most reliable system to use, however it is not that quick or easy for newcomers to scan (would they even think of looking at user profiles? I don't think I looked at profiles till a few weeks after joining d.o, I barely think of tracking users even now) especially when a newcomer is overwhelmed at the information available and or a developer is under a tight schedule.

Having titles that are quick and painless to scan and identify would greatly improve the user experience of d.o to newcomers seeking help, advice or assistance.
Hopefully the costs (logistics, coding, flaming etc.) would be outweighed by the recognized and unrecognized advantages of user titles/credentials.

(Didn't mean to double post, clicking reply on 14 and 16s post didn't thread my posts right but then I usually use up more than 10 minutes writing, re-writing and reviewing a post.)