Przejdź do treści

Pieśni o Bezpieczeństwie Sieci
blog Michała "ryśka" Woźniaka

Pochwała Copyleftu

To jest bardzo stary wpis, opublikowany ponad 4 lata temu.

Możliwe, że nie odzwierciedla dziś poglądów Autora lub zewnetrznych faktów. Jest zachowany jako wpis historyczny.

Tekst powstał na potrzeby publikacji pokonferencyjnej po CopyCamp 2014, w ramach której publikowana jest wersja angielska. Zachęcam do zapoznania się z całą publikacją, oraz do odwiedzenia konferencji CopyCamp jesienią tego roku.

Free as in Freedom, not free as in beer

Ten cytat z Richarda M. Stallmana, doskonale znany zwolennikom wolnego oprogramowania, wynika z prostej potrzeby wyjaśnienia dwuznaczności w języku angielskim – “free” może znaczyć “wolny”, może też znaczyć “darmowy”; oba znaczenia przy tym mają sens w kontekście oprogramowania. Stał się też niejako deklaracją programową ruchu wolnego oprogramowana.

Wiele inicjatyw czerpie garściami z filozofii wolnego oprogramowania – ruch wolnej kultury, Wikipedia, wolne zasoby edukacyjne i wiele innych opierają się na ideach wypracowanych i przetestowanych w wolnych i otwartych projektach informatycznych. Myśl “free as in freedom, not free as in beer” jest więc bliska również im.

Zwykliśmy kłaść nacisk i akcentować przede wszystkim pierwszą część tego cytatu. To o wolność chodzi, można by rzec, nie o to, czy coś jest darmowe, czy nie. Takie akcentowanie potrzebne było (i jest), by wyraźnie oddzielić oprogramowanie, kulturę czy zasoby edukacyjne, które dają odbiorcom wolność, od tych, które są tylko darmowe – dających dostęp, ale odmawiających pozostałych czterech wolności.

Coraz bardziej jednak wyraźna staje się potrzeba zmiany akcentu. Twórcy oprogramowania, kultury i zasobów edukacyjnych, wolnych czy nie, też muszą jeść.

Cztery Wolności

Richard Stallman wprowadził proste i skuteczne kryterium tego, czy oprogramowanie (swobodnie możliwe do zastosowania również w innych dziedzinach) jest wolne – jego licencja powinna gwarantować:

  • wolność uruchomienia w dowolnym celu;
  • wolność modyfikacji;
  • wolność rozpowszechniania;
  • wolność rozpowszechniania własnych modyfikacji.

Aby jednak skutecznie powiększać zbiór wolnego oprogramowania, w pierwszej wolnej licencji na oprogramowanie, GNU GPL, zastosowano jeszcze jeden trick – copyleft, czyli wymóg, by oprogramowanie opierające się na udostępnianym na niej wolnym programie same były udostępniane na tej samej licencji.

Warunek copyleft stał się wewnątrz społeczności wolnego i otwartego oprogramowania zarzewiem zażartej, trwającej do dziś dyskusji.

Jego przeciwnicy preferują licencje niecopyleftowe, jak MIT czy BSD, zwolennicy – opowiadają się za GNU GPL i pochodnymi.

Pierwsi argumentują, że warunek copyleft ogranicza prawa twórcy dzieła zależnego (np. programu opartego o oprogramowanie na licencji GNU GPL), nie może on bowiem (jeśli swój program w ogóle udostępnia) zdecydować o nie udostępnianiu swojego programu na wolnej licencji.

Drudzy wskazują, że choć być może twórca ten faktycznie nie ma już możliwości wyboru licencji, jednak dzięki temu zabiegowi wszyscy inni – w tym użytkownicy jego programu – mają zagwarantowane cztery wolności, które mieli zagwarantowane w przypadku programu źródłowego.

Innymi słowy, debata toczy się pomiędzy wolnością twórcy adaptacji do zamknięcia swojej adaptacji dzieła na wolnych licencjach, a wolnością wszystkich odbiorców, zawsze.

“Adaptacji” i “odbiorców”, ponieważ dyskusja ta wylała się oczywiście poza świat wolnego oprogramowania, i równie zaciekle toczy się w kontekście wolnych zasobów i wolnej kultury.

Modele biznesowe

Zarówno w świecie oprogramowania, jak i poza nim, warunek copyleft ma renomę “niedobrego dla biznesu”. Twórcy adaptacji chcieliby mieć możliwość zamykania swoich adaptacji prac na wolnych licencjach, by móc na nich zarabiać – a jak zarabiać na czymś, co można kopiować do woli?

Odpowiedzią są modele biznesowe zgodne z kulturą daru, kulturą dzielenia się. Finansowanie społecznościowe, modele oparte na dobrowolnych wpłatach, zarabianie na produktach powiązanych (np. koszulki zespołów) czy koncertach, zaś w przypadku oprogramowania sprzedaż usług (jak wdrożenie, dostosowanie do potrzeb, wsparcie, itp) pozwalają artystom i twórcom utrzymać się mimo, a czasem wręcz dzięki swobodnemu dzieleniu się ich twórczością przez fanów.

Modele te są nieoczywiste, wydają się niepewne – a jednak coraz częściej finansują duże nawet produkcje. Z drugiej strony, “klasyczne” modele nie gwarantują przecież sukcesu. Tym bardziej, że oparty na nich rynek zagospodarowany jest od dawna, np. przez wielkie wytwórnie fonograficzne.

Można odnieść wrażenie, że stosowanie niecopyleftowych licencji to często wyraz braku zaufania do nowych modeli, wynik przemyślenia w stylu “a może kiedyś będę chciał oprzeć na tym jakiś zamknięty produkt, co wtedy?” Jeśli jednak ja mogę zamknąć, mogą zamknąć i inni. Wszyscy na tym tracimy.

Heartbleed

Doskonale ilustruje to sprawa Heartbleed, czyli poważnego błędu w popularnej bibliotece wykorzystywanej przez dużych i małych do szyfrowania transmisji w Internecie . Błąd był trywialny, miał jednak potężne konsekwencje dla całego ekosystemu wolnego oprogramowania, i szerzej: niemal całego Internetu. Pozostawał też niewykryty przez kilka lat.

Oprogramowanie, którego dotyczył – biblioteka OpenSSL – udostępniana jest na licencji niecopyleftowej. Zachęca to firmy, również te duże, do korzystania z niej w swych produktach i usługach, co też chętnie robią. Z OpenSSL korzysta m.in. Google, Facebook, Amazon.

Korzysta – ale niespecjalnie dokłada się do rozwoju tej kluczowej biblioteki. Twórcy OpenSSL nie mieli dość środków na regularny audyt kodu, co było jedną z przyczyn, dla których Heartbleed mógł pozostawać niezauważony.

Duzi gracze nie dzielą się też kodem, swoimi zmianami w oprogramowaniu, z którego korzystają. Licencja tego nie wymaga, czemu więc miałyby to robić? Okazuje się, że Facebook używał zmodyfikowanej wersji OpenSSL. Zmiany w niej wprowadzone (prawdopodobnie całkiem przypadkiem) spowodowały, że była ona niepodatna na błąd Heartbleed.

Gdyby OpenSSL był na licencji wymagającej udostępnienia kodu i zmian społeczności, być może błąd zostałby wykryty znacznie wcześniej, kiedy jeszcze nie był tak groźny.

Not free as in beer

Rozwój wolnego oprogramowania, wolnej kultury, wolnych zasobów edukacyjnych kosztuje. Tysiące ludzi poświęcają swój czas, wiedzę i umiejętności, i dzielą się efektami swej pracy. Często zapominamy o tym, np. argumentując za wolnym oprogramowaniem podkreślamy, że jest “darmowe”.

Nie jest. Czas nauczyć się doceniać pracę w nie wkładaną. Również finansowo.

Copyleft wbrew pozorom może tu pomóc: skoro nikt nie może zamknąć mojej pracy, sam mogę korzystać z cudzych jej ulepszeń. Wszyscy na tym zyskujemy.