‟overcq”

Programowanie

Szturmem przez pole z cykaʼeMrʼeM

Granaty? Gotowe. Amunicja? W kolbie. Plecak, no i… biegiem! Gnu, gnu, gnu,…! (PAD…) Gnu, gnu,… gnu, gnu, gnu, gnu! (…NIJ!… Arrrgh!)

Zamierzałem napisać tę notatkę już jakiś czas temu, by choć cześciowo uchronić młodych programistów przed naiwnymi planami związanymi z ideologią oprogramowania ‘general public license or other compatible licenses’ (oj, coś się zacieło w magazynku, to przez ten importowany złom :P). Jak ja rozumiem ten rodzaj licencji? Jako oddolny komunistyczny ruch w kapitalistycznych społeczeństwach, czyli walka ideologiczna zamiast rozwoju informatyki. Oczywiście w krajach, gdzie kapitalizm jest słaby, licencja GPL wygląda jak niewinna owieczka, dopiero później okazuje się, że ma wilcze kły. Zauważyłem u ludzi takie podejścia do oprogramowania komercyjnego: albo całkowity laik w tej dziedzinie chce kupić produkt, zapłacić i mieć z głowy problem, a raczej uzyskać możliwość robienia czegoś, za co ceni komercyjne oprogramowanie z gwarancją, albo w innym przypadku to oprogramowanie jest traktowane jako zło konieczne, ale niestety brak alternatywy w postaci oprogramowania darmowego, z tej strony ludzie najczęściej korzystają z nielegalnych kopii oprogramowania płatnego lub zmieniają używane oprogramowanie na odpowiedniki darmowe na zasadzie dostosowywania warunków pracy tego oprogramowania do jedynej słusznej postaci znanej z wcześniej używanego oprogramowania komercyjnego.

Na początku oprogramowanie GPL wydaje się lekarstwem na ewidentne negatywne cechy oprogramowania komercyjnego monopolizującego rynek. Ale GPL tworzy taki sam monopol, mimo że licencja pięknymi słówkami przedstawia ideę oprogramowania open source, w rzeczywistości GPL to nie jest open source, to jest oddanie swoich praw do utworzonego przez siebie oprogramowania w ręce niczyje. Komercyjna umowa zobowiązuje programistę do walki z konkurencyjnymi firmami, umowa GPL zobowiązuje (co prawda inicjowana dobrowolnym nabraniem się na chwyt reklamowy) do walki o swoje prawa z komuną, która by używała tego oprogramowania. To jest tak, jakbym był ojcem dziecka, które musiałbym oddać na własność społeczeństwu do wprasowania wychowania. Co jest całkowicie sprzeczne z moimi zasadami. Jednak — nawet pominąwszy stwierdzenie „na własność” — społeczeństwo komunistyczne nie wychowuje, ale deprawuje (wszyscy ci ludzie, którzy kradną jak najwięcej dla siebie tak jak w kapitalizmie — ta sama natura), tylko idealne społeczeństwo socjalistyczne (z bajki), które nie ma szans zaistnieć, mogłoby to robić. Po udostępnieniu własnego oprogramowania na licencji GPL traci się momentalnie wszystkie prawa do tego oprogramowania oprócz prawa do zachowania symbolu swojej nazwy dla części, którą się utworzyło. Następnie można rozwijać to oprogramowanie na równych prawach z najgłupszym człowiekiem w dziedzinie programowania, który mógłby bardzo dobry pomysł bez problemu zniekształcić i zniszczyć. I ten los spotyka wiele programów GPL. Jeśli interesują cię szczegóły, jak to się dzieje, dlaczego po prostu autor nie może rozwijać dalej oprogramowania GPL według swoich zamierzeń, to podam najczęstszą drogę rozwalania dobrych projektów przez nieświadomość związanych z licencją GPL.

