Kategorije prostega in neprostega programja

Zavedajte se tudi besed, ki povzročajo zmedo in bi se jih morda raje izogibali.

 [Kategorije programja]

Ta diagram Chao-Kueia pojasnjuje različne kategorije programja. Na voljo je kot datoteka za XFig, kot slika JPEG in kot slika PNG.

Prosto programje

Prosto programje (angl. free software) je programje, ki ga je vsakomur dovoljeno uporabljati, kopirati in razširjati, bodisi dobesedno ali s spremembami, bodisi zastonj ali proti plačilu. To še posebej pomeni, da mora biti izvorna koda dostopna. „Če ni kode, ni programja.” To je poenostavljena definicija; glejte tudi polno definicijo prostega programja.

Če je program prost, ga je potencialno mogoče vključiti v prost operacijski sistem, kot je GNU, ali proste različice sistema GNU/Linux.

Obstaja mnogo različnih načinov, da program postane prost – mnogo je podrobnosti, ki so lahko rešene na več kot en sam način, pa še vedno naredijo program za prost. Nekaj možnih variacij je opisanih spodaj.

Prosto programje je stvar prostosti, ne cene. Vendar podjetja, ki izdelujejo lastniško programje, včasih uporabljajo izraz „prosto programje”, ko govorijo o ceni. Včasih s tem mislijo, da lahko dobite binarni izvod programa brezplačno; včasih mislijo, da je izvod vključen v računalniku, ki ga kupujete. To nima ničesar opraviti s tem, kar pri projektu GNU razumemo pod pojmom prosto programje.

Zaradi te morebitne zmede vedno, kadar programska hiša pravi, da je njen izdelek prosto programje, preverite resnične pogoje za razširjanje, da vidite, ali imajo uporabniki res vse svoboščine, ki jih implicira prosto programje. Včasih je to res prosto programje; včasih pa ne.

Mnogo jezikov ima dve različni besedi za „prosto” kot v pojmu prostost in „prosto” kot v pojmu prost vstop. Na primer, francoščina ima „libre” in „gratuit”. Angleščina ima besedo „gratis”, ki se nedvoumno nanaša na ceno, vendar nima uporabnega pridevnika, ki bi se nedvoumno nanašal na prostost. To je žalostno, saj bi bila takšna beseda tu uporabna. (Na voljo je seznam prevodov izraza “prosto programje” v različne druge jezike.)

Prosto programje je pogosto bolj zanesljivo kot neprosto programje.

Odprto programje

Izraz „odprto programje” (tudi odprta koda, angl. open source) uporabljajo nekateri ljudje, ko želijo opisati bolj ali manj isto stvar kot je prosto programje. Vendar je ta kriterij nekaj manj strog; sprejeli so nekatere vrste licenčnih omejitev, ki smo jih mi zavrnili kot nesprejemljive.

Raje imamo izraz „prosto programje”, angl. free software; sledite povezavi, če vas zanimajo razlogi.

Programje v javni lasti

Programje v javni lasti (angl. public domain software) je programje, ki pravno ni zaščiteno. Če je izvorna koda v javni lasti, je to poseben primer prostega programja, ki ni izdano pod načelom „copyleft”, kar pomeni, da nekateri izvodi ali spremenjene različice sploh niso prosti.

V nekaterih primerih je izvedljivi program lahko v javni lasti, vendar izvorna koda ni dostopna. To ni prosto programje, saj prosto programje zahteva dostopnost izvorne kode. Obenem večina prostega programja ni v javni lasti; je pravno zaščitena, in imetniki pravic razširjanja so vsem dali pravno dovoljenje, da ga prosto uporabljajo, z uporabo proste programske licence.

Včasih ljudje uporabljajo izraz „programje v javni lasti” v ohlapnem pomenu, ko zares mislijo mean „prosto” ali „na voljo zastonj”. Vendar je „javna last” pravni izraz in pomeni, natančno gledano, „ni pravno zaščiten”. Zaradi jasnosti svetujemo, da uporabljate „javno last” le v tem pomenu, in za opise drugih pomenov uporabljate druge izraze.

