Group: Free Javascript Action Team
(Corrected typographical errors) |
(Add information about Haketilo and briefly how you can write scripts for it) |
||
(32 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
Currently, web applications like Google Docs are transmitting programs written in JavaScript and other languages to users, without unobfuscated source code and without any ability for users to modify them. This means that even in free software web browsers, users are running nonfree programs. Richard Stallman wrote about this in [http://www.gnu.org/philosophy/javascript-trap.html The JavaScript Trap]. | Currently, web applications like Google Docs are transmitting programs written in JavaScript and other languages to users, without unobfuscated source code and without any ability for users to modify them. This means that even in free software web browsers, users are running nonfree programs. Richard Stallman wrote about this in [http://www.gnu.org/philosophy/javascript-trap.html The JavaScript Trap]. | ||
− | The FSF | + | The FSF has a campaign to get important Web sites working without proprietary JavaScript. [https://www.fsf.org/campaigns/freejs Learn more and take action]! |
− | We're putting pressure on webmasters to make their sites work without proprietary JavaScript. They can do this by switching to free JavaScript libraries, or by modifying their sites so they don't need JavaScript at all to run. Our tactic is to organize lots of people to contact the webmasters and request the change | + | We're putting pressure on webmasters to make their sites work without proprietary JavaScript. They can do this by switching to free JavaScript libraries, or by modifying their sites so they don't need JavaScript at all to run. Our tactic is to organize lots of people to contact the webmasters and request the change. |
If you'd like to stay involved with the campaign, join the low-volume [https://crm.fsf.org/civicrm/profile/create?gid=205&reset=1 JavaScript Action Team mailing list]. If you'd like to become more active in the development process, please view the [[Group:JavaScript Developers Task-Force]]. | If you'd like to stay involved with the campaign, join the low-volume [https://crm.fsf.org/civicrm/profile/create?gid=205&reset=1 JavaScript Action Team mailing list]. If you'd like to become more active in the development process, please view the [[Group:JavaScript Developers Task-Force]]. | ||
− | == | + | == LibreJS-compliant sites == |
− | |||
− | |||
− | + | ''Add sites that you've personally verified with LibreJS to the [[Group:Free Javascript Action Team/Sites]] page.'' | |
− | + | == Potential targets == | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | ||
''When adding sites to the list below, if you know how best we can reach the site's decision maker(s), please mention that also.'' | ''When adding sites to the list below, if you know how best we can reach the site's decision maker(s), please mention that also.'' | ||
− | = | + | {| class="wikitable" |
− | * Indiegogo | + | ! Focus |
− | + | ! Notes | |
− | + | ! Relates to | |
− | + | |- | |
− | + | | [http://www.awmi.net/ Andrew Wommack Ministries] | |
− | * | + | | |
− | + | * Contact info can be found at [http://www.awmi.net/more/contact-us/ Contact Us]. | |
− | * | + | * Also uses non-free formats for [http://www.awmi.net/video/this-weeks-tv/ TV Archives] would appreciate if they provided Ogg or WebM. |
− | + | | [[Websites that only provide non-free formats]] | |
− | + | |- | |
− | + | |- | |
− | + | | [https://www.indiegogo.com/ Indiegogo] | |
− | + | |- | |
− | + | | FirstGiving | |
− | + | |- | |
− | + | | Wix | |
− | + | |- | |
− | + | | [https://www.nasa.gov/ NASA] | |
− | + | |- | |
− | + | | [https://twitter.com/ Twitter] | |
− | * | + | | |
+ | * No public email ID, but can be contacted via [https://support.twitter.com/forms/feedback the feedback form]. | ||
+ | * Will be easy to put public pressure by the use of hashtag and tagging @twitter in tweets. | ||
+ | |- | ||
+ | | [http://www.gandi.net/ Gandi] | ||
+ | | Provides domain names and servers to freedom-promoting projects but uses some non-free JS on their website. | ||
+ | |- | ||
+ | | [http://disqus.com/ Disqus] | ||
+ | | | ||
+ | | [[Action items/Para BR-Linux.org: Liberte seu JavaScript]] | ||
+ | |- | ||
+ | | [https://github.com/innereq/lenny Lenny] | ||
+ | | This is a Reddit-like server that's already licensed as free software. Problem is LibreJS doesn't recognize the JS as free s/w. So the js just needs to be marked so LibreJS will accept it. | ||
+ | |- | ||
+ | | [http://www.ebay.com/ eBay] | ||
+ | | | ||
+ | * [http://qu.ebay.com/survey?srvName=Home%20Page%20(eBay%20Today%20Homepage) Feedback form] for the homepage. | ||
+ | * eBay's js [http://web.archive.org/web/20200526092506/blog.nem.ec/2020/05/24/ebay-port-scanning scans people's ports], which perhaps makes liberation of that Javascript unlikely. | ||
+ | |- | ||
+ | |- | ||
+ | | [http://www.eventbrite.com/ Eventbrite] | ||
+ | |- | ||
+ | | [https://www.linkedin.com/ LinkedIn] | ||
+ | |- | ||
+ | | [http://www.last.fm/ LastFM] | ||
+ | |- | ||
+ | | Fronter (Pearson LMS) | ||
+ | |- | ||
+ | | [https://duckduckgo.com/ DuckDuckGo] | ||
+ | | [https://lemmy.ml/post/31321 Questions raised with DDG.] DDG can be used without JS and is the default experience when using abrowser. | ||
+ | |- | ||
+ | | [http://moveon.org/ MoveOn.org] | ||
+ | |- | ||
+ | | [http://slashdot.org/ Slashdot] | ||
+ | |- | ||
+ | | [https://mail.google.com/ Gmail] | ||
+ | |- | ||
+ | | [https://maps.google.com/ Google Maps] | ||
+ | |- | ||
+ | | [https://www.youtube.com/ YouTube] | ||
+ | |- | ||
+ | | [https://docs.google.com/ Google Docs] | ||
+ | |- | ||
+ | | [https://www.hcaptcha.com hCAPTCHA] | ||
+ | | Sites using hCAPTCHA fail the LibreJS test. This impacts all [https://git.disroot.org/cyberMonk/liberethos_paradigm/src/branch/master/rap_sheets/cloudflare.md CloudFlare] sites (well over 10% of the entire web). ''Side effect:'' this not only forces execution of non-free software to use the website, the graphical CAPTCHA also prevents some free software browsers from functioning. E.g. lynx is a free browser that't rendered dysfunctional when an hCAPTCHA is encountered. | ||
+ | | Tor users, who are generally targeted arbitrarily. | ||
+ | |- | ||
+ | | [http://www.google.com/recaptcha/intro/index.html reCAPTCHA] | ||
+ | |- | ||
+ | | [http://www.whistleblowers.org/ National Whistleblowers Center] | ||
+ | | [[Group:Free_Javascript_Action_Team/whistleblowers | See this page]]. | ||
+ | |- | ||
+ | | [http://www.unimestre.com/ Unimestre] | ||
+ | | | ||
+ | * Student information system from a Brazilian organization of the same name. While the system is mostly on the server-side, some parts are made to be used with client-side JavaScript. All the teachers and students (from various colleges and universities) are victims of the non-free JavaScript. | ||
+ | * The link references to the organization website. Not their software. | ||
+ | * '''Some''' examples of affected colleges or universities: [http://unimestre.posuniasselvi.com.br/projetos/nucleo/uteis/login.php?tid=0&lid=0&pid=24&arq_ret=R5QT1WSRQBMCVQVPFFQSF99MCT5RT44Q9WRW0RBM0FMM5QQ4R4CV59RWRF1F5SWCW0] [http://unimestre.uceff.com.br/projetos/nucleo/uteis/login.php?tid=0&lid=0&pid=24&arq_ret=R5QT1WSRQBMCVQVPFFQSF99MCT5RT44Q9WRW0RBM0FMM5QQ4R4CV59RWRF1F5SWCW0] | ||
+ | |- | ||
+ | | [http://wiki.c2.com/ WikiWikiWeb] | ||
+ | | | ||
+ | * No longer works without JavaScript | ||
+ | * Source code available on [https://github.com/WardCunningham/remodeling WardCunningham's GitHub repo], but has [https://choosealicense.com/no-permission/ no license] | ||
+ | * Contact Ward Cunningham by the email address listed on his JavaScript-encumbered homepage at http://wiki.c2.com/?WardCunningham (non-JS mirror: [https://bluehome.net/csh/files/WardCunningham.html https://bluehome.net/csh/files/WardCunningham.html]) | ||
+ | |- | ||
+ | | [https://retail-dollargeneral.icims.com/jobs/110650/lead-sales-associate-ft-in-harrisonville%2c-mo/ iCIMS Recruit] | ||
+ | | | ||
+ | * The iCIMS Recruit software provides proprietary JavaScript to many online job applications. | ||
+ | * While a minority of companies are still offering paper applications, many companies only allow people to apply on the Web. Nobody's economic security should have to depend on running proprietary JavaScript. | ||
+ | * Complain to iCIMS, Inc. on their [https://www.icims.com/contact-us/ contact form]. | ||
+ | |} | ||
== Other things you can do == | == Other things you can do == | ||
Line 56: | Line 113: | ||
* Install [https://www.gnu.org/software/librejs/ GNU LibreJS], a plug-in for Firefox-based browsers that detects and blocks nonfree JavaScript. | * Install [https://www.gnu.org/software/librejs/ GNU LibreJS], a plug-in for Firefox-based browsers that detects and blocks nonfree JavaScript. | ||
* Modify browsers to allow users to run their own modified Javascript programs for particular sites that they visit. | * Modify browsers to allow users to run their own modified Javascript programs for particular sites that they visit. | ||
+ | ** See [https://haketilo.koszko.org/ Haketilo], a browser extension for Firefox-based browsers and Chromium-based browsers that allows running JavaScript different from what the site serves. There is also a beta version that is a proxy instead of a browser extension and therefore works with more browsers, any that support using a proxy. | ||
* Write browser extensions that notify users about nonfree Javascript. | * Write browser extensions that notify users about nonfree Javascript. | ||
* If you write Javascript, follow the suggestions in Stallman's article, [https://gnu.org/philosophy/javascript-trap.html The JavaScript Trap], for clearly and freely licensing your code. | * If you write Javascript, follow the suggestions in Stallman's article, [https://gnu.org/philosophy/javascript-trap.html The JavaScript Trap], for clearly and freely licensing your code. | ||
* Build community repositories of free JavaScript programs useful for popular sites. | * Build community repositories of free JavaScript programs useful for popular sites. | ||
+ | ** See the repositories for [https://haketilo.koszko.org/ Haketilo], and contribute by testing, modifying, and/or writing scripts. | ||
+ | ** To write free JavaScript for a site, often you do need to run the nonfree scripts in a tab with the network tab in developer tools open, and then you can right click on a request that seems important, and “Copy as Fetch” to get JavaScript code that will make that same exact request. Then, you can wrap that in a function, replace literals with variables where necessary, and paste the result in the browser developer console, or run the script using Haketilo for greater convenience. | ||
* Raise awareness of this issue by publicizing Stallman's article, writing about the problem yourself, and talking to friends and colleagues about it. Watch this wiki page and help organize the effort. | * Raise awareness of this issue by publicizing Stallman's article, writing about the problem yourself, and talking to friends and colleagues about it. Watch this wiki page and help organize the effort. | ||
* If you see mention of JS freedom, add a link to the Promotion section of this page. | * If you see mention of JS freedom, add a link to the Promotion section of this page. | ||
Line 66: | Line 126: | ||
List places where discussion about this issue is happening, and join in, calling for free JavaScript. | List places where discussion about this issue is happening, and join in, calling for free JavaScript. | ||
+ | * [[Action items/To Jamendo.com: Free your JavaScript and use Opus by default]] | ||
* http://www.guardian.co.uk/technology/blog/2009/mar/25/cloud-free-software-stallman | * http://www.guardian.co.uk/technology/blog/2009/mar/25/cloud-free-software-stallman | ||
Line 86: | Line 147: | ||
[[is entity::group| ]] | [[is entity::group| ]] | ||
[[organized around::issue| ]] | [[organized around::issue| ]] | ||
+ | |||
+ | {{featured resource|month=March|year=2018}} | ||
+ | |||
+ | {{featured resource|month=June|year=2021}} |
Latest revision as of 11:01, 20 October 2023
Currently, web applications like Google Docs are transmitting programs written in JavaScript and other languages to users, without unobfuscated source code and without any ability for users to modify them. This means that even in free software web browsers, users are running nonfree programs. Richard Stallman wrote about this in The JavaScript Trap.
The FSF has a campaign to get important Web sites working without proprietary JavaScript. Learn more and take action!
We're putting pressure on webmasters to make their sites work without proprietary JavaScript. They can do this by switching to free JavaScript libraries, or by modifying their sites so they don't need JavaScript at all to run. Our tactic is to organize lots of people to contact the webmasters and request the change.
If you'd like to stay involved with the campaign, join the low-volume JavaScript Action Team mailing list. If you'd like to become more active in the development process, please view the Group:JavaScript Developers Task-Force.
Contents
LibreJS-compliant sites
Add sites that you've personally verified with LibreJS to the Group:Free Javascript Action Team/Sites page.
Potential targets
When adding sites to the list below, if you know how best we can reach the site's decision maker(s), please mention that also.
Focus | Notes | Relates to |
---|---|---|
Andrew Wommack Ministries |
|
Websites that only provide non-free formats |
Indiegogo | ||
FirstGiving | ||
Wix | ||
NASA | ||
|
||
Gandi | Provides domain names and servers to freedom-promoting projects but uses some non-free JS on their website. | |
Disqus | Action items/Para BR-Linux.org: Liberte seu JavaScript | |
Lenny | This is a Reddit-like server that's already licensed as free software. Problem is LibreJS doesn't recognize the JS as free s/w. So the js just needs to be marked so LibreJS will accept it. | |
eBay |
|
|
Eventbrite | ||
LastFM | ||
Fronter (Pearson LMS) | ||
DuckDuckGo | Questions raised with DDG. DDG can be used without JS and is the default experience when using abrowser. | |
MoveOn.org | ||
Slashdot | ||
Gmail | ||
Google Maps | ||
YouTube | ||
Google Docs | ||
hCAPTCHA | Sites using hCAPTCHA fail the LibreJS test. This impacts all CloudFlare sites (well over 10% of the entire web). Side effect: this not only forces execution of non-free software to use the website, the graphical CAPTCHA also prevents some free software browsers from functioning. E.g. lynx is a free browser that't rendered dysfunctional when an hCAPTCHA is encountered. | Tor users, who are generally targeted arbitrarily. |
reCAPTCHA | ||
National Whistleblowers Center | See this page. | |
Unimestre |
|
|
WikiWikiWeb |
|
|
iCIMS Recruit |
|
Other things you can do
Here is a basic outline for things that need to be done. Please edit and add your suggestions, and discuss ideas on the Talk page.
- Install GNU LibreJS, a plug-in for Firefox-based browsers that detects and blocks nonfree JavaScript.
- Modify browsers to allow users to run their own modified Javascript programs for particular sites that they visit.
- See Haketilo, a browser extension for Firefox-based browsers and Chromium-based browsers that allows running JavaScript different from what the site serves. There is also a beta version that is a proxy instead of a browser extension and therefore works with more browsers, any that support using a proxy.
- Write browser extensions that notify users about nonfree Javascript.
- If you write Javascript, follow the suggestions in Stallman's article, The JavaScript Trap, for clearly and freely licensing your code.
- Build community repositories of free JavaScript programs useful for popular sites.
- See the repositories for Haketilo, and contribute by testing, modifying, and/or writing scripts.
- To write free JavaScript for a site, often you do need to run the nonfree scripts in a tab with the network tab in developer tools open, and then you can right click on a request that seems important, and “Copy as Fetch” to get JavaScript code that will make that same exact request. Then, you can wrap that in a function, replace literals with variables where necessary, and paste the result in the browser developer console, or run the script using Haketilo for greater convenience.
- Raise awareness of this issue by publicizing Stallman's article, writing about the problem yourself, and talking to friends and colleagues about it. Watch this wiki page and help organize the effort.
- If you see mention of JS freedom, add a link to the Promotion section of this page.
Promotion
List places where discussion about this issue is happening, and join in, calling for free JavaScript.
- Action items/To Jamendo.com: Free your JavaScript and use Opus by default
- http://www.guardian.co.uk/technology/blog/2009/mar/25/cloud-free-software-stallman
Resources
-
Noscript - Filter javascript based on domain white/blacklists.
- Script surrogates are designed to replace undesirable scripts with user-specified alternatives.
- Greasefire - Firefox-compatible addon to search userscripts.org and install userscripts, displays userscripts which can be used on the currently viewed page
- Greasemonkey - Firefox-compatible addon to execute user-supplied javascript on certain pages
- openJSAN.org - JavaScript Archive Network is a comprehensive resource for JavaScript libraries and software.
FAQ
To view frequently asked questions regarding Free JavaScript, please see the Free Javascript FAQ page.
References
- The Javascript Trap by Richard Stallman. Richard announced the initial plan for addressing this problem at the LibrePlanet2009 conference.
"issue" is not in the list (interest, location, project, school) of allowed values for the "Organized around" property.
This page was a featured resource in March 2018.
This page was a featured resource in June 2021.