8 ms·
He has a valid point about restructuring the three freedoms that he did keep to make sense. However that 'zeroth freedom', which both the FSF and he initially
by mjevans 10y ago
He has a valid point about restructuring the three freedoms that he did keep to make sense. However that 'zeroth freedom', which both the FSF and he initially forgot, is important as well.
"The freedom to run the program as you wish, for any purpose"
This is about licences that restricted possible uses of software. Just as you are free to drive your vehicle anywhere * , and transport anything * while using it, so to should you be free to use software the same way.
( * the point is no artificial additional restrictions, not literally wildcard)
Multiple edits: I will never get used to the crazy custom syntax HN posts have. It isn't pure plain text (maybe with hyperlinks), a form of psudeocode tagging, or markdown like.
- hga 10y agoOne trick to get around the use of asterisk for italicizing test for footnotes, use a character like this one: † I keep a copy at the top of a file that I always have loaded in my Emacs.
- ht_th 10y agoI've created the program symbol2unicode¹ for that. You can enter ascii representations of a symbol, say ->, and you get the unicode symbol (→). It has a CLI interface and a web interface. I keep it always around in a terminal tab and made some Vim binding as well. ¹https://github.com/htdebeer/symbol2unicode https://github.com/htdebeer/symbol2unicode
- hga 10y agoCool! I don't play the Node.js game, but I'll see about polishing my 2 decades rusty Javascript web page experiences and see if I can't make this into a simple web page which I can keep a tab always loaded with, I pretty much only use Unicode characters for web comments and the like. Although if this makes it a lot easier ... and I suppose I should see if Emacs has such a feature. Anyway, thanks!
- ht_th 10y agoI've also a web interface at https://heerdebeer.org/Software/symbol2unicode/converter.html https://heerdebeer.org/Software/symbol2unicode/converter.htm...
- BostonEnginerd 10y ago"You are free to drive your vehicle anywhere for any purpose" seems to be going away: https://electrek.co/2016/10/19/teslas-new-self-driving-car-can-only-make-you-money-on-the-ride-sharing-tesla-network-not-uber-or-lyft/ https://electrek.co/2016/10/19/teslas-new-self-driving-car-c...
- _ph_ 10y agoIronically no. You still are free to drive your Tesla anywhere for any purpose. The limitation is only for the future self-driving feature.
- throwbsidbdk 10y agoIt is already gone for many cars. Some higher end cars will detect your location on various racing tracks and void your warranty. Cars equipped with OnStar cam be shutdown and located remotely. Famously, the Nissan skyline also voids your warranty if you use the launch control feature more than a handful of times. Seems pretty innocent so far, but this type of thing should be banned before it gets worse. Right now there's zero manufacturer incentive not to hide these kinds of things in the firmware.
- tscs37 10y agoThe OnStar is an obvious example. But how does voiding the warranty restrict your ability to drive where you want? It's the vendor simply saying "you're doing something we did not intend you to do with the product, so it's on you if you fuck up". How does that infringe on your freedom to drive where you want?
- PeterisP 10y agoThe car can be used anywhere, but the warranty (rightfully) is a different issue. Note also that the car can't "void your warranty" in any meaningful way, all it can do is record if certain actions occured; and that's orthogonal to the warranty issue. Driving on a racing track makes the warranty just as void (or not) if the car didn't record anything, it's a legal matter depending on the warranty conditions and your local law, all the car provides is some more information that can help establish what the facts are.
- tzs 10y agoI'm not sure that the FSF considers freedom 0 to be essential anymore. They describe it as follows: > The freedom to run the program means the freedom for any kind of person or organization to use it on any kind of computer system, for any kind of overall job and purpose, without being required to communicate about it with the developer or any other specific entity. In this freedom, it is the user's purpose that matters, not the developer's purpose; you as a user are free to run the program for your purposes, and if you distribute it to someone else, she is then free to run it for her purposes, but you are not entitled to impose your purposes on her. AGPL was accepted by the FSF as a free software license, yet it is quite problematic when it comes to freedom 0. Suppose I find a program that displays an interactive chess board in a window, and lets you play over chess games that you enter by pasting in the moves. I modify the program so that it includes a simple HTTP interface. Someone on the network can connect to that interface, and if the person sitting at the terminal is willing, the person on the network can play a game of chess with the person sitting at the terminal. If I'm already a playing a game, people who connect over the HTTP interface will be placed in a queue to wait for me to be available. If this program was under AGPL, I have to give my modified version to those who play chess with me over the network. To make that requirement be in accord with freedom 0, it is necessary to claim that I am not a "user" of the program and/or that I did not "run" the program. It's kind of hard to say I'm not a "user", since I am sitting at the damn terminal using the program. Same for "run". I typed the command that started the program running. (Note: I've seen people argue that the person coming in over the net is a "user" and that they "run" the program. Even if so, that is not relevant here, because AGPL is not trying to impose any requirements on them. It is trying to impose a requirement on me, and so is only whether or not I am a "user" and what I did was to "run" the program that is relevant as far as determine whether or not imposing a requirement on me violates my freedom 0).
- cyphar 10y agoBut you are "conveying" the software to the users, that's the whole point. AGPL just extends the meaning of the word conveying to also include users connecting over the network. As for it infringing on freedom 0, I don't understand how your logic wouldn't also apply for the GPL. I disagree that you cannot "use the software for any purpose" with the AGPL. You haven't given an example of you being restricted by it. If a user gave a copy of their program to another user they would have the exact same requirement (under the plain GPL). If you wanted to run a private copy of your modified program you just have to make it forbidden to connect to that interface. Also, there's no reason you cannot just provide a link to a git repo for your modified project. Which means that you don't even have to modify your program to distribute its source code to users.