Einige hier sind ja auch Programmier, aber auch wenn nicht könnt ihr gerne eure Meinung dazu schreiben:
Ich arbeite an einem kleinem Projekt das ich bald veröffentlichen möchte und habe auch schon Ideen für weitere Projekte.
Ich möchte sie alle Open Source machen, aber Open Source ist nicht gleich Open Source, es gibt verschiedene Lizenzen die man wählen kann:
-
Maximal Flexibel: MIT, Apache, BSD
Solche Lizenzen erlauben quasie alles, auch änderungen des Codes unter eine close source Lizenz zu stellen und ihn evt auch garnicht zu veröffentlichen. -
Maximal Open Source: GPL, AGPL, LGPL
Projekt/Library Level Copyleft
Diese Lizenzen erfordern das alle Projekte die den Code verwenden, das gesamte Projekt unter diesselbe Lizenz stellen, also ebenfalls Open Source machen und dementsprechend auch den ganzen Code veröffentlichen.
Hört sich erst mal gut an, aber lässt sich schwer in Projekte integrieren die unter anderen Lizenzen stehen und lässt sich bei der GPLv3 und AGPLv3 auch nicht auf stark eingeschränkten Betriebssystem wie z.B Apples iOS/MacOS verbreiten, da deren DRM Kopierschutz udn Key Handling eine Klausel der GPL bricht. -
Kompromis: MPL, EPL
File Level Copyleft
Diese Lizenzen beschränken ihre Copyleft Klauseln auf die Datei.
Das bedeutet das alle Varianten der Datei die gleiche Lizenz behalten müssen, aber das Projekt als gesamtes unter einer anderen Lizenz (z.B MIT) stehen darf.
Somit hat man sehr viel Kompatibilität aber bewahrt gleichzeitig den Open Source Charakter des Codes und hat immer die möglicht Veränderungen die andere machen in den eigenen Code zu integrieren.