Blog

Savjeti iz IT svijeta

Open source software

Kako radi softver otvorenog koda (Open source software)

Softver s otvorenim kodom (Open source software OSS) je svaki računalni softver koji se distribuira sa svojim izvornim kodom dostupnim za izmjenu. To znači da programeri obično uključuju licencu za promjenu softvera na bilo koji način koji odaberu: mogu popraviti bugove, poboljšati funkcije ili softver prilagoditi svojim potrebama.


Kriteriji za softver sa otvorenim kodom

Inicijativa za otvoreni kod (Open Source Initiative OSI), globalna neprofitna organizacija osnovana 1998. godine, djeluje kao vodeće tijelo na OSS-u. Njegova definicija softvera otvorenog koda uključuje deset kriterija koji se odnose na pitanja kao što su:

  • Redistribucija softvera
  • Dostupnost i integritet izvornog koda
  • Distribucija i svojstva licenci
  • Izvedena djela
  • Anti-diskriminacija


Licence

Različite licence omogućuju programerima da mijenjaju softver s različitim priloženim uvjetima. Prema Black Duck KnowledgeBase, bazi podataka oko dva milijuna projekata otvorenog koda, pet najpopularnijih licenci su:

  1. MIT licenca
  2. GNU Opća javna licenca (GPL) 2.0
  3. Apache License 2.0
  4. GNU Opća javna licenca (GPL) 3.0
  5. BSD License 2.0 (3-klauzula, nova ili revidirana)

Kad promijenite izvorni kod, OSS zahtijeva uključivanje onoga što ste izmijenili kao i svoje metode. Softver kreiran nakon modifikacija koda može ili ne mora biti dostupan besplatno.


Komercijalni softver

Komercijalno dostupan softver, komercijalni ili vlasnički softver, ne daje pristup izvornom kodu jer je softver tuđe intelektualno vlasništvo. Kao rezultat toga, korisnici često plaćaju takav softver. OSS softver je dijeljeno intelektualno vlasništvo među svima koji su pomogli u razvoju ili izmjeni.


Besplatni softver

Iako se izrazi često upotrebljavaju naizmjenično, OSS se malo razlikuje od besplatnog softvera. Oboje se mogu preuzeti ili izmijeniti bez ograničenja ili plaćanja. Međutim, besplatni softver - koncept koji je 1980-ih razvio istraživač informatičkih znanosti na MIT-u, Richard Stallman - definiran je s četiri uvjeta, koja su zacrtala neprofitna fondacija za slobodni softver. Četiri uvjeta naglašavaju sposobnost korisnika da koriste i uživaju u softveru koliko smatraju prikladnim.

Suprotno tome, OSS kriteriji, koje je OSI razvila desetljeće kasnije, stavljaju veći naglasak na modifikaciju softvera i posljedice promjene izvornog koda, licenciranja i distribucije.

Neki bi rekli da su razlike između OSS-a i besplatnog softvera više filozofske nego praktične. No, niti Open-source softver niti besplatni softver ne treba brkati s freewareom. Freeware se obično odnosi na vlasnički softver koji korisnici mogu besplatno preuzeti, ali čiji se izvorni kod ne može promijeniti.


Prednosti

Iako je to što je besplatan ključna prednost, OSS ima nekoliko dodatnih prednosti:

  • Njegova se kvaliteta može lako i uvelike poboljšati kada se izvorni kôd prosljeđuje, testira i popravi.
  • Programerima nudi vrijednu priliku za učenje. Oni mogu primijeniti vještine na najpopularnijim danas dostupnim programima.
  • Može biti sigurniji od vlasničkog softvera jer se greške brzo identificiraju i popravljaju.
  • Budući da je u javnoj domeni i stalno podliježe ažuriranjima, mala je vjerojatnost da će postati nedostupan ili brzo zastarjeti - važan plus za dugoročne projekte.


Popularne vrste

Tehnologije otvorenog koda pomogle su uspostaviti velik dio interneta. Mnogi programi koji se svakodnevno koriste temelje se na tehnologijama otvorenog koda. Android OS i Appleov OS X temelje se na kernelu i Unix/BSD tehnologijama otvorenog koda.

Ostali popularni softveri otvorenog koda su:

  • Mozilla Firefox preglednik
  • Klijent e-pošte Thunderbird
  • PHP skriptni jezik
  • Python programski jezik
  • Apache HTTP web poslužitelj


Programeri

OSS projekti omogućuju suradnju koje poboljšavaju vještine i grade veze na terenu. Područja na kojima programeri mogu raditi uključuju:

  • Komunikacijski alati. E-pošta, razmjena poruka u realnom vremenu, forumi i wikiji pomažu programerima u pronalaženju rješenja ili dobivanju ideja jedni od drugih.
  • Distribuirani sustavi za kontrolu revizija. Kada više programera na različitim geografskim lokacijama mijenja podatke i datoteke, ovi sustavi upravljaju različitim verzijama i ažuriranjima.
  • Praćenje pogrešaka i popisi zadataka. Ove značajke omogućuju velikim projektima da prate probleme i prate njihove ispravke.
  • Alati za testiranje i uklanjanje pogrešaka. Ove značajke automatiziraju testiranje tijekom integracije sustava i uklanjanje pogrešaka drugih programa.


Zaključak

Softver s otvorenim kodom alternativa je vlasničkom softveru. Sudjelovanje u OSS projektu može biti put ka izgradnji karijere u razvoju softvera, omogućavajući programerima da usavršavaju svoje vještine radeći na najvećim softverskim programima na svijetu. Facebook, Google i LinkedIn izdaju OSS, tako da programeri mogu dijeliti znanje, inovativna rješenja i pridonijeti stabilnim funkcionalnim proizvodima.

Zanima vas nešto više o ovoj temi i koje open source programe možete koristiti u svom poslu? Slobodno nam se javite preko kontakt obrasca.