Kaj je odprta koda?

Open source resources

Izraz odprto kodiranje se nanaša na nekaj, kar lahko ljudje spremenijo in delijo, ker je njegova zasnova javno dostopna.

Izraz izvira iz okvira razvoja programske opreme za določitev posebnega pristopa k ustvarjanju računalniških programov. Danes pa »odprta koda« določa širši nabor vrednot – kar imenujemo »odprto kodni način«. Odprtokodni projekti, izdelki ali pobude sprejemajo in slavijo načela odprte izmenjave, sodelovanja, hitrega prototipa, preglednosti, meritokracije in razvoja, usmerjenega v skupnost.

Kaj je odprtokodna programska oprema?

Odprtokodna programska oprema je programska oprema z izvorno kodo, ki jo lahko vsakdo pregleda, spremeni in izboljša.

»Izvorna koda« je del programske opreme, ki je večina uporabnikov računalnika nikoli ne vidi; programerji kodnih računalnikov lahko manipulirajo, da spremenijo, kako deluje del programske opreme – “program” ali “aplikacija”. Programerji, ki imajo dostop do izvorne kode računalniškega programa, lahko ta program izboljšajo tako, da mu dodajo funkcije ali popravijo dele, ki ne delujejo vedno pravilno.

Kakšna je razlika med odprtokodno programsko opremo in drugimi vrstami programske opreme?

Nekatera programska oprema ima izvorno kodo, ki jo lahko spremeni samo oseba, ekipa ali organizacija, ki jo je ustvarila in ohranja izključni nadzor nad tem. Ljudje imenujejo to vrsto programske opreme “lastniško” ali “zaprto vir” programsko opremo.

Samo izvirni avtorji lastniško programsko opremo lahko zakonito kopirajo, pregledajo in spremenijo to programsko opremo. In za uporabo lastniškega programja se morajo uporabniki računalnika strinjati (običajno s podpisom licence, prikazane prvič, ko zaženejo to programsko opremo), da ne bodo naredili ničesar s programsko opremo, ki je avtorji programske opreme niso izrecno dovolili. Microsoft Office in Adobe Photoshop sta primera lastne programske opreme.

Odprtokodna programska oprema je drugačna. Njeni avtorji dajo svojo izvorno kodo na voljo drugim, ki bi radi videli to kodo, jo kopirali, iz tega izvedeli, spremenili ali delili z drugimi. LibreOffice in GNU Image Manipulation Program sta primera odprtokodne programske opreme.

Kot to počnejo z lastniško programsko opremo, morajo uporabniki sprejeti pogoje licence, ko uporabljajo odprtokodno programsko opremo, vendar se pravni pogoji odprtokodnih licenc močno razlikujejo od pogojev licenc v lasti.

Licence odprte kode vplivajo na način, kako lahko ljudje uporabljajo, preučujejo, spreminjajo in distribuirajo programsko opremo. Na splošno odprtokodne licence uporabnikom računalnika izdajo dovoljenje za uporabo odprtokodne programske opreme za kateri koli namen , ki ga želijo. Nekatere odprtokodne licence – ki jih nekateri imenujejo “copyleft” licence – določajo, da mora vsak, ki izda spremenjen odprtokodni program, poleg tega sprostiti tudi izvorno kodo za ta program. Poleg tega nekatere odprtokodne licence določajo, da morajo vsi, ki spremenijo in delijo program z drugimi, deliti tudi izvorno kodo tega programa, ne da bi za to zaračunavali licenčno provizijo.

Z oblikovanjem licence odprtokodne programske opreme spodbujajo sodelovanje in skupno rabo, ker drugim ljudem omogočajo, da naredijo spremembe izvorne kode in te spremembe vključijo v lastne projekte. Računalniške programerje spodbujajo k dostopu, ogledu in spreminjanju odprtokodne programske opreme, kadar koli jim je všeč, če dovolijo drugim, da storijo enako, ko delijo svoje delo.

Je odprtokodna programska oprema pomembna samo računalniškim programerjem?

Odprtokodna tehnologija in odprtokodna mislita tako programerji kot ne-programerji.

Ker so zgodnji izumitelji zgradili veliko interneta na odprtokodnih tehnologijah – kot sta operacijski sistem Linux in aplikacija apache spletnega strežnika– ima vsakdo, ki danes uporablja internet, koristi odprtokodno programsko opremo.

