Your example can empower users just like you to take important steps towards software freedom. Become an FSF associate member by January It was launched in by Richard Stallman rms and has been developed by many people working together for the sake of freedom of all software users to control their computing. Technically, GNU is generally like Unix.
But unlike Unix, GNU gives its users freedom. Also, the GNU system is not a single static set of programs; users and distributors may select different packages according to their needs and desires.
The result is still a variant of the GNU system. The Directory is actively maintained by the Free Software Foundation and includes links to program home pages where available, as well as entries for all GNU packages.
However, if we plan to modify A so that it doesn't use B, only A needs to be free; B is not pertinent to that plan.
This policy is of fundamental importance—without this, free software could not achieve its aims. We want to invite everyone to use the GNU system, including businesses and their workers. That requires allowing commercial use. We hope that free replacement programs will supplant comparable proprietary programs, but they can't do that if businesses are forbidden to use them. We want commercial products that contain software to include the GNU system, and that would constitute commercial distribution for a price.
Commercial development of free software is no longer unusual; such free commercial software is very important. Paid, professional support for free software fills an important need. Thus, to exclude commercial use, commercial development or commercial distribution would hobble the free software community and obstruct its path to success.
We must conclude that a program licensed with such restrictions does not qualify as free software. A free program must offer the four freedoms to any would-be user that obtains a copy of the software, who has complied thus far with the conditions of the free license covering the software in any previous distribution of it.
Putting some of the freedoms off limits to some users, or requiring that users pay, in money or in kind, to exercise them, is tantamount to not granting the freedoms in question, and thus renders the program nonfree.
In the rest of this article we explain more precisely how far the various freedoms need to extend, on various issues, in order for a program to be free. 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.
The freedom to run the program as you wish means that you are not forbidden or stopped from making it run. This has nothing to do with what functionality the program has, whether it is technically capable of functioning in any given environment, or whether it is useful for any particular computing activity.
For example, if the code arbitrarily rejects certain meaningful inputs—or even fails unconditionally—that may make the program less useful, perhaps even totally useless, but it does not deny users the freedom to run the program, so it does not conflict with freedom 0. If the program is free, the users can overcome the loss of usefulness, because freedoms 1 and 3 permit users and communities to make and distribute modified versions without the arbitrary nuisance code.
In order for freedoms 1 and 3 the freedom to make changes and the freedom to publish the changed versions to be meaningful, you need to have access to the source code of the program.
Therefore, accessibility of source code is a necessary condition for free software. Freedom 1 includes the freedom to use your changed version in place of the original. These binaries are not free software even if the source code they are compiled from is free.
One important way to modify a program is by merging in available free subroutines and modules. If the program's license says that you cannot merge in a suitably licensed existing module—for instance, if it requires you to be the copyright holder of any code you add—then the license is too restrictive to qualify as free.
Whether a change constitutes an improvement is a subjective matter. If your right to modify a program is limited, in substance, to changes that someone else considers an improvement, that program is not free. One special case of freedom 1 is to delete the program's code so it returns after doing nothing, or make it invoke some other program. Freedom to distribute freedoms 2 and 3 means you are free to redistribute copies, either with or without modifications, either gratis or charging a fee for distribution, to anyone anywhere.
Being free to do these things means among other things that you do not have to ask or pay for permission to do so. You should also have the freedom to make modifications and use them privately in your own work or play, without even mentioning that they exist.
If you do publish your changes, you should not be required to notify anyone in particular, or in any particular way. Freedom 3 includes the freedom to release your modified versions as free software. A free license may also permit other ways of releasing them; in other words, it does not have to be a copyleft license.
However, a license that requires modified versions to be nonfree does not qualify as a free license. The freedom to redistribute copies must include binary or executable forms of the program, as well as source code, for both modified and unmodified versions.
Distributing programs in runnable form is necessary for conveniently installable free operating systems. When I decided to write an entire episode about the history of the Open Source movement, I also took the opportunity to make an old dream come true by interviewing Richard Stallman himself. The conversation with him made me doubt a few of the premises regarding the world of technology, while illuminating sides of his personality that I never knew about.
Richard Stallman was born in the US in Even as a child, he demonstrated an anti-establishment attitude and rebelliousness. His behavioral problems made him switch schools every now and then, and that left him, socially, as a bit of an outsider among children his age.
He even admits that he never learned how to get along properly with other people. Computers, though, were a completely different story. Believe it or not, as an elementary student, Stallman read computer manuals and wrote software. Of course, it was the s and 60s, days when computer access was a rare privilege — so the software he wrote was all on paper.
Only in high school did he actually get to SEE a real computer, but at that point, he already knew computers much better than most teenagers. To say that Richard Stallman is a brilliant person is an understatement. He studied physics at Harvard. Although he enjoyed the classes, there was one thing that upset him greatly.
Many professors held computer terminals inside their offices — but they would often lock the doors at night. It was a huge waste : the terminals went unused for many hours, like precious electronic stones — while outside there were those who really, really wanted to use them. Not far from Harvard is MIT, the world famous technological university.
At MIT, computer terminals were considered a common resource, and no one had a direct and distinct ownership over their machines. If one of the professors kept a computer terminal in his office and dared to lock the door behind him — the students would literally break open the door — sometimes with makeshift battering rams — and take the computer.
The Artificial Intelligence Laboratory was the home for many young students who were passionate about technology.
It certainly did not have the negative connotation it holds today, of someone who steals information or does damage. The hackers of the Artificial Intelligence Laboratory wanted to create interesting things using the tools they had, and they did not have any tolerance or patience towards those who tried to restrain them.
For Stallman, this was love at first sight — and he quickly joined the lab. Life at the Artificial Intelligence Laboratory was intense.
The professors and their students used the lab during the day, and as soon as they left, the hackers took over and worked all night. They ordered Chinese food at three a. Together with other programmers, Stallman developed software and ideas that are considered to be milestones in the history of modern technology.
For example, he created an important algorithm for the artificial intelligence field, and a hugely popular text editor named Emacs. Stallman loved every minute at the lab. He was enchanted by the comradery and the spirit of cooperation; the lab was a place where people worked together for a common cause and for the good of the public. We were using and developing our own operating system, which for me was the absolute ideal job.
I was getting paid to do what I would absolutely love! I was doing this job as a part of a group of other developers without a sharp boundary. There were some other people who were also the staff at the lab, improving the system, but anyone was welcome to improve the system!
We were happy when anybody else showed up and started using the system if he did anything that was thoughtful. And if they started to contribute to the system too — well, that was great! And we were happy to share our software with people outside MIT. We were glad when they thought it was useful. Stallman told the following story in a talk he gave in He sent to one of the people working on it a request for some help, and he got an answer a few hours later from somebody else.
You got your answer sooner; why are you unhappy? But during the late s, when computers began spreading in the business sector, many new companies developed proprietary software for industrial needs, and it was only natural that these companies offered their software to customers in exchange for a payment, instead of giving them away free.
This signaled an end to the culture of free software exchange. These companies also offered very high salaries to the MIT hackers, whose talents were now in high demand. Not physically, of course — professors and their students still used the facility, but the anarchist hackers were nowhere in sight.
Even though Richard Stallman stayed at the lab, he soon realized that the spirit of the place had changed. In the brave new business world, knowledge was power.
Knowledge was money. Stallman continued his daily tasks, but something inside him wished to rekindle the spark of the majestic atmosphere the lab once had. By not telling them how I made the spaghetti — I am preventing them from trying to make it themselves. These instructions are then transformed, via a special process, to a regular software that we, the users, are familiar with.
A game, for example, starts out as a long list of instructions. Stallman knew that the key to creating a community of programmers, all sharing the same passion for technology and the will to contribute to a common cause, is by creating an environment of full cooperation , without secrets or restraints: meaning, the programmers needed to share the source code they are writing.
In other words, this is exactly the difference between a group of people eating prepared food and having a not-so-interesting-conversation, to a group of chefs standing around the kitchen table, and passionately debating whether rosemary should be added to the dish, or rather oregano. Together they will create a wonderful and unique dish that otherwise would not have existed. So I realized the only way we can have such a community is if we were using free software!
We had to make sure all the software we were using was, if fact, free — and then we could have such a community. I had to bring into existence a free software operating system — but this time one for modern computers instead of computer design. I announced the development of the GNU operating system, and asked the people to join and help. An operating system is a vital instrument in the process of creating new software; it is the foundation on which a software operates — just the same as roads, signs, and stoplights are the foundation of transportation.
The most common and popular operating system at the time was Unix , and the majority of programmers were familiar with it. Stallman wanted to create an operating system that was similar to Unix — but one that was free, that is — not proprietary. In he released a statement in one of the online discussion groups and announced his new project: the GNU project — an endeavor to create a new, modern, operating system. And these are: Freedom 0: The freedom to run the program as you wish, for whatever purpose you have.
Freedom 1: The freedom to study the source code of the program, and change it so it functions for you the way you want it to. Freedom 2: The freedom to make exact copies and give or sell to others when you wish. Freedom 3: The freedom to make copies of your modified versions , and give or sell them to others when you wish. When I use it, it means free as in freedom.
Why does Stallman emphasize freedom as a main and vital characteristic of a software? So what makes it so important, according to Stallman? Well, he believes sharing knowledge and ideas are the keys to innovation in software. A proprietary software, one where the user has no access to its source code, might be useful — but it contributes nothing to innovation; in fact, it even blocks it. This feature might be a major one — such as adding support for a new foreign language, or it might be a minor one, like adding a new icon.
It would me years of work in order to create the software from scratch when all I wanted to do was add a single feature. The lack of freedom could also be harmful in other, less obvious ways. At first glance, we might assume that our laptops, tablets and smartphones allow us infinite freedom: we can send e-mails, surf the web, play games, pay our bills… We can do so much, and more!
But even if the majority of people are not aware of it, this infinite freedom is nothing but an illusion. Modern software is like a prison with transparent walls: you think you are free.
Richard Stallman claims that this invisible prison has a negative effect on us as individuals and as a society. In the same talk from he said:. No point even hassling it.
0コメント