Code to block unwanted News Genius annotations
github.com
github.com
I think you're severely overrating the quality of Internet comments too, and with these annotations there isn't even a report feature available to help clean them up. Genius.
Maybe so, but I think perhaps you're underrating the desire by state and corporate actors for tools to suppress free discourse.
> there isn't even a report feature available
No, there definitely is a "Report Abuse" button. But, there clearly isn't much in the way of a global reputation/meta-moderation system, except what's carried over from the original Genius site, which doesn't exactly share the same editorial values as an (my) ideal annotation platform. The managing editor being from Gawker and going around posting snarky/superficially critical comments on serious pieces of writing is pretty emblematic of this. Which is a shame.
Since it's related, and I'm a fan of their work, here's another annotation platform, https://hypothes.is/, whose developers seem much more serious about creating a robust reputation system.
It's clearly a grayer issue than I first comprehended when writing my initial response to your work; I apologize for my strongly negative tone.
...funded by venture capital with an expectation of hyper growth and liquidity event would not necessarily be beneficial for all users. To put it mildly.
The README links to the explanation: https://ellacydawson.wordpress.com/2016/03/25/how-news-geniu...
But anyway, reading Ms. Dawson's post does make me seriously reconsider the ethical motivations for making this tool. I suppose my initial negative reaction was more based on the 'platonic ideal of a universal web annotation layer' as gkop puts it, rather than an actual understanding of how the Genius platform operates.
Here's another article with additional context: http://www.vox.com/2016/3/31/11336852/genius-annotation-cont...
Second, her reasoning seems to revolve around not having comments on her site. Isn't this literally what every link aggregator from HN to reddit does?
She mentions reddit and others, but doesn't explain how they're different. Apparently it's because people can "scribble" "on her website". This makes News Genius "worse than Twitter". I guess if reddit created a browser plugin she'd hate it too?
>pasted in links to my tweets—which theoretically they should not have had access to, as I had blocked them both on Twitter
How can you block anyone on Twitter and think it'll work? Just sign out and block's gone?
>No one likes being questioned
I think that sums up her attitude. Note I think her work is fine, but she's literally complaining about people discussing her work on other sites.
Things like this don't become a problem until it is so easily organized. A bunch of tweets, FB posts, HN, reddit or other social comments are so scattered they don't have as much impact. The comments aren't visible on the the same page as the content.
I'm going to have to think more about this. I've had this thought a couple of times now but I don't have a full picture of it yet.
God forbid people can post organized opinions you disagree with...
So this is the crux of it: Genius allows people to comment on stuff that people write - like an improved comment section. Occasionally these comments suck and are offensive.
From the blog post: "News Genius adds one more way for people on the Internet to be made unsafe." and "A tool that allows my abusive ex-boyfriend to interact with me and my content is a tool that should not exist."
The solipsism is laughable. The Internet will forever provide an infinite supply of trolls but when you publish on a public platform as opposed to behind a password protected blog or via email, people will talk about what you write (if you're lucky. many people publish in obscurity) and it just so happens that you may not always agree with what they say.
The reflex to shut down rather than, say, ignore dissenting opinion is an odd but increasingly more common one.
From our tech-centric perspectives, the value of a universal annotation platform seems self evident, but for a layman's perspective, it just seems like another toxic commenting layer that content creators can't moderate (which, in the ideal, it is). The fact that it's then collocated with their content, instead of, say, a click away on HN or twitter, makes it feel more violating.
The truly ideal platform would have massive adoption with benevolent power users that both prevented abuse and generated value adding content by verifying factual claims, adding appropriate context, etc. This ideal use case is pretty far from Genius's original platform (explaining rap lyrics in an entertaining fashion), and that mismatch of intents seems to be the source of the problem.
It's a blurry line for sure, but I think the motivation of silencing the 'riff-raff' is understandable.
Thanks for your comment. News Genius' site is a bit misleading, as there are a few different ways one could wind up with site annotations.
The first, as you mention, is by opting in. I agree that such a tool could be a useful way to foster discourse on your content. This tool is not meant for people who opt in to Genius annotations.
Further down on Genius' page, it states that any page can be annotated simply by prepending `genius.it/` to a site URL, regardless of whether the content publisher has granted permission. Unfortunately, the comments section of any Internet page tends to showcase some extremely uncivilized discourse. This is why many site authors choose to disable comments. Genius circumvents these people's wishes. Further, unlike a comments section, Genius does not actually notify the owner of a website if his/her content is annotated. Site owners have the option to moderate comments; it took Genius until today to even add a Report Abuse button.
Hopefully this clarifies some of the motivation. Thanks for sharing your perspective!
If you ask me, site owners should NOT have a right to moderate comments. That just encourages silencing dissent and disagreement and publishing misinformation, as others have noted.
Should site owners also have the right to issue takedown notices to reddit or hacker news when someone links to their site? Or to delete comments on those websites?
Definitely a good point. Interestingly, I didn't set out intending to use JS to solve this problem. I wanted to use Rack to intercept the request and check the headers and proceed from there. However, when I was playing around with it in Request Bin, I noticed that Genius actually modifies the URL so that there is no reference to them anywhere in the headers. This is generally poor etiquette and forced me to modify my approach.
Thanks for your comment!
I guess they will argue fair use, but hostile 'annotations' definitely reduce the value of the work, they reuse the entire work, and they use the work for commercial gain. I wouldn't consider this a slam dunk.
I actually really dislike this concept of "we're going to wrap your website and mark it up with other stuff to make it look like you're hosting this content here". Sure, people should be able to talk wherever they want, but keep that in a popup, or at worst a frame - don't highlight text to suggest that the author has done that, and don't load your own elements in their page.
The fact that they proxy the content on their servers definitely puts them in a more vulnerable position than if this were, for example, a strictly client-side chrome extension that fetched annotation metadata and re-rendered the page accordingly.
In the purely client-side case, the full article would not pass through their servers, only bits and pieces of it. It would be easier to argue fair-use if you're only storing parts of the articles, and comments/highlights, on a remote server, instead of proxying the entire content.
(What if the article is behind a paywall, for example? Then genius.it effectively becomes a circumvention proxy.)
Based on what I read about it before I actually saw it in action, I had guessed that they were showing the original site in a frame served from the original site with their annotations outside that frame.
(That may or may not be legal. I'm not sure if it has been settled whether or not displaying someone's page served from their site in a frame served from your site might be a violation of the public display copyright right).
However, after looking at the genius.it page that was linked in another comment for part of this very thread, and also looking at the genius.it page for my own website, that's not the case. They appear to have made a copy of the base page itself and are serving that themselves. They don't seem to copy images and stylesheets--those are still being served from the original server.
In the copy of the page they serve, they modify the links contained therein to be genius.it links. That's making a derivative work.
I don't think Genius could argue successfully that this use is fair use. They are a commercial site, and they are copying the entire page from the original site.
If it doesn't already work that way it would be trivial to do so.
<script>
var annotated = window.location.href.indexOf("genius.it/") != -1;
if (annotated) {
window.location.href = window.location.href.replace("genius.it/", "")
}
</script>I originally intended to leverage Rack all the way through by inspecting headers. However, much to my chagrin, I discovered that Genius does not reveal its identity in the headers, so I had to resort to JS instead to accomplish my goal.
# https://github.com/marlabrizel/genius-blocker/blob/master/lib/genius/blocker.rb#L11
var annotated = window.location.href.indexOf("genius.it/") != -1;
if (annotated) {
window.location.href = window.location.href.replace("genius.it/", "")
}
Wouldn't this match any instance of "genius.it" throughout the URL, not just at the beginning?For example it'd match "https://example.com/blog/how-to-block-genius.it" and redirect the user to a (probably) non-existent link with that string removed.
[1]: I just play one on HN.
Thanks for the code review - it's always good to see suggestions on how to improve things. If you have ideas on how to make the code better, please feel free to submit a pull request. Thanks for sharing your feedback!
Thanks for sharing. The gem works in a similar way, with a small JS script.
Typically this would mean browser add-ons and extensions, but I wouldn't be surprised to discover other things (like headers injected by cellular companies, or who knows what from malware infections).
Such a tool would be useful when troubleshooting various 'works on my machine' scenarios.
Personally, I might rather just add the script tag to my site's layout rather than introduce another gem dependency. But maybe if you have lots of sites to maintain, this could be preferred?
https://github.com/vijithassar/genius-defender
Unlike the others (which prevent hosting on genius.it) this one actually prevents annotations via plugin etc by injecting invisible characters at random. Its a WP plugin but the method could be adapted.
Unsure if there are SEO/other implications.
More info: http://www.vijithassar.com/2641/how-to-block-genius-annotati...
For another, Genius is a company with a history of controversy. I can imagine some sites being ok with universal annotations but averse to Genius. It'd be useful to know how Genius is going about things wrong, because I dream of someday having a universal annotation layer that doesn't provoke widespread blocking.
The mainstream media is a complete poison to society. It needs to be dismantled and ripped apart. It's a dark, dark villain that needs to be exposed to the sunlight and shown for the monster that it is.
That would be easier if comments were allowed on "publications" like CNN, but unfortunately they're disabled.
Personally, I am fully in support of federated "overlay" commenting systems like news genius, because they rightfully remove control/moderation over the comments from the publisher, and place it into the hands of a "trusted 3rd party" (genius).
Also, it's just another walled garden for content from a company with past ethically questionable business practices.
NewsGenius needs to at least 1) identify their crawler, and 2) provide a way to opt-out. Otherwise, it doesn't look good for them. They're not being a very good citizen of the Web.
But that's unlikely.