Vsakič, ko si uporabniki računalnika ogledajo spletne strani, preverijo e-pošto, klepetajo s prijatelji, pretakajo glasbo v spletu ali igrajo videoigre z več igralnimi igrami, njihovi računalniki, mobilni telefoni ali igralne konzole se povežejo v globalno omrežje računalnikov, ki uporabljajo odprtokodno programsko opremo za usmerjanje in prenos svojih podatkov v “lokalne” naprave, ki jih imajo pred njimi. Računalniki, ki delajo vse to pomembno delo, se običajno nahajajo na oddaljenih mestih, do katerih uporabniki dejansko ne vidijo ali ne morejo fizično dostopati – zato nekateri imenujejo te računalnike »oddaljeni računalniki«.

Vedno več ljudi se pri izvajanju opravil, ki jih lahko sicer izvajajo v lokalnih napravah, zanašajo na oddaljene računalnike. Uporabljajo lahko na primer spletno obdelavo besed, upravljanje e-pošte in programsko opremo za urejanje slik, ki je ne namestijo in ne zaženejo v svojih osebnih računalnikih. Namesto tega preprosto dostopajo do teh programov v oddaljenih računalnikih z uporabo spletnega brskalnika ali aplikacije za mobilne telefone. Ko to naredijo, se ukvarjajo z “daljinskim računalnikom”.

Nekateri ljudje imenujejo oddaljeno računalništvo »računalništvo v oblaku« zato, ker vključuje dejavnosti (kot so shranjevanje datotek, skupna raba fotografij ali gledanje videoposnetkov), ki vključujejo ne le lokalne naprave, temveč tudi globalno omrežje oddaljenih računalnikov, ki okoli njih tvorijo »vzdušje«.

Računalništvo v oblaku je vedno pomembnejši vidik vsakdanjega življenja z napravami, povezanimi z internetom. Nekatere aplikacije za računalništvo v oblaku, kot je Google Apps, so v lasti. Drugi, kot lastnaCloud in Nextcloud, so odprte kode.

Aplikacije računalništva v oblaku tečejo “na vrhu” dodatne programske opreme, ki jim pomaga delovati nemoteno in učinkovito, zato bodo ljudje pogosto rekli, da programska oprema, ki se izvaja “pod” aplikacije za računalništvo v oblaku, deluje kot “platforma” za te aplikacije. Platforme za računalništvo v oblaku so lahko odprtokodne ali zaprte. OpenStack je primer odprtokodne platforme za računalništvo v oblaku.

Zakaj ljudje raje uporabljajo odprtokodno programsko opremo?

Ljudje raje odprtokodno programsko opremo kot lastniško programsko opremo iz več razlogov, vključno z:

Nadzor. Veliko ljudi raje odprtokodno programsko opremo, ker imajo več nadzora nad takšno programsko opremo. Lahko pregledajo kodo, da se prepričajo, da ne dela ničesar, kar nočejo, in lahko spremenijo dele tega, ki jim ni všeč. Uporabniki, ki niso programerji, imajo prav tako koristi od odprtokodne programske opreme, saj lahko to programsko opremo uporabljajo za vsak namen, ki si ga želijo – ne le tako, kot nekdo drug meni, da bi moral.

Usposabljanje. Drugi ljudje, kot so odprtokodna programska oprema, ker jim pomaga postati boljši programerji. Ker je odprtokodna koda javno dostopna, jo lahko študenti zlahka preučijo, saj se naučijo narediti boljšo programsko opremo. Študenti lahko svoje delo delijo tudi z drugimi, vabijo pripombe in kritiko, saj razvijajo svoje veščine. Ko ljudje odkrijejo napake v izvorni kodi programov, lahko te napake delijo z drugimi, da bi se izognili samim tem napakam.

Varnost. Nekateri ljudje raje odprtokodno programsko opremo, ker menijo, da je bolj varna in stabilna kot lastni programska oprema. Ker si lahko vsakdo ogleda in spremeni odprtokodno programsko opremo, lahko nekdo opazi in popravi napake ali izgrede, ki so jih morda izpustili izvirni avtorji programa. In ker lahko toliko programerjev dela na košček odprtokodne programske opreme, ne da bi prosili za dovoljenje izvirnih avtorjev, lahko hitreje popravijo, posodobijo in nadgradijo odprtokodno programsko opremo, kot pa lahko lastniško programsko opremo.

