What does it mean to be free software?

Free software, unlike proprietary, respects its users essential rights, to ensure they can:

  • run the program, for any purpose
  • study how the program works, and adapt it to their needs (which requires having access to the program's source code).
  • redistribute copies so they can help others, with or without a fee
  • distribute copies of their modified versions to others, so that the whole community can benefit. Again, access to the source code is a precondition for this.

Free software is a matter of freedom, not price, although free software is usually distributed at no charge. Think "free" as in "free speech", not "free beer".

Many free software programs are copylefted. Copyleft is used by some free software licenses (most notably the GNU GPL) to protect the freedom to redistribute the program by requiring all modified and extended versions of the program to be free as well. It is a reversal of the typical use of copyright law (prohibiting others from reproducing, adapting, or distributing copies of a work), hence the name. Non-copyleft free software also exists. It is better to use copyleft in most cases, but if a program is non-copylefted free software, it is still basically ethical.