Poprawki Open Source, praw autorskich i trywialne

10

Powiedzmy, że programista opracował bibliotekę dla swojej komercyjnej aplikacji o zamkniętych źródłach. Ponieważ chcą zwrócić się społeczności open source, publikują tę bibliotekę, powiedzmy, na licencji GPL, ale nadal używają jej we własnej aplikacji. Ponieważ są właścicielami praw autorskich, w porządku.

Teraz użytkownik wersji GPL znajduje błąd, naprawia go i przesyła łatkę do oryginalnego programisty. Jak rozumiem, aby skorzystać z tej poprawki w aplikacji o zamkniętym źródle, programista musi uzyskać zgodę nadawcy. Jeśli zgłaszający odmówi, programista musi znaleźć inny sposób naprawienia błędu w wersji z zamkniętym źródłem.

Ale co jeśli sama poprawka jest naprawdę trywialna? Jak prawidłowe inicjowanie zmiennej lub sprawdzanie pustego wskaźnika? Coś, co każdy na wpół kompetentny programista może znaleźć i naprawić w ciągu kilku minut, biorąc pod uwagę opis błędu? Czy łatka do tego jest nadal chroniona prawem autorskim? A może oryginalny programista może wdrożyć identyczną poprawkę w swojej aplikacji z zamkniętym kodem źródłowym bez zgody osoby zgłaszającej?

Uwaga: To naprawdę jest hipotetyczny scenariusz, żaden z tych pytań „mój„ przyjaciel ”nie ma tego problemu”

Benjamin Kloster
źródło
2
Zdajesz sobie sprawę, że prosisz o radę prawną przez grupę (głównie) anonimowych ludzi przez Internet, którzy nawet nie udają prawników?
Dan Pichelman,
9
Tak. I na pewno powiem sędziemu, że „Internet tak powiedział”.
Benjamin Kloster
3
Ale możesz wydać tysiące dolarów na profesjonalistę, który wyda opinię, która będzie przedmiotem sporu w sądzie przez innego specjalistę w sprawie orzeczenia, które ostatecznie nic nie znaczy, dopóki nie zostaną zajęte przez duże korporacje z bankrollami, aby pozwolić sobie na 10 rund apeluje, aby naprawdę wbić gwóźdź do trumny. Aż do kongresu minie kolejny cyberbill, który stawia wszystko pod znakiem zapytania. Dla USA. ... tak, witaj w wiecznej szarości, która jest prawem własności intelektualnej.
Philip
2
@DanPichelman FAQ mówi, że zadawanie pytań dotyczących licencjonowania oprogramowania jest tutaj w programmers.SE.

Odpowiedzi:

6

Zastrzeżenie: Nie jestem prawnikiem!

Zaktualizowano: Trywialne poprawki błędów prawdopodobnie nie podlegają prawom autorskim. Aby uzyskać więcej informacji, zobacz odpowiedź Michaela Shawa, która moim zdaniem jest dokładniejsza niż pierwotnie powiedziałem.

Jednak nawet biorąc to pod uwagę, sytuacja ta nie jest idealna:

  • Może to być dość jasne dla twojego wymyślonego przykładu, który zakłada trywialną zmianę, a nie dodanie znacznej funkcjonalności. Jednak w prawdziwym życiu będzie to decyzja, kiedy tak będzie. Zostaniesz pozostawiony w szarym polu praw autorskich.
  • Idealnie byłoby po prostu włączyć zaktualizowany plik do swojego programu; nie chcesz dodawać własnego kodu, nawet jeśli jest to trywialne. Po prostu duplikaty działają niepotrzebnie.
  • Teraz będą dwie wersje pliku: twoja i wersja open source. To tylko robi bałagan, jeśli chcesz później opublikować zaktualizowane wersje swojego kodu dla społeczności.

Wniosek: Publiczna licencja Gnu wyraźnie ogranicza użycie kodu w programach zamkniętych. Zatem zwolnienie kodu na licencji GPL oznacza celowe utworzenie rozwidlenia kodu, którego nie można ponownie włączyć do oryginalnego programu. To nie ma większego sensu.

Lepiej skorzystasz z wydania kodu na bardziej liberalnej licencji, takiej jak jedna z licencji BSD lub Licencja Artystyczna . Te licencje pozwalają na włączenie kodu do oprogramowania o zamkniętym źródle bez dodatkowego pozwolenia. Zwykle wszelkie dalsze prace rozwojowe dokonywane przez społeczność będą odbywać się na podstawie tej samej licencji, z której korzystałeś, dzięki czemu będziesz mógł uwzględnić wszelkie zmiany (niewielkie lub znaczące) w swoim oprogramowaniu.

Technicznie rzecz biorąc, ktoś może zdecydować się na aktualizację kodu, a następnie wydanie go na licencji GPL, ale musiałby aktywnie dokonać tego wyboru. To nie byłaby domyślna pozycja. W ten sposób odcięliby swoje wydanie od wszelkich twoich aktualizacji, więc prawdopodobnie nie byłoby to dla nich korzystne (biorąc pod uwagę, że jest to twoje oprogramowanie, prawdopodobnie będziesz robił na nim więcej rozwoju niż ktokolwiek inny).


