richard icon indicating copy to clipboard operation
richard copied to clipboard

Crowdsource fixing metadata

Open squiddy opened this issue 13 years ago • 10 comments

So people have been sending emails or opening up issues when they found incorrect video metadata (on pyvideo.org). We could use a system that eases fixing metadata for both visitors and site admins.

Retelling what willkg said some days ago before:

  • no requirement to log in to send edit suggestions
  • edit suggestions go through moderator queue
  • simple actions for admins: "accept", "reject", "defer", or "adjust slightly--then accept"

We need to figure out how we want the UI to work on both sides.

squiddy avatar Apr 19 '12 19:04 squiddy

I think this is the next big thing to tackle. Here are some thoughts I have:

  1. I don't want to deal with credentials for anyone. Therefore, no one should require a log in to make suggestions.
  2. A suggestion should indicate actual data changes or just a comment about the existing data.
  3. It's possible that two people will comment on the same piece of data. Both suggestions should get into the queue. I'm not sure how things should work at that point, but I think it suggests that a "suggestion" consists of a (video id, field, old data, new data, comment, suggestor's name (optional), email address (optional)). Then the moderator queue would sort by (video id, field) and it'd be clear from the queue that there were multiple suggestions on the same data.

One idea I had for the suggestion ui is this:

On every video page, there's a "Suggest fix" (or better english) button somewhere prominent. Click on the button opens a form that's in its own layer on that page with a drop down with the list of fields in it.

+=========================================================+
|                                                         |
|  Select field:     [ Dropdown of fields v ]             |
|                                                         |
|  Old value:        [ this is filled in automatically ]  |
|                    [                                 ]  |
|                                                         |
|  New value:        [                                 ]  |
|                    [_________________________________]  |
|                                                         |
|  Comment:          [                                 ]  |
|                    [_________________________________]  |
|                                                         |
|  Name (optional):  [_________________________________]  |
|  Email (optional): [_________________________________]  |
|                                                         |
|                                               [Submit]  |
|                                                         |
+=========================================================+

The name is so I can thank people. The email address allows me to contact them if I have questions and I can also make it so that they get notified when their suggestion is accepted/rejected. Providing neither is fine. If you provide a name and email address, we should save it in a cookie so it auto-populates the next time you make a suggestion.

Clearly there are some serious spam implications here, but we can figure that out later.

If this were the ui, do you think it's easy enough to use such that people will make edits?

willkg avatar Apr 20 '12 01:04 willkg

Also, writing ascii form wireframes blows in github comments. So I'm unlikely to want to do a lot of ui iteration in here.

willkg avatar Apr 20 '12 01:04 willkg

I have an interesting idea. Instead of writing up this system and doing all this work, we instead add disqus widgets to the bottom of every video page like this:

http://redis.io/commands/getset

Maybe just before the comment widget, we say "Any metadata fixes, comments, suggestions, input, issues, ... comment below." Then we just monitor the disqus comments and fix things accordingly.

What do you think?

willkg avatar May 25 '12 23:05 willkg

It certainly is an easy solution, however I think having a system tailored specifically for metadata fixes will require less time to manage than manually scanning comments. Unless there is a way to access comments, I haven't looked at Disqus before.

There are some conferences soon (djangocon eu, pycon asia), so I'm all for an easy solution now that allows people to communicate ideas/issues on videos.

squiddy avatar May 29 '12 16:05 squiddy

So, to update this, I decided against doing the disqus widget because it requires me to look at the comments and update the data and deal with comments. That's too much work.

Instead, what I'm currently toying with is putting all the video data in JSON files in a directory hierarchy and sticking that on github. github has a few different ways for someone to submit changes all of which are great workflows that make it really easy for anyone with a github account to make changes and make it really easy for me to review and accept changes as well as offer suggestions on specific bits of changes.

Clearly a collaboration system like this has disadvantages, but I think there's a fair number of python people who have github accounts, so I think this stands a good chance of being good for 80% of the user base.

I'll toss this around a little bit more. Maybe it's a better idea to build in collaboration tools.

willkg avatar Nov 02 '12 00:11 willkg

I have never used this, but looks promising:

  • https://github.com/bitmazk/django-crowdsourced-fields

If I get ambitious, I may try it out for the Videos.

sherzberg avatar Mar 22 '13 14:03 sherzberg

That's pretty interesting. I kind of wish it had better documentation, but maybe it's a small enough app that it's straight-forward. I'm definitely interested in seeing whether it's a good fit for richard.

willkg avatar Mar 25 '13 00:03 willkg

This will also fix problem of uncertainty - issue #192.

techtonik avatar Nov 22 '13 04:11 techtonik

What problem of uncertainty are you talking about?

willkg avatar Nov 22 '13 13:11 willkg

When you watch video on pyvideo it is uncertain if additional materials like slides should be provided or not. Having a queue of visitor supplied edits/comments for the video page will make it clear that something is missing.

techtonik avatar Nov 22 '13 13:11 techtonik