Richard Stallman Warns Users to Avoid the JavaScript Trap

By Darryl K. Taft  |  Posted 2009-03-24 Print this article Print

Free software proponent Richard Stallman issues a warning to free software users that they may be using non-free software when they download JavaScript code or use various browsers. Stallman proposes a free software solution to the problem.

Free software proponent Richard Stallman has issued a warning to free software users that they may be using non-free software when they download JavaScript code or use various browsers.

"Many users are aware that this issue applies to the plug-ins that browsers offer to install, since they can be free or non-free," Stallman said. "But browsers run other non-free programs which they don't ask you about or even tell you about-programs that Web pages contain or link to. These programs are most often written in JavaScript, though other languages are also used."

Stallman said JavaScript was originally used for "minor frills in Web pages," but is now used for much more. "Many sites still use JavaScript that way, but some use it for major programs that do large jobs," he said. "For instance, Google Docs downloads into your machine a JavaScript program which measures half a megabyte, in a compacted form that we could call 'Obfuscript' because it has no comments and hardly any white space, and the method names are one letter long. The source code of a program is the preferred form for modifying it; the real source code of this program is not available to the user."

Moreover, Stallman said:

It is possible to release a JavaScript program as free software, by distributing the source code under a free software license. But even if the program's source is available, there is no easy way to run your modified version instead of the original. Current free browsers do not offer a facility to run your own modified version instead of the one delivered in the page. The effect is comparable to tivoization, although not quite so hard to overcome.

As to a course of action to address the issue, Stallman suggested:

In practical terms, how can we deal with the problem of non-free JavaScript programs in web sites? Here's a plan of action.

First, we need a practical criterion for nontrivial JavaScript programs. Since "nontrivial" is a matter of degree, this is a matter of designing a simple criterion that gives good results, rather than determining the one correct answer.

Our proposal is to consider a JavaScript program nontrivial if it defines methods and either loads an external script or is loaded as one, or if it makes an AJAX request.

In a reaction post on, Michael Mahemoff wrote, "However, most of the JavaScript code in Web apps assumes a conventional copyright license, and Stallman's complaint is that it should instead be issued under free software licenses." 

Darryl K. Taft covers the development tools and developer-related issues beat from his office in Baltimore. He has more than 10 years of experience in the business and is always looking for the next scoop. Taft is a member of the Association for Computing Machinery (ACM) and was named 'one of the most active middleware reporters in the world' by The Middleware Co. He also has his own card in the 'Who's Who in Enterprise Java' deck.

Submit a Comment

Loading Comments...
Manage your Newsletters: Login   Register My Newsletters

Rocket Fuel