Včeraj smo pisali o tem, da je
IBM za neverjetnih
34 milijard dolarjev »gotovine« kupil podjetje, ki se ukvarja s programsko opremo, a te ne prodaja. Pravzaprav počne prav nasprotno. V petindvajsetih letih, odkar obstaja je
Red Hat prevzel kar nekaj podjetij, ki so razvijala lastniško programsko opremo in potem to programje »delil« brezplačno. Je tu kakšna logika? Seveda je, imenuje se
odprta koda.
Izraz ste zagotovo že slišali, razlagali pa ste si ga verjetno tako, da gre za neke vrste »komunizem«, kjer si lahko brez plačila vzamete to, kar potrebujete ali mislite, da potrebujete. A resnica je daleč od tega. Da, programska oprema je res brezplačna za namestitev ali uporabo, a to ne pomni, da za vsem skupaj ne leži resen poslovni model. Še kako je resen. Tako resen, da so ga v preteklih dobrih dvajsetih letih »klasične« programske hiše poskušale očrniti na vsakem koraku. Pa lepo po vrsti.
Kaj je odprta koda? Programi, ki jih vsakodnevno uporabljate na vaših računalnikih, telefonih, tablicah in še kje, obstajajo v več oblikah oziroma razvojnih fazah. To, kar imate v računalniku, je končna, »prevedena«, »izvršna« oblika programa, torej oblika, v kateri vaša strojna oprema (telefon, računalnik…) »razume« ukaze oziroma »ve«, kaj mora početi. Program, ne glede na to, na kateri strojni opremi teče, je serija ukazov. In kaj so ukazi? V svoji osnovi nič drugega kot nekaj, kar v procesorju in drugih elementih vklaplja in izklaplja »stikala« (od tod tiste famozne »ničle in »enice«). A ker je teh stikal na milijone, je povsem jasno, da se programer ne bo posvečal vsakemu posebej, ampak »skupinam« oziroma sklopom, ki opravljajo določeno funkcijo. In od tod pojem programski jeziki. No, da ne zaidemo… Program je torej serija ukazov. In kdo si izmisli in zapiše te ukaze? Programer. In to, kar naredi, se imenuje
izvorna koda (source code). Ta je sama po sebi več ali manj univerzalna, v svojem bistvu pa neuporabna. To pa zato, ker imajo različne naprave različne strojne komponente, ki ne govorijo nekega univerzalnega jezika. Zato se mora takšna izvorna koda »prevesti« v nekaj, kar naprava, kjer bo program tekel, razume. To se naredi s prevajalniki in dobimo nekaj, kar imenujemo
izvršna koda.
Izvorna in izvršna koda sta torej neločljivo povezani, a ta povezava je več ali manj enosmerna – iz izvorne kode je mogoče narediti izvršno, obratno pa ne. Vse skupaj je podobno recimo torti – ko je ta enkrat pečena in okrašena sicer lahko približno identificiramo njene sesatvine, sami pa enake brez originalnega recepta ne moremo narediti. »Tradicionalne« programske hiše, kot so Microsoft, Apple in podobne, delujejo tako, da vam prodajo (ali podarijo) izvršno kodo oziroma pravico do njene uporabe, izvorno kodo, torej recept, kako je zadeva narejena, pa skrbno skrivajo.
Odprtokodna filozofija je precej drugačna, saj zagovarja idejo, da je skupaj s programom potrebno uporabniku dati tudi izvorno kodo - oboje brezplačno. Razlogov za to je več. Eden, ki je v manjšini, je »ideološki« - nekateri menijo, da bi programska oprema že v svoji osnovi morala biti brezplačna tako za uporabo kot za spreminjanje. Bolj razširjena pojmovanje je, da je odprtokodna filozofija v bistvu
funkcionalna nadgradnja,
izboljšava tradicionalne,
lastniške filozofije, saj daje tudi drugim pekom možnost spreminjanja in dodelave recepta in s tem možnost, da se torta, v zadovoljstvo uporabnikov, še izboljša.
Seveda je največja razlika med konceptoma v tem, kako od njiju živeti. Kako živeti od lastniške programske opreme je jasno – uporabnikom prodajaš pravico do uporabe izvršne kode. Kako pa živeti od odprte kode, če je ta brezplačna, poleg tega pa uporabnik poleg izvršne kode dobi še izvorno in se tako popolnoma »loči« od programerja? A ni to enkao, kot če bi nekomu spekli torto, mu jo podarili, zraven pa napisali še recept, kako se pripravi? Seveda. Je do tega mogoče živeti? Seevda. Premerov je kar nekaj, Red Hat pa je eden najuspešnejših če ne najuspešnejši.
Red HatPodjetje je bilo ustanovljeno leta 1993, njegov poslovni model pa je temeljil na storitvah podpore in izboljšave odprtokodne programske opreme. V bistvu je šlo za to, da je vzel odprtokodni operacijski sistem
GNU/Linux, ga dodelal in predstavil svojim strankam kot alternativo lastniški in večinoma plačljivi programski opremi. Če se je stranka odločila za uporabo tega sistema, ga je Red Hat pri njej namestil, prilagodil njenim potrebam in nudil podporo zanj. In to - zaračunal. Toliko, da se je zadeva izplačala. Model se je izkazal za zelo uspešnega in podjetje se je leta
1999 prestrukturiralo v delniško družbo in na borzi doseglo vrednost
3,5 milijarde dolarjev. In od takrat mu je vrednost neprenehno rasla. Ni slabo za nekoga, ki »podarja« programe, mar ne?
IBMRed Hat je resda rasel, toda 34 milijard, kolikor je zanj plačal IBM, se zdi res veliko. In tudi je. A za IBM to ni prvo bližnje srečanje z odprtokodnim modelom. Prvi »resni koraki« v svet odprte kode segajo že v leto
1998, ko je podjetje skupaj s svojim nič kaj popularnim programom
WebSphere (tako imenovana vmesna programska oprema (middleware), namenjena medsebojni povezavi različnih programov), začelo distriburati odprtokodni
spletni strežnik Apache, ki je bil od sredine devetdesetih daleč najbolj priljubljen strežnik na trgu. In zakaj prav Apache? Alternativa v tistem času sta bila Microsoft in Netscape kar pomeni, da bi IBM moral rešitev kupovati od konkurence, kar je, no ja, saj veste… In so se odločili za Apache, ki je bil ne le odprtokoden ampak je imel tudi daleč največji delež na trgu spletnih strežnikov. Ali je bilo to »sodelovanje« uspešno ali ne, je stvar analize, dejstvo pa je, da se je IBM preko tega projekta »udomačil« na področju odprte kode in ugotovil, kje lahko ima od nje koristi.
In kje vidi korist od Red Hata? Podjetje resda še vedno živi od distribucije svoje različice Linuxa, a to še zdaleč ni vse. Že leta je namreč tudi ponudnik podpore in razvoja programske opreme, ki poganja velike
podatkovne centre in
storitve v oblaku. In podjetij, ki se raje kot za nekoga, ki jim najprej proda programsko opremo, potem pa zaračuna še podporo in vzdrževanje, odločajo za nekoga, ki programsko opremo nudi brezplačno, zaračunava pa le pomoč, je očitno veliko. In če ta nekdo lahko pripomore, da postaneš največji igralec na strmo rastočem področju hibridnega oblaka, torej zasebnih in javnih storitev v oblaku, potem je odločitev za nakup Red Hata logična. K tej logiki svoje dodaja tudi dejstvo, da se zadnje čase tudi Microsoft vse bolj ukvarja z odprto kodo, predvsem zaradi svojega projekta računalništva v oblaku Azure, kjer največ navideznih strežnikov temelji prav na Linuxu. Je IBM pohitel, da ga ne bi prehitel Microsoft? Prav mogoče.