It's disheartening to see the FSF demonized here, as I've been pleasantly surprised with the discussions I've had with most of their members. In the last HN thread about the Ethical Repo Evaluation, people called their requirements ridiculous. I agree with that for some of the A grade criteria, e.g. the GNU/Linux requirement, but I think people are misunderstanding the purpose of the A grade, which is to signal that a site is "sufficiently free" and can be used to host the GNU Project's source code. This is partly the fault of the FSF having poor communication, of course.
I'd like to highlight a comment by an FSF Volunteer regarding our work on some criteria for the A grade, "Thanks for taking the time on this; I'm very encouraged, and I'm happy with any progress made. Again: since these criteria are for hosting of GNU projects, they're a bit more strict and won't be met by most services."
GitLab CE is licensed under the MIT Expat License, not the GPL, and yet they're perfectly happy to work with us regardless. Outwardly they advocate for extreme ideas, but they're also willing to compromise.
Apologies if this is rambly at all, or comes off as "shilling" in any way, I just wanted to share my story of interacting with the FSF. Hopefully I can convince some people that they're not all living in caves yelling about how they'll never use non-GPL software.
They're switching from Slack to Mattermost, from Google Analytics to Piwik, looking for a free software commenting software to replace Disqus.
You've highlighted here one of the biggest reasons why the FSF is demonized. The organization has made and continues to make significant contributions to computing. It also sounds like many people who volunteer there also realize the need to compromise in order to move forward.
However, the FSF itself, as a few pointed out belief, is an organization focused on it ideology. While making good software is important for it to advance its agenda, the simple fact is how you say something is just as, if not more than, important as what you are saying. The message comes off just as bad as many fundamentalist religious organizations. That's going to drive away a lot of people, many of whom would agree if the message was marketed better.
Also, the FSF does not really "compromise". If you ask them, "hey can you accept just a liiiiitle bit of non-free software", they'll say "no". A compromise can be disastrous to the FSF, in their view, akin to accepting a liiiiitle slavery.
(In terms of my own raw time, the percentage of open source software the web I interact with daily is surprisingly high)
 Unsure of exact licensing compatibility so I can't say it's all Free Software.
