Why Open Source misses the point of Free Software
gnu.org
gnu.org
When I create some software I prefer the user of my software to have all freedoms including the freedom to embed it in closed source software.
bsd-like licenses are still 'free'.
Now imagine how some open-source authors feel.
Are you specifically objecting to the 'tivoisation' clause of the GPLv3, or has your opinion on the GPL changed, or something else? The spirit that you seem to describe is, I believe, embodied by the LGPLv2 (minus the clause that allows you to convert LGPL -> GPL.)
Amazing how people can have different priorities and different beliefs. (And, amazing how one can abuse the word "free" or "open" in either case to mean two very different things.)
It seems to happen a lot in technology and the naming of bills in congress. It has got to the point where I start to ignore the words.
"Net Neutrality" is the latest phrase that has a lot of meanings depending on who you talk to, but has no actual technical or judicial meaning. I could accept a technical definition that has a meaning, but not this two word label that doesn't. For example, if I said "I was against port blocking or banning protocols except by the end user", it has some meaning.
My definition of these weasel words (tis a shame open and free are among them) is if someone says the phrase "I support X" and it gives me no real knowledge of their actual beliefs.
BSD license accomplishes that just fine. BSD licensed code has been taken, extended, modified and used in proprietary products for decades, and yet the original contribution remains open.
I think that what you object to is that someone can take your code and make money using it in a closed source project, perhaps modifying it in the process. If that makes you unhappy then GPL will serve your desires better.
But saying a BSD license won't keep your code open is not true. It may seem like a nit, but it's one that matters.
All that BSD code that's been taken, extended, modified and used in proprietary products is no longer open. You can't get into OS X and fix bugs or port it to another platform. So even if the original code is still open, other distributions of that same code are not.
Funny thing the Linux kernel came from a man that doesn't even buy RMS's propaganda, and that used GPL just because he was looking for some ROI.
This is fine. First and most importantly, because the desire to share code with BSD comes with no strings attached. It's just the desire to share. You don't have to have the same beliefs and priorities as I do in order to use my code. I believe in freedom enough to give you all the freedoms to do as you like with my code, and you don't have to behave in ways I see as good.
Secondly, if Apple were unable to use BSD code then what would happen? They would go completely proprietary, that's what. For them the alternative is not between BSD and GPL! Would the user be better served, or worse? As it stands, Apple contributes some things back to open/free projects, and a big part of that is due to their ties to BSD code.
Thirdly, with OS X as it is, or if Apple had not taken BSD code, or Apple did not even exist, would a user be more able or less able to run FreeBSD? No. Or GNU/Linux? Again, no.
Stallman and the FSF think that they're making a difference with licenses. But I think the truth may be that it's not the license that's really the movement. The movement is collaboration on a global scale and sharing code and making cool things for everyone to use. The licenses do not drive this. In the end we have to make sure that licenses serve our purpose rather than the other way around.
But not for RMS since it doesn't address the founding concern of the FSF! You sort of glossed over that. If you write BSD code, and it gets put into OS X, your ability to tinker with your own code in that context is gone.
I don't think you can clearly claim one license here is more free than the other -- they're both securing different kinds of freedom.
I understand that it's not fine with RMS and the FSF. And that's ok, because that's their point of view and plenty of other people feel the same way, and there should be a license for such people to use.
I understand that my views are not in line with the founding concerns of the FSF. But I never claimed they were. This is the very problem. The FSF has confused a generation of hackers into thinking that Freedom is the FSF and that the FSF is Freedom. They're not different kinds of freedom. The FSF promotes guaranteeing certain rights of anyone using software, where BSD is about freedom. You can believe in what the FSF is trying to do, and you can use the GPL to help get there! That's ok. It just bugs me about the "free" thing because it's not so true as the FSF would like you to think.
Actually, it doesn't matter what license you use -- you'll always have your own code.
> Any possible restrictions I would place on them could only make it less free.
One person's restriction is another person's allowance. The GPL gives end users and developers a number of rights that they don't normally get with copyrighted works. BSD doesn't change the normal copyright rights of end users at all. So for some users in some situations, the GPL is more free than copyright, and by extension, the BSD license as well.
>But not for RMS since it doesn't address the founding concern of the FSF! You sort of glossed over that. If you write BSD code, and it gets put into OS X, your ability to tinker with your own code in that context is gone.
Well, yes, but no.
Secondly, if Apple were unable to use BSD code then what would happen? They would go completely proprietary, that's what.
The assumption is that we would end up with a completely closed-source printer driver that couldn't be hacked, rather than a mostly closed-source printer driver that couldn't be hacked. Improvement?
> give you all the freedoms to do as you like with my code
The industry has a bad habit of leaving end users at our mercy. I feel they deserve a place in that sentence, and that's why my donated work only goes to GPL projects.
> BSD license accomplishes that just fine. BSD licensed code has been taken, extended, modified and used in proprietary products for decades, and yet the original contribution remains open.
But the modifications might not do, which is what GPL proponents care about. To me, the GPL is like saying "I'll share with you, if you share (your changes) with me".
This is not to say that GPL is better than BSD, or that either is better that a proprietory license; they're each designed to do different things. One might as well argue about whether a car a plane or a boat is the best form of transport.
Yes, that's correct. It's not about better or worse at all. It's about a license that fits what you want, as a developer.
Sometimes it varies by project! For instance, a developer who normally uses GPL may choose BSD for a reference implementation of a client program using their API, specifically because commercial products could incorporate the code.
There are other licenses which will insure that your software remains free and open. GPL requires that mine become free and open as well...and that's fine in so far as it goes.
Structurally, however, the copyleft movement only works so long as there is a system of copyright protections, powerful institutions for enforcing them, and the threat of severe sanctions for violating them. In other words, the copyleft movement is built on the same foundation as its antithesis. Both copyright and copyleft depend on the author's right to restrict future use.
I personally prefer to release software under the GPL initially, and then release under other licenses if I want to allow usage in those ways the GPL doesn't permit. Maybe that's a commercial deal with someone, maybe it's just changing the license to bsd, or maybe just making it public domain.
What I can't stand are holy wars about licenses and this whole church of "GPL means you have to give back"... or anyone talking about the "spirit" of these projects. Copyright is copyright, and licenses are licenses, and if someone wants to do a project with multiple developers and not take care of handling copyright assignment issues (in other words, make a mess, or just let hte project become a GPL free-ride) then that's their choice....
Anyway, I went from GPL to BSD/MIT back to GPL (for "large" projects; small projects are public domain or MIT). I'd rather chain people with freedom while we have the copyright laws to do it than hope people will respect the freedoms I want others to have.
Open source offers developers benefits that lots of developers understand and appreciate.
Therefore open source is a much better marketing tactic. (Which is exactly what it was designed to be.)
Cars can't be repaired with a quick update over the wire.
This link was submitted quite a while ago[0] without the question mark, and it clearly didn't gain a lot of traction, so in this case it was a good idea to resubmit it. However, it seems wrong that the dupe-prevention code isn't more sophisticated.
http://thread.gmane.org/gmane.linux.distributions.gnu-linux-...
(The whole thread, not just the specific post linked to).
It's like saying people in the US are more free than those in the EU, because the US restricts travel to non-free Cuba.
Edit: It is however important to distinguish between free software and thinly veiled proprietary software marketed as Open Source.
With GPL you are giving your project away only to those willing to work with you on improving it.
The arguments back and forth are so tiresome when they don't recognize that sometimes one license makes a lot of sense and sometimes the other license makes a lot of sense. There will never be one license to rule them all.
Everyone would weld the hoods of their cars shut if leaving it open meant they had to give the car away for free. Since it doesn't, most people are free to access the internals of their vehicles and do whatever they like. The same principle should apply to software -- if we make it reasonably easy for people to leave the hood open but still make some money, there'd be more freedom to go around for everyone.
There are times when this kind of sharing is good, but I believe if we were interested less in economic zealotry and more interested in individual freedom to control the software that runs on one's computer, we'd see a lot more people distributing source code. That would ultimately produce a net increase in freedom for computer users, even if the rules say you can only share modifications with people that have a rightful license.
Those that want to license under a copyleft are by all means free to do so, but we shouldn't exclude people that would be willing to distribute source code so that their users can control the program themselves, but who are not willing to switch to a support or subscription based business model. You can't make much significant money selling GPL'd software, you only make money by selling support contracts to BigCo. And that model is not applicable to everyone, even if it works out OK for database systems and Linux distributions.
Whether it's simple to copy or not, it's not simple to implement or design, and implementers and designers should be compensated even if their work can be reproduced at minimal cost after its initial production and release. A car's physical properties that make it much more difficult to copy have nothing to do with whether the hoods should be opened or shut, and whether rightful owners should be free to tinker around inside.
With all due respect Mr Stallman, given those conditions I may not want to code at all.
Given his apparent stance on non-Free software, I suspect he is not concerned if you choose not to write some. He certainly wouldn't have used it in the first place.
Letting people put back patches if they want to, but otherwise do what the hell they feel like is powerful, useful and practical for many more applications than the GPL et al licenses.
Some of us like sharing, but also like selling software and not giving away the source.
Remember, branding is important.
BSD, MIT and WTFPL are all on the list of officially verified Free Software licenses: http://www.gnu.org/licenses/license-list.html and are thus "Free Software".
Open Source, similarly, is defined as software released under a license that follows the definition of Open Source Software ( http://www.opensource.org/docs/osd ). The OSI also has a list of approved licenses: http://www.opensource.org/licenses/alphabetical
Open Source is about the developers. Free Software is about the end users (or, it's supposed to be).
In reality, Free Software ends up being useful only for programmers, hackers, technical people, and well, institutions which require programmers, hackers and technical people to run and grow their infrastructure (such as Universities and Governments).
Free Software (as an ideology) offers nothing to the typical end user of, say, the iPhone. It offers a lot to Apple (the iPhone makers).
* Open Source supporters say "Some software should be..."
* Free Software supporters say "All software should be..."
In this regard, you're right: Free Software misses the point of Open Source, namely that the goals and values of Free Software are simply wrong.
In an ideal world, the user and the developer are one in the same.
I don't mean everyone who uses a piece of software should have to know the code intimately; merely that they should have the freedom to see it, modify it and learn from it, should the need or desire arise. The power of the Free Software movement is that it created an entire generation of users who are also developers. Most of the people here at HN have Free and Open Source software to thank for their programming skills. You're mostly too young to remember the world in which code was closed, by default, and you had to learn without the benefit of an infinite variety of examples to peruse.
"Free Software (as an ideology) offers nothing to the typical end user of, say, the iPhone."
Which is why it is important to educate the next generation of the importance of Free Software (or Open Source, though having an ideology to back it might not be such a bad things), so that the rate of software advancement and innovation continues to accelerate, and so that the gap between the technology haves and have nots does not grow further and faster.
To dismiss the ideology, I think, is to dismiss the importance of a free software culture; our Internet exists as it does today thanks to free software.
Note that I'm not discussing licenses here, but the general culture of software. If we have a culture of sharing, which RMS and the FSF has been instrumental in creating (and the GPL was merely a part of that), we have a culture in which young programmers can learn from the experienced, and a culture in which barriers to entry are not as economic in nature.
I think it's worth teaching kids the value of a free software culture, and working to keep that culture thriving going forward, despite the fact that many major corporations have a vested interest in seeing free software contained to the world of nerds and hackers.
My vision of utopia does not include helping my mother debug her cell phone - explaining gmail is bad enough.
It can't help the previous generation in any notable way. That ship has sailed.
But, the next generation can be more capable than the current one, assuming we pass on the tools they need and a culture of learning and sharing discoveries. So, don't bother teaching your mother to code, unless she actually wants to learn. Teach your kids and give them the tools they need (which includes a huge variety of source to learn from).
While everyone would have the freedom to contribute patches, most people aren't going to be educated along this line, or know the product very well. It is the tools that we must improve, although the principles of software freedom enforced in the GPL help protect people.
If the next sentence dispels that fear, then the quoted sentence is wrong, and should have been left out altogether. And so it is.
This is perhaps the biggest fail of the Free Software movement: co-opting a word, phrase or sentence to fill people with idealistic notions that do not represent what GNU and the FSF are really about. This begins with "Free" which translates into rules and restrictions. If you want truly free, there's public domain or BSD-style licenses. GNU/FSF have goals other than true freedom, and they believe strongly in those goals. Many agree with them. I think everyone would be better served saying what they really stand for, starting with changing the name of the FSF.
Sometimes, a thought or concept requires more than one sentence to express.
Why should a user be a developer in an ideal world? Why should one be required to be a developer to utilize software? It's not even a world that anyone really wants to move toward. The whole idea is very developer-centric, and doesn't represent an enlightened user perspective.
We're talking about freedom here; and I'd like it if users had the same freedoms I've enjoyed over the past couple of decades. That includes having source available for a large percentage of the software I used, so I that I could learn from it and modify it. No one forced me to become a developer in order to use Firefox, but I've always had the freedom to look at and modify the Firefox code (and thus I could, at any moment and without warning or asking permission, transition from being a Firefox user to being a Firefox developer). I think "developer" is a pretty fluid concept, in an ideal world.
Anyway, as I've mentioned elsewhere, it is the difference between "may" and "must". You believe I am saying "must", when my intention is "may".
But maybe you want kind of free, free in some narrow ways that preserve things important to you by putting restrictions on those who get your code so that they also have to preserve the same things you like. If so then that's fine! I totally support your right as the author to choose an appropriate license. But that's not about freedom. It's about propagating your view of how things should be. There's nothing intrinsically wrong with that, but it's not about freedom.
I'm simply saying I would like for a culture of learning and sharing to remain strong and vibrant going forward. You're making this into an ideological flame war, without reason. I haven't demanded anything of you or the software you create. I have suggested that a vibrant and thriving open source or free software community is a good thing.
As I mentioned in my first comment, I'm not speaking specifically of the GPL. I happen to like the license, but if you don't, that's fine. I have, nowhere in this conversation, suggested that only the GPL allows the kind of freedom I'm speaking of.
The freedom I am speaking of is about building a culture of being able to look at, learn from, modify, and contribute to, the software I (and others) use. And, nowhere have I suggested that only the GPL makes that possible; though I do think RMS and the FSF (and, yes, the GPL) deserve some credit for building the culture we currently enjoy.
When Stallman calls "non-free" software immoral, does he want to say that it's a matter of personal preferences, or does he want to say that there should be a law against publishing non-free software, and violations should be punished?
He has, to my knowledge, never suggested there should be a law against producing non-free software. I have certainly never made such a suggestion in this thread.
"People feel that that moral rules are universal. Injunctions against murder and rape, for example, are not matters of taste or fashion but have a trancendent and universal warrent. People feel that other who commit immoral acts ought to be punished: not only is it right to inflict harm on people who have commmited a immoral infraction, it is wrong not to, that is, to "let them get away with it,"...
You have never suggested a law, but that's what the Free Software movement is about: In Stallman's mind -- and to those who understand him - , publishing non-free software is not just a matter of taste or fashion -- it's immoral and wrong; just like murder, rape, and stealing.
It must be punished.
From the dictionary (I would specifically point you to #3, in case you're feeling too lazy to read all of them):
mor·al [mawr-uhl, mor-] –adjective 1. of, pertaining to, or concerned with the principles or rules of right conduct or the distinction between right and wrong; ethical: moral attitudes. 2. expressing or conveying truths or counsel as to right conduct, as a speaker or a literary work; moralizing: a moral novel. 3. founded on the fundamental principles of right conduct rather than on legalities, enactment, or custom: moral obligations. 4. capable of conforming to the rules of right conduct: a moral being. 5. conforming to the rules of right conduct ( opposed to immoral): a moral man. 6. virtuous in sexual matters; chaste. 7. of, pertaining to, or acting on the mind, feelings, will, or character: moral support. 8. resting upon convincing grounds of probability; virtual: a moral certainty. –noun 9. the moral teaching or practical lesson contained in a fable, tale, experience, etc. 10. the embodiment or type of something. 11. morals, principles or habits with respect to right or wrong conduct.
You've clearly got an ax to grind here, but it's not with anything I've said in this conversation. You've thunk up some people out there trying to force you to work in software slave labor camps producing free software all the live long day. I have no idea where you got these ideas from, but it's not from anything I've said, and it's not from the FSF website or the GPL license and relevant documentation.
But Stallman is clear enought during interviews (emphasis by me):
* “The free software movement aims for a social change: to make all software free..." - http://www.gnu.org/philosophy/compromise.html
* “Non-free software tramples your freedom. […] It's unethical and it should not exist.” -- http://multinationalmonitor.org/mm2004/07012004/july-aug04in...
* Interviewer "If there was a button that you could push and force all companies to free their software, would you press it?" Stallman: […] But yes, I think all published software should be free software." - http://www.gnu.org/events/rms-nyu-2001-transcript.txt
* Interviewer: "Would you accept a federal law in the United States to enforce the distribution of source code with every type of software?" Stallman: "I am not calling for such a law as of now, but I think that would be a valid consumer protection measure[…]" - http://www.linuxdevcenter.com/pub/a/linux/2004/12/22/rms_int...
The mere fact of an inherent trade-off in freedoms doesn't mean that the actions of the FSF, or programmers who use the GPL, are "about propagating your view of how things should be" and not "about freedom." That's just as ridiculous as saying that, in authoring the US Bill of Rights (say), the authors were not making decisions "about freedom" because they chose to promote certain freedoms of private citizens at the expense of certain freedoms of agents of the state.
It's a difficult social task to figure out which freedoms are the best to promote, and which can be traded off. But making the hard choices in these trade-offs isn't just a matter of promoting freedoms that one "likes better." Some freedoms are more important than others, insofar as they better promote our various social values and purposes. Whether or not you agree with the FSF's vision of what those values and purposes are and which freedoms best achieve them, it doesn't make any sense to write them off as merely working for some other agenda.
But I don't think I'm going to get this point across. Not while "freedom" is taken to mean something other than the dictionary definition.
The free software movement is about granting users freedom in this narrow sense, but it is also about building a society in which software freedom is valued and protected in a much broader sense. Software freedom is a social, moral and cultural goal in the same way that freedom of the press, freedom of association, or freedom from malicious prosecution are. These are "freedoms" in a broader sense than the dictionary definition, perhaps, but that doesn't mean that "freedom" is the wrong word to use.
Indeed, the broad sense of "freedom" is the one that is of primary importance, because without the social institutions that implement the broad sense of "freedom," the narrow sense of individual freedom in a particular setting becomes irrelevant or, worse, non-existent. Unless we have freedom of the press in the broad sense, for example, the fact that any particular publisher is free to say what it wants remains hollow. (One could hardly say, for example, that a country which has a single publisher that's free to publish as it pleases -- the state-run media outlet -- has a "free press.") A whole series of institutions are required to have a free press: a legal system that protects free printed speech, a system of publishers that actually produce that printed speech, an economic system that supports those publishers, and so on. In the same way, a whole series of institutions are required for software freedom: a system that protects certain freedoms of use for all users, as well as a system for developing free software, and for supporting that development in one way or another. It is these institutions that the GPL helps create; and in their absence, the possibility of BSD-licensed code, whether or not it would be "more free" in a particular case, is irrelevant to the social goal of software freedom for everyone.
Unfortunately, it is precisely the broad sense of "freedom" as a network of social institutions that define, protect and promote individual freedoms (in the narrow sense) that introduces the trade-offs and hard choices, the balancing act between certain particular freedoms of certain individuals and other freedoms of other individuals. But again, this hardly means that freedoms in the broad sense are not properly so called. And unless we make those hard choices, the narrow, individual freedoms that arise from them will not exist in a meaningful way.
People have that freedom now.
Having the sort access to the source code of a large percentage of the software one uses is not a necessary condition for becoming a software developer nor for learning programming. I suspect that most people first learned programming starting with trivial problems or by typing in examples.
> I think everyone would be better served saying what they really stand for, starting with changing the name of the FSF.
Okay, I'm stumped. If not the spreading of free software, what exactly is the FSF's agenda? Because without any specifics your comment is just more FUD.
I like the dictionary definition of freedom. Stallman has a set of concerns and ideas about how they can be answered, and has set up conditions and restrictions to try to propagate them. There's absolutely nothing wrong with that, but freedom isn't a very accurate way to describe it.
> If not the spreading of free software, what exactly is the FSF's agenda? Because without any specifics your comment is just more FUD.
I don't think my statement are FUD, as I'm trying to correct common misconceptions. If you want what the GPL offers (and many do) then it's only right that you choose it. However, conflating those ideals with freedom is inaccurate and misleading. If actual freedom is what you're after, a new BSD license is much closer to that. Only public domain is more free, but PD has some international interpretation issues.
As for the FSF's agenda, I don't pretend that it's an evil, secret conspiracy. It's not. They spell it out well enough on their site for all to see, once you filter out the fake freedom bits. Their core ideals are noble enough, though I disagree with some of their implementation.
This is directly at odds with my own experience. Whenever I've had to work on Microsoft platforms, I've been constantly bumping into walls where I simply couldn't get the information I needed to solve my problems. MSDN, or no, I've generally been much more satisfied with the process of developing free software and for free software platforms.
Do you find it difficult to find quality documentation for Python, or Perl, or Ruby? How about GCC or LLVM? I haven't. I've found them to be extremely well-documented. And, when in doubt, I can go to the source (or someone else can go to the source to help me). That's not a privilege one has with non-Open Source software.
But, as I mentioned in another comment, the biggest difference in our perspective may be that you think I mean "all users must be developers", when in fact, my intention is, "all users may be developers".
We are talking about freedom here after all, and not forcing anyone to do anything. I simply want a culture in which anyone who desires to learn how their tools work can do so.
I assume that unlike the inhabitants of your ideal world and myself, you are a professional programmer. Why would I run LLVM or GCC instead of Visual Studio Express Edition or program in C rather than utilize a .NET language given that neither really supports Windows in the first place?
For me, free OS's aren't an option. They don't offer the tools I use to practice my profession. To the degree I program, I have access to really good free programming tools on the Microsoft stack and better integration with my existing tools. And to the degree which I desire to learn those programming tools, being partial to physical books I enjoy the benefits of Microsoft press which simply don't exist in the copyleft world.
Again, that's not to say that copyleft doesn't have benefits, but even the best tools are full of dependencies such as the requirement to install Perl to install the Eclipse editor...again something I don't want to have to explain to my father.
Amazon has 12 books for "LLVM". [http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Dst...]
There are over 1500 for "Visual Studio" [http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Dst...]
343 books for "Django" [includes the musician] v. 1548 for "asp.net" [includes fibers woven for catching venomous vipers]
The barrier you're talking about is research/learning cost. When you - for example - already have some knowledge of MS stack, unknown lands of GNU or Apple would even feel alien, so cost of using it would be higher. The opposite would be equally true. Just imagine an iPhone developer being offered to use MS stack, instead of Apple's one he's already used to.
Then, there're also personal tastes...
Certainly, free software is a grand revolution in the principles that guide innovation, and protect people's use of the software. But the game is won often by making better tools to actually make the open source happen. Look at git and github. Look at the practical system set up by linux developers before git. Look at wikipedia and the wiki. I could go on.
I have a big respect for the ability of better tools to change people's behavior patterns and habits, and over time change the world.
What a horrible horrible horrible world. Luckily, that ship has sailed. In the ideal world everyone has tools which just happen to work for whatever particular task user has, be it a composer or doctor without the need to wast the time for fixing them.
This precise sentence I quoted explains why stallmans are more and more out of touch with the reality and the real needs of computer users. Computers are just tools for the majority of they users, just a means to get task done.
Having said that, RMS's ideology is not inherently good per se; it's somewhat radical, but without the existence of radicalism, we would've ended up in a world of proprietry only software. In other words, the Open Source movement's "utopia" can't exist without RMS-like radicals who push strongly towards a world of only free software.
As a result, we get an equilibrium where all the tools for development and infrastructure are free/open-source, while end-user products are not always free.
Hopefully, in your ideal world, this doesn't take away the freedoms of the developers that don't want to release their code.
"You're mostly too young to remember the world in which code was closed, by default, and you had to learn without the benefit of an infinite variety of examples to peruse"
This would have happened even without the GNU license. Anything that can be digital is being shared on the Internet, regardless of the license.
"and so that the gap between the technology haves and have nots does not grow further and faster."
This doesn't really make any sense. Most people will never look at the source code...so the absence of a license that gives you the right to tinker with the inner workings of an application won't really have an effect on the "technology haves and have nots". We should be more concerned with people that can't eat.
"Note that I'm not discussing licenses here, but the general culture of software. If we have a culture of sharing, which RMS and the FSF has been instrumental in creating (and the GPL was merely a part of that), we have a culture in which young programmers can learn from the experienced, and a culture in which barriers to entry are not as economic in nature."
Which is funny because this right here is devaluing programmers' salaries every day. Because there are so many free apps out there, companies can hire less experienced developers for less pay (IE: mechanics instead of engineers). It's one of those things that nobody will notice until it's too late. I suspect at this point, we will start to see programmer unions to keep wages at an inflated level. So, when your company decides to replace you with someone cheaper or goes over to India or the Philippines, don't complain.
I also don't think the word "free" should be used to describe GNU software. It implies free, as in price. It also implies that you can do what you want with it. If a corporation decides to change the code around, redistribute, and close-source it, they will get sued. This doesn't sound very free to me.
Even if they closed-sourced the application, the original source code is still free. You just don't get the changes (which were never yours in the first place).
Nowhere have I suggested that anyone should ever be forced to do anything. Using a straw man as your opening salvo here really doesn't say anything good about your position or your arguments.
"This would have happened even without the GNU license. Anything that can be digital is being shared on the Internet, regardless of the license."
As I mentioned, I'm not talking about licenses here. I'm talking about the culture of free and open source software, which the FSF and RMS were instrumental in helping to build.
And, I don't consider piracy a useful kind of sharing. You can't learn from pirated software, and you can't give back to pirated software. Pirating software is a net negative for the world (probably, and in most circumstances). While sharing software under an open license is a net positive (probably, and in most circumstances).
"Most people will never look at the source code...so the absence of a license that gives you the right to tinker with the inner workings of an application won't really have an effect on the "technology haves and have nots"."
Most is not all. Some people will look at the source code, and some of them will become contributing members of the community. If they arrive to a culture of sharing, teaching, and learning, that's what they will bring to their own family and friends. You and I are not magical unicorns of uniqueness. The elements of our personalities that drove us to become hackers exists in millions kids all over the world, and if they're exposed to software that has open windows into its operation they will learn from it.
"We should be more concerned with people that can't eat."
It's two sides of the same coin. People who know technology are among the best paid people in the poorest parts of the word.
Software is what I do, so I try to make what I do as positive for the world as possible (while still making a living). If I were a Dr. perhaps I'd volunteer at a clinic. If I were a scientist, I'd want to work on something that makes the world better. If I were a politician, perhaps I'd kill myself and make the world better that way. But, software is my business, so I use it as best I can to help people.
"Which is funny because this right here is devaluing programmers' salaries every day."
Citation needed.
"Because there are so many free apps out there, companies can hire less experienced developers for less pay (IE: mechanics instead of engineers). It's one of those things that nobody will notice until it's too late. I suspect at this point, we will start to see programmer unions to keep wages at an inflated level."
This is very fragmented thinking, and I'm having trouble following it. If programmers aren't needed, a programmers union will have no effect (because you don't need to hire programmers; you just hire "mechanics"). And, if wages are at an inflated level, then market forces should be working to bring them down. That's what the market is for. But, it's not. There are more programming jobs than ever, because software is more important and more valuable than ever.
More code equals more developer jobs. Open Source and free software does tend to drag down the extreme ends of the software cost spectrum. Databases, for example, have become a commodity in all but the highest end use cases. But, that's OK. It frees up funds for building higher level tools on top that increase business efficiency, which can cost a lot until they, too, get commodotized. That's the nature of the market, and Open Source/Free software just helps it along.
"So, when your company decides to replace you with someone cheaper or goes over to India or the Philippines, don't complain."
Here's where the conversation starts to get funny. I'm co-founder of my company (that shouldn't be surprising; the majority of people at HN have started a company or are planning to). The only way I could be replaced is if the company fails. Perhaps funnier, my company produces 95+% open source software, and I've been involved in Open Source projects for 13 years. Working on and with Open Source software has been the entirety of my professional career, in fact.
We're also a distributed company. We hire people overseas when they're the best person for the job. My co-founder was in Australia when we started the company. Our first employee is in Pennsylvania. We're interviewing frontend developers now, and one candidate is in Eastern Europe. I don't see how that's a bad thing. People in India, the Philippines, and Eastern Europe deserve opportunities just as much as white folks in the good old US of A.
"Even if they closed-sourced the application, the original source code is still free. You just don't get the changes (which were never yours in the first place)."
Yeah, I know how the various licenses work; you're not enlightening the unwashed masses here. We have both GPL and BSD licensed code (500k+ lines of it, in total). If I write the code, I get to decide how it's used. Them's the breaks...if you don't like it, you can write your own. Sometimes I want software that I write to be open in all its forms, including derived works.
Anyway, as I mentioned, I'm not talking about licenses in my discussion of freedom and sharing, and I explicitly mentioned that the things I consider important can happen with other licenses. You're just looking for a flamewar, as it has become apparent is extremely common for BSD fanatics.
I have always understood this freedom as "You are free to find someone you like who'd be able to change it and not be forced to make use of your expensive support contract with the one and only vendor". As mentioned elsewhere, there are people who needn't know anything about code, but they'd profit from the software being free too.
That is like saying that freedom of speech is only useful for journalists.
You don't have to exercise a freedom to benefit from it. You benefit from others exercising it too. Whether a journalist exposes government corruption, or a security experts independently audits OpenSSL, everyone benefits of the relevant freedom being exercised.
You don't have to be a programmer for benefiting from DeCSS. You don't have to be a hacker to benefit from Apache. You don't have to be a technical person to benefit from WordPress.
The same applies to the reversed, you don't have to be a programmer to suffer from DRM, vendor lock-in, or nag-ware.
ahh, so you don't want software to be commercial, is that it?
Yes, this.
This might be an unpopular view but "free software" (in the sense talked about here) is unencumbered for the users only. For developers it is encumbered (via the GPL). Open Source makes a different trade-off for the same gain.
This is the thing Stallman consistently misses; that Open Source and Free Software are simply two different solutions to a similar issue. Free Software sacrifices the freedom of developers when reusing the code. Open Source sacrifices a developers future porential ability to keep all uses of the code freely available.
He throws out the word ethical, I think, because it makes FS sound better. But the bottom line is that both ideals have underlying issues and problems; the brilliant thing is that there is a choice between the two, and we are free to pick the one that makes the trade-off we prefer.
The really great thing is that the real world is not as black and white as FS & OS; we can mix and match various aspects for our own preference :)
That is the point of freedom.
I suppose I can't fault Stallman for promoting his personal choice as best he is able.