źródło
1
-1 Koncepcje nie mogą być chronione prawami autorskimi. Prawa autorskie dotyczą wyrażeń, a nie pomysłów. Sugerowana poprawka użycia bardziej liberalnej licencji jest również błędna; problem polega na tym, że chcemy użyć poprawki bez zgody autora, wydanie jej na innej licencji niczego nie zmienia.
Michael Shaw
Masz rację co do sugerowanej poprawki licencji; Źle odczytałem pytanie i pomyślałem, że autor hipotetycznej poprawki błędów odmówił zgody na użycie jej w wersji open source zamiast zamkniętej. Nadal nie masz racji, że pomysły są chronione prawem autorskim (chyba że mówisz o jurysdykcji spoza USA). Prawo autorskie w USA: „W żadnym wypadku ochrona praw autorskich do oryginalnego dzieła autorstwa nie obejmuje żadnego pomysłu, procedury, procesu, systemu, metody działania, koncepcji, zasady lub odkrycia ...”
Michael Shaw
@MichaelShaw, zaktualizowałem odpowiedź, aby usunąć niedokładne informacje. Dzięki za wkład.
6

Jeśli poprawka jest naprawdę trywialna, prawdopodobnie nie podlega prawom autorskim, szczególnie jeśli naprawdę nie ma innego sposobu na napisanie kodu. Istnieją setki milionów sposobów pisania wiersza miłosnego lub gry wideo, tak naprawdę nie ma więcej niż jeden lub dwa sposoby pisania if (*p == NULL). Prawo autorskie jest wyrazem pomysłu, więc jeśli tak naprawdę nie ma żadnego wyboru w sposobie wyrażania pomysłu, nie może istnieć prawo autorskie.

Jeśli jednak poprawka nadal jest dość trywialna, może istnieć kilkadziesiąt sposobów jej wyrażenia, więc może być chroniona prawem autorskim. I może nie być łatwo stwierdzić, czy coś, co jest dość trywialne, jest ledwo chronione prawem autorskim, czy ledwie niemożliwe do kopiowania.

Możliwe jest również, że może być chronione prawem autorskim, ale korzystanie z niego byłoby dozwolone. Dozwolony użytek jest nieco skomplikowany, ponieważ zależy od ważenia kilku czynników, i może nie być pomocny, ponieważ o tym, czy zastosowanie dozwolonego użytku zadecyduje sąd - idealnie, nie chcesz, aby w ogóle była sprawa sądowa , jakkolwiek silna może być twoja sprawa. Jednym z czynników dozwolonego użytku jest ułamek wykorzystanej pracy (jest to przeciwko tobie, ponieważ wziąłeś wszystko), a innym jest komercyjny potencjał pracy (jest to dla ciebie, ponieważ wartość handlowa trywialna poprawka błędu sama w sobie wynosi zero), więc zgadywanie, w jaki sposób sąd może orzec, jest podatne na błędy.

Prawdopodobnie najlepszym sposobem na poradzenie sobie z tym jest przekazanie dokładnego opisu błędu i jego dokładnej lokalizacji deweloperowi, który nie widział łatki. Mogą następnie samodzielnie naprawić błąd (co zajmie bardzo mało czasu, ponieważ błąd ten jest trywialny), a wszystkie potencjalne problemy z prawem autorskim znikną, ponieważ jeśli jest to prawo autorskie, jesteś właścicielem praw autorskich. Twórca może otrzymać prawie dokładnie ten sam kod co łatka, ponieważ jest zasadniczo tylko jeden sposób na napisanie go, ale w tym przypadku nie jest chroniony prawami autorskimi.

Michael Shaw
źródło
-2

Moja niedoświadczona opinia po przeczytaniu http://www.ifosslr.org/ifosslr/article/view/30/64 jest następująca:

Oryginalne dzieło ma wyłączne autorstwo, a osoba ta jest właścicielem praw autorskich i może zdecydować się na licencjonowanie dzieła w dowolny sposób.

Teraz programista znajduje błąd i wprowadza poprawkę. Można to uznać za nieobjęte prawem autorskim (zbyt mały wkład), ale powiedzmy, że był to znaczny wkład. Oryginalny autor przyjmuje wkład, dzięki czemu dzieło staje się dziełem zbiorowym, ponieważ obie osoby zgodziły się na połączenie.

W dziele zbiorowym każdy autor jest właścicielem odpowiednich części, ale każdy ma również niepodzielne zainteresowanie całym dziełem i jako taki może wydać całe dzieło na dowolnych warunkach.

Jeśli jest to rozsądna interpretacja, kontrowersje nie dotyczą tego, czy oryginalny autor może skorzystać z poprawki błędu w wydaniu komercyjnym, czy to IMO. Potencjalnym konfliktem jest to, czy narzędzie naprawiające błędy wierzy, że ma swoją niepodzielną własność w całej pracy. W takim przypadku może być wskazane, aby pierwotny autor uzyskał wydanie od narzędzia do naprawy błędów, które wyraźnie wskazuje, że nie akceptują własności dzieła.

Ross O'Cottawalla
źródło