Group: Free Javascript Action Team

From LibrePlanet
Jump to: navigation, search
(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 is starting a campaign to get important Web sites working without proprietary JavaScript. [https://www.fsf.org/campaigns/freejs Learn more and take action]!
+
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. The first target Web site is Regulations.gov, which the American government uses to take feedback on proposed regulatory changes.
+
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]].  
  
==Sample message to Reddit==
+
== LibreJS-compliant sites ==
''Submit at http://www.reddit.com/message/compose?to=%2Fr%2Freddit.com. This is just a sample message. We recommend you keep the links, but please add a subject line, some details about your use of Reddit and/or why you care about free JavaScript.
 
''
 
  
Hi Reddit admins. Thanks for all your work.
+
''Add sites that you've personally verified with LibreJS to the [[Group:Free Javascript Action Team/Sites]] page.''
  
The Free Software Foundation recently pointed out (https://www.fsf.org/blogs/community/freejs-reddit) that while Reddit's source code is available on your GitHub page, some of its JavaScript isn't served as free software, with the necessary links to licenses and source code. Unfortunately, this means that to access Reddit, I have to download and run proprietary code.
+
== Potential targets ==
 
 
I'm writing to request that you make the likely very simple changes needed so that Reddit can be fully accessible without the user running any nonfree JavaScript. It would be excellent if you could make a public announcement that Reddit will plan to do this by the end of January.
 
 
 
The FSF has publicly stated that it would be more than happy to help the Reddit developer community with this, providing expert guidance and resources. You can contact the FSF at campaigns@fsf.org to start a conversation about making Reddit work without any nonfree JavaScript.
 
 
 
More info about the need for free JavaScript on the Web is available at https://www.gnu.org/philosophy/javascript-trap.html, and you can see http://www.gnu.org/software/librejs/free-your-javascript.html for instructions on freely licensing your JavaScript.
 
 
 
Making reddit work without nonfree JavaScript would be a strong next step in embodying the values of transparency and freedom that the reddit community, as well as the free software community, espouses.
 
 
 
==List of ideas for focus websites==
 
  
 
''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.''
  
=== Popular websites and JavaScript libraries ===
+
{| class="wikitable"
* Indiegogo
+
! Focus
* FirstGiving
+
! Notes
* Wix
+
! Relates to
* Reddit
+
|-
* NASA
+
| [http://www.awmi.net/ Andrew Wommack Ministries]
* Twitter (no public email ID, but can be contacted via https://support.twitter.com/forms/feedback, will be easy to put public pressure by the use of hashtag and tagging @twitter in tweets)
+
|
* Gandi (Gandi.net provides Domain names and Servers to freedom-promoting projects but uses some non-free JS on their website)
+
* Contact info can be found at [http://www.awmi.net/more/contact-us/ Contact Us].
* Disqus
+
* Also uses non-free formats for [http://www.awmi.net/video/this-weeks-tv/ TV Archives] would appreciate if they provided Ogg or WebM.
* Eventbrite
+
| [[Websites that only provide non-free formats]]
* LinkedIn
+
|-
* GitHub
+
|-
* LastFm
+
| [https://www.indiegogo.com/ Indiegogo]
* Fronter (Pearson LMS)
+
|-
* DuckDuckGo
+
| FirstGiving
* moveon.org
+
|-
* Slashdot
+
| Wix
* Gmail
+
|-
* Google Maps
+
| [https://www.nasa.gov/ NASA]
* YouTube
+
|-
* Google Docs
+
| [https://twitter.com/ Twitter]
* reCAPTCHA
+
|
 +
* 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.

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
  • Contact info can be found at Contact Us.
  • Also uses non-free formats for TV Archives would appreciate if they provided Ogg or WebM.
Websites that only provide non-free formats
Indiegogo
FirstGiving
Wix
NASA
Twitter
  • No public email ID, but can be contacted via the feedback form.
  • Will be easy to put public pressure by the use of hashtag and tagging @twitter in tweets.
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
LinkedIn
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
  • 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: [1] [2]
WikiWikiWeb
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 contact form.

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.

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


"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.