"

Appendix D: Software licensing

Appendix D: Software licensing

This section contains useful reference information for software developers wanting to understand the intricacies of software licensing.

  • An independent software author owns the copyright on the program
  • Enables author to regulate the copying, using and adapting of the program
  • Must specify conditions of use (license).
  • Several standard licenses are possible

Categories of License

  • Exclusive rights
  • Standard licenses
    • The GNU General Public License
    • The BSD license
    • The Artistic License
    • Public domain
  • Writing your own software license

Exclusive rights

  • Author has the right to restrict copying, modification & distribution
  • Author may authorise others to distribute software, with or without charge.
  • The conditions of this authorisation is specified in the License.
  • License can be specific for one particular recipient (this is often the case with custom-made applications), but it can also be written in a generic way, like with most of the standard software sold in stores or available for download on the Internet.
  • If Author desires to sell their software, a carefully drafted license is essential.
  • If author desires to give their software freely, a License is still required to specify the conditions under which users may execute and distribute the software.
  • Two options; use a standard license, or write their own.

Standard License

  • GNU General Public License, BSD license, Artistic License, Public domain.
  • Many programs are distributed under standard licenses.
  • Advantage is everybody knows what is and is not permitted
  • After wide usage, the wording is likely to be accurate and legally binding.
  • Saves time and effort in producing own License.
  • May not be exactly what Author wants though.
  • It also saves the author from having to spend time and effort in
  • Most standard licenses allow 3rd parties to sell.

GNU General Public License

  • The original and best known
  • Software may be used by anyone for commercial and non-commercial purposes
  • May be redistributed without restrictions
  • Conditional on including the source code
  • GPL restricts the creation of derived works (permitted but only if the derived work is also licensed under GPL)
  • This prevents GPL-licensed software from being transformed into a proprietary (Exclusive Rights) product (with secret source code).
  • Examples include Linux, MySQL, GCC compiler, EMACS editor and hundreds of other programs.

BSD License

  • The BSD license is very simple, therefore short.
  • Only condition is that people must mention the name of the Author if they incorporate the software in their own programs.
  • All other use and redistribution is permitted (including for commercial purposes)
  • Popular among Author’s who desire to have their work used by the largest number of people, and who do not object to others making money from their software
  • The operating systems FreeBSD and OpenBSD and the web server Apache are notable examples
  • A comparable license is the MIT license in which the user indemnifies the Author from any liability arising from the use

Artistic License

  • Software may be used and redistributed without further restrictions.
  • Modifying the software is also permitted, but modified versions may only be redistributed if the modifications are freely available to all.
  • It is not permitted to sell software covered by the Artistic License (which is permitted by most other standard licenses)
  • Notable example is the Perl interpreter (with which Perl scripts are executed)

Public Domain

  • Strictly speaking not a license
  • Means that there is no copyright on the software whatsoever
  • Without restriction, the software can be used, distributed, modified and distributed by anyone, anywhere, anytime.
  • No restrictions on commercial expectation of public domain software
  • Not required to identify the original author
  • Author yields all rights and does not restrict anything third parties do with the software.
  • Author is not liable for damages.

Writing your own software license

  • Author may write own License (or have lawyer draft)
  • It is notoriously difficult to anticipate all possible circumstances under which people will want to use and/or distribute the program. For example;
    • May someone put the program on a CD-ROM and sell that?
    • Does it matter whether the CD-ROM contains a collection of software or only that program?
    • May modified versions bear the same name?
  • Even if an Author has determined the conditions under which they are making the software available, it is very difficult to properly express these conditions in legally binding terms.
    • A license such as “Permission is hereby granted to use this program in any way and for any purpose, to modify it and to distribute it” does not authorize third parties to distribute modified versions, although this was probably the intent of the author.
  • Unless Author has a compelling reason to do so and is prepared to engage a lawyer to write the License, it is recommended to use a standard license.

Sources: IUS Mentis: Law & Technology Explained, and Karl Fogel (see Bibliography for details)

License

Icon for the Creative Commons Attribution-NonCommercial 4.0 International License

InfoTech Governance, Policy, Ethics & Law Copyright © 2025 by David Tuffley is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License, except where otherwise noted.