Spędziłem trochę czasu czytając wspólne licencje na oprogramowanie copyleft i permissive. Czy istnieje licencja, która pozwala twórcy aplikacji lub algorytmu na ogólne określenie, kto może używać / rozpowszechniać produkt na podstawie własnych osobistych uprzedzeń?
Rozumiem, że ludzie używają podwójnych licencji, aby zmusić podmioty komercyjne do płacenia za licencję poboczną lub zmuszone do rozpowszechniania kodu źródłowego dla swoich projektów, ale myślałem o czymś podobnym na przykład: „Ten kod może być swobodnie używany, zmodyfikowane i dystrybuowane przez jakikolwiek podmiot niezwiązany z przemysłem x [który uznałem za niegodny korzystania z mojego wolnego oprogramowania] ”.
Nie udało mi się znaleźć takich licencji ani szablonów licencji i pomyślałem, że przynajmniej niektórzy programiści byliby zaniepokojeni etycznymi konsekwencjami swoich produktów. Czy można stworzyć algorytm wyszukiwania AI i upewnić się, że nie doprowadzi on do prowadzenia uzbrojonego drona lub modelu arktycznej kra lodowej i zapewni, że nie zostanie on wykorzystany do wydobycia ropy na morzu, przy jednoczesnym korzystaniu z licencji typu permissive?
Odpowiedzi:
To pytanie pojawia się dość regularnie w społeczności wolnego oprogramowania i jest to zrozumiałe. Ludzie piszący wolne oprogramowanie (często w wolnym czasie) i przekazujący je publicznie zwykle robią to, ponieważ chcą coś zmienić na lepsze, a nie na gorsze. Dlatego staranie się, aby twoje rzemiosło nie było używane w sposób, który uważasz za nieetyczny, jest rzeczą naturalną do przemyślenia.
Fundacja Wolnego Oprogramowania wyraźnie sprzeciwia się próbom korzystania z licencji na oprogramowanie w celu ograniczenia sposobów, w jakie ludzie mogą korzystać z oprogramowania. Richard Stallman napisał artykuł „Dlaczego programy nie mogą ograniczać swobody uruchamiania”, w którym wyjaśnia, dlaczego jest przekonany, że korzystanie z licencji na oprogramowanie w celu ograniczenia korzystania z oprogramowania do etycznych aplikacji jest skazane na niepowodzenie i tylko zaszkodzi interoperacyjności i ograniczy przydatność dla legalnych użytkowników. Uważam, że jego artykuł jest bardzo przekonujący i zalecam oczywiście przeczytanie oryginału, ale parafrazuję (z moimi komentarzami), co moim zdaniem jest jego głównymi argumentami tutaj.
Niedozwolone jest używanie oprogramowania do nielegalnych działań w najlepszym wypadku. Te działania są zawsze nielegalne, bez względu na licencję. Licencja może udzielać tylko użytkownikom praw do oprogramowania, które posiada właściciel praw autorskich. Nie jest to wyraźnie napisane w jego artykule, ale dochodzę do wniosku i zgadzam się, że bardziej sensowne byłoby prowadzenie kampanii politycznej, aby niemoralne działania stały się nielegalne.
Nie zezwalanie na używanie oprogramowania przez państwa do niemoralnych działań (RMS podaje jako przykład tortury) prawdopodobnie nie będzie skuteczne, ponieważ większość stanów ma specjalne ustawodawstwo, które pozwala im robić, co tylko zechce, o ile jest to w interesie bezpieczeństwa narodowego. Chociaż uważam, że jest to nieco przesadzone, to z pewnością prawdą jest, że takie prawne zwolnienia do celów wojskowych istnieją w wielu stanach lub mogą zostać uchwalone, jeśli uprawnienia ustawodawcze uznają je za pożądane. Prawdopodobnie bardziej istotne jest to, że miałbyś trudności z udowodnieniem, że twoja praca jest w ogóle używana bez dostępu do informacji niejawnych, a podczas gdy wielu graczy stosuje przepisy prawa autorskiego, aby uzasadnić oburzające rzeczy, ja ” Nie zdaję sobie sprawy, że „uzyskanie dostępu do informacji niejawnych, aby móc pozwać państwo”, jest prawem autorskim przyznawanym w dowolnym stanie świata. Na pewno nie odniesiesz sukcesu w pozyskaniu autokratycznego obcego państwa, które może wykorzystywać twoje oprogramowanie do najokropniejszych rzeczy.
Nie jest jasne, czy takie ograniczenia byłyby możliwe do wyegzekwowania za pomocą praw autorskich, a jeśli tak, to czy byłoby to korzystne. Mogę mówić tylko o Niemczech, ale jestem przekonany, że wszelkie takie warunki licencyjne byłyby nieważne w postępowaniu przed niemieckim sądem. Myślę, że to dobra rzecz. Prawo autorskie jest już zbyt silne w tym, co inne osoby mogą na ciebie narzucić. Ostatnią rzeczą, której potrzebujemy, jest jeszcze więcej ograniczeń.
Jeśli licencje na oprogramowanie ograniczyłyby korzystanie z oprogramowania do „celów etycznych”, powstałby straszny bałagan i oprogramowanie nie byłoby kompatybilne. Chociaż z pewnością może się to zdarzyć, nie rozumiem, dlaczego nie mogło powstać de facto standardowa „etyczna licencja publiczna” opublikowana przez wiarygodną organizację i wykorzystywana przez wiele projektów, tak jak ma to miejsce w przypadku GPL. Widzę, że aby taka ogólna licencja była szeroko akceptowana i stosowana, najprawdopodobniej musiałaby sprowadzić się do zdefiniowania jako nieetyczne, co zostało już uzgodnione jako nieetyczne, a zatem zakazane przez ustawodawstwo publiczne w demokracjach, więc niewiele by to dało. Co ważniejsze, ponieważ dzisiaj nie ma takiej licencji, będziesz musiał stworzyć własną, co zawsze jest złym pomysłem.
źródło
Istnieją projekty oprogramowania, które korzystają z takiej licencji. Jednak z definicji OSI nie będą one uważane za wolne licencje.
Co ważniejsze, wykonalność tych licencji była mocno kwestionowana za każdym razem, gdy je widziałem, i nigdy, według mojej najlepszej wiedzy, nie były testowane w sądzie. Korzystanie z takiej licencji raczej nie będzie miało większej wartości niż symboliczna.
Częściowym problemem tutaj jest to, że takie terminy są niezwykle niejasne, jak podkreśla Ixrec w swoim komentarzu. Załóżmy, że opracowałeś algorytm, który prowadzi samochody samojezdne. Etyczny? Prawdopodobnie. Następnie ten algorytm służy do budowy ciężarówek, które jeżdżą samodzielnie. Wciąż etyczny. A teraz te ciężarówki są używane do uzupełniania obozów wojskowych lub transportu narkotyków; powiesz wtedy, że jest to niedozwolone, ponieważ twój kod jest tam używany? Może są nawet wykorzystywane w handlu ludźmi, co jest zdecydowanie nieetyczne, ale jak byś to kontrolował? Czy wymagać od producentów ciężarówek, aby wystawili również licencję na swoje ciężarówki?
Wreszcie, Twoja przeciętna firma wojskowa lub naftowa ma dość pieniędzy, aby po prostu wziąć twój pomysł i wdrożyć go ponownie, więc jeśli jest to algorytm, którego nie chcesz używać, i tak nie masz szczęścia. A skoro kod wojskowy (takie oprogramowanie do prowadzenia rakiet lub dronów) jest zwykle klasyfikowany i tak, skąd miałbyś wiedzieć, że twój kod został użyty?
źródło
Gdy spojrzysz na obecny rynek, istnieją już licencje, które określają, do czego oprogramowanie może być użyte.
Prawdopodobnie istnieje wiele innych licencji, które mają podobnie dziwne klauzule. Tak więc licencja, która dyskryminuje ze względu na podstawy etyczne, nie byłaby pierwszym przypadkiem, gdy licencja ma dziwne warunki.
źródło
Możesz napisać dowolną licencję i pozwać każdego, kto używa Twojego kodu niezgodnie z warunkami licencji z powodu naruszenia praw autorskich.
Twoje warunki „nie do użytku przez przemysł X” powodują, że licencja jest niezgodna na przykład z licencją GPL. Nie mogę dołączyć twojego oprogramowania do kodu GPL, które chcę rozpowszechniać (lub które mogą być rozpowszechniane przypadkowo, co się zdarza). Nie mogłem zawrzeć twojego kodu w zamkniętym kodzie źródłowym mojej firmy, ponieważ dział prawny by mnie zabił (oznacza to, że jeśli ktoś zaoferowałby nam miliony za nasz kod źródłowy, możemy nie być w stanie go sprzedać z powodu twoich ograniczeń). Przynajmniej nasz dział prawny powiedziałby: „sprawdzenie licencji kosztuje nas 5000 $. Ile kosztuje napisanie kodu samodzielnie?”
źródło
Jeśli martwisz się etyką przemysłu X, zamiast tworzyć licencję dyskryminującą przemysł X, możesz podejść do niego inaczej; możesz zastosować podejście oparte na podwójnej licencji i stworzyć bezpłatną i komercyjną wersję. Następnie przekaż darowiznę na rzecz organizacji anty-przemysłowej X - w formie pełnej wersji komercyjnej lub obniżenia zysków z wersji komercyjnej.
Jest to całkowicie legalne i wspiera ideał, w który wierzysz. Ponadto jest o wiele lepszy „marketing dobrej woli”. Nawet ludzie z profesjonalnego tłumu X będą cię szanować, bo przynajmniej popierasz coś, w co wierzysz. Zawsze lepiej jest widzieć, jak wspierasz ideał, niż atakujesz jego kontr-ideał.
źródło
Pracuję dla firmy z mandatem do opracowywania oprogramowania dla postępowych organizacji charytatywnych. Stworzyliśmy kilka bibliotek, które chcieliśmy otworzyć i podobnie jak OP, nie byliśmy zadowoleni z dostępnych licencji.
Stworzyliśmy licencję Just World, aby przynajmniej nasz kod nie był używany przez tych, którzy działają wbrew celom organizacji charytatywnych, które wspieramy. (Oto artykuł wyjaśniający nasze powody)
Poniżej zajmę się niektórymi zarzutami dotyczącymi etycznych licencji przedstawionymi w komentarzach i odpowiedziach. Robiąc to, zamierzam dokonać porównania do GPL, ponieważ jest to również przykład licencji, która została zaczerpnięta z silnego ideologicznego punktu widzenia, a zatem pouczająca, w jaki sposób licencja jest czymś więcej niż tylko dokumentem prawnym i jej aspektami przyszliśmy zaakceptować.
Dlaczego (nie) etyczny?
Wiele zarzutów, które przeczytałem, dotyczy wykonalności takiej licencji, ale argumentowałbym, że celem etycznej licencji nie jest egzekwowanie jej w sądzie. W rzeczywistości większość dokumentów prawnych, których tak naprawdę nie chcesz testować w sądzie - jest droga i bolesna. Tak, powinieneś wyjaśnić je jednoznacznie i jednoznacznie, ale większość ludzi nie projektuje dokumentów prawnych, a głównym celem jest skierowanie drugiej strony do sądu.
Jak ludzie (słusznie) zauważyli, jeśli duża firma chce korzystać z twojego oprogramowania pomimo ograniczeń, prawdopodobnie mają zasoby, aby pochować cię w legalnej dokumentacji.
Ale nie różni się to od GPL, a także GPL nie została napisana, aby programiści FOSS mogli pociągać duże firmy do sądu za niewłaściwe użycie kodu open source. Tak, jest to prawnie specyficzne i możliwe do wyegzekwowania, ale nie był to główny cel, jaki mieli na myśli autorzy. Stworzyli GPL, aby rozpowszechniać ideę - ideę, że oprogramowanie i jego źródło powinny być swobodnie udostępniane.
Podobnie, tworząc etyczną licencję, chcemy szerzyć ideę - że nasze oprogramowanie powinno być wykorzystywane do ulepszania świata i że jako programiści możemy wziąć odpowiedzialność za sposób, w jaki nasze oprogramowanie jest używane.
Wykonalność
Biorąc to pod uwagę, twierdzę również, że można egzekwować licencję etyczną. Nawet przy bardzo niejasnych warunkach licencyjnych JSLint, IBM był wystarczająco zaniepokojony egzekwowaniem prawa, aby poprosić autora o wyraźną zgodę na użycie JSLint do zła .
Tak, duży tytoń mógłby używać naszego kodu i milczeć o nim, ale strach przed wykryciem lub ujawnieniem informacji i możliwość egzekwowania jest wystarczający dla większości firm, nawet tych, które robią złe rzeczy, by zdecydować, że nie jest warte ryzyka i idź i znajdź inny kod.
Ograniczanie użycia do nielegalnych rzeczy nie ma sensu
Zgoda.
Pisząc licencję etyczną, postanowiliśmy nie wykluczać nielegalnych działań z tego powodu, a także dlatego, że w niektórych krajach obowiązują naprawdę złe przepisy, które w okropny sposób ograniczają ludzkie wolności. Jeśli aktywiści działający przeciwko tym rzeczom chcą korzystać z naszego oprogramowania, mają wystarczająco dużo powodów, aby się martwić, nie martwiąc się, że możemy się pojawić i dodać przerwanie i zaniechanie ich kłopotów.
Jeśli jest źle, istnieją prawa, aby to zatrzymać
<wstaw obowiązkowe wideo prawodawców pytających Marka Zuckerberga o wysłanie e-maila przez WhatsApp>
Nasi ustawodawcy są niestety jednymi z najwolniejszych, jeśli chodzi o reagowanie na zmieniające się normy społeczne, nie mówiąc już o technologii. Na początek jest 2018, a na półkach wciąż są produkty, które są wytwarzane przez prawdziwych niewolników .
Etyki nie można zdefiniować
Świat nie jest tak szary, jak się często wydaje.
Nasza licencja uniemożliwiłaby ludziom korzystanie z naszego oprogramowania do (między innymi) działań, które zrujnują stan planety dla przyszłych pokoleń, wykorzystują pracę niewolniczą, promują rasizm lub hakują psychologię behawioralną, aby zmarnować życie ludzi klikanie reklam.
To nie jest dokładnie problem z wózkiem .
Etyka jest subiektywna
Tak, ale to nie jest złe.
Niektóre z naszych najważniejszych decyzji są subiektywne. Jeśli jesteś zainteresowany, istnieją naprawdę ciekawe historie o ludziach, których ośrodki emocjonalne uległy uszkodzeniu w wyniku wypadku i nie są już w stanie funkcjonować, mimo że ich powód i obiektywizm są całkowicie nienaruszone.
Mniej filozoficznie. Pogląd, że błędem jest pobieranie oprogramowania FOSS i ulepszanie go bez publikowania zmian, jest również subiektywny. Jest to subiektywny punkt widzenia, który stanowi kluczową część GPL i nie wszyscy w świecie tworzenia oprogramowania mogą zgodzić się, że to dobra rzecz, ale ta różnica zdań jeszcze nie sprowadziła społeczności FOSS ;-)
Byłoby to niewygodne
Cóż, o to chodzi. Jeśli firma pisze oprogramowanie dla działań etycznie wątpliwych, wówczas licencja etyczna ma być niedogodnością.
To samo można powiedzieć o niektórych licencjach FOSS. Niektóre firmy używają dziś takich narzędzi, jak sprawdzanie licencji, ponieważ nie chcą kodu GPL w swoich produktach.
Gdyby każdy autor wprowadził własną definicję etyki, a mieliśmy mnóstwo niestandardowych licencji etycznych, stałoby się to bardzo uciążliwe i niewygodne, ale jeśli, podobnie jak teraz w przypadku ogólnego oprogramowania typu open source, moglibyśmy zgodzić się na kilka standardowych licencji nie ma powodu, by było to mniej wygodne.
Złe firmy będą pisać własne
Dobry. Niech marnują zasoby, jeśli chcą czerpać zyski z wyrządzania krzywdy ludziom i naszej przyszłości.
Nie zamierzam sobie żartować, że umieszczenie małych bibliotek, które uwolniłem od limitów, materialnie zahamuje wielkie złe korporacje, ale co, jeśli zrobiłyby to większe projekty?
Na przykład apteka Hadoop jest używana przez koncerny naftowe i gazowe, aby pomóc im działać bardziej opłacalnie w czasie, gdy powinny zamknąć drzwi, abyśmy mogli zapobiec katastrofie klimatycznej.
Gdyby Fundacja Apache stwierdziła, że takie zastosowania nie leżą w interesie publicznym, jaki ich misja przewiduje dla ich zasobów, i postanowiła skodyfikować to w swojej licencji, firmy musiałyby się zwrócić do czegoś innego, być może drogiego, zastrzeżonego rozwiązania. Dobrym pomysłem byłoby przeciągnięcie się na dolną linię firmy, która szkodzi naszej przyszłości.
To nowy pomysł
Wszystko to mówi, że licencja Just World to nowy pomysł. Uważamy, że ma nogi i chętnie przyjmiemy opinie lub wyciągniemy prośby, aby było lepiej.
źródło
Istnieje kilka licencji, które wyraźnie zabraniają użycia wojskowego.
http://mindprod.com/contact/nonmil.html
Licencje typu „open source”, które wyraźnie zabraniają zastosowań wojskowych
Problem z takimi rzeczami polega na tym, że stają się one niezgodne z innymi licencjami, takimi jak GPL. Na powierzchni mogą więc wydawać się „rozsądne”, ale mogą spowolnić użytkowanie.
Na licencji CryEngine za pozwala tylko na rozwój „Gry” i specjalnie zabrania co następuje:
Poważne gry:
Oczywiście jest to prawdopodobne raczej z powodów biznesowych niż etycznych, ponieważ mogliby na przykład uzyskać więcej pieniędzy od kontrahenta wojskowego i musieliby po prostu uzyskać inną licencję. Również trochę głupkowate, że gry edukacyjne nie są dozwolone.
źródło
Wszelkie licencje ograniczające korzystanie z oprogramowania do określonych celów nie są z definicji licencjami wolnego oprogramowania . Jest to naruszenie pierwszego z tych, które GNU uważa za cztery podstawowe swobody :
Kilka z nich można znaleźć na liście GNU niewolnych licencji na oprogramowanie , ale szczerze mówiąc, świat pełen jest niewolnych licencji na oprogramowanie. Dobrym przykładem jest licencja JSON , która obejmuje:
Pamiętaj, że taka licencja jest niezgodna z GPL i LGPL. Oznacza to, że jeśli ktoś spróbuje użyć oprogramowania korzystającego z tej licencji z oprogramowaniem GPL lub LPGL, wynikowa praca może nie zostać legalnie rozpowszechniona.
Ogólnie rzecz biorąc, naprawdę, naprawdę nie lubię przeszukiwać czyjejś domowej licencji oprogramowania, aby sprawdzić, czy mogę korzystać z jego oprogramowania. Mam lepsze rzeczy do roboty z czasem. Odkryłem, że istnieją 3 licencje, których można użyć do dowolnego celu, który kiedykolwiek opublikowałbym publicznie:
Jeśli użyjesz czegoś innego, jestem już trochę zła na ciebie. Jeśli jest na tyle niejasny, że nie ma go na liście licencji GNU , więc muszę to przeanalizować osobiście, jestem potrójnie zirytowany. Zwykle łatwiej jest po prostu znaleźć inne oprogramowanie z lepszą licencją.
Pamiętaj, że każdy, kto będzie używał twojego oprogramowania do „zła”, najprawdopodobniej nie będzie również dbał o ograniczenia użytkowania w twojej licencji.
źródło