My Personal Manifesto of Software Engineering

Licenses

I prefer software that is available in the form of maintainable program source code and that is issued under the terms and conditions of a free license. What i understand as a „free license“ is a legally valid, applicable and binding statement where the issuer and lawful distributor of the software grants me the following rights:

  • The right to use the software, either unmodified or with modifications made by myself,
  • the right to receive the source code of the software in a fashion that allows me to construct an own, completely operational edition of the software and
  • the right to re-distribute the software, either unmodified or modified, under the terms and conditions of the same license i recieved the software.

Acceptable licenses that meet these requirements include

  • the General Public License Version 3, and (depending on the runtime environment)
  • the Affero General Public License Version 3.

Licenses that enable software developers to meet these requirements but to not neccessarily enforce all of these requirements include:

  • The MIT License, and
  • the BSD License.

Free licenses give me the freedom to fix problems in the code myself, which is something i can do.

Also, having the source code of a software available in the manner described above, is a way of documenting what the software actually does, which is something that matters to me, as i would like to describe in the next section.