Slobodna programska podrška
Izvor: Wikipedija
Slobodna programska podrška (ili slobodan softver) je softver koji se može koristiti, proučavati i modificirati bez ograničenja, te kopirati i distribuirati bez ili s minimalnim ograničenjima. Ona tada služe samo tome da se i daljnjim korisnicima osiguraju iste navedene mogućnosti, a u nekim slučajevima i da im u tu svrhu proizvođači hardvera moraju dopustiti pristup hardveru i njegovo mijenjanje.
U praksi, kako bi softver mogao biti distribuiran kao slobodan, potreban je pristup njegovu - čovjeku razumljivu - obliku (izvornom kodu) uz naznaku gore navedenih povlastica. Ta naznaka je ili licenca za slobodan softver, ili izjava da je izvorni kod predan u javno vlasništvo.
Sadržaj |
[uredi] Povijest
U ranim danima informatike softver se slobodno dijelio i mijenjao među malobrobrojnim korisnicima računala na sveučilištima, istraživačkim laboratorijima, institutima te vladinim organizacijama. U tim ranim danima sav softver je bio slobodan. Tek krajem 70-ih godina 20. stoljeća pojedine su tvrtke (među kojima prednjači Microsoft), bojeći se konkurecnije, počele zatvarati izvorni kod i licencirati svoj softver tako da ograničava slobodu korisnika. Taj model je vrlo brzo prihvatila većina informatičke industrije. Nasuprot tom modelu, 80-tih godina 20. stoljeća nastao je pokret koji se zalaže za ponovno uvođenje slobodnog softvera u svakodnevni rad. Taj pokret utemeljio je Richard Stallman, no i prije njega je postojao slobodan softver (npr. BSD).
[uredi] Slobode
Slobodni softver ukazuje na slobodu korisnika da pokreće, presnimava, distribuira, proučava, mijenja i poboljšava softver. Još određenije, ukazuje na četiri vrste sloboda za korisnike softvera[1]:
- Sloboda pokretanja programa, u bilo koje svrhe (sloboda 0).
- Sloboda proučavanja rada programa, i prilagodbe istog vašim potrebama (sloboda 1). Pristup izvornom kodu preduvjet je za to.
- Sloboda distribuiranja presnimaka, da biste mogli pomoći svomu bližnjemu (sloboda 2).
- Sloboda poboljšavanja programa i ustupanje vaših poboljšaka javnosti, za blagodat cijele zajednice (sloboda 3). Pristup izvornom kodu preduvjet je za to.
Program je slobodni softver ako korisnici istog imaju sve te slobode. Prema tome, možete slobodno distribuirati presnimke, s preinakama ili bez njih, bez naplate ili s naplatom troškova distribucije, svakome svugdje. Biti slobodnim činiti sve to znači (između ostalog) da ne morate tražiti dopuštenje ni platiti za njega.
[uredi] Primjeri
- autor programa može dati svoj kôd javnosti na uporabu. Prevođenje izvornog koda u strojni jezik pravo je korisnika
- autor koda može dati javnosti osim izvornog koda i prevedeni kod za jednu (ili više) hardverskih platformi/operacijskih sustava
- autor može dati kod javnosti besplatno na korištenje, a može naplaćivati prevedene programe koje je on sam preveo (primjer je Xchat IRC klijent, koji ima otvoreni kod, izvršna inačica za Linux također je besplatna, dok se inačica za Windows OS naplaćuje. No, budući da je izvorni kod besplatan, postoje na Internetu i neslužbene inačice za Windows, koje su besplatne za korištenje.)
- autor (ili druge osobe/tvrtke) mogu naplaćivati medij, odnosno tiskane upute/priručnike na kome distribuiraju programe/izvorni kod slobodnog softvera, odnosno koji se prodaju zajedno u paketu
[uredi] Licence
U svrhu osiguravanja gore navedenih sloboda korisnika, koriste se razne licence za programsku podršku. Njih se svrstava u svije osnovne kategorije:
- Permissive (engl. dopuštajuće) licence
Softver pod ovakvom licencom obično nema nikakvih restrikcija osim spomena autora, pa se tako može koristiti i u ne-slobodnim projekatima, ili čak promijeniti te izdati pod drugom licencom, kod čega se u oba slučaja, gube gornje četiri slobode. Najistaknutiji primjeri ovakve licence su BSD i MIT licenca. - Copyleft licence
Softver pod copyleft licencom garantira da će slobode biti jamčene i u slučaju mijenjanja koda, i u nekim slučajevima, korištenja (npr. biblioteke). Takav je slučaj sa jednom od najpoznatijih i najšire korištenih licenci za slobodan kod: GPL. Druge poznate licence koje spadaju pod ovu kategoriju su LGPL, MPL, Apache License i sl.
Postoje i druge licence, koje mogu pružati manje sloboda, no onda se ne govori o licencama slobodnog koda (iako mogu spadati pod licence otvorenog koda, kao što je to slučaj s NOSA licencom), već u ne-slobodnim ili proprietary licencama (npr. Microsoftov EULA, koja djelomično pruža samo nultu slobodu).