Programi, izdani pod načelom „copyleft”

Programje, izdano pod načemom „copyleft” (angl. copylefted software) je prosto programje, katerega pogoji razširjanja ne dovolijo distributerjem, da bi med širjenjem ali spreminjanjem programja dodali dodatne omejitve. To pomeni, da mora biti vsak izvod programja, tudi če je bil spremenjen, prosto programje.

V projektu GNU izdamo pod načelom „copyleft” skoraj vse programje, ki ga napišemo, saj je naš cilj dati vsakemu uporabniku svoboščine, ki jih implicira izraz „prosto programje”. Za daljšo razlago o tem, kako deluje in kako uporabljamo „copyleft”, glejte spis Kaj je copyleft?

Copyleft je splošno načelo; če želite izdati program pod načelom „copyleft”, morate uporabiti določen nabor pogojev razširjanja. Obstaja mnogo načinov kako napisati pogoje razširjanja, skladne z načelom „copyleft”, zato lahko v principu obstaja mnogo licenc prostega programja, skladnih s tem načelom. Vendar v praksi skoraj vse programje, izdano pod načelom „copyleft”, uporablja licenco GNU General Public License. Dve različni licenci vrste copyleft sta navadno „nezdružljivi”, kar pomeni, da združevanje kode, ki uporablja eno licenco, s kodo, ki uporablja drugo licenco, ni zakonito; torej je dobro za skupnost, da ljudje uporabljajo eno samo licenco, skladno z načelom „copyleft”.

Prosto programje, ki ni izdano pod načelom „copyleft”

Prosto programje, ki ni izdano pod načelom „copyleft” (angl. non-copylefted free software) od avtorjev prihaja s pravico razširjanja in spreminjanja, in tudi z dodajanjem dodatnih pogojev.

Če je program prost, vendar ni izdan pod načelom copyleft, nekateri izvodi ali spremenjene različice morda sploh niso več proste. Programska hiša lahko prevede program, s spremembami ali brez njih, in razširja izvedljivo datoteko kot lastniški programski izdelek.

To ponazarja okenski sistem X Window System. Konzorcij X izdaja X11 s pravicami razširjanja, ki ga naredijo za prosto programje, ki ni izdano pod načelom copyleft. Če želite, lahko dobite izvod, ki ima te pogoje razširjanja in ta je prost. Vendar obstajajo tudi neproste različice, in za nekatere popularne delovne postaje in grafične kartice za PC so te neproste različice edine, ki delujejo. Če uporabljate to strojno opremo, X11 za vas ni prosto programje. Razvijalci X11 so X11 za nekaj časa celo naredili za neprosto programje.

Programi izdani pod licenco GPL

Licenca GNU GPL (General Public License) je določen nabor pogojev razširjanja za izdajanje programja skladno z načelom „copyleft”. Projekt GNU jo uporablja kot pogoje razširjanja za večino programja GNU.

Operacijski sistem GNU

Sistem GNU je popoln prost, Unixu podoben, operacijski sistem.

Unixu podoben sistem sestoji iz mnogih programov. Sistem GNU vključuje vse programje GNU, kot tudi mnoge druge pakete, kot sta okenski sistem X in TeX, ki nista programje GNU.

Komponente za sistem GNU razvijamo in zbiramo od leta 1984; prva testna izdaja „popolnega sistema GNU” je bila v letu 1996. Leta 2001 je sistem GNU z jedrom Hurd začel delati zanesljivo. Medtem je sistem GNU/Linux, veja sistema GNU, ki kot jedro uporablja Linux, v 1990-ih postal velika uspešnica.

Ker je cilj GNU ta, da je prost, mora biti vsaka posamezna komponenta sistema GNU prosto programje. Da bi veljale za prosto programje, pa ni treba, da bi bile vse izdane pod načelom copyleft; pravno gledano je mogoče vključiti katerokoli prosto programje, če pomaga izpolniti naše tehnične cilje.

Programi GNU

Pojem „programi GNU” (angl. GNU programs) je ekvivalenten programju GNU. Program Foo je program GNU, če je programje GNU. Včasih tudi rečemo, da je „paket GNU”.

