Just a reminder: you probably shouldn't be placing untrusted third-party JavaScript files on your site.<p>At least audit and mirror the file on your own server.
The code for this needs major cleanup.
"var $ = document; // shortcut" may kill jQuery and break your site.
This also declares the following global namespaces variables: cssId, head, and link.<p>The code is hosted on an untrusted amazon instance, so requires a bit of work to crawl the links and copy paste the source for self-hosting and security needs. Cool idea though. Put this on Github if you want code fixes.
First thoughts:<p>1) NSA’s PRISM logo is hideous and it’s copyrighted. You might want to create your own graphics.<p>2) Add an explanation of what PRISM is and how people can help fight it. For instance, link to a template letter for people to send to their representative.<p>3) You should create a page that generates a list of all participating websites. That gives websites some incentive to join.
The page where you can get the button also should have a description of or a link to what PRISM is, even if it's just a link to the Wikipedia article, it would increase the ability of this thing to inform people infinitely :)
to the author:<p>Please consider moving the JavaScript file to another place: using GitHub's gist service like this is considered as abusing the service (because gist was not designed for hosting you assets).
I think we can do much better than this. Is there much interest by folks in running this kind of thing on their sites?<p>If so, we (folks at stopwatching.us) can make something more secure and safer to implement.
For anyone who wants a completly self-hosted and stand-alone solution (single file including logo in base64) here it is: <a href="http://jsbin.com/evafaz/4/edit" rel="nofollow">http://jsbin.com/evafaz/4/edit</a><p>Thanks to a suggestion by <i>ozten</i> a call-to-action has been added: <a href="https://optin.stopwatching.us/" rel="nofollow">https://optin.stopwatching.us/</a>
Code needs major cleanup. As a start encapsulate the code into a Module Pattern and stop chaining variables to the global prototype. Finally as mentioned here, why would anyone be placing links to a untrusted 3rd party JS code on their site?
I wish this had a primary call to action - linking to something like <a href="https://stopwatching.us/" rel="nofollow">https://stopwatching.us/</a><p>and a secondary call to action - how you too can add this button.<p>As is, I wouldn't add it to my website.
<i>Show this button as a reminder that sharing should be a choice.</i><p>Is it not a choice anymore? Who is forcing you to share data with a company that might be legally required to turn it over to the authorities in the country's they operate in?
love the initiative but I have major concerns about the implementation.<p>assigning $ as an alias for document is totally useless and can kill jquery / prototype running on the user's site.<p>also please consider moving all variables out of the global scope. you are using variable names such as "link" which could cause major conflicts with 3rd party javascripts
There is profound irony that each of these various PRISM protest sites thus far has used Google Analytics. While I have great respect and admiration for Google, Analytics and other centralization tools like it make the task of nefarious tracking dramatically easier, all to have a slightly easier to obtain visitor graph.
Security and coding issues aside, the point of this is unclear to me. If the U.S. (or any) government is going to collect and analyze personal data, they're going to do it, and good luck stopping them through voting, protests, etc. The best way to advocate privacy is to provide technology that makes the data difficult to analyze. Outside the technology industry, very few know or (surprisingly) care if their information is encrypted when providing it.