Odprta koda in prosto programje
Takole, glede na zadnja dogajanja na Slo-Techu, se bom malo razpisal o odprti kodi in prostem programju. Tako, poljudno znanstveno, za slehernika.
Kaj to sploh je? Najprej od približnega začetka. Kaj so licence in pravica do uporabe programske opreme? Metka se odpravi v trgovino in si kupi najnoveši CD programa Janko 3.11. Kaj je kupila Metka? CD? Program? Program na CDju? Je Janko 3.11 zdaj njen? V večini, skoraj v vseh primerih je odgovor na ta vprašanja ne. Sedaj se pa zakomplicira.
Metka si namesti svoj program Janko 3.11 na računalnik in med nameščanjem sprejme pogodbo (EULA). Le-ta, pa ji pove kakšne pravice ima, če jih sploh ima, Metka pri uporabi programa Janko 3.11. Hipotetično gledano, če je Janko 3.11 operacijski sistem, ki ga je naredilo podjetje Microsoft, potem so Metkine pravice precej omejene. V večini primerov dobi Metka precej omejeno pravico uporabe programa Janko 3.11. Uporablja ga lahko samo na tem računalniku kamor ga je namestila in uporablja ga lahko samo ona. Torej, lastnik programa je Microsoft, Metka je pa zgolj pridobila pravico za uporabo s tem, ko je kupila CD s programom. Pravico do uporabe bi lahko pridobila še na kak drug način, ni bila obvezana, da kupi ta CD.
Precej žalostno, sploh, če se človek zaveda, da se Microsoft, takrat, ko uporabnik sprejme njihovo pogodbo, ponavadi se za sprejetje pogodbe šteje odpiranje ovitka v katerem je CD, če je bila poleg priložena papirnata različica pogodbe ali pa klikanje na gumb ‘I AGREE’ (Se Strinjam) med samo namestitvijo programa, odreče vsem odgovornostim, za katere bi jih uporabnik utegnil kriviti, če bi se mu kaj pripetilo pri uporabi njihovega programa.
Po domače povedano Microsoft vam pove: ‘Mi nismo krivi za nič. Če uporabljate naš software, ste si krivi sami, nihče vas ni silil, če vam je ob uporabi našega programa odtrgalo roko, glavo ali nogo je to vaš problem, če vam je ubilo taščo prav tako, če ste ob največji posel, ker je crknil naš program, je to vaš problem, ne naš. Lahko se zjokate, lahko cepetate z nogami in si grizete prste, lahko tudi postrelite vaše bližnje ampak prej ste pritisnili I AGREE in sedaj je to vaš problem. Imejte to nekje v glavi, da ne bo potem jokanja in stokanja. Aja, še ta malenkost je, pogoji te pogodbe se lahko s kakim popravkom programa, ki ga utegnete namestiti kasneje, spremenijo. Teoretično vam lahko vzamemo tudi pravico do uporabe programa, če se nam tako zahoče. Ampak, vi se itak strinjate s tem.’
Kdaj ste pa vi nazadnje prebrali EULA? No, z izjemo zadnjih treh stavkov ima tudi večina prostega programja precej podobno licenco. Z nekaj temeljnimi razlikami. Tukalje se bom omejil na GNU GPL licenco.
GNU GPL licenca vam daje štiri temeljne pravice:
- pravico do poganjanja programa za kakršenkoli namen
- pravico do preučevanja programa, kako deluje in spreminjanja programa
- pravico do redistribucije programa
- pravico do izboljševanja programa in objavo izboljšav
S takoimenovanimi zaprto kodnimi rešitvami in programi v večini primerov ne dobite niti ene od teh pravic. Poleg vsega tega vas GPL licenca ne omejuje pri prodaji GPL programov in pri prodaji storitev, ki so povezane z GPL programjem.
Ej stari, u čemu je keč? V bistvu je finta. Precej dobra finta. Cela finta je pa v tem, da so vam vse te štiri pravice dane le pod pogojem, da se prenašajo naprej. Torej, GPL program lahko distribuirate naprej ampak samo pod točno istimi pogoji. Torej, če daste kopijo programa prijatelju, ga lahko on spet prekopira in ga da še nekomu drugemu. Prav tako je s popravki programa, če ga popravite in popravke javno objavite (niste zavezani javno objavljati popravkov, če jih uporabljate v lastne namene, jih lahko po mili volji uporabljate), potem morajo biti ti popravki na voljo pod enakimi pogoji.
Kaj pa slaba stran tega? Sigurno je, nikoli ni nič tako zelo rožnato, kot se sliši. Slaba stran tega je, da bi podjetje, ki bi prodajalo svoje programe z GPL licenco moralo temeljito pretresti svoj poslovni model in služiti kruh s prodajo podpore in drugih storitev okrog njihovega programja. Denarja od prodaje licenc, bi bilo verjetno manj, kot, če bi prodajali zaprto kodno rešitev. Kako nadoknaditi to izgubo?
Ena rešitev je, da poleg samega programa podjetje proda še nekaj bolj fizično oprijemljivega, recimo lična škatla v kateri je program in ena tona literature. Potem je tukaj določeno število podpore uporabnikom, ki jo lahko ponudijo in še kup drugih storitev. Res je, GPL licenca ni za vsakogar.
Precej zmotno pa je mišljenje, da je GPL licenca v nasprotju s kapitalizmom. Daleč od tega, je zgolj naslednja stopnja v evoluciji le-tega. Kdor se mu bo prilagodil, bo preživel, kdor pa ne, pa bo hočeš nočeš izumrl ali pa se bo moral zadovoljiti z manjšim deležem na trgu.
Trenutno imamo na voljo prosto dostopne operacijske sisteme, prosto dostopne pisarniške pakete, spletne brskalnike, programe za prebiranje elekronske pošte, programe za obdelavo fotografij in glasbe… prosto dostopni programi lahko v tem trenutku zadovoljijo potrebam vsaj 80% uporabnikov računalnikov. Morda celo več.
Torej, kaj sploh še ostane velikim? Ta trenutek je to enormna količina uporabnikov, monopolni položaj na trgu in pa navada uporabnikov.
Stvari se spreminjajo, nekateri si želimo le odprtih standardov in poštene igre drugih proizvajalcev, svoje programe naj kar obdržijo zaprte in kar se mene tiče lahko še bolj omejijo pravice uporabnikov. Nas to ne moti, bomo napisali boljše programe in jih ponudili uporabnikom. Noben od ta velikih si ne upa oditi na čisti dvoboj, s pravili, ki veljajo za vse. Morda, se pa preveč bojijo poraza.
Kdo ve…
7 thoughts on “Odprta koda in prosto programje”
No, lepo. 🙂
Vseeno pa imam komentarje/vprašanja:
> Mi nismo krivi za nič… če vam je ob uporabi našega programa odtrgalo roko, glavo ali nogo je to vaš problem, če vam je ubilo taščo prav tako, če ste ob največji posel, ker je crknil naš program, je to vaš problem, ne naš.
Hja, kaj ni pri GPL enako? Kdo tu prevzame odgovornost? Potem pa je tukaj še pravna vprašljivost GPL.
Če sem te prav razumel, s samim GPL programom *ne*smeš* zaslužit? Kaj ni ravno to odgovor na vprašanje “Zakaj večinoma taveliki profi programi niso GPL?”. Saj ni samo Microsoft, ki (dobro) živi od tega, tukaj je na tisoče podjetij in na stotisoče odličnih programerjev, ki (dobro) živijo od tega.
> Kdor se mu bo prilagodil, bo preživel, kdor pa ne, pa bo hočeš nočeš izumrl ali pa se bo moral zadovoljiti z manjšim deležem na trgu.
Ne vem. Jaz nisem tako prepričan. Maybe, we’ll see! Misliš, da je licenca res tisto ključno zaradi česar se end userji sekirajo? (čeprav se strinjam, da je GPL do njih bolj prijazna). Pomoje je to bolj cena (pa še to čedalje manj v dobi piratskih kopij), glavno pa pretehta kot si omenil “enormna količina uporabnikov, monopolni položaj na trgu in pa navada uporabnikov“.
“Nas to ne moti, bomo napisali boljše programe in jih ponudili uporabnikom.”
Kaj pa programi kot so MS Visual Studio & stuff? Microsoft ima se vedno programe, ki so boljši od odprtokodnih (jebiga)… Tako kot je rekel Marjan – bolje se da živeti z zaprto kodo…
Drugače pa super članek!
Marjan,
Odgovornost. Ja, GPL je enak. Mislim, da je ni, javne licence, ki bi programerja oziroma izdelovalca obvezovala in ga delala odgovornega za neko stvar. Povsem druga rec je software po narocilu in podobne pogodbe, tam so penali za izdelovalce precej pogosti. Saj sem zapisal, da je GPL boljsi v tem, da ti nudi vec svobode pri uporabi programske opreme.
Prodaja. Ne, nisi prav razumel. Ravno obratno. GPL program lahko prodajas in preprodajas naprej. Za kakrsnokoli ceno ti srce pozeli. Je pa res, da moras pa source programa ponuditi free-of-charge oziroma lahko zaracunas minimalne stroske distribucije, ce stranka zahteva source.
Sice pa imas cisto prav, kar se userjev in licenc tice, vecina se jih ne zaveda. Zato se trudim, dvigniti to zavest. Da bodo ljudje vedeli kaj kupujejo in kaj lahko pricakujejo. 🙂
—
Martin,
Ja, MS ima sigurno kak kos programske opreme boljsi od odprtokodnih razlicic. Analogija Visual Studiu je KDevelop, ki sicer ni tako dodelan ampak je za razvoj GNU/Linux programja, povsem dovolj. Jaz, ga ze precej casa uporabljam, pa sem kar zadovoljen z njim.
Čisto vredu članek. 🙂
Lahko bi samo še povdaril, da GPL koda ni le ‘free as in freedom’, ampak tudi ‘free as in beer’. To je eden glavnih adutov, omenjen pa je bil samo implicitno.
Hm, tukaj se pa motis. GPL je free as in freedom. To v prvi vrsti. Ni pa skoraj nikoli free as in beer, ker konec koncev moras placati racun svojemu internetnemu ponudniku.
Free as in beer pride ravno implicitno ne z licenco. Public Domain software je tudi free as in beer, ampak ni free as in speech.
> če vam je ob uporabi našega programa odtrgalo roko, glavo ali nogo je to vaš problem, če vam je ubilo taščo prav tako
Emmm, ravno pri temu to ne drži. 🙂 EULA vseeno ni neka hudo močna zadeva in če notri piše, da se z klikom “I AGREE” odpoveduješ vsem svojim pravicam in premoženju, to ne velja glih, e?
Stvari niso tako črne, kot se na prvi pogled zdi. Izključitev jamstva in odgovornosti je pod velikim vprašajem. Kar je določeno v GPL ali v kakšnem EULA, ni nujno, da je to tudi dopustno. Seveda, eno je dogovor, drugo pa je kršitev, ko moraš tožiti pred sodiščem. In prav pred sodiščem (slovenskim) bi se izkazalo, ali so posamezne določbe licenc dopustne ali ne. Tukaj naj opozorim, da so licence “izdelane” po vzoru ameriškega prava, kjer je izključitev jamstva in odgovornosti dopustna, medtem ko to pri nas splošno gledano ni tako liberalno, ampak je vedno določeno do kake stopnje je izključitev dopustna, seveda absolutna izključitev ni dopustna.
Comments are closed.