Richard Stallman Warns About Non-Free Web Apps
An anonymous reader writes "Richard Stallman has published an article which warns about the 'Javascript trap' posed by non-free AJAX-based applications. The article calls for a mechanism which would enable browsers to identify freely-licensed Javascript applications and run modified version thereof. 'It is possible to release a Javascript program as free software,' Stallman writes. 'But even if the program's source is available, there is no easy way to run your modified version instead of the original ... The effect is comparable to tivoization, although not quite so hard to overcome.'"
Why do I care if I visit a web site and "non-free" JavaScript runs in my browser?
Has "borrowing" some Javascript (or HTML for that matter) ever resulted in litigation? There's been sort of an understanding since the inception of the Web that people will borrow from each other, because they can, and that's more or less fine.
I like Stallman's idea, it just doesn't seem particularly urgent.
About a lot of other thing he may be too fundamentalistic, but this danger is real. The average user is now more than ever dependent on a fragile link of software-service-supplier chain, locking him in totally
"from the beware-hidden-dollarsign dept"
I would think slashdot would know better what Stallman means by when he says free or non-free software. Generally these webapps area available at no cost anyway, and obviously that's not what he's talking about. He's talking about the classic ideas of free software, not whether or not it is okay to sell software. I just think that should be clear here.
Anyway, if we do argue that applications are moving into the web sphere, (which most web 2.0 advocates of course do,) then this is indeed something important to think about within the domain of free software.
http://mediagoblin.org/
From TFA:
"Javascript (officially called ECMAscript, but few use that name)..."
Linux (officially called GNU/Linux, but few use that name)..."
Practice what we preach, Hmmmmm?
The license for the javascript software you are running might be important, but the far more important factor, in my mind, is the IP rights and responsibilities attached to your data.
Who has access to your data? How can you verify that? Who is responsible for keeping it secure? Who is responsible for making backups? How can you verify that?
A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
According to this, a Javascript program that talks to a closed source AJAX backend is Not Free, even if the Javascript code itself is Free.
This is the craziest thing Stallman has come up with yet. Is a web browser that talks to a None Free web server Not Free? What about a program that uses SQL to talk to a database server that is Not Free?
Richard Stallman has done more damage to the open source movement than anyone else. He is pompous, arrogant, rude, inflexible, and intolerant of diversity of opinion.
He has systematically alienated open source leaders like Linus Torvalds, corporate IT, and large swaths of the people who actually use Linux and other open source solutions.
The complete and abysmal failure of the GPL3 speaks not just to the profound mistakes made in its drafting, it also speaks to a general distrust of the FSF as an institution.
The FSF should book a banquet hall, give a retirement roast and gold watch to Mr. Stallman, or simply close its doors.
Because you are reliant on something which must be paid for (somehow) and/or you can't own. Stallman's view, nutty or not, is that you should be able to function ENTIRELY on free software - which a non-free JavaScript "app" by definition isn't. From his perspective, it's an insidious "slippery slope" undercutting of the free (speech AND beer) software paradigm: it's so easy to get caught in the "[shrug] so what? I didn't have to pay, and I don't have to keep a copy because I just go to the site to run it again" trap, risking reliance on something controlled by someone else.
Can we get a "-1 Wrong" moderation option?
P.S. For those interested, here is the transcript of our email conversation.
This is from the man who by his own admission doesn't use a web browser. He's becoming more and more like the Ayatollah - issuing edicts about things that he barely comprehends and has never actually tried himself.
So if you do care about free software on the desktop, it's reasonable that you should care about free software in your browser.
I was having trouble with a F/OSS app several months ago and I thought "Great! It's F/OSS! I can just get the software source and have a gander and solve my own problems!"
So, I downloaded the code, unzipped it, spent a couple of days getting the development environment right, and brought up the editor. A few days go by, and I'm trudging through uncommented PHP code, digging into class after class calling other classes that called other classes that just set global constants or read environment variables, and so on and so on...
I deleted the code because instead of "solving my problem" I was getting lost and not accomplishing the activity that the software was supposed to accomplish.
I went and got a package that did what I wanted.
In short, I have no desire to look at source code. I don't give a rat's ass. I have better things to do than to dig through other people's mess - thank-you-very-much.
F/OSS only appeals to people who LIKE to trudge through others code to see how it works or make it "better". To me, software is an end to a means and I don't really give a rat's ass how it works as long as it's not doing shit behind may back that I don't want; which I can find out by other means than looking at source code.
Let me give you guys a hint. Its a good time to start distancing yourself from Stallman, he's definitely wondering off to the tree-hugging-nutjob-hippie commune.
He's lost grasp of the point of software. The point of software is not 'to run free software', its to get something done.
His entire life has turned into 'omg you must use free software or you are doing the wrong thing'. He has no logic for this other than 'its bad for you not to use free software' or 'its bad for you if you cant modify it even though you have no useful reason to do so!!!'
He goes so far in the article to try to confuse the meaning of 'free' versus 'open', implying they are essentially the same thing. They aren't, and never will be. He has gotten himself so deep into his own bullshit that it would appear that it is now impossible for him to understand that his 'way' isn't the only one. Once you've got yourself to the point where you think 'free' or OSS software is 'the only way' you are no better than those people who refuse to use OSS software, you're just a moronic twit at that point.
Stallman has reduced himself to a religious leader rather than a promoter of openness for the common good. He's simply gone too far.
So again, I encourage you to distance yourself from Stallman, he is not someone you should associate with any more than the Church of Scientology as they are both just spreading propaganda for their own personal gain at this point. Now that OSS has become even slightly accepted his usefulness as a supporter of OSS is diminished, so he's taking it to the next level and trying to say all non-free software is bad. Read that carefully, 'non-free'. Not open. In this article he in a round about way attacks 'open' standards that are not 'free' by his definition.
You need to watch out for the guy who screams 'freedom' while at the exact same time adding new restrictions to the very license he claims is all about 'freedom'. I'm not saying not to use GPL or GPLv3, if the fit your needs/goals, thats entirely fine and should be used if they fit. I license my software under many different licenses based on what I'm trying to accomplish. My applications are generally closed source, I have some libraries that I've released LGPL, and many that are BSD licensed. I have not used GPL proper as it doesn't really fit my Each has their place in MY agenda. I'm just saying that what he does is hypocritical to an extreme only shared by politicians and lawyers, and because of that he should be treated as such.
I am in no way saying you should abandon OSS or the quest for open standards. I just feel that what Stallman is doing is not the quest for openness, but more like gathering a cult to be lead off to a mass suicide.
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
RMS may be a cranky extremist, but he's still right far more often than he's wrong. Web apps are in some ways a huge step backwards in terms of openness. If you're lucky there's a wsdl you can analyze but even then that's really just a client-facing API. What's less free/open than a binary-only distribution? One that's never even distributed in the first place. May I please continue to access this application, sir?
So if you do care about free software on the desktop, it's reasonable that you should care about free software in your browser.
Okay, but Javascript is only one part of this problem. What about the code running on the server? I wonder if RMS visits any websites at all besides fsf.org
He can't be sure after all if other sites use only free software on the server side, so he can't visit them to avoid accidentally supporting non-free software.
I squeeze every byte I can out of my javascript files not because I want to obfuscate the code but to make the site faster. 20kb difference is a huge deal for high-traffic sites. Not only for the sake of bandwidth but for load times on mobile phones as well.
We had a 9am meeting last October with a team of web developers on the size of CSS files across the domain. It lasted around 4 hours and we managed to cut the size from an already optimized 80kb down to 55kb across multiple sheets on the front page. These things matter.
It's getting to the point that RMS just spouts crap to be heard. Most website developers use java script to get some functionality working, and java script is the easiest to do so. There is (usually) no intent to do harm, or take over your computer, or lie to you, or stalk your grandmother. The developer just wants to deliver the site to its users complete with certain functionality. Why would you want to run your own version of its java script? This is such nitpicking crap that its not worth reading.
But what's the solution? This is the real question.
Just put a checkbox in the Firefox preferences window somewhere. I suggest this wording:
(x) Warn me before running JavaScript written by capitalist pigs
Richard... WHO?
Stallman is advocating a more modular method of loading Javascript webapps.
An example of what he's envisioning: If Gmail was OSS, it would announce to the browser the modular scripts it was using to perform each operation, and the source would provided under a specific license. The browser would be configurable to load alternate web scripts to replace the functionality provided by google.
What Stallman is advocating is essentially turning webapps into applications where the user can control the application, rather than the service provider.
This would rely on OSS providers using the standard object passing model between server and client.
I'm not too sure if his idea would work too well, given how reluctant most non-OSS providers are to give away the code to their main applications.
It's a very gray area to tread, so many websites really can't be considered to be like traditional desktop applications, but they exist in some middle ground between traditional web sites and desktop apps.
I think he has an interesting point but he didn't really express it well. If he provided more examples and what the real world implications of relying on and migrating towards proprietary javascript web apps for daily productivity, I think more people would understand.
Is a web browser that talks to a None Free web server Not Free?
A Free web browser which could only talk to a non-Free web server would not be Free enough to satisfy a free-software purist (it would also be a pretty odd web browser).
The argument is quite reasonable: the owner of the non-free server could withdraw it at any time: the Free client, along with any contributions from the free software community, then has scrap value only (maybe there's some re-usable code in there, maybe not).
The counter-argument is more pragmatic (so Free Software purists won't like it): What's the alternative? Isn't it better to have a Free client and a closed server than to have both closed? You get to look at the code for the client, learn from it, port it to minority platforms and can probably deduce the server protocol and write your own server. There may be good reason why the server can't be Free (e.g. it may be serving proprietary data such as maps, and be useless without that data). Its a bit like the Linux argument - binary drivers are Bad but if Linux can't play Flash, MP3s or run NVidia cards then who is going to use it (given that RMS is presumably using Hurd).
Web browsers are a bad example, because they use standard protocols and are therefore useful with any server.
A better question, which I'm sure must have come up before, is whether any software written for a proprietary OS can be Free? If I take a GPL3 program, tack on a nice native Windows or OS X GUI and distribute it, am I in trouble because you still need a Windows/OSX license from MS or Apple to use it?
In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
It's just Linux. There's no GNU code in the kernel.
Yes, most Linux kernels run alongside GNU utilities, but they also run along side a lot of other things. If you accept the GNU/ prefix, you'll have to make it Xorg/KDE|Gnome|xfce/Apache/MySQL/Perl/PHP/Postgresql/Mozilla/GNU/Linux to be consistent.
Or you could just stick with Linux for simplicity.
what you have to worry about is google chrome or windows ie suddenly saying "with our latest browser, we are implementing ecmascript shiny plus plus (trademark, copyright), which will allow us to serve you compiled code, which will make your browsing experience more fantastical and delicious!"
then we have a serious sliver against free software
No you don't, you idiot. What other people choose to do with their own websites is none of your fucking business. If you want to download jQuery, go get it.
"You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time."
There is always debate about Stallman and Freedom in these articles. However, if we just look at the suggestion it makes, this article is totally practical. It just says to make clear what license the (javascript) software is using, and if it is F/OSS to say where the code can be acquired. It also says to let the USER decide what to do based on that information. And the methods for doing those suggestions are simple and straightforward.
Really, I think this is an excellent pragmatic response to a situation of growing importance that in no way would mean a major burden to programmers, users, or anybody.
So, I assume Stallman can't use any typical search engine ... maybe he built his own from Lucene. He also must not do any credit transactions online.
He must also be careful that any packets his computer sends turn right around should they encounter a Cisco router (or any other proprietary router).
I suppose in his daily life, using a phone, or a car, or Television would be right out.
I sure hope Mr. Stallman never needs any medical attention.
I DO admire much of what Mr. Stallman stands for, and I'm glad there is a champion for free software ... but I live in the real world, where to buy goods, you need some government's currency, and to do anything electronically, you have to use SOME commercial software somewhere.
I wonder, too ... does Mr. Stallman's PC have a proprietary BIOS, or did he write that code, too?
"The large print giveth, and the small print taketh away" -- "Step Right Up", Tom Waits
He seems to be afraid companies will try to deny free software developers source code to improved versions of their free-software code by avoiding to ever distribute the software. It is however not clear that this is at all unethical in the same way as using copyright to restrict users from modifying software they have bought is. To demand a copy of the source code and documentation of software companies use to implement a service is a bit like demanding a cab company give you driving instructions if you ever traveled with them. Ok, so the analogy is not perfect, but there is a huge difference between proprietary software vendors trying to use copyright and shrinkwrap EULAs to limit how you use your computer, and that of service providers simply not distributing the code they use to provide a service.
In some ways Stallman is essentially making the same mistake proprietary software vendors do when they try to control what you do with software. He seeks to limit what people can and cannot do with software they run on their own computers. His demands even contradicts part of the GPL, which explicitly grant you the right to use the software "FOR ANY PURPOSE". The FSF's FAQ even explains that you're not allowed to ban using the software for things like pornography, because that would violate users right to use software for any purpose they see fit. It would appear that according to Stallman all purposes are equal, it's just that some purposes are more equal than others.
Deciding whether two algorithms are equivalent in functionality? Without severely impacting user experience by taking ages to compute? Let's not even discuss whether that can be done in polynomial time or not, it's pointless.
Jeebus, why are people trying to reduce every problem in CS to an exercise in masochism? It's not that masochism is NP-complete or something.
Just add something like "no-nonfree" to the browser User-Agent string and require all websites to honor that. If some site doesn't, sue them. Works the same as "robots.txt", just the other way round.
Or have all scripts which are GPL (or other somesuch) do "include("gpl.js");", then load a greasemonkey script matching all URLs that raises hell when any object in the DOM doesn't include a special "is_gpl" member.
Easy as pie.
The Hacker's Guide To The Kernel: Don't panic()!
I saw this article last night, and didn't see it was from Stallman at first or I would have immediately dismissed it.
Seriously, who is this concerned over Javascript in their browser, which is there and gone with each mouse click? It's ridiculous.
The thing he wants, the ability to replace Javascript in a website with custom "free" versions for a particular site, is already possible in UserJS with Opera. It was implemented so that users could write their own fixes on sites which don't necessarily work right in Opera, or ones which you want to simply enhance. But since Opera isn't open-source, he's still out of luck.
One day people like Stallman are going to have to realize that proprietary and licensed software is a way of life if you want a modern computing experience. Ubuntu realized it, and look at how much more popular they are now than the distro they're based upon. Debian has a very different opinion on the subject, as evidenced by IceWeasel and such.
Here's a better option for people like him: If you don't like what the website has to offer or how it was written, then don't use it. Period. You could very well be breaking a license or something by thinking you have the right to replace their software with your own version, since many times it still interacts with their site's infrastructure. They might have the right to ban you if they detected you using something else, much like companies such as Blizzard can and will do.
Of course, if you're sane, none of this is an issue anyway, so nothing to see here.
Not that he would necssarily give a crap that I do.
My personal conviction is that Linux came to be what it has come to be *precisely* because it was released as GPLv2 code; I don't think it would have grown to nearly the size and penetration </beavis> that it has were it under some other license.
Therefore, the state of much of the world today -- not just the computing world, but Real Life -- descends almost entirely from the fact that rms is a extremist about the principles of Free Software.
We often look on extremists with amusement or scorn, but I personally tend to try to remember Tom Peters' observation from one of the Excellence books:
We don't all have to be as hardcore as rms is -- Linus isn't -- but if *he* *weren't*, then I don't think we'd be where we are today.
So yeah, comparing him to a vegan is probably pretty accurate -- they have similar types of motivation.
But *dissing* him for it?
No, I don't think that's really the best outlook to have.
A web proxy can rewrite content arbitrarily, including this type of mod. Just run your own proxy on your own server. Maybe even a home server if your ISP doesn't block that: this example is a very good reason to make a political push for the expanded definition of "network neutrality", that is, all ports are open, nothing is blocked, you have the freedom to publish from home. (You can always secure your own proxy if you don't want other people to use it.)
Failing that, there is shared hosting where you could run your own personal proxy that augments the capabilities of the browser itself.
Another feature I've been wanting to write a proxy for (and haven't gotten around to!) is to store my web history permanently and make it searchable, so I can find forgotten web sites again. It should be able to store notes I write about sites, so I can search those too.
Failing that, there is greasemonkey.
He's been crazy for years. My first exposure to his loony ideas was in that old story of his, "The Right To Read". He wrote that when I'd just entered college and just started using this "GNU" stuff, and I remember being being stunned by his paranoia. Grade schools wasting time preaching about intellectual property? Software being outlawed for being able to edit RAM that someone else's program allocated? People who didn't have the root passwords for their own computers? And then there's the central point of the story, that eventually people would be stuck with books they couldn't lend or resell! That Stallman guy was clearly a nutjob.
She was a mother who also raised money for AIDS research. She actually nurtured life and tried to protect it, which is far beyond ANYTHING Stallman would do for anyone else, much less you.
"When you see a unixer brainwashed beyond saving, kick him out of the door." - Xah Lee
His beard looks non-free to me, it's obfuscating his face
It seems my original post failed to be clear. Allow me try again:
I'm vegan and I like pork.
True, I try to minimize buying pork. And, yes, I think that buying pork promotes suffering. But this issue of reducing pork consumption isn't a matter of terror or rabidness.
When we get some quality vat meat produced, you can come to my luau. I'm also a big fan of skirt steak.
The overarching point is that it's easy to be a fuzzy thinker and to have comfortingly simple, black-and-white ideas of what a vegan is. That overly simple kind of thinking is comforting, but really it's unhelpful. Do I resemble your mental picture of a vegan? Do I seem rabid or terrorized? I hope not (or we've got additional problems). Sure there are people out there who are rabid vegans, but they probably also have an overly simple idea of what it means to be a vegan, causing them to condemn non-vegan behavior with severe, fuzzy-headed religious zeal.
Maybe we can agree that unrealistically simple thinking is harmful?
At this point, after having a little more light shined on the really-not-black-and-white concept of veganism, and after some discussion of the harm of simplistic thinking, does it make sense to respond with "yeah, but vegans are rabid food people"?