What is Free Software?
Imagine you are in a restaurant, eating a delicious dinner. Once back home, you might want to cook this meal the following day for your friends.
But it's impossible, since you don't know the meal's recipe. You can still eat it at the restaurant, but even if you know the taste of it, you don't know how to reproduce the meal.
In the computing domain, it's the same with software. Most pieces of software are distributed without their recipe, and it is forbidden to try to understand how they work - we call such software "proprietary software". It is forbidden to share such software with your friends, and it is forbidden to try to modify them to suit your own needs.
As opposed to such proprietary software, a Free Software guarantees several kinds of freedom:
- the freedom to run the program, for any purpose (freedom 0);
- the freedom to study how the program works, and adapt it to your needs (freedom 1) - Access to the source code is a precondition for this.
- the freedom to redistribute copies so you can help your neighbor (freedom 2);
- the freedom to improve the program, and release your improvements (and modified versions in general) to the public, so that the whole community benefits (freedom 3) - Access to the source code is a precondition for this.
With a Free Software, you have the dish, the recipe, the right to distribute - or sell - the meal and the recipe, and you have even the right to modify the recipe.
See also various introductory documents on Free Software.