Stabilnost. Mnogi uporabniki raje odprtokodno programsko opremo kot lastniško programsko opremo za pomembne, dolgoročne projekte. Ker programerji javno distribuirajo izvorno kodo za odprtokodno programsko opremo, so uporabniki, ki se zanašajo na to programsko opremo za kritična opravila, lahko prepričani, da njihova orodja ne bodo izginila ali padla v obup, če njihovi prvotni ustvarjalci prenehajo delati na njih. Poleg tega odprtokodna programska oprema običajno vključuje in deluje v skladu z odprtimi standardi.

skupnosti. Odprtokodna programska oprema pogosto navdihuje skupnost uporabnikov in razvijalcev, da se oblikujejo okoli njega. To ni edinstveno za odprto kodo; številne priljubljene aplikacije so predmet meetups in skupine uporabnikov. Toda v primeru odprte kode skupnost ni le fanbaza, ki kupuje v (čustveno ali finančno) elitni uporabniški skupini; to so ljudje, ki proizvajajo, preizkušajo, uporabljajo, spodbujajo in na koncu vplivajo na programsko opremo, ki jo imajo radi.

Ali “odprta koda” ne pomeni, da je nekaj brezplačno?

lol To je pogosta napačna predstava o tem, kaj pomeni “odprta koda”, posledice koncepta pa niso le ekonomske.

Programski programi odprte kode lahko zaračunajo denar za odprtokodno programsko opremo, ki jo ustvarijo ali h kateri prispevajo. Toda v nekaterih primerih, ker lahko odprtokodna licenca zahteva, da sprostijo izvorno kodo, ko prodajajo programsko opremo drugim, nekateri programerji ugotovijo, da je zaračunavanje uporabnikom denarja za programske storitve in podporo (namesto za samo programsko opremo) bolj donosno. Na ta način njihova programska oprema ostaja brezplačna in zaslužijo denar, ki pomaga drugim pri namestitvi, uporabi in odpravljanju težav.

Medtem ko je lahko nekaj odprtokodna programska oprema brezplačna, je lahko spretnost pri programiranje in odpravljanje težav odprtokodna programska oprema precej dragocena. Mnogi delodajalci si posebej prizadevajo za najem programerjev z izkušnjami pri delu na odprtokodni programski opremi.

Kaj je odprtokodna “onkraj programske opreme”?

V Opensource.com radi rečemo, da nas zanimajo načini, kako se odprtokodne vrednosti in načela uporabljajo za svet onkraj programske opreme. Radi mislimo, da odprta koda ni le način za razvoj in licenciranje računalniške programske opreme, ampak tudi odnos.

Približevanje vsem vidikom življenjaodprtokodni način ” pomeni izražanje pripravljenosti za skupno rabo, sodelovanje z drugimi na načine, ki so pregledni (tako da lahko tudi drugi gledajo in se pridružijo), sprejemajo neuspeh kot sredstvo za izboljšanje in pričakujejo – celo spodbudno – vse druge, da storijo enako.

To pomeni tudi zavezanost k dejavni vlogi pri izboljšanju sveta, kar je mogoče le takrat, ko ima vsakdo dostop do načina, kako je zasnovan ta svet.

Svet je poln »izvorne kode«— načrtov, receptov, pravil – ki vodijo in oblikujejo način, kako v tem razmišljamo in delujemo. Menimo, da bi morala biti ta področna koda (ne glede na obliko) odprta, dostopna in deljena – veliko ljudi jo lahko spremeni na bolje.

Tukaj pripovedujemo zgodbe o vplivu odprtokodnih vrednot na vsa področja življenja znanost, izobraževanje, vlada,  proizvodnja, zdravje, pravo in organizacijska dinamika. Smo skupnost zavezana povedati drugim, kako je odprtokodni način najboljši način, saj je ljubezen do odprte kode prav tako kot vse drugo: bolje je, ko se deli.

VIR: Opensource.com

Ekipa Slovenije vedno z vami v boljši dan.

Spread the word. Share this post!