This translation may not reflect the changes made since 2021-07-11 in the English original.
You should take a look at those changes. Please see the Translations README for information on maintaining translations of this article.
Zašto bi softver trebao biti slobodan
napisao Richard Stallman
Uvod
Postojanje slobodnog softvera neizbježno postavlja pitanje o tome kako bi trebalo donositi odluke o njegovom korištenju. Na primjer, pretpostavimo da jedna osoba koja ima primjerak nekog programa sretne drugu osobu koja bi također željela primjerak tog programa. U mogućnosti su kopirati taj program; tko bi trebao odlučiti hoće li to i učiniti? Dotične osobe? Ili treća strana, koju nazivamo “vlasnikom”?
Razvijatelji softvera u razmatranju ovih pitanja uglavnom kreću od pretpostavke da se odgovor temelji na kriteriju najveće moguće dobiti za razvijatelja. Politička moć poslovnih krugova dovela je do toga da vlasti usvoje i ovaj kriterij i odgovor kojeg su predložili razvijatelji: da program ima vlasnika, tipično neku korporaciju povezanu s njegovim razvojem.
Želio bih isto pitanje razmotriti na temelju drugačijeg kriterija: napretka i slobode javnosti općenito.
Odgovor na ovo ne može nam dati trenutni zakon—zakon bi trebao biti prilagođen etici, a ne obratno. Odluku o tom pitanju ne može donijeti ni trenutna praksa, premda bi mogla predložiti moguće odgovore. Jedini način na koji se može donijeti odluka je pogledati na čiju je korist i na čiju štetu priznavanje vlasništva nad softverom, zašto i u kojoj mjeri. Drugim riječima, trebali bismo izvršiti analizu odnosa cijene i dobrobiti za društvo kao cjelinu, uzimajući u obzir osobnu slobodu kao i proizvodnju materijalnih dobara.
U ovom eseju opisat ću učinak vlasništva i pokazati da je takav ishod štetan. Moj zaključak je da programeri imaju dužnost poticati druge da dijele, dalje distribuiraju, proučavaju i poboljšavaju softver kojeg pišu: drugim riječima, da pišu “slobodan” softver.(1)
Kako vlasnici opravdavaju svoju moć
Oni koji imaju koristi od sadašnjeg sustava, u kojem programi predstavljaju imovinu, iznose dva razloga kojima podupiru svoje zahtjeve za vlasništvom nad programima: emocionalni razlog i ekonomski razlog.
Emocionalni razlog glasi ovako: “Ulažem svoj znoj, svoje srce i dušu u ovaj program. Njega stvaram ja, on je moj!”
Ovaj razlog ne zahtijeva ozbiljno pobijanje. Osjećaj privrženosti je osjećaj kojeg programeri mogu njegovati kad im odgovara; nije neizbježan. Pogledajmo, na primjer, koliko rado isti ti programeri za plaću uobičajeno prepišu sva prava na neku veliku korporaciju; emocionalna privrženost tajnovito nestane. Suprotno tome, pogledajmo kako veliki umjetnici srednjeg vijeka nisu stavljali na svoja djela ni svoje ime. Njima ime umjetnika nije bilo važno. Ono što je bilo važno je to da je djelo bilo napravljeno—i svrha kojoj će služiti. To gledište prevladavalo je stoljećima.
Ekonomski razlog glasi ovako: “Želim se obogatiti (obično neprecizno opisano kao ‘zaraditi za život’), a ako mi ne dozvolite da se obogatim programiranjem, onda neću programirati. Svi drugi su kao i ja, dakle nitko nikada neće programirati. Stoga nećete uopće imati programa!” Ova je prijetnja obično umotana kao prijateljski savjet mudrih.
Kasnije ću objasniti zašto je ova prijetnja varka. Najprije se želim pozabaviti implicitnom pretpostavkom koja je vidljivija u drugačijem izboru riječi kojima se izražava ovaj razlog.
Ovaj izraz započinje usporedbom društvene korisnosti vlasničkog programa s onim kada nemamo nikakvog programa, a zatim zaključuje da ja razvoj vlasničkog softvera, u cjelini, koristan i da bi ga trebalo poticati. Zabluda je ovdje u usporedbi samo dva ishoda—situaciji s vlasničkim softverom nasuprot situaciji bez ikakvog softvera—i pretpostavljanja da ne postoje druge mogućnosti.
U sustavu softverskih autorskih prava, razvoj softvera se obično povezuje s postojanjem vlasnika koji kontrolira korištenje softvera. Sve dok ta veza postoji, često smo suočeni s izborom između vlasničkog softvera i ničega. Međutim, ova veza nije nerazdvojiva niti neizbježna; ona je posljedica određene društveno-pravne političke odluke koju preispitujemo: odluke da postoje vlasnici. Izražavanje izbora kao ovog između vlasničkog softvera nasuprot nikakvom softveru vapi za preispitivanjem.
Argument protiv postojanja vlasnika
Pitanje koje se nameće je “Treba li razvoj softvera biti povezan s postojanjem vlasnika koji ograničavaju njegovo korištenje?”
Da bismo donijeli odluku o ovome, moramo procijeniti kakav učinak na društvo ima svaka od ovih dviju radnji neovisno jedna o drugoj: učinak razvijanja softvera (neovisno o njegovim uvjetima distribucije) i učinak ograničavanja njegovog korištenja (pretpostavljajući da je softver već razvijen). Ako je jedna od ovih radnji korisna, a druga je štetna, bilo bi bolje da ih razdvojimo i činimo samo onu korisnu.
Drugačije rečeno, ako je ograničavanje distribuiranja programa koji je već razvijen štetno za društvo općenito, tada će etički razvijatelj softvera odbaciti mogućnost da to čini.
Da bismo odredili učinak ograničavanja dijeljenja, trebamo usporediti vrijednost za društvo koju ima ograničeni (tj. vlasnički) program s onom vrijednošću koju ima isti takav program koji je dostupan svima. Ta znači usporediti dva moguća svijeta.
Ova analiza također rješava i jednostavan protuargument, koji se ponekad iznosi, da je “korist koju ima susjed kojem damo kopiju nekog programa poništena štetom učinjenom vlasniku.” Ovaj protuargument pretpostavlja da su i šteta i korist jednako velike. Analiza uključuje usporedbu ovih veličina, te pokazuje da je korist mnogo veća.
Da rasvijetlimo ovaj argument, primijenimo ga na drugo područje: izgradnju ceste.
Bilo bi moguće financirati izgradnju svih cesta naplatom cestarine. To bi zahtijevalo da imamo naplatne kućice na svim raskrižjima. Takav bi sustav pružio velik poticaj za poboljšavanje cesta. Imao bi također i svojstvo uzrokovanja da korisnici bilo koje ceste plaćaju za tu cestu. Međutim, naplatna kućica je umjetna prepreka glatkom odvijanju prometa—umjetna, jer nije posljedica toga kako ceste ili automobili funkcioniraju.
Uspoređujući slobodne ceste i ceste s naplatom cestarine, otkrivamo da su (ako je sve ostalo jednako) ceste bez naplatnih kućica jeftinije za izgradnju, jeftinije za upravljanje, sigurnije i učinkovitije.(2) U siromašnoj zemlji, cestarine mogu učiniti ceste nedostupne mnogim građanima. Ceste bez naplatnih kućica stoga nude više dobrobiti društvu za nižu cijenu; bolje su za društvo. Stoga, društvo bi trebalo odabrati financirati ceste na drugačiji način, a ne naplatnim kućicama. Korištenje cesta, jednom kad su izgrađene, mora biti slobodno.
Kada zagovornici naplatnih kućica predlažu njihovo korištenje samo kao način prikupljanja sredstava, oni iskrivljuju izbor koji je dostupan. Naplatne kućice zaista prikupljaju sredstva, no čine i nešto drugo: u suštini, one degradiraju cestu. Cesta s naplatom cestarine nije tako dobra kao slobodna cesta; dobivanje tehnički savršenijih cesta ne mora biti poboljšanje ako to znači zamjenjivanje slobodnih cesta onima s naplatom cestarine.
Naravno, izgradnja slobodne ceste ipak košta, što javnost mora nekako platiti. Međutim, to ne podrazumijeva neizbježnost naplatnih kućica. Mi, koji ionako moramo platiti, dobit ćemo više za naš novac kupujući slobodnu cestu.
Ne kažem da je lošije imati cestu s naplatom cestarine nego uopće ne imati cestu. To bi bila istina kada bi cestarina bila toliko visoka da bi rijetko tko mogao koristiti tu cestu—no to nije naročito vjerojatna politika onih koji naplaćuju cestarine. Međutim, dokle god naplatne kućice uzrokuju značajno rasipanje i neugodnost, bolje je skupiti novčana sredstva na manje ometajući način.
Kako bih primijenio isti argument na razvoj softvera, sada ću pokazati da postojanje “naplatnih kućica” za korisne softverske programe društvo skupo stoji: to čini programe skupljima za izradu, skupljima za distribuciju i manje ugodnima i učinkovitima za korištenje. Iz toga slijedi da izradu programa treba poticati na neki drugi način. Zato ću objasniti druge načine poticanja i (do mjere koja je potrebna) financiranja razvoja softvera.
Šteta koju nanosi opstrukcija softvera
Razmotrimo na trenutak da je program razvijen i da su svi nužni troškovi za njegov razvoj plaćeni; sada društvo treba izabrati hoće li ga učiniti vlasničkim ili dozvoliti slobodno dijeljenje i korištenje. Pretpostavimo da je postojanje programa i njegova dostupnost poželjna stvar.(3)
Ograničenja distribucije i mijenjanja programa ne mogu olakšati njegovo korištenje. Oni mogu samo stvarati smetnju. Učinak stoga može biti samo negativan. No, koliko? I kakve vrste?
Tri različite razine materijalne štete dolaze od takve opstrukcije:
- Manje ljudi koristi program.
- Nitko od korisnika ne može prilagoditi ili ispraviti program.
- Drugi razvijatelji ne mogu učiti iz programa niti temeljiti novo djelo na njemu.
Svaka razina materijalne štete ima prateći oblik psihosocijalne štete. Ovo se odnosi na posljedice koje ljudske odluke imaju na njihove buduće osjećaje, stavove i sklonosti. Ove promjene u načinu razmišljanja ljudi će zatim imati daljnje posljedice na njihove odnose sa sugrađanima, a mogu imati i materijalne posljedice.
Ove tri razine materijalne štete rasipaju dio vrijednosti kojom je program mogao doprinijeti, no ne mogu je potpuno poništiti. Ukoliko rasipaju gotovo svu vrijednost programa, onda pisanje programa nanosi štetu društvu maksimalno u visini truda uloženog u pisanje programa. Nedvojbeno, program koji je profitabilan za prodaju mora pružiti neku izravnu materijalnu korist.
Međutim, uzimajući u obzir prateću psihosocijalnu štetu, nema granica šteti koju razvoj vlasničkog softvera može učiniti.
Opstrukcija korištenja programa
Prva razina štete ometa jednostavno korištenje programa. Trošak kopije programa je gotovo nula (a taj posao možete platiti i tako da ga sami odradite), stoga bi na slobodnom tržištu imao cijenu blizu nuli. Naknada za autorska prava djeluje značajno destimulirajuće na korištenje programa. Ako je neki široko korišten program vlasnički, daleko manje ljudi će ga koristiti.
Lako je pokazati da je ukupan doprinos programa društvu umanjen ako mu se odredi vlasnik. Svaki potencijalni korisnik programa, suočen s potrebom da plati za njegovo korištenje, može izabrati plaćanje ili se može odreći korištenja programa. Kada korisnik odabere platiti, vrijednost prijenosa dobara između dviju strana je nula. No svaki put kada netko izabere odreći se korištenja programa, to šteti toj osobi, a ne donosi dobrobit nikome. Zbroj negativnih vrijednosti s nulama mora biti negativan.
No to ne umanjuje količinu rada koja je potrebna za razvoj programa. Kao posljedica, učinkovitost cijelog procesa, mjerena zadovoljstvom korisnika u odnosu na sat rada, smanjena je.
Ovo odražava presudnu razliku između kopija programa i automobila, stolica ili sendviča. Izvan znanstveno-fantastične literature ne postoji uređaj za kopiranje materijalnih objekata. No programe je jednostavno kopirati; svatko može proizvesti koliko god kopija je potrebno, uz vrlo malo truda. To ne vrijedi za materijalne objekte zbog zakona o očuvanju materije: svaka nova kopija mora biti izrađena od sirovina na isti način na koji je izrađena i prva kopija.
Kod materijalnih objekata, destimuliranje korištenja ima smisla, jer manje kupljenih objekata znači i manje sirovina i rada potrebnih da bi ih se izradilo. Istina je da postoji i početni trošak, trošak razvoja, koji se raspoređuje na količinu proizvodnje. No sve dok je granični trošak proizvodnje značajan, dodavanje dijela troška razvoja ne čini kvalitativnu razliku. Isto tako ne zahtijeva ograničenja slobode običnih korisnika.
Međutim, nametanje cijene na nešto što bi inače bilo besplatno kvalitativna je promjena. Središnje nametnuta naknada za distribuciju softvera postaje snažno destimulirajuća.
Štoviše, središnja proizvodnja kakva se sada prakticira neučinkovita je čak i kao sredstvo isporuke primjeraka softvera. Ovaj sustav uključuje stavljanje fizičkih diskova ili kaseta u suvišna pakiranja, slanje velikog broja njih oko svijeta i njihovog skladištenja za prodaju. Ovaj trošak prikazan je kao rashod u poslovanju; istina je zapravo da je to dio rasipanja uzrokovanog vlasništvom.
Nanošenje štete društvenoj koheziji
Pretpostavimo da biste i vi i vaš susjed smatrali korisnim upotrebljavati određeni program. Iz etičke brige za vašeg susjeda, trebali biste osjećati da će ispravno upravljanje situacijom omogućiti obojici da ga koristite. Zahtjev da se korištenje programa dozvoli samo jednom od vas, a spriječi drugom, razdorna je; ni vi niti vaš susjed ne biste ga trebali smatrati prihvatljivim.
Prihvaćanje tipičnog softverskog licenčnog ugovora znači izdaju vašeg susjeda: “Obećajem lišiti svojeg susjeda ovog programa kako bih mogao imati kopiju za sebe.” Ljudi koji čine ovakve izbore osjećaju unutarnji psihološki pritisak da ih opravdaju, umanjivanjem važnosti pomaganja svojem susjedu—stoga trpi javni duh. Ovo je psihološka šteta udružena s materijalnom štetom kao posljedice destimuliranja korištenja programa.
Mnogi korisnici nesvjesno prepoznaju nepravdu odbijanja dijeljenja, stoga odlučuju zanemariti licence i zakone i ipak dijeliti programe. No, često zbog toga osjećaju krivnju. Znaju da moraju kršiti zakone kako bi bili dobri susjedi, ali i dalje zakone smatraju mjerodavnima, pa zaključuju da je biti dobar susjed (što oni i jesu) nešto nevaljano i sramotno. To je također vrsta psihosocijalne štete, no može se izbjeći odlukom da ove licence i zakoni nemaju moralne vrijednosti.
Programeri isto tako trpe psihosocijalnu štetu znajući da mnogim korisnicima neće biti dozvoljeno korištenje njihovog rada. To dovodi do ciničnog stava ili do poricanja. Programer može oduševljeno opisivati rad koji smatra tehnički uzbudljivim; zatim, ako ga upitamo “Hoću li ga smjeti koristiti?”, raspoloženje mu splasne i priznaje da je odgovor ne. Kako bi izbjegao osjećaj obeshrabrenosti, ili će većinu vremena ignorirati ovu činjenicu ili će usvojiti ciničan stav osmišljen kako bi umanjio njenu važnost.
Od vremena Reagana, najveća nestašica u Sjedinjenim državama nisu tehničke inovacije, već volja da se zajedno radi za javno dobro. Nema smisla poticati prvo na štetu ovog drugog.
Opstrukcija vlastite prilagodbe programa
Druga razina materijalne štete nemogućnost je prilagodbe programa. Lakoća mijenjanja softvera jedna je od velikih prednosti nad starijom tehnologijom. No, većinu komercijalno dostupnog softvera nije moguće izmijeniti, čak i nakon što ga kupite. Možete ga uzeti ili ostaviti, kao crnu kutiju—to je sve.
Program kojeg možete pokretati sastoji se od nizova brojeva čije je značenje nerazgovjetno. Nitko, čak ni dobar programer, ne može jednostavno izmijeniti brojeve kako bi program radio nešto drugo.
Programeri uobičajeno rade s “izvornim kodom” programa, koji je pisan u nekom programskom jeziku kao što je Fortran ili C. Programski jezik koristi imena kako bi se označili podaci koji se koriste i dijelovi programa, a operacije predstavlja simbolima kao što su ‘+’ za zbrajanje i ‘-’ za oduzimanje. Osmišljen je kako bi pomogao programerima čitati i mijenjati programe. Ovdje je jedan primjer, program za izračun udaljenosti između dvije točke u ravnini:
float distance (p0, p1) struct point p0, p1; { float xdist = p1.x - p0.x; float ydist = p1.y - p0.y; return sqrt (xdist * xdist + ydist * ydist); }
Što konkretno izvorni kod predstavlja nije bitno; bitno je da izgleda kao algebra, a osobi koja poznaje programski jezik bit će smislen i jasan. Suprotno tome, ovdje je isti taj program u izvršnom obliku, na računalu koje sam koristio kada sam ovo pisao:
1314258944 -232267772 -231844864 1634862 1411907592 -231844736 2159150 1420296208 -234880989 -234879837 -234879966 -232295424 1644167167 -3214848 1090581031 1962942495 572518958 -803143692 1314803317
Izvorni kod je (barem potencijalno) koristan svakom korisniku programa. No, većini korisnika nije dozvoljeno imati kopije izvornog koda. Izvorni kod vlasničkog programa vlasnik uglavnom drži u tajnosti, da netko iz njega ne bi nešto naučio. Korisnici dobivaju samo datoteke s nerazumljivim brojevima koje će računalo izvršavati. To znači da samo vlasnik programa može izmijeniti program.
Prijateljica mi je jednom pričala kako je oko šest mjeseci radila kao programer u jednoj banci, pišući program sličan nečem što je bilo komercijalno dostupno. Bila je uvjerena da bi, kada bi mogla dobiti izvorni kod tog komercijalno dostupnog programa, on mogao biti lako prilagođen njihovim potrebama. Banka je to bila voljna platiti, ali nije joj bilo dozvoljeno—izvorni kod bio je tajan. Tako joj je bilo potrebno šest mjeseci nepotrebnog rada, rada koji se ubraja u BDP no zapravo je uzaludan.
Xerox je oko 1977. godine laboratoriju za umjetnu inteligenciju (AI Lab) MIT-a poklonio grafički pisač. Pokretao ga je slobodan softver kojem smo dodali mnogo zgodnih mogućnosti. Na primjer, softver bi odmah po završetku ispisa obavijestio korisnika o tome. Svaki put kada je pisač imao neki problem, kao što je zastoj papira ili potrošen sav papir, softver bi odmah obavijestio sve korisnike čiji ispis je bio na čekanju. Ove su odlike olakšavale rad bez zastoja.
Kasnije je Xerox dao AI Labu noviji, brži pisač, jedan od prvih laserskih pisača. Pogonio ga je vlasnički softver koji je radio na odvojenom namjenskom računalu, tako da nismo mogli dodati ni jednu od naših omiljenih mogućnosti. Mogli smo urediti da se šalje obavijest o slanju ispisa na namjensko računalo, ali ne i obavijest kada je ispis završen (a vremenski razmak između tih dviju radnji bio je značajan). Nije postojao način na koji bismo mogli doznati kada je ispis zapravo dovršen, mogli smo samo pretpostavljati. Isto tako nitko nije bio obaviješten o zastoju papira, tako da je često prolazio i sat vremena prije nego je problem bio otklonjen.
Programeri sustava u AI Labu bili su sposobni takve probleme otkloniti, vjerojatno jednako sposobni kao i sami autori tog programa. Xerox nije bio zainteresiran za njihovo otklanjanje, a odabrali su da i nas spriječe u tome, tako da smo bili prisiljeni prihvatiti te probleme, koji nikada nisu bili riješeni.
Većina dobrih programera iskusila je ovu frustraciju. Banka si je mogla priuštiti pisanje novog programa od početka, no tipičan korisnik, bez obzira koliko vješt bio, može samo odustati od toga.
Odustajanje uzrokuje psihosocijalnu štetu—duhu samopouzdanja. Demoralizirajuće je živjeti u kući koju ne možete preurediti kako bi odgovarala vašim potrebama. To dovodi do rezignacije i obeshrabrenja, koje se može proširiti i utjecati na druge aspekte nečijeg života. Ljudi koji se ovako osjećaju nesretni su i ne rade dobro.
Zamislite kako bi bilo da se receptima škrtari na način na koji se to čini sa softverom. Mogli biste reći “Kako da promijenim ovaj recept kako bih izbacio sol?”, a glavni kuhar bi odgovorio “Kako se usuđujete vrijeđati moj recept, plod mojeg uma i nepca, pokušavajući petljati po njemu? Nemate dovoljno znanja da izmijenite moj recept, a da on nakon toga bude ispravan!”
“Ali moj liječnik kaže da ne smijem jesti sol! Što da učinim? Hoćete li mi vi ukloniti sol?”
“Rado bih to učinio; moja naknada je samo 50 000 dolara.” Budući da vlasnik ima monopol na izmjene, naknada ima tendenciju biti visoka. “Međutim, trenutno nemam vremena. Zauzet sam narudžbom da osmislim novi recept za brodski kolač za Ministarstvo pomorstva. Bit ću u mogućnosti posvetiti vam se za približno dvije godine.”
Opstruiranje razvoja softvera
Treća razina materijalne štete pogađa razvoj softvera. Razvoj softvera je bio evolucijski proces, gdje bi neka osoba uzela neki postojeći program i ponovno napisala neke njegove dijelove za jedan mogući ishod, zatim bi druga osoba ponovno napisala neke dijelove kako bi dodala drugi mogući ishod; u nekim slučajevima, to bi se nastavljalo kroz vremenski period od dvadeset godina. U međuvremenu, dijelovi programa bili bi “kanibalizirani” kako bi činili početak nekih drugih programa.
Postojanje vlasnika sprečava ovakvu evoluciju, čineći nužnim počinjanje ispočetka kada se razvija neki program. Ono također sprečava nove vježbenike u proučavanju postojećih programa kako bi naučili korisne tehnike ili čak i način na koji se veliki programi mogu izgrađivati.
Vlasnici isto tako ometaju obrazovanje. Sreo sam sjajne studente računalnih znanosti koji nikada nisu vidjeli izvorni kod nekog velikog programa. Mogu biti dobri u pisanju malih programa, ali ne mogu početi učiti različite vještine pisana velikih programa ako ne mogu vidjeti kako su to učinili drugi.
U bilo kojem intelektualnom području, čovjek može doseći veće visine stojeći na ramenima drugih. No to uglavnom više nije dozvoljeno u području softvera—možete stajati samo na ramenima drugih ljudi iz vaše tvrtke.
Pridružena psihosocijalna šteta utječe na duh znanstvene suradnje, koji je običavao biti toliko jak da bi znanstvenici surađivali čak i kada su njihove zemlje bile u ratu. U tom duhu, japanski oceanografi koji su napustili svoj laboratorij na jednom otoku u Pacifiku pažljivo su sačuvali svoj rad za osvajačke marince Sjedinjenih Država i ostavili im poruku da se dobro pobrinu za njega.
Sukob za profit razorio je ono što je međunarodni sukob poštedio. Danas znanstvenici iz mnogih područja ne objavljuju u svojim člancima dovoljno da bi omogućili drugima da ponove pokus. Objavljuju samo toliko koliko je dovoljno da omogući čitateljima da se dive koliko su ovi uspjeli napraviti. Ovo je svakako istina u računalnoj znanosti, gdje je izvorni kod programa o kojem se izvještava uglavnom tajan.
Nije važno kako je dijeljenje ograničeno
Raspravljao sam o učincima sprečavanja ljudi da kopiraju, mijenjaju i dorađuju program. Nisam odredio kako se to ometanje provodi, jer to ne utječe na zaključak. Bilo da se to radi zaštitom od kopiranja, autorskim pravima, licencama, šifriranjem, ROM karticama ili hardverskim serijskim brojevima, ako uspije spriječiti korištenje, nanosi štetu.
Korisnici smatraju neke od ovih metoda odvratnijima od drugih. Predlažem da su najmrskije one metode koje postižu svoj cilj.
Softver treba biti slobodan
Pokazao sam kako je vlasništvo nad programom—moć ograničavanja njegovog mijenjanja ili kopiranja—ometajuće. Njegovi negativni učinci široko su rasprostranjeni i važni. Iz toga slijedi da društvo ne bi smjelo imati vlasnike programa.
Drugi način da se ovo shvati je da je slobodan softver ono što je društvu potrebno, dok je vlasnički softver slab nadomjestak za to. Poticanje tog nadomjestka nije racionalan način dobivanja onoga što nam je potrebno.
Vaclav Havel nas je savjetovao da “radimo za nešto zato što je to dobro, a ne samo zato što ima izgleda uspjeti.” Tvrtka koja proizvodi vlasnički softver ima izgleda uspjeti u svojim uskim uvjetima, no to nije nešto što je dobro za društvo.
Zašto će ljudi razvijati softver
Ako uklonimo autorska prava kao način poticanja ljudi da razvijaju softver, isprva će se razvijati manje softvera, ali će taj softver biti korisniji. Nije jasno hoće li ukupno zadovoljstvo korisnika biti manje; no ako bude, ili ako ga budemo željeli povećati, postoje i drugi načini poticanja razvoja, jednako kao što postoje i drugi načini osim naplatnih kućica na koje se može prikupiti novac za ceste. Prije nego što počnem govoriti o tome kako se to može učiniti, želim provjeriti koliko je umjetnog poticaja istinski potrebno.
Programiranje je zabavno
Postoje neka zanimanja za koje će se rijetki opredijeliti, osim zbog novca; na primjer, izgradnja cesta. Postoje druga područja istraživanja i umjetnosti u kojima nema velike mogućnosti da se postane bogat, za koje se ljudi opredjeljuju zbog svojeg zanosa ili njihove vrijednosti za društvo. Primjeri uključuju matematičku logiku, klasičnu glazbu i arheologiju, te političko organiziranje među radnicima. Ljudi se natječu, više tužno nego žestoko, za tih nekoliko dostupnih plaćenih namještenja, od kojih nijedno nije naročito dobro plaćeno. Postoji mogućnost da čak i plate za priliku da rade u određenom području, ako si to mogu priuštiti.
Takvo se područje može preko noći preobraziti ako počne nuditi mogućnost bogaćenja. Kada se jedan radnik obogati, ostali zahtijevaju istu priliku. Uskoro svi mogu zahtijevati veliku količinu novca da bi radili ono što su do tada radili iz zadovoljstva. Nakon nekoliko godina, svatko povezan s tim područjem rada s podsmijehom će gledati na pomisao da u tom području nešto radi bez velike financijske koristi. Savjetovat će društvene planere da osiguraju takvu financijsku korist, propisujući posebne povlastice, moći i monopol koji su potrebni za to.
Ova se promjena dogodila u području računalnog programiranja osamdesetih godina dvadesetog stoljeća. U sedamdesetim godinama su se pojavili članci o “računalnom ovisništvu”: korisnici su bili “online” i trošili na to velik novac. Općenito se smatralo da ljudi često vole programiranje dovoljno snažno da unište svoj brak. Danas se općenito smatra da nitko ne bi želio programirati, osim za veliku plaću. Ljudi su zaboravili ono što su prije znali.
Ako je u nekom trenutku istina da će većina ljudi raditi u određenom području jedino za visoku plaću, ne mora tako i ostati. Dinamika promjene može ići i unatrag, ako društvo osigura poticaj. Ako uklonimo mogućnost velikog bogatstva, tada će nakon nekog vremena, kada ljudi prilagode svoje stavove, ponovno biti željni rada u tom području radi zadovoljstva zbog postignuća.
Pitanje “Kako da platimo programere?” postaje lakše kada shvatimo da se ne radi o tome da im platimo cijelo bogatstvo. Lakše je jednostavno osigurati im dobar život.
Financiranje slobodnog softvera
Ustanove koje plaćaju programere ne moraju biti softverske kuće. Mnoge druge ustanove koje to mogu raditi već postoje.
Za proizvođače hardvera je bitno da podržavaju razvoj softvera čak i ako ne mogu kontrolirati korištenje softvera. Godine 1970. mnogo je njihovog softvera bilo slobodno jer nisu razmatrali njegovo ograničavanje. Danas svojom sklonošću pridruživanja konzorcijima pokazuju svoje shvaćanje da posjedovanje softvera nije nešto što im je uistinu važno.
Sveučilišta provode mnoge softverske projekte. Danas često prodaju svoje rezultate, ali 1970. to nisu činili. Postoji li ikakva sumnja u to da bi sveučilišta razvijala slobodan softver ako im ne bi bilo dopušteno prodavati softver? Ove bi se projekte moglo podržavati istim vladinim ugovorima i stipendijama kojima se sada podržava razvoj vlasničkog softvera.
Danas je uobičajeno da sveučilišni istraživači dobiju stipendije za razvoj sustava, razviju ga gotovo do kraja i nazovu ga “dovršenim”, a zatim osnuju tvrtke gdje zaista dovrše projekt i učine ga upotrebljivim. Ponekad nedovršenu verziju proglase “slobodnom”; ako su pokvareni do srži, umjesto toga od sveučilišta zatraže ekskluzivnu licencu. To nije tajna: otvoreno je priznaju svi kojih se tiče. No kada istraživači ne bi bili izloženi iskušenju da čine ove stvari, ipak bi i dalje radili svoja istraživanja.
Programeri koji pišu slobodan softver mogu za život zarađivati prodajom usluga povezanih s tim softverom. Bio sam plaćen da prenesem GNU-ov prevodilac za jezik C na novi hardver i da izradim dodatke korisničkog sučelja za GNU-ov Emacs. (Ta poboljšanja, kada su gotova, nudim javnosti.) Također držim i predavanja za koja sam plaćen.
Nisam sam u ovome načinu rada, sada postoji uspješna, rastuća korporacija koja ne radi nikakvu drugu vrstu posla. Više drugih tvrtki isto tako pružaju komercijalnu podršku za slobodan softver sustava GNU. To je začetak gospodarske grane za neovisnu softversku podršku—gospodarske grane koja bi mogla postati prilično velika ukoliko slobodan softver postane dominantan. To korisnicima pruža mogućnost koja, osim za one vrlo bogate, uglavnom nije dostupna kod vlasničkog softvera.
Nove ustanove kao što je Zaklada za slobodan softver također mogu financirati programere. Većina novčanih sredstava Zaklade dolazi od korisnika koji poštom kupuju magnetske trake. Softver na trakama je slobodan, što znači da svaki korisnik ima slobodu kopirati ga i mijenjati, no svejedno mnogi plaćaju da bi dobili kopije. (Prisjetite se da se “slobodan softver” odnosi na slobodu, ne na cijenu.) Neki korisnici koji već imaju kopiju naručuju trake kao način davanja priloga za kojeg misle da ga zaslužujemo. Zaklada isto tako prima i značajne donacije od proizvođača računala.
Zaklada za slobodan softver je neprofitna i njezin prihod troši se na zapošljavanje što je moguće više programera. Da je postavljena kao poduzeće, koje distribuira javnosti isti slobodan softver za istu naknadu, sada bi svojem osnivaču osiguravala vrlo dobre prihode.
Zato što je Zaklada osnovana kao neprofitna, programeri često rade za Zakladu u pola cijene koju bi mogli postići drugdje. Čine to zbog toga što nemamo birokraciju, a i zbog toga što osjećaju zadovoljstvo znajući da korištenje njihovog rada neće biti ometano. Najviše od svega, čine to zato što je programiranje zabavno. Dodatno, volonteri su za nas napisali mnogo korisnih programa. (Čak su i pisci tehničke dokumentacije počeli volontirati.)
Ovo potvrđuje da je područje programiranja najviše očaravajuće od svih područja, zajedno s glazbom i umjetnošću. Ne moramo se plašiti da nitko neće htjeti programirati.
Što korisnici duguju razvijateljima?
Postoji dobar razlog da korisnici softvera osjećaju moralnu obavezu doprinijeti njegovom razvoju. Razvijatelji slobodnog softvera doprinose radu korisnika, tako da je i pošteno i u dugoročnom interesu korisnika financirati ih kako bi nastavili.
Međutim, ovo se ne odnosi na razvijatelje vlasničkog softvera, budući da opstruktivnost zaslužuje kaznu, a ne nagradu.
Stoga imamo paradoks: razvijatelj slobodnog softvera ima pravo na podršku korisnika, no bilo kakav pokušaj da se ova moralna dužnost pretvori u uvjet razara temelje za ovu dužnost. Razvijatelj može ili zaslužiti nagradu ili je zahtijevati, ali ne može oboje.
Vjerujem da etički razvijatelj suočen s ovim paradoksom mora djelovati tako da zasluži nagradu, no trebao bi i moliti korisnike za dobrovoljne donacije. Na kraju će korisnici naučiti podržavati razvijatelje bez prisile, jednako kako su naučili podržavati javne radio i televizijske postaje.
Što je softverska učinkovitost?
Kada bi softver bio slobodan, i dalje bismo imali programere, no možda bi ih bilo manje. Bi li to bilo loše za društvo?
Ne nužno. Danas napredne države imaju manje poljoprivrednika nego 1900. godine, no ne mislimo da je to loše za društvo, zato jer manje njih proizvodi više hrane za potrošače nego što je prije činilo njih više. To nazivamo poboljšanom učinkovitošću. Slobodan softver bi zahtijevao daleko manje programera da bi se zadovoljila potreba, zbog povećane softverske učinkovitosti na svim razinama:
- Šira upotreba svakog razvijenog programa.
- Mogućnost prilagođavanja postojećih programa umjesto započinjanja ispočetka.
- Bolje obrazovanje programera.
- Uklanjanje podvostručenog truda prilikom razvijanja.
Oni koji prigovaraju suradnji tvrdeći da bi rezultirala zapošljavanjem manje programera zapravo prigovaraju povećanoj učinkovitosti. Usprkos tome, ti ljudi uglavnom prihvaćaju široko rasprostranjeno uvjerenje da je softverskoj industriji potrebna veća učinkovitost. Kako to?
“Softverska učinkovitost” može značiti dvije različite stvari: ukupnu učinkovitost cjelokupnog softverskog razvoja, ili učinkovitost pojedinačnih projekata. Ukupna učinkovitost je ono što bi društvo željelo da se poveća, a najizravniji način da se to učini je da se uklone umjetne prepreke suradnji koje smanjuju tu učinkovitost. No, istraživači koji proučavaju područje “softverske učinkovitosti” usredotočuju se samo na ovaj drugi, ograničeni, smisao tog izraza, gdje poboljšanje zahtijeva težak tehnički napredak.
Je li konkurencija neizbježna?
Je li neizbježno da se ljudi pokušavaju natjecati, nadmašiti svoje suparnike u društvu? Možda jest. No konkurencija sama po sebi nije štetna, štetna stvar je borba.
Postoji mnogo načina na koje se moguće natjecati. Natjecanje se može sastojati od pokušaja da uvijek postignemo više, da nadmašimo ono što su drugi učinili. Na primjer, nekada, natjecanje se odvijalo među programerskim čarobnjacima—natjecanje u tome tko može natjerati računalo da napravi najnevjerojatniju stvar ili u tome tko može napraviti najkraći ili najbrži program za određeni zadatak. Ovakva vrsta natjecanja donosi dobrobit svakome, tako dugo dok se održava fer sportski duh.
Konstruktivno natjecanje je dovoljno da bi motiviralo ljude za velike napore. Mnogi ljudi natječu se kako bi bili prvi koji su posjetili sve zemlje svijeta, neki čak troše bogatstvo pokušavajući to učiniti. No, ne podmićuju kapetane brodova da nasuču svoje rivale na puste otoke. Zadovoljni su time da najbolji pobijedi.
Natjecanje postaje borba kada natjecatelji počnu pokušavati ometati jedni druge umjesto da sami napreduju—kada izraz “Neka najbolji pobijedi” ustupi mjesto izrazu “Hoću pobijediti, bio najbolji ili ne.” Vlasnički softver štetan je, ne zato što je to oblik natjecanja, nego zato što je to oblik borbe među građanima našeg društva.
Natjecanje u poslu nije nužno borba. Na primjer, kada se trgovine mješovitom robom natječu, sav njihov napor usmjeren je na poboljšavanje vlastitog djelovanja, ne na sabotažu suparnika. No, ovo nije iskazivanje posebne posvećenosti poslovnoj etici, prije je to zato što je, osim fizičkog nasilja, malo prostora za borbu u toj vrsti posla.Ne dijele sva poslovna područja ovu osobinu. Zadržavanje informacije koja bi mogla svima pomoći da napreduju oblik je borbe.
Poslovna ideologija ne priprema ljude da se odupru iskušenju borbe s konkurencijom. Neke vrste borbe izbačene su antitrustovskim zakonima, istinom u zakonima o oglašavanju i slično, ali umjesto da to uopće u načelno odbacivanje borbe općenito, direktori su izmislili druge oblike borbe koji nisu posebno zabranjeni. Resursi društva rasipaju se u ekonomskom ekvivalentu frakcijskog građanskog rata.
“Zašto se ne preseliš u Rusiju?”
U Sjedinjenim Državama, svaki zagovornik bilo čega osim krajnjeg oblika laissez-faire sebičnosti često je čuo ovakvu optužbu. Na primjer, uperena je protiv onih koji podržavaju nacionalni sustav zdravstvene skrbi, kakav postoji u svim drugim industrijaliziranim narodima svijeta. Uperena je protiv javne podrške umjetnosti, također zajedničke svim naprednim narodima. Pomisao da građani imaju bilo kakvu dužnost prema javnom dobru u Americi je izjednačena s komunizmom. No, koliko su te ideje zaista slične?
Komunizam kakav je primjenjivao Sovjetski savez bio je sustav središnje kontrole gdje je sva djelatnost bila jednoobrazna, navodno za opće dobro, no zapravo uime članova Komunističke partije. Isto tako je oprema za kopiranje bila strogo čuvana kako bi se spriječilo ilegalno kopiranje.
Američki sustav softverskih autorskih prava primjenjuje središnju kontrolu nad distribucijom programa i čuva opremu za kopiranje automatskim sustavima zaštite od kopiranja kako bi spriječio ilegalno kopiranje.
Suprotno tome, ja radim na tome da izgradim sustav u kojem su ljudi slobodni odlučiti o svojim djelovanjima, a naročito, slobodni pomoći svojim susjedima i slobodni izmijeniti i poboljšati alate koje koriste u svakodnevnom životu. Sustav temeljen na dobrovoljnoj suradnji i na decentralizaciji.
Dakle, ako ćemo suditi gledišta po njihovim sličnostima ruskom komunizmu, vlasnici softvera su ti koji su komunisti.
Pitanje pretpostavki
U ovom dokumentu krećem od pretpostavke da korisnik softvera nije manje važan od autora, ili čak autorovog poslodavca. Drugim riječima, njihovi interesi i potrebe imaju jednaku težinu, kada odlučujemo koji je pravac djelovanja najbolji.
Ova pretpostavka nije općeprihvaćena. Mnogi se drže toga da je autorov poslodavac bitno važniji od bilo koga drugog. Kažu, na primjer, da je smisao vlasništva nad softverom davanje autorovom poslodavcu prednosti koju zaslužuje—bez obzira na to kako to može utjecati na javnost.
Nema koristi od pokušaja dokazivanja ili pobijanja ovih pretpostavki. Dokaz zahtijeva dijeljene pretpostavke. Stoga je većina onoga što imam za reći namijenjeno samo onima koji dijele moje pretpostavke, ili ih barem zanima koje su njihove posljedice. Za one koji vjeruju da su vlasnici važniji od svih drugih, ovaj dokument je jednostavno beznačajan.
No, zašto bi veliki broj Amerikanaca prihvatio pretpostavku kojom se određeni ljudi po važnosti izdižu iznad svih drugih? Djelomično zbog uvjerenja da je ova pretpostavka dio pravne tradicije američkog društva. Neki ljudi misle da dovođenje te pretpostavke u pitanje znači izazov temeljima društva.
Važno je da ti ljudi shvate da ove pretpostavke nisu dio naše pravne tradicije. Nikada nisu niti bile.
Dakle, Ustav kaže da je smisao autorskih prava “promicati napredak znanosti i korisnih umjetnosti.” Vrhovni sud pojasnio je to, izjavljujući u slučaju Fox Filma protiv Doyala da “jedini interes Sjedinjenih Država i prvenstveni cilj dodjeljivanja monopola [autorskih prava] leži u općim dobrobitima koje javnost dobiva od truda autora.”
Od nas se ne zahtijeva da se složimo s Ustavom ili Vrhovnim sudom. (U jednom trenutku, oboje su dopuštali ropstvo.) Dakle, njihovi stavovi ne pobijaju pretpostavku nadmoćnosti vlasnika. No, nadam se da će svijest o tome da je to pretpostavka radikalno desnog krila, a ne tradicionalno priznata pretpostavka, oslabiti njenu privlačnost.
Zaključak
Želimo vjerovati da naše društvo potiče pomaganje svojem susjedu, no svaki put kada nagradimo nečiju opstruktivnost, ili se divimo nečijem bogatstvu koje su stekli na ovaj način, šaljemo suprotnu poruku.
Škrtarenje softverom jedan je oblik naše opće voljnosti da zanemarimo blagostanje društva u zamjenu za osobnu dobit. Možemo to zanemarivanje pratiti od Ronalda Reagana do Dicka Cheneya, od Exxona do Enrona, od neuspješnih banaka do neuspješnih škola. Možemo ga mjeriti veličinom beskućničke populacije i zatvorske populacije. Protudruštveni duh hrani se sam sobom, jer što više vidimo da nam drugi ljudi ne žele pomoći, više se uzaludnim čini da mi pomognemo njima. Time se društvo raspada u džunglu.
Ne želimo li živjeti u džungli, moramo promijeniti naše stavove. Moramo početi slati poruku da je dobar građanin onaj koji surađuje kada je to svrsishodno, a ne onaj koji je uspješan u uzimanju od drugih. Nadam se da će pokret za slobodan softver tome doprinijeti: barem u jednom području, zamijenit ćemo džunglu efikasnijim sustavom koji potiče i funkcionira na dobrovoljnoj suradnji.
Fusnote
- Riječ “slobodan” u izrazu “slobodan softver” odnosi se na slobodu, a ne na cijenu; cijena plaćena za primjerak slobodnog programa može biti nula, ili mala, ili (rijetko) prilično velika.
- Problemi zagađenja i prometne zagušenosti ne mijenjaju ovaj zaključak. Želimo li vožnju učiniti skupljom kako bismo destimulirali vožnju općenito, nepovoljno je to učiniti upotrebom naplatnih kućica, koje doprinose i zagađenju i zagušenju. Porez na gorivo mnogo je bolji. Jednako tako, želja da poboljšamo sigurnost ograničavajući najveću dozvoljenu brzinu nebitna je; cesta sa slobodnim pristupom povećava prosječnu brzinu izbjegavanjem zaustavljanja i zadržavanja, za bilo koje ograničenje brzine.
- Netko može smatrati određeni računalni program nečim štetnim što ne bi smjelo uopće biti dostupno, kao što je baza podataka osobnih informacija Lotus Marketplace, koja je povučena iz prodaje zbog neodobravanja javnosti. Većina onoga što govorim ne odnosi se na ovaj slučaj, ali nema previše smisla prepirati se zbog postojanja vlasnika na temelju toga da će vlasnici uzrokovati manju dostupnost programa. Vlasnik ga neće učiniti potpuno nedostupnim, kao što bismo željeli u slučaju programa čije se korištenje smatra štetnim.
Ovaj esej je objavljen u Free Software, Free Society: The Selected Essays of Richard M. Stallman.