User talk:Simetrical/Censorship

Confused
"Add another JS variable to every page (sigh) containing a list of image categories to be blocked. We can omit the variable if it's empty, which should be a common case."

Omitting the variable sometimes seems like it be destined to break things that might try to rely on it. It seems much easier to just have it be an empty array in the page source if it's actually an empty array.

That said, this implementation in general feels very odd to me. I think it may be over-complicating the issue to make this category-specific and allow the user to specify categories, which seems to be the current implementation idea. I'm not even particularly sure how a user would specify this binary state (show the images or obscure the images) per-category. That doesn't seem like something that Special:Preferences could handle very easily right now. And, it relates to my next point regarding user-defined category names below.

"To every user-added image on the page, add a class for every category, to the tag itself. (Yes, sigh, more cruft in classes. Can we easily get categories for images on Commons?)"

Relying on user-defined category names seems like a disastrous idea. Commoners and Wikipedians like to move things around, usually arbitrarily. "Spam blacklist" or "Bad image list" are software-defined names which means that they're able to be consistently found on many installs and don't break at users' whims. I can't imagine any sane developer trying to implement child-protection features or a new JavaScript feature or anything by relying on user-defined category names (in GET requests, CSS class names, or anywhere else). It simply isn't practical. --MZMcBride 06:01, 23 July 2010 (UTC)

A few more thoughts on this, and this may be what you envisioned originally, I'm not sure. Broadly defined categories that are canonical (though possibly also localizable) would be neat and might make implementation easier. I can think of about three broad groups of images that people would want to censor: sexual imagery, violent imagery, and blasphemous imagery. Perhaps a fourth category might be drug-related imagery, though even these four broad categories probably wouldn't cover some of the non-English (non-Western) concerns. Larger categories would be less likely to change, though, and might make user preferences more sane than using completely user-defined categories.

Another thought I had was possibly altering the image table (or adding another table) and having the categorizations be per-image. imageprop_type = 'sexual' or something. It might be more limiting for end-user configuration, but it'd probably be easier and more sane to implement. People are going to have to categorize all these images anyway; you could even use the hash (it's already indexed in the image table) to avoid having to rely on image names. So you'd only have to mark "Goatse" as, uh, sexual once.

Global user preferences defaults could be defined per-wiki in CommonSettings.php or wherever, using the specified types in an array ('enwiki' => 'sexual': true;). --MZMcBride 14:54, 23 July 2010 (UTC)