O odprti kodi


Zakaj odprta koda?
  1. Preizkušen poslovni model.
    Poslovni model odprte programske kode ni novost. Pravzaprav je obstajal pred zaprtim modelom. Sprva so programerji izdelovali programsko opremo glede na dejanske potrebe naročnika. Naročnik je postal tudi lastnik programske kode, saj jo je plačal. V kolikor se program ni v celoti ujemal s potrebami naročnika, ga naročnik ni plačal v celoti ali pa ga sploh ni plačal. Šele leta 1980 (z razvojem mikro računalnikov) so se na trgu pojavile programske rešitve namenjene množični prodaji, ki naj bi pribljižno pokrile potrebe večine uporabnikov.

  2. Prilagodite programsko opremo vašim poslovnim procesom in ne obratno.
    Kolikokrat ste morali prilagoditi delovne procese programski opremi namesto, da bi programska oprema bila prilagojena vašim delovnim procesom? Lastniška programska oprema je večinoma pripravljena tako, da pokrije 80% do 90% potreb uporabnika. Ker izvorne kode ni na voljo, je ni moč prilagoditi točno vašim potrebam. Prav tako je mogoče, da tudi odprtokodna programska oprema privzeto ne pokrije vseh vaših potreb, vendar lahko denar, ki bi ga sicer namenili za licence porabite za 100% prilagoditev le te vsem vašim potrebam.

  3. Razhroščevanje oz. odpravljanje napak je dejansko možno z odprto kodo.
    Prosto dostopna izvorna koda nam da možnost, da napako odpravimo sami, najamemo študenta ali tretjo osebo, ki lahko odpravi problem za nas, četudi prvotni razvijalci tega ne želijo. Pri lastniški programski opremi le to ni mogoče. Če npr. oddate “bug report” ali željo po novi funkcionalnosti enemu izmed prominentnih izdelovalcev operacijskih sistemov in niste večji svetovni “igralec”, zelo verjetno vašega problema sploh ne bodo reševali. Problem je vezan na vsa podjetja, ki imajo veliko bazo uporabnikov ter relativno gledano zelo malo programerjev.

  4. Neodvisnost od ponudnika.
    Odprta programska koda nam daje možnost, da svoje želje po novi funkcionalnosti ali popravkih naročimo kjerkoli, pri študentu, samostojnem podjetniku, priznanem podjetju ali primarnih razvijalcih programske opreme. Prav tako lahko kadarkoli zamenjamo upravljalca/vzdrževalca takih odprtih informacijskih sistemov. Nenazadnje lahko tudi največja svetovna podjetja propadejo (primeri: Wang Laboratories, Data General, Digital Equipment Corporation, ..), takrat vi ostanete brez podpore in ker nimate izvorne kode morate opustiti uporabo produkta.

  5. Svoboda izbire oz. možnost sprejema poslovne odločitve.
    Opustitev podpore produkta, ki ga trenutno uporabljate v vašem podjetju pa ni nujno povezana s propadom proizvajalca. Le ta lahko kadarkoli opusti podporo za določen produkt, vi imate sicer še vedno pravico do uporabe vendar, če se ne odpravljajo hrošči in še bolj pomembne varnostne luknje, ste dejansko prisiljeni v zamenjavo produkta z novim ter nakupom nove licence, čeprav bi odprava varnostne lunkje bila malenkost in bi jo ob dostopu izvorne kode lahko odpravil tudi študent. Življenski primer bi bil MS Office 97, ki je mojim potrebam zadostoval a sem moral kupiti nov MS Office 2000, da je bil nepooblaščenim osebam ponovno onemogočen dostop do mojih dokumentov, saj ima Office 97 še danes kritične varnostne luknje. Slednje se pri uporabi programske opreme z odprto kodo ne bi zgodilo, saj mi ta skupaj z ostalimi svobodami (npr. neodvisnost od ponudnika) dejansko omogoča sprejeti lastno poslovno odločitev.

  6. Ni skritih funkcionalnosti.
    Ker je izvorna koda prosto dostopna, le ta preverjeno ne vsebuje nobenih skritih “funkcij”. Ste se kdaj vprašali zakaj Kitajska vojska ne uporablja enega od prominentnih ameriških proizvajalcev lastniških operacijskih sistemov?

  7. Večja varnost.
    Prosto dostopno izvorno kodo npr. GNU/Linux je pregledalo zelo veliko število varnostnih strokovnjakov, vsekakor več kot jih imajo največja svetovna podjetja programske opreme zaposlenih skupaj. Če kljub temu pride do odkritja nove varnostne lunkje, je hkrati z njo na voljo tudi popravek (ali nekaj ur za tem) saj dostop do izvorne kode omogoča komurkoli, da izdela popravek. Pri večjih podjetjih je ta čas ranljivosti sistema občutno daljši, saj tisti, ki odkrije varnosto lunknjo ne more izdati tudi popravka. Popravek lahko pripravijo le zaposleni v podjetju, kar ponavadi traja precej dlje.

  8. Isti informacijski/operacijski sistem neglede na strojno arhitekturo.
    Odprta koda omogoča implementacijo programske rešitve na praktično vse strojne arhitekture in informacijska okolja. Lep primer je GNU/Linux, ki se uporablja v vsem od “embedded” sistemov, mrežnih usmerjevalnikov, delovnih postaj do super gruč.

  9. Stabilnost sistema oz. zanesljivost delovanja.
    Velika transparentnost programske opreme in enostavna možnost kooperacije programerjev je zagotovila visoko stopnjo kvalitete odprte programske opreme. Svojo stabilnost so večji odprtokodni operacijski sistemi ter servisi, ki jih poganjajo že dokazali. Operacijski sistemi iz BSD (npr. FreeBSD) in GNU/Linux (npr. RedHat) družine skupaj s določenimi drugimi servisi (spletni strežnik Apache) slovijo po svoji stabilnosti. Večletno nemoteno delovanje je praktično standarna praksa pri uporabi takih sistemov.

  10. Podpiranje lokalnega gospodarstva.
    Sredstva namenjena licenčni programski opremi praviloma končajo zunaj naše države. Pri uporabi odprto kodne programske opreme pa lahko najamemo slovenske programerje ali slovenske sistemske inženirje za izvedbo del ter tako podpiramo lokalno gospodarstvo.

Martin Gombač

Dokument je izdan pod GPL v 3 licenco, ki je dostopna tukaj