I think a relatively small step toward making keywords (as in the Keyword Nodelet and keyword search, the latter currently "tough beans" for non-pmdev) eventualy much more useful and more immediately somewhat less useful for anonymous abuse, would be the addition of an approved keywords table.
This approach occurred to me in part because it would also make keyword search less likely to become a resource hog. It won't do enough to make keywords /really/ useful, but I think it is a small step in the right direction that could eventually result in a reasonably nice system.
The idea is a new table that only vetted group members could add keywords to. I'd just make a new access rule rather than a new group, at least at first, allowing janitors, sidedocclan, and pedagogues to add/delete approved keywords and delete (at least at first) keywords on nodes. Those wanting access to do keyword approval could join pedagogues. Note that I wouldn't add pmdev as the ranks there are too swolen and unchecked, IMHO.
The other pices to be added, in nearly whatever order, include:
- Hiding or de-highlighting unapproved keywords displayed in the keyword nodelet
- Adding a user option to show unapproved keywords in the keyword nodelet (which selects between the "hiding" vs "de-highlighting" above and default to "don't show", that is, "hide")
- Encourage addition of only approved keywords via the keyword nodelet, but allow addition of unapproved keywords to be considered as requests for new keywords to be approved by the vetted users or as clear abuse to be deleted by them (or something between to be left in limbo). I'm not sure the best interface for this "encouragement" (does HTML allow drop-downs that also allow editing? I don't think so).
- Prevent anonymous users from adding unapproved keywords (they won't see them either since they can't change the user setting away from the default value)
- Accountability and voting. So abusers can't be anonymous and so non-vetted monks can chip in selecting the best keywords. The current "voting" is pretty pointless for many reasons. Voting per keyword per node is likely too much data to be worth doing. But voting on approval status of keywords might be worthwhile.
- Only showing approved keywords in the keyword search drop-down. To search for an unapproved keyword, you'd need to just type it in or, for vetted members, request the list of unapproved keywords (perhaps a new node for that).
- Add a "keyworders' wiki" that all non-anonymous monks can write to (at least at first) for discussing keywording. (Note that creating a usergroup with a large number of members is not a good thing to do at PerlMonks.)
Note that I'm not volunteering to implement this. Just a design idea as a starting point. I'll certainly do some applying of patches, creating of tables based on MySQL definitions someone else works up, etc. Those gods-only tasks, etc.