What's the reason that's not considered a problem? Is it because it's not actually running on the user's computer? Or because you can think of the resulting HTML/CSS as output of the program?
It's considered a problem:
The more grey area that exists the harder it is for me to understand what Stallman's beliefs actually are. "doing your own computing", why is that the center of his moral beliefs?
The longer time passes, the more it feels like Stallman is holding a lifelong vendetta because he had trouble debugging some printers.
Consider a trivial example. I bought an iOS SSH app called prompt. The authors subsequently release a new version and removed the old one from the store. It works great on my phone and I decided decided to put it on another device. Guess what? It's not on the App Store any more, and my options for using it are limited.
According to RMS, "freedom is having control over your life". "In a computer system there are just two possibilities: either the user controls the program or the program controls the user".
So, "doing your own computing" is "having control over your life", and thus, having freedom.
So it seems that the definition of "what is software" has to constantly be redefined OR the whole Free Software thing becomes more and more a luddite idea.
If the objects and systems surrounding you are controlled by software, then your personal freedom to make your own personal choices is determined by your ability to control the software that controls your environment.
Do you have the source code to firmware on the chip in the pants? Can you install a custom version? That would be consistent with the FSF's viewpoint. They want the user to have full access and control over the software he uses in all devices he uses.
However, if I am visiting somewhere and the machines available nearby happen to contain non-free software, through no doing of mine, I don't refuse to touch them. I will use them briefly for tasks such as browsing. This limited usage doesn't give my assent to the software's license, or make me responsible its being present in the computer, or make me the possessor of a copy of it, so I don't see an ethical obligation to refrain from this. Of course, I explain to the local people why they should migrate the machines to free software, but I don't push them hard, because annoying them is not the way to convince them.
Likewise, I don't need to worry about what software is in a kiosk, pay phone, or ATM that I am using. I hope their owners migrate them to free software, for their sake, but there's no need for me to refuse to touch them until then. (I do consider what those machines and their owners might do with my personal data, but that's a different issue, which would arise just the same even if they did use free software. My response to that issue is to minimize those activities which give them any data about me.)
That's my policy about using a machine once in a while. If I were to use it for an hour every day, that would no longer be "once in a while" — it would be regular use. At that point, I would start to feel the heavy hand of any nonfree software in that computer, and feel the duty to arrange to use a liberated computer instead.
Likewise, if I were to ask or lead someone to set up a computer for me to use, that would make me ethically responsible for its software load. In such a case I insist on free software, just as if the machine were mine.
As for microwave ovens and other appliances, if updating software is not a normal part of use of the device, then it is not a computer. In that case, I think the user need not take cognizance of whether the device contains a processor and software, or is built some other way. However, if it has an "update firmware" button, that means installing different software is a normal part of use, so it is a computer.
Now take the same analogy to computing. How many people have access to entire data centers to run algorithms for machine learning and AI? Doing your own computing is the opposite of that. Instead of sharing your information, it's saying we should build software and applications that run locally and that are open source so that we can audit the code. It's sad that the norm is everything in the cloud these days without any concern for privacy.
That ad hominem is uncalled for.
HTML is often built from complicated templates.
Open source and free software mean the same thing, or at least they intend to mean the same thing. There are very few obscure examples where they differ (for example, the NASA license). You are very unlikely to run across a difference.
"Why 'Free Software' is better than 'Open Source'": http://www.gnu.org/philosophy/free-software-for-freedom.en.h...
(Note: the title is not mine)
They mean the same thing in the same way that "digital rights management" and "digital restrictions management" means the same thing: they refer to the same thing, but give a different slant to refer to the same thing.
If you listen to people like Eric Raymond, open source is all about quality. "Many eyes make all bugs shallow", etc.
If you listen to people like Richard Stallman, free software is all about users' rights: in some cases free software may be of higher quality than comparable proprietary software, but that's just a welcome side-effect -- what matters is that it respects users' rights. In this view, free software would be worthwhile even if it was technically inferior to contemporary proprietary software.
Or to put it another way: if Eric Raymond one days wakes up convinced that Open Source is technically inferior, he must drop it in order to remain consistent with his own justifications. If Richard Stallman one day wakes up convinced Free Software is technically inferior, he will remain committed to it, since technical quality was never his primary goal.
I'd say that's a pretty big philosophical difference!
I'm not a fan of ESR at all (he's a bit of a paranoid nutcase), but you are taking that way out of context here.
The "given enough eyeballs" quote was about project leadership styles not software licensing. It was about empowering and accepting many contributors into a project (the bazaar) instead of having a small clique in charge of a project (the cathedral).
> Or to put it another way: if Eric Raymond one days wakes up convinced that Open Source is technically inferior, he must drop it in order to remain consistent with his own justifications.
ESR thought that attracting large contributor bases to projects was the key to improving quality. Not that Open Source automatically means better quality.
"Under pressure from the movie and record companies, software for individuals to use is increasingly designed specifically to restrict them. This malicious feature....is the antithesis in spirit of the freedom that free software aims to provide. And not just in spirit: since the goal of DRM is to trample your freedom, DRM developers try to make it hard, impossible, or even illegal for you to change the software that implements the DRM.
Yet some open source supporters have proposed “open source DRM” software. Their idea is that, by publishing the source code of programs designed to restrict your access to encrypted media and by allowing others to change it, they will produce more powerful and reliable software for restricting users like you. The software would then be delivered to you in devices that do not allow you to change it.
This software might be open source and use the open source development model, but it won't be free software since it won't respect the freedom of the users that actually run it."
Nothing prevents you from paywalling a GPL program as long as you distribute sources to legitimate users on request. Free as in freedom, not as in beer.
"The freedom to run the program as you wish, for any purpose" - "The license must not restrict anyone from making use of the program in a specific field of endeavor."
"The freedom to study how the program works, and change it so it does your computing as you wish" - "The program must include source code (...) The license must allow modifications and derived works"
"The freedom to redistribute copies so you can help your neighbor" - "The program (...) must allow distribution in source code as well as compiled form."
"The freedom to distribute copies of your modified versions to others" - "The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original software."
That's why almost all software considered "open source" is also "free software" and vice-versa.
Offensive JS includes:
"It makes an AJAX request or is loaded along with scripts that make an AJAX request" and "Calling methods with the square bracket notation" and "Using any other construct than a string literal with certain methods (Obj.write, Obj.createElement, …)."
If it includes something like the above (which 99% of HTML frameworks do) and it doesn't have a free license statement, should people really complain about it?
Like, fine. Sure. You don't want to run non-free JS. Okay. But there's no reason to waste someone's time complaining about it, either.
How is anyone supposed to take this seriously?
You pretty much summed up one of the two biggest issues at why the FSF has not had a larger impact on the world. The organization makes issues over these kinds of details and then paints it into a "us vs. them" situation. It seems to have little interest with trying to work with people, and more insistent on making sure you follow it's dogma.
The other issue is that the organization presents its arguments like a sophomoric adolescent. "Windows 7 Sins"? Who's going to take that seriously?
Maybe it isn't the way they're presenting their message; maybe you just don't agree with them.
I mostly agree with the FSF position and have defended Stallman on these pages many a time, donate a little bit to the Free Software Conservancy... but I have to agree with Delmania that the FSF does crap on in an adolescent manner at times. Like making pet nicknames and always using them (eg the 'Swindle'). The way the arguments are presented, it's like preaching to the choir - name-calling and in-jokes aren't exactly a dispassionate presentation of philosophy, and aren't going to win many friends who aren't already inclined that way to begin with.
Stallman argues that the name-calling is actually maturity-in-disguise, and that humour is needed in fighting oppression. However, he's wrong about that, and even if he was right, it's shithouse, clumsy humour that is made for the choir, not for the wider audience.
It has? I'll accept that only for the conception of FLOSS. However, I would then say that the OSI and Linux Foundations have had greater impact. They relied on the RMS's license, but they have actually managed to make inroads, whereas the FSF has stayed in it's corner, shouting.
> maybe you just don't agree with them.
What I don't agree with is the all or nothing attitude they have. The ability to know when to compromise is crucial to working with people.
The OSI and Linux Foundations are results of the FSF. The FSF changed the entire face of computing, and the daily lives of every programmer in the world.
> What I don't agree with is the all or nothing attitude they have.
They are an ethics organization. They are consistent and clear. They do not work with organizations or individuals who actively oppose the ethics they endorse. Exactly what goals are they trying to achieve that would benefit from that?
Their goals do not include getting the most users, making computers more convenient, or cheaper, producing the greatest software, or selling the most ads. They are clear about their purpose. When they attempt those things, it is solely to advance ethical goals. Specifically, who should they be working with, to what end?
That sounds weirdly like Scientology.
I mean they're ‘GNU’ in GNU/Linux, which is a bit more widespread¹ than any BSD/Linux type thing.
¹Pretty sure Android/Linux wins in sheer numbers, but GNU/Linux has been historically more important and is deployed in more scenarios than smartphones. But if we consider ‘widespread’ to mean numbers, my statement is false.
There's a bit more to the OS than just the kernel.
I dunno, I think people tend to associate Emacs = GPL, Vim = BSD. Same with GCC vs Clang. Oh and Emacs says ‘GNU Emacs’ all over itself, same with the GNU Compiler Collection.
So I don't agree that "GNU would've gone nowhere". If GNU had a kernel before Linus made Linux, then Linux would've gone nowhere.
They consider nonfree software to be not merely inconvenient, but evil, a violation of fundamental human rights. Why would they ever compromise?
Where they don't compromise is in situations where it would go against the very purpose of the organization, and why should they?
He spoke about LibreJS and about why we should complain, but I wasn't really convinced due to the exact same reason you mentioned.
For the rest of us, his ways are extremely impractical, so we compromise. We run a lot of proprietary software, and we don't really think about it.
But RMS thinks about it, and tells us in every single instance exactly what we are giving up as a compromise. And in that regard he, and the FSF, are very useful, and deserves respect.
The world would be a worse place without him, but we also only really need one of him.
70% seems quite high if you mean "free" as rms does.
I didn't say floss isn't prolific, I just think it's unlikely 70% of people here depend on it (almost) entirely
But by creating such polar opposite he gives space for a lot more "lessor" free, more practical solutions and options.
So he plays a very important guardian kind of role; which a lot of people will chalk up to paranoia.
I think what bothers people about Stallman (or at least, what bothers me about him, and extrapolating) is that he takes a moralistic approach. Non free software isn't a non optimal thing to be fixed for well-thought-out reasons X, Y, and Z, it is an Evil, and you are Wrong for perpetuating it.
So, if you consider "putting people in a situation where they have no control over their lives" as bad (I do), then the concept of proprietary software is wrong -- not just the ones that happen to misuse their power.
Heartbleed disagrees. Less likely? Arguable. "Can't happen"? Unequivocally false.
And besides such security benefits are gained by having the source visible, not necessarily "free".
So, please stop putting words in my mouth. I never mentioned security, I'm talking about freedom.
Two (non security, as you mentioned, even though it's brought up continually by apologists) examples off the top of my head:
* FileZilla, a GPLed FTP client, had malware added to its installer by Sourceforge at the request of its developers.
* Ubuntu, an operating system composed entirely of free software, started sending search data in its UI to third parties without prior notice.
If you think it's impossible for the developer to take advantage of you because their software is "free", you simply aren't being imaginative enough.
Aside: I don't think that security is a good argument for free software, because it's certainly possible to have secure proprietary software (in theory at least). But even if the software is secure, you can't prove that's the case or fix bugs by yourself or release the fixes to everyone.
I think it means not what you think it means.
Why on earth would this project concern itself with the coding styles of the JS that the author prefers? Even if the site and/or JS is free software, why do things things matter?
I mean, I get linting your own code, but linting the code of sites you visit just seems pointless.
This, banning AJAX requests and with the arduous process of getting into the 'libre' whitelist, makes this project a complete joke.
I've opened https://www.gnu.org/software/librejs/manual/librejs.html#ind... and see that having functions, doing AJAX requests, square brackets and the other stuff is what they use to distinguish between trivial JS code and non-trivial one. And it exactly makes sense - no one wants to stick a license over every trivial JS one-liner that's could be less of a program and more of configuration statements block. But those who care about free software don't want to run non-free programs. So, the heuristics.
But I really can't find anything like a ban on use of functions or AJAX requests, or something similarly ridiculous, that some comments here seem to imply.
If that's not some pedantic RMS bullshit, I don't know what is.
At least it's easy enough for a spam filter to catch.
In a former case, please clarify and have my apologies. In two other ones - sorry, but that really needs some downvotes.
I'd love to be able to automatically detect which bits of JS are needed and run them selectivity.
The added freedom and privacy are really nice, but I also need my laptop battery to last longer then a few hours.
Sort of a weird Camelot-esque quest for freedom.
And then I read about the heuristic "Complain" tab.
Dunno why you're being downvoted, that's a legitimate complaint. Why waste people's time on something like this?
If someone gives me something directly (like a book or information in a conversation) without a disclaimer or some sort of contract. I would assume it is now mine and i assume the law does to.
And from my perspective getting a response from a http server is the same thing as being given something.
Copyright, in most countries, is granted implicitly to the creator, meaning you don't automatically get to 'own' any content from my website.
You can't assume that if someone lets you into their house, they've implicitly granted you the right to enter their house whenever you want or invite your own guests. There's no disclaimer needed, ever, because it's their property. Copyright just extends that idea to intellectual property.
This can be maddening to the hacker ideology, which views this direct, real political action as folly. Why fight what is impossible to fight if you can somehow hack a workaround? Wasting effort trying to divert a river seems crazy if you believe that "progress" can be achieved while swimming with the current.
: I have a theory as to why that is: to the somewhat autistic mind of some technology types, the physical laws are governed by unforgiving but inherently simple laws, presenting a well-designed puzzle, meant to be solved. The social laws, on the other hand, appear complex, impenetrable, even threatening. They are then either discounted as stupid (i.e., society can be simple, but isn’t because stupid people complicate it; a utopia would be governed by simple laws, resembling those of the physical world in structure), or surrendered to as something too powerful to understand and contend with head-on. A clever hacker is meant to exploit their quirky, but superficial idiosyncrasies, uncovered by statistics and "data", but must never fight them and never try to untangle their deep structure.
I find this a very questionable premise. Technology, being constrained by physics, necessary works with the laws of nature at least to that extent. Well-designed technology, however, most often also works with rather than against its materials and with, rather than against, the human mind that is intended as its user.
 E.g., airplanes do not fight physics to fly but use it. The "fight" view is based on an incomplete picture that ignores everything beyond gravity.
 This is not the same as the intent of whoever created the materials, hence hacking.
This is a joke.
It's called FUD.
All cultures are welcome except free-software culture. Have you ever noticed that?
Apparently having certain software standards puts us on the same level as religious fanatics. I don't worship GNU, I don't threaten to chop heads off if people don't use free software.
The reality is that free software culture poses a threat to proprietary business practices and so many companies have incentive to create a narrative where those of us who prefer free software and certain philosophical ideals are seen as crazy fanatics.
Meditate for a few hours a day? no problem.
Pray toward mecca seven times a day? fine.
Prefer free software on your computer? GOD I HATE FREE SOFTWARE FANATICS AND THEIR INSANE PHILOSOPHY!
This convention will only work if everyone follows it. And very few will because it's aiming to solve a problem that doesn't exist.
Just like original FOSS licenses started out then? What's the problem? People who care will start to follow it and if it turns out to be a good idea (like how the original GPL & similar licenses came to being into a mostly proprietary licensed world) people will follow.
And this is not a slam against those users, it's a simple fact of numbers. Even with the most liberal possible estimates of how many of those users exist, and the most conservative estimate of what my theoretical engineers are getting paid, it doesn't make sense to bother with this.
Also, there _is_ a practical impact on the JS you see on a particular site: the fact that you can debug it doesn't mean you can change and redistribute it.
There are very real implications of having a piece of code released under a particular license and it's hardly accurate to call these implications "paranoia".
When you apply a license to a piece of software, it's immediately useful for that particular piece of software. You don't need an entire ecosystem of free software for one free program to be useful.
Unless RMS is leveraging nationalism through racist policies and wants a strong police state or thinks mercantilism should replace capitalism, it's really not a very good label - save that for the real thing.
Nonsense. There's nothing "socialist" about Free Software. Plenty of capitalistic companies make their money by using and writing FOSS.
Like cited in the Slashdot link in my previous comment, he's gone so far as to demonize free software that isn't GPL.
All he's doing is asking people to refrain from accepting a patch before he can talk to someone about it. What demonization?
> it makes an AJAX request or is loaded along with scripts that make an AJAX request,
Sometimes I think RMS would be happier if the web had just stopped development after the release of the Mosaic browser.
a) If it makes an AJAX request, it likely is a piece of software (a web app) more than it is a webpage.
b) If it is software, then he (and the people using this) care about it being free software.
I use and have made proprietary web apps, yet I wouldn't disagree with RMS on the argument that such apps leave less control to the user than free software on their own devices does. It seems like objective reality. Given the practicalities, I don't consider it a deal-breaker in all cases - I give up some control in exchange for other things - but I can understand people who do. This is the "Certified Vegan" for the web. People are free to change their consumption habits for moral reasons and that includes web apps, this remains true even if you think their particular fight has no merit or is not worth fighting.
I think opening that tab by default is a bit much, but I can imagine cases where people would report "hey, this site is/should be running open-source/free software, please add a license to your code".
This is not about blocking code execution in your browser, is about not running proprietary code in your browser if you don't want to.
- Making customization (Greasemonkey etc.) easier by removing the need for customization tools to muddle through JS minification/obfuscation. While in practice various tools today are doing a good job customizing Gmail anyway, I imagine they could make more changes and more invasive changes with access to the source.
- Special case: making client-side encryption browser extensions safe. Right now they are fundamentally unsafe (if they hook into the webapp rather than providing a separate interface), because there is nothing stopping Google from quietly adding some JS code to grab and report the plaintext before it gets encrypted. By itself, releasing the webapp's source wouldn't fix this because you would still have to trust Google's servers to send the same JS to everyone - but a browser extension could be enhanced to hash the page JS and refuse to operate with non-approved hashes, combined with a process where someone outside of Google manually approves changes as they are released, providing at least cursory review. Nobody wants to review obfuscated code.
- Allowing users to detect and remove any other forms of tracking/deanonymization that might be present such as mouse cursor or keystroke recording, canvas fingerprinting, etc., more reliably than with the sorts of purely technical measures that could be implemented in a browser (since these things are hard to block without preventing the app from doing its job).
- The kicker: Allowing the same webapp to be used with a different backend, so if you don't want Google to have access to your email, or don't trust them not to cripple functionality in the future, or need a lot of storage and can get it cheaper elsewhere, or are in China and have an (intentionally) shitty censored connection to the international internet, ... the list goes on... then you can self-host it, without losing the familiar interface. You can also host your own clone service for others to use, perhaps forking off the original code when Google makes an unpopular change, as they are wont to do. Of course this requires someone to actually do the technical work of writing a suitable new backend for the client to talk to, and in the case of a fork to maintain a huge codebase (compare Palemoon and such), but without free software you can't even get started (legally).
Of course, Google might not be too happy about that last point. But rms's ideology has never been pragmatic about 'business needs' and such. It's concerned only for the users.
Twitter is a somewhat less traditional case: the case for free software is either less applicable or far more, depending on how strictly you define "free software". This is because unlike Gmail, which provides decent support for third party clients, Twitter has long cracked down on them in various arbitrary ways and enforced strict rules that prevent them from innovating on UI. Since one of the informally-defined 'freedoms' of free software is the ability to modify it, it should be possible to morph the official browser client into anything you want - even if that means keeping just the API access layer and building an entirely new UI on top - and continue to use it freely. Thus if Twitter changed their tune and actually dedicated themselves to these freedoms, that would imply starting to tolerate access by arbitrary client software, and users would hugely benefit. However, if for some reason Twitter were to hypothetically release their client under a free license - even under the GPL - while otherwise continuing with their current policies, it wouldn't affect the situation much. The license would at least allow third parties to check the source for Twitter's own API key and copy it into their own apps without exposing themselves to legal liability related to copyright/DMCA. But Twitter could still try to identify and block rogue clients, sue under the CFAA ('hacking' statute) for unauthorized access, ban the personal accounts of creators of rogue clients, etc.
Sometimes I look at modern websites and think I'd be happier too.
Or before. He doesn't really  browse the web:
> I generally do not connect to web sites from my own machine, aside from a few sites I have some special relationship with. I usually fetch web pages from other sites by sending mail to a program (see git://git.gnu.org/womb/hacks.git) that fetches them, much like wget, and then mails them back to me. Then I look at them using a web browser, unless it is easy to see the text in the HTML page directly. I usually try lynx first, then a graphical browser if the page needs it (using konqueror, which won't fetch from other sites in such a situation).
I generally do not connect to web sites from my own machine, aside from a few sites I have some special relationship with. I usually fetch web pages from other sites by sending mail to a program (see git://git.gnu.org/womb/hacks.git) that fetches them, much like wget, and then mails them back to me. Then I look at them using a web browser, unless it is easy to see the text in the HTML page directly. I usually try lynx first, then a graphical browser if the page needs it (using konqueror, which won't fetch from other sites in such a situation).
I for one am glad we aren't back in 1980 on serial connections.
If you had actually read the page, you'd see that he actually does use a web browser occasionally.
Of more recent software "clones", there is guix vs nix, mcron vs vixie-cron, shepherd vs systemd, gnutls vs openssl, all high-quality implementations of good ideas.
Sure, lsh has a way to go before it's a viable alternative to OpenSSH, but I wouldn't say it's low-quality. I don't think I've come across a GNU project which felt "half-put-together", rather the opposite.
The GNU projects' motivation is very clear-cut and not at all different from e.g. the BSD camp or suckless. How are they questionable?
Shepherd is hardly a clone of systemd. It's older and has much fewer features. They are both init systems.
The relationship of Guix and Nix is also not that of rivalry. Guix uses the Nix daemon and subscribes to the idea of functional package management, but everything else is quite different.
(I realise you put "clone" in quotes and wrote "all high-quality implementations of good ideas", but I thought I should clarify anyway.)
I'm working on GNU because I share its vision of providing more computing freedom to people, blurring the lines between admins and users as is the case with Emacs (self-documenting, trivially extensible and modifiable), Guix (trivial inspection and modification of all packages on a system, a large step towards freedom from system administrators, independent software profiles giving each user what they want), and the Hurd (even more freedom from sys admins).
I'm not even talking about the many compilers in GCC, which make it feasible to build a completely free system (such as GuixSD).
You seem to misunderstand the GNU project, and I find it unpalatable to reduce what you call "China" to a cardboard cutout for the sake of a flawed analogy.