Programje GNU

Programje GNU (angl. GNU software) je programje, ki je izdano pod okriljem projekta GNU. Če je program del programja GNU, pravimo tudi, da je program GNU. Večina programja GNU je izdanega pod načelom copyleft, vendar ne vse; vse programje GNU pa mora biti prosto programje.

Večina programja GNU je izdanega pod načelom copyleft, vendar ne vse; vse programje GNU pa mora biti prosto programje.

Nekatero programje GNU napiše osebje ustanove Free Software Foundation, vendar večino programja GNU prispevajo prostovoljci. Nekaj prispevanega programja je pravno zaščitila ustanova Free Software Foundation; nekaj so ga pravno zaščitili njegovi pisci.

Neprosto programje, lastniško programje

Neprosto (lastniško) programje je programje, ki ni niti prosto. Njegova raba, razširjanje in spreminjanje so prepovedani ali zahtevajo, da vprašate za dovoljenje, ali so omejeni do te mere, da tega v resnici ne morete početi.

Ustanova Free Software Foundation upošteva pravilo, da na svoje računalnike ne moremo namestiti nobenega lastniškega programa, razen začasno za specifičen namen pisanja prostega nadomestka za prav ta program. Razen tega, se nam zdi, da ni možnega opravičila za namestitev lastniškega programa.

V 1980-ih letih se nam je, na primer, zdelo upravičeno, da smo namestili Unix v svoj računalnik, saj smo ga uporabljali za pisanje prostega nadomestka za Unix. Dandanes, ko so dostopni prosti operacijski sistemi, ta izgovor ne velja več; odstranili smo vse ne-proste operacijske sisteme, in vsak nov računalnik, ki ga namestimo, mora poganjati popolnoma prost operacijski sistem.

Ne vztrajamo, da morajo uporabniki sistema GNU ali avtorji prispevkov k temu sistemu, živeti s tem pravilom. To je pravilo, ki smo ga postavili sebi. Vendar upamo, da se boste odločili in mu tudi vi sledili.

Zastonjsko programje

Izraz „zastonjsko programje” (angl. freeware) nima jasno sprejete definicije, vendar se pogosto uporablja za pakete, ki dovoljujejo razširjanje, vendar ne spreminjanja (in njihova izvorna koda ni na voljo). Ti paketi niso prosto programje, zato prosimo ne uporabljajte „zastonjsko programje” pri sklicevanju na „prosto programje” (angl. free software).

Programi na pokušino

Programje na pokušino (angl. shareware) je programje, ki ljudem dovoljuje razširjanje izvodov, vendar pravi, da vsakdo, ki želi še naprej uporabljati izvod, mora plačati licenčnino.

Programje na pokušino ni niti prosto programje, niti napol-prosto. Dva razloga sta, da ni:

Komercialno programje

Komercialno programje (angl. commercial software) je programje, ki ga razvija podjetje, s ciljem zaslužiti pri rabi programja. „Komercialno” in „lastniško” nista ista stvar! Večina komercialnega programja je lastniškega, vendar obstaja komercialno prosto programje, in obstaja nekomercialno neprosto programje.

Na primer, GNU Ada se vedno razširja pod pogoji GNU GPL, in vsak izvod je prosto programje; vendar njeni razvijalci prodajajo pogodbe za podporo. Ko njihovi prodajni zastopniki govorijo z morebitnimi kupci, včasih kupci rečejo, „Varneje bi se počutili s komercialnim prevajalnikom”. Prodajalec odgovori, „GNU Ada je komercialni prevajalnik; slučajno je tudi prosto programje”.

Za projekt GNU je poudarek v drugem vrstnem redu; pomembno je, da je GNU Ada prosto programje; ali je komercialno ni ključno vprašanje. Vendar je hitrejši razvoj GNU Ade, ki je rezultat tega, da je komercialna, vsekakor koristen.

Prosimo pomagajte razširjati zavest, da je komercialno prosto programje mogoče. To lahko storite tako, da se potrudite in ne rečete „komercialno”, ko mislite „lastniško”.