nie duplikat. To pytanie jest ściśle skoncentrowane na GPL i nie obejmuje perspektywy „wysokiego widoku”.
goodguys_activate 29.09.10
1
Postanowiłbym wybrać jedną lub drugą skrajność: AGPL lub WTFPL.
TRiG,
Spójrzmy na to z perspektywy. Gdyby Microsoft najpierw wymyślił tę licencję i zachował wszystkie postanowienia dokładnie takie same, licencja nie miałaby takich samych warunków. FOSS i GLP nie są tym, czym się wydają. Przeczytaj ich Manifest. Nie chodzi o anarchię, chodzi o kontrolę.
Andrew T Finnell,
Odpowiedzi:
45
Ok, moja lista zalet i wad GPL:
Plusy
To sprawia, że ludzie zastanawiają się, czy naprawdę kupują Open Source; czy jesteś przygotowany, by z tego żyć i pozwolić innym ludziom korzystać z tego, co napisałeś, a nie tylko lubić to z powodu tego, co możesz z tego wydobyć?
Zapewnia, że gdy coś zostanie opracowane przez społeczność Open Source, pozostanie Open Source; nie ma szans, że ktoś podejmie całą pracę, którą wykonali inni, przepakuje ją i odsprzeda.
Cons
Jest to kompletne „nie” dla większości organizacji korporacyjnych; nie mogą sobie pozwolić na ryzyko, że kod licencjonowany przez GPL dostanie się do ich produktów, więc praktycznie wszystkie średnie i duże firmy mają klauzule wyraźnie zakazujące kodu licencjonowanego GPL.
To zniechęca ludzi do Open Source.
Czy to naprawdę uczciwe, że ponieważ w mojej aplikacji używam kontrolki wyboru obrazu Open-Source, cała moja aplikacja musi być teraz również Open Source? Nawet jeśli ulepszyłem selektor obrazów i wróciłem ten kod do społeczności? Warunki są zbyt uciążliwe dla wielu programistów.
Wiele osób nie zdaje sobie sprawy z rygorystycznych warunków GPL, więc używaj go, ponieważ jest to licencja, o której słyszeli, nie zdając sobie sprawy z ograniczeń, jakie nakładają na innych, którzy chcą z niej korzystać.
Jest niezwykle wirusowy. Jeśli Twój projekt zawiera komponent zawierający komponent objęty licencją GPL (uff!), Cały projekt również podlega licencji GPL.
Ostatecznie dla mnie minusy przeważają nad zaletami. Dla mnie to trochę ewangelistów Open Source próbujących oszukać świat, aby przejść na Open Source zamiast przekonać świat o jego zaletach.
+1 dla niektórych wad, dla których tak, zgadzam się, są zbyt „surowe”. Licencja MIT to miła alternatywa.
Rook
16
Jest to tak przejrzysty FUD: „Dla większości organizacji korporacyjnych jest to zupełny„ nie ”; nie mogą sobie pozwolić na ryzyko dostania się kodu produktów na licencji GPL do swoich produktów, więc praktycznie wszystkie średnie i duże firmy mają klauzule, które wyraźnie zakazują kodu na licencji GPL . ” Kod i projekty licencjonowane na licencji GPL nie budzą kontrowersji na Fortune 500 od co najmniej 2004 r. I rzeczywiście wiele dużych firm (Google, IBM, Oracle, żeby wymienić tylko kilka) oparło na tym znaczną część swojej działalności.
13
Istnieje tutaj różnica między firmami produkującymi oprogramowanie, które często nie mogą dotknąć kodu GPL, a firmami, które używają oprogramowania do użytku wewnętrznego, gdzie GPL nie ma zasadniczo żadnego wpływu. Jest dużo więcej tych ostatnich niż tych pierwszych.
David Thornley,
9
BTW, GPL została zaprojektowana jako siła napędowa ruchu społecznego, ale intencją było stworzenie repozytorium Wolnego Oprogramowania, które zawsze pozostanie Wolne i które będzie coraz bardziej kuszące. O ile wiem, nie była to próba oszukiwania programistów w cokolwiek. Co więcej, osoba stojąca za GPL, Richard Stallman, wypiera się wszelkich połączeń z Open Source, w przeciwieństwie do Wolnego Oprogramowania.
David Thornley,
4
Doświadczenie Davida Thornleya zasadniczo pasuje do mojego. Nigdy nie słyszałem o firmie, która nie używałaby kodu GPL do użytku wewnętrznego. Cholera, każdy ma Linuksa w kilkudziesięciu miejscach. Jednak wiele firm tworzących oprogramowanie do dystrybucji nie zezwala na kod GPL w pobliżu bazy kodu programistycznego. LGPL jest zazwyczaj w porządku, ale nie zawsze.
David Schwartz
2
Chociaż h4xxr zdecydowanie dał odpowiedź FTW, oto kilka innych linków, które mogą okazać się przydatne, jeśli nie jesteś pewien, jakie reprezentują różne rodzaje licencji.
FWIW Osobiście mam duży projekt open source, nad którym jestem głównym programistą, i przyjąłem model wielu licencji właśnie dlatego, że GPL powstrzymywała niektórych ludzi przed używaniem mojego kodu. Mój kod jest licencjonowany na podstawie wybranego modelu licencji i zezwala na dowolną z następujących licencji - GPL, LGPL, MIT
LGPL pozwala ludziom na włączenie twojego kodu / biblioteki / pliku wykonywalnego w swoim obecnym stanie, pod warunkiem, że nie jest modyfikowany. Jest to najbardziej przydatne dla firm produkujących komercyjne / zamknięte produkty, które mogą wymagać twojego produktu do działania, ale nie muszą zmieniać sposobu jego działania.
Licencja MIT jest zasadniczo zezwoleniem pozwalającym ludziom modyfikować twoją pracę w dowolny sposób i zmieniać jej przeznaczenie na własne. Użyj tego, jeśli podejrzewasz, że użytkownicy mogą chcieć to zrobić i nie masz nic przeciwko, że nie masz dostępu do źródła jakichkolwiek modyfikacji, które mogą wprowadzić użytkownicy.
Dajesz przewagę twórcom wolnego oprogramowania, ponieważ mogą korzystać z twojej biblioteki, a komercyjni gracze nie mogą (przynajmniej tak długo, jak nie chcą wypuszczać swojego produktu jako GPL). Korporacje muszą płacić swoim pracownikom za napisanie biblioteki, która ma taką samą funkcjonalność. W ten sposób promujesz wolne oprogramowanie.
Wybór mniej ograniczonej licencji, takiej jak MIT, jest bardziej praktyczny:
Możesz samodzielnie korzystać ze swojej biblioteki, kiedy kodujesz pieniądze (jako freelancer, jako pracownik). Jednak każdy może, więc pomagasz w ten sposób korporacjom oszczędzać pieniądze, chociaż bez nich są już bogate.
+1 GPL jest decyzją ideologiczną / filozoficzną, a nie techniczną. To, czy jest to dobra, czy zła rzecz, zależy od kwestii filozoficznych i zależy od każdego projektu lub zespołu.
Andres F.,
1
Jeśli chodzi o liberalnie licencjonowane projekty open source (np. X11, PostgreSQL, Haskell), GPL i LGPL nie działają poprawnie. Kod GPLed nie może być wykorzystywany w takich projektach, nie dlatego, że GPL go zabrania lub licencja X11 zabrania go, ale dlatego, że takie projekty nie chcą „uaktualniać” efektywnej licencji całego produktu na GPL.
Korzyści: masz prawną gwarancję, że ludzie udostępnią Ci swoje zmiany / składki.
Koszt: wielu użytkowników komercyjnych nie może używać Twojego kodu. Nie będą używać Twojego kodu, a zatem nigdy nie przyczynią się. Zobacz ten wątek wyjaśniający, dlaczego ludzie libcinder nie mogą używać kodu (L) GPL. Nawet LGPL może być problematyczna, gdy trzeba statycznie połączyć bibliotekę.
Myślę, że to prawda tylko wtedy, gdy w scenariuszach innych niż SaaS ... a także może być konieczne znalezienie moich widelców i poproszenie ich o udostępnienie mi kopii.
goodguys_activate 30.09.10
To prawda, dla SaaS istnieje AGPL. Identyfikacja naruszeń nie jest trywialna, ale gdy zostaną wykryte, są ludzie, którzy mogą ci pomóc: gpl-violations.org
LennyProgrammers 30.09.10
Twoja korzyść jest błędna: jeśli edytuję oprogramowanie i korzystam z niego osobiście, nie masz prawa oglądać moich zmian. To samo dotyczy rozpowszechniania go w grupie bez zainteresowania udostępnieniem go. Użytkownik ma prawo wglądu do źródła, nie każdy.
Odpowiedzi:
Ok, moja lista zalet i wad GPL:
Plusy
Cons
Ostatecznie dla mnie minusy przeważają nad zaletami. Dla mnie to trochę ewangelistów Open Source próbujących oszukać świat, aby przejść na Open Source zamiast przekonać świat o jego zaletach.
źródło
Chociaż h4xxr zdecydowanie dał odpowiedź FTW, oto kilka innych linków, które mogą okazać się przydatne, jeśli nie jesteś pewien, jakie reprezentują różne rodzaje licencji.
Porównanie licencji na bezpłatne oprogramowanie (porównanie tabel)
Inicjatywa Open Source - Licencje według nazwy (co mówi - licencje powszechnie używane w dzisiejszym świecie oprogramowania) Lista licencji na oprogramowanie, w tym te zgodne z GPL
F --- GPL <- inteligentna krytyka (uwielbiam te „perły mądrości” :-)
źródło
FWIW Osobiście mam duży projekt open source, nad którym jestem głównym programistą, i przyjąłem model wielu licencji właśnie dlatego, że GPL powstrzymywała niektórych ludzi przed używaniem mojego kodu. Mój kod jest licencjonowany na podstawie wybranego modelu licencji i zezwala na dowolną z następujących licencji - GPL, LGPL, MIT
LGPL pozwala ludziom na włączenie twojego kodu / biblioteki / pliku wykonywalnego w swoim obecnym stanie, pod warunkiem, że nie jest modyfikowany. Jest to najbardziej przydatne dla firm produkujących komercyjne / zamknięte produkty, które mogą wymagać twojego produktu do działania, ale nie muszą zmieniać sposobu jego działania.
Licencja MIT jest zasadniczo zezwoleniem pozwalającym ludziom modyfikować twoją pracę w dowolny sposób i zmieniać jej przeznaczenie na własne. Użyj tego, jeśli podejrzewasz, że użytkownicy mogą chcieć to zrobić i nie masz nic przeciwko, że nie masz dostępu do źródła jakichkolwiek modyfikacji, które mogą wprowadzić użytkownicy.
źródło
Wybór GPL jest krokiem ideologicznym:
Dajesz przewagę twórcom wolnego oprogramowania, ponieważ mogą korzystać z twojej biblioteki, a komercyjni gracze nie mogą (przynajmniej tak długo, jak nie chcą wypuszczać swojego produktu jako GPL). Korporacje muszą płacić swoim pracownikom za napisanie biblioteki, która ma taką samą funkcjonalność. W ten sposób promujesz wolne oprogramowanie.
Wybór mniej ograniczonej licencji, takiej jak MIT, jest bardziej praktyczny:
Możesz samodzielnie korzystać ze swojej biblioteki, kiedy kodujesz pieniądze (jako freelancer, jako pracownik). Jednak każdy może, więc pomagasz w ten sposób korporacjom oszczędzać pieniądze, chociaż bez nich są już bogate.
źródło
Jeśli chodzi o liberalnie licencjonowane projekty open source (np. X11, PostgreSQL, Haskell), GPL i LGPL nie działają poprawnie. Kod GPLed nie może być wykorzystywany w takich projektach, nie dlatego, że GPL go zabrania lub licencja X11 zabrania go, ale dlatego, że takie projekty nie chcą „uaktualniać” efektywnej licencji całego produktu na GPL.
źródło
źródło