Open source

Open source tools

nyVon je aplikacija u potpunosti izgrađena pomoću open source alata i software-a. Na računalima kao operacijski sustav naši programeri koriste Ubuntu, dok je serverska razvojna okolina bazirana na Debian-u. Ovdje je opisano što je to open source software te koje su njegove prednosti.

Što je open source?

Sve software aplikacije su izgrađene od source code-a. Sorce code se sastoji od mnogo linija instrukcija koje programeri pišu kako bi ih računala mogla interpretirati. Te instrukcije kažu računalu što i kako da radi, a pisane su u nekom od programskih jezika.

Osnovna razlika između open source software-a i proprietary (vlasničkog) software-a je ta da je source code open source software-a besplatno i javno dostupan. Bilo tko može preuzeti source code, pregledavati ga i mijenjati ga u skladu sa vlastitim potrebama. Kod proprietary softwara pregled i editiranje koda nije moguće.

Programeri koji posjeduju znanje programskog jezika u kojemu je neka open source aplikacija napisana, moći će prilagoditi source code da se ponaša točno na način koji im odgovara. Međutim, krajnji korisnici koji jednostavno žele da aplikacija obavlja određeni zadatak također imaju znatne koristi od open source software-a.

Daljnji tekst članka opisuje beneficije koje otvoreni pristup source code-u pruža institucijama, krajnjim korisnicima i programerima.

Zašto koristiti open source?

Nebrojene su prednosti otvorenog koda (open source) u odnosu na zatvoreni (closed source). Slijedeći odjeljci otkrivaju najvažnije od tih prednosti.

Bug-fixing

Svaka verzija nekog software-a sadrži greške (bugove). Razvojni tim koji razvija software će otkloniti one veće i očitije, međutim svaki razvojni tim ima tek određenu količinu vremena za testiranje prije nego objavi novu verziju.

Kada se otkrije greška u proprietary software-u, jedini koji mogu ispraviti grešku su oni koji su aplikaciju inicijalno i razvili jer jedino oni imaju pristup source code-u. Kod open source-a to nije situacija. Pošto je kod dotupan za izmjene velikom broju korisnika, greške se puno lakše i prije uočavaju i brže otklanjaju.

Sigurnost

Često i brzo ispravljanja grešaka i nedostataka automatski znači i veću sigurnost samog programa. Dobar primjer su operacijski sustavi, gdje su Linux distribucije znatno sigurnije od Windows-a. Bolja organizacija prava pristupa korisnika te nedostatak virusa i ostalog zlonamjernog software-a samo su neki od razloga bolje sigurnosti.

Prilagodljivost

Aplikacije zatvorenog koda mogu se prilagoditi jedino do mjere definirane od strane originalnog prodavača, ali nikada izvan tih granica. Open source aplikacije može prilagođavati i mjenjati bilo tko sa odgovarajućim vještinama. Na taj način, open source software je spreman za prilagodbe kako bi zadovoljio specifične zahtjeve krajnjeg korisnika. Ukoliko sami ne posjedujete potrebna znanja, a potrebno vam je dodati ili prilagoditi djelove aplikacije, uvijek možete platiti nekome kako bi to učinio za vas. Velika konkurencija na tržištu (svi imaju pristup kodu) tjera developere da nude visoku kvalitetu za vrlo prihvatljivu cijenu.

Za poslovne tvrtke i obrazovne ustanove, mogućnost prilagodbe koda dozvoljava poboljšanja i implementaciju best practice rješenja na postojećim default instalacijama. Na taj način se unaprijeđuje učinkovitost te se stječe prednost nad konkurencijom.

Prijevodi

Sa otvorenim pristupom kodu lagano je prevesti jezik korisničkog sučelja. Veliki proizvođači komercijalnih closed source aplikacija često nisu voljni prevesti svoje proizvode na jezike koji nisu toliko zastupljeni u svijetu jer im to predstavlja premalo tržište za zaradu.

Nemojte zaglaviti

Danas ima puno organizacija koje su jednostavno zaglavile tj. vezane su za neko softversko rješenje koje je s vremenom zastarjelo i postalo neadekvatno, a u prelasku na neko bolje alternativno rješenje sprečava ih prevelika cijena prebacivanja.

Proizvođaći komercijalnog softwarea mogu prikovati korisnike za svoje proizvode na način da se trude biti nekompatibilni sa potencijalnim rivalima. Takvo poslovanje im daje mogućnost povećanja cijena nadogradnji i podrške bez prevelikog rizika od gubitka postojećih klijenata.

Pošto nema motivacije za korištenje nestandardnih formata da bi se spriječila kompatibilnost, open source zajednica njeguje korištenje standardnih formata otvorene prirode. Dakle, opasnost od “zaglavljivanja” je vrlo mala. Čak i ako se koriste nestandarni formati u open-source kodu, najčešće su dobro dokumentirani. S druge pak strane, zatvoreni formati korišteni u proprietary software-u moraju se reverzno izgraditi (reverse engineering) – težak, naporan i skup proces koji po potrebi treba ponavljati ukoliko se format promjeni.

Manji problemi u slučaju propadanja proizvođaća ili prestanka odžavanja aplikacije

U slučaju da tvrtka, koja je proizvođač komercijalnog software-a, propadne ili je kupi neka druga tvrtka, nema nikakve garancije da će njihov software i dalje biti dostupan, podržan i nadograđivan. To može rezultirati time da korisnici moraju promjeniti software koji koriste, što može biti vrlo skupo i teško, kao što je opisano u prethodnom odjeljku.

Čak i kod stabilnih tvrtki, prilikom izlaska nove verzije software-a, starije verzije i formati često se ukidaju i prestaju biti podržani.

Kod open source software-a, ovi problemi su znatno smanjeni. Pošto source code nije u vlasništvu tvrtke na način kao što je to kod komercijanog software-a, software može nastaviti razvijati bilo tko kome je u to interesu. Ukoliko niste dio organizacije koja na raspolaganju ima značajne tehničke resurse, malo je vjerojatno da ćete preuzeti punu odgovornost za takvo nešto, no, budući da uspješni open source projekti okupljaju velike zajednice korisnika, zasigurno će postojati i druge zainteresirane strane koje su voljne nastaviti održavati software.

Postanite dio zajednice

Korištenjem open source software-a postajete dio zajednice korisnika i developera sa interesom za zajedničkom suradnjom, pružanjem potpore jedni drugima te poboljšanjem software-a. Koliko ćete se uključiti u tu zajednicu ovisi isključivo o vama i vašoj dobroj volji.

Cijena

Mnogi open source programi se mogu nabaviti besplatno ili vrlo jeftino. Ukoliko vaša organizacija ima potrebu za serverima, Linux bazirani serveri su jeftiniji (OS je besplatan), a i sigurniji u odnosu na Windows servere za koje morate plaćati nimalo povoljne licence.