Najpierw jest jedna osoba lub mała grupa osób, które mają pomysł. Następnie bardzo mądrze rozwiązują jakieś zagadnienie i przedstawiają projekt na licencji GPL. W tym momencie tym projektem mogą zainteresować się osoby, które przetestowały go, chcą dalej użytkować i żądają zmian i ulepszeń. Niestety w swojej głupocie informatycznej nie potrafią projektować w dziedzienie informatyki, tak samo jak ja nie znam się na sztuce. Grupa osób, które zajmują się danym projektem, najpierw eliminuje ze swojego grona dobrych programistów, którzy stają się niepopularni, ponieważ nie chcą wprowadzać rozgardiaszu do dobrego projektu i zamiast dołączać kolejny bajer/wodotrysk do tworzonego projektu wolą przemyśleć potrzebę, przewidzieć możliwe rozwiązania i zdecydować o tym, czy to rozwiązanie jest lepsze dla tego projektu, czy lepsze byłoby dla innego projektu albo już istniejącego, albo nie utworzonego. Ale nie. Odbiorca chce mieć wszystko w jednym, bez względu na to, czy logicznie to byłoby bez sensu, czy nie — chce mieć bajer i już. Posługując się argumentem o niczyjej (pseudo‐publicznej) własności praw do oprogramowania wspiera tylko tych, którzy potrafią się przypodobać, dodając bajery do projektu, zamiast dostosowując projekt do wymagań odbiorcy z jednoczesnym szkoleniem odbiorców. Ostatecznie po krótkim czasie grupa zajmująca się projektem zamiast rozwijać projekt skromnie a efektywnie zajmuje się dopisywaniem kolejnych mącących całość bajerów, niszczeniem niezawodności oprogramowania — wszystko pod publiczkę. Działają w efekcie końcowym te same zasady jak dla oprogramowania komercyjnego. I dlatego wszystkim odradzam wiązanie się licencją GPL inaczej niż dla żartu, nigdy z własnej naiwności.

Z mojej strony cieszę się, że oprogramowanie GPL istnieje, ponieważ w obecnej chwili jest ono kartą przetargową w konflikcie z agresywnymi firmami produkującymi oprogramowanie komercyjne, których intencją jest zablokować możliwość myślenia, tworzenia oprogramowania i zarabiania takimi ludziom jak ja. Innymi słowy: firmy obracające dużym kapitałem, które mają możliwości wprowadzenia własnych praw do przepisów prawnych państw, liczą się tylko ze swoimi klientami, którzy, nie daj Boże, wybraliby oprogramowanie na licencji GPL. Takie firmy nawet nie zerkną na bardzo dobrych programistów, chyba że jako na pracowników, których można wykorzystać do zarobienia milionów bez względu na szkodę dla informatyki. Nie włączam się w całkiem bezsensowną walkę pomiędzy GPL a kapitałem, ale nie będę znosił, by w ramach prawa jedna ze stron zabraniała mi myśleć i tworzyć (patenty) albo myśleć i posiadać należne prawa (własność publiczna). Oprogramowanie, które tworzę należy do mnie i mam zawsze pełną swobodę do wprowadzania zmian, natomiast zdaję sobie sprawę z istoty kopiowania w przestrzeni informacji (o czym pisałem we wcześniejszej notatce) i nie mam zamiaru nikogo zmuszać, by postępował wbrew prawom przestrzeni informacji i po skopiowaniu usuwał tę kopię w zależności od tego, gdzie ją przechowuje: czy w pamięci, czy na dysku. Kopia należy zawsze do odbiorcy, chyba że podczas jej uzyskania naruszył czyjeś prawa własności. Zamiast rozwiązać ten poważny problem braku jasnej deklaracji przepisów prawa, czym jest oprogramowanie, a czym jest kopia, to politycy raz ulegają naciskom jednej strony, która chce zaingerować we własność człowieka na warunkach totalitaryzmu na prawach kapitalizmu, a raz – drugiej strony, chcącej wprowadzić prawa komunizmu.

Żyje? Jeszcze oddycha, to do lazaretu. Zabrać broń, a później do obozu.