Objavljeno: 19.11.2005 17:34 | Avtor: Uroš Mesojedec | Monitor April 2004

Uroš Mesojedec: Vprašanje svobode

Uroš Mesojedec: Vprašanje svobode

Javo, navzlic vsej njeni uspešnosti, že od predstavitve naprej spremlja nedorečenost, povezana z njeno pravo svobodo.

Temeljni namen jave je priskrbeti enotno podlago za razvoj novega rodu programske opreme, ki se lahko izvaja na široki paleti strojne in programske opreme brez kakršnihkoli prilagoditev: "napiši enkrat, poganjaj povsod". Avtor jave, podjetje Sun Microsystems, je vpeto med željo po širokem sprejetju podlage v računalniški industriji in nevarnostjo drobitve v nezdružljive različice, ki bi popolnoma izničile njen namen in poglavitno prednost. Ta vpetost je povzročila že kup neljubih zapletov, med katerimi je bil najbolj boleč polom s standardizacijo, najprej pri mednarodni organizaciji ISO in pozneje še pri evropskem organu ECMA.

Strah pred drobljenjem nikakor ni neupravičen, kar je dokazal Microsoft s svojo različico izvajalnega okolja in programskega jezika, ki sta v podlago vnesla pomembne podrobnosti, vzrok nezdružljivosti z drugimi različicami jave. Nekaj let zatem je Sun na sodišču sicer dokazal svoj prav, a posledica je bila očitna: java je praktično izginila s spletnih strani. Microsoft je imel dovolj časa, da je s svojim vplivom na namizju izrinil javo z obetavnega področja, kjer se je pravzaprav začel njen prodor v svet.

Sun je poizkušal zadržati zanimanje računalniške industrije s svojimi približki standardizacije, kot je javno objavljena popolna specifikacija programskega jezika in izvajalnega okolja, dovoljenje za uporabo izvirne kode SCSL (Sun Community Source License), ki omogoča neoviran vpogled v izvirno kodo jave, a ne dopušča objave izpeljanih izdelkov brez privoljenja Suna, in navsezadnje proces JCP (Java Community Process), v katerem sodelujejo vplivna računalniška podjetja in posamezniki. Na videz je torej java dovolj standardizirana in svobodna, pri njenem nadaljnjem razvoju pa sodelujejo skoraj vsa pomembnejša podjetja. Dokaz za to tezo je ponudba javanskih izdelkov, od programskih strežnikov prek razvojnih orodij do alternativnih izvajalnih okolij. Z občutno izjemo Microsofta je skorajda celotna industrija javo sprejela za pomembno podlago, na kateri gradi namenske, predvsem poslovne programe.

Na Sunovo in javino nesrečo pa današnje razmere v industriji ne kažejo več tako rožnate slike. Prihodnost jave ogrožata dve popolnoma nasprotni pobudi, ki pa z vsakim dnem povečujeta svoj vpliv. Očitna grožnja javi je Microsoftovo ogrodje .net, ki gradi na njenih izkušnjah in pridobiva delež razvijalcev. Druga grožnja je vse večja uspešnost odprtokodnih operacijskih sistemov in odklonilno stališče do jave s strani skupnosti, ki razvija te sisteme. Zgodilo se je nekaj neverjetnega: zagovorniki proste kode so povzeli Microsoftovo tehnologijo in jo s čedalje več uspeha prenašajo v svoj svet (projekt Mono).

Zakaj java ni dovolj prosta? Danes je huda težava že preprosto to, da jave ne najdemo v standardnih distribucijah odprtokodnih operacijskih sistemov. Java je sicer brezplačno na voljo, skupaj z izvirno kodo, a le s Sunovih spletnih strani, in to šele po tem, ko sprejmemo njihova pravila igre. Po svoje je žalostno, da se je Sun s HPjem in Dellom dogovoril o tem, da nameščajo svežo različico jave v svoje sistem z Okni, ne omogočajo pa preproste distribucije JDK z drugimi operacijskimi sistemi. Čvrst nadzor jave s strani Suna je tudi velika grožnja. Kaj če v prihodnosti spremeni pogoje uporabe in začne zaračunavati uporabo izvajalnega okolja? Kaj če podjetje propade? Kaj če jih kupi konkurent?

Prihodnost jave v marsičem oblikuje tudi vroče-hladno razmerje med njenim tvorcem in največjim uporabnikom, podjetjem IBM. Čeprav je IBM opravil in tudi s patenti zaščitil celo vrsto raziskav, ki so omogočile uspeh jave, so jo na koncu koncev morali kupiti od Suna, namesto da bi jo "odkrili" sami. Novi in prijazni IBM se trudi biti pošten igralec, a mu nepripravljenost Suna, da še bolj sprosti svoje lastniške vzvode, povezane z javo, že nekaj časa preseda. Spor obeh zagovornikov jave najlepše ponazarja odprtokodno razvojno ogrodje Eclipse, ki se že z imenom posmehuje Sunu, tehnološko pa je IBM z njim naredil javi skorajda isto, kot je poizkušal Microsoft in bil zato kaznovan na sodišču. Sun je danes preveč šibek, java pa preveč ogrožena, da bi se z IBMom spopadel na sodišču, zato so na pomoč poklicali "prodajalce megle".

Izmenjava odprtih pisem med obema podjetjema se še ni niti dobro začela, ko je vmes v svojem znanem slogu posegel Eric Raymond. Javno je popljuval Sun in njegovo politiko odpiranja javanskih standardov. Sun je odgovoril, da odprto kodo sicer zagovarja, da pa ni mogoče kar preprosto "preklopiti stikala" in da bi ta različica zahtevala precej razvoja, kar seveda pomeni čas in denar (ki ju Sun nima). To je bilo seveda vse, kar je IBM želel. Že naslednji dan so ponudili ves svoj čas in denar, pod pogojem da Sun ustrezno sprosti javanske standarde. Ali je šlo zgolj za naključje, ali pa je bila celotna izmenjava odprtih pisem briljantno zastavljena strategija, lahko le ugibamo, dejstvo pa je, da se Sun zdaj preprosto ne more umakniti. IBM namreč že ima razvite lastne različice skoraj celotnega sklada javanskih tehnologij in mu le licenčni dogovor s Sunom preprečuje njihovo objavo. Sun na drugi strani še vedno išče svoj odnos do odprte kode, toda tržni uspeh njihovega namizja Java Desktop System, ki je v bistvu SuSE Linux z Gnome, OpenOffice in javo, mu ne pušča dosti manevrskega prostora. Dodatni motiv za standardizirano, odprtokodno javo, ki bi jo podprl tudi Sun, je uspeh projekta Classpath. Skupnost, ki razvija orodja GNU, namreč zavrača javo, ker dovoljenje SCSL ne omogoča prostega razširjanja spremenjene kode. Ta podrobnost je bila dovolj, da so se razvoja jave lotili sami, iz ničle. Če IBM prispeva le drobec svojih virov, bo projekt Classpath zelo hitro prinesel alternativno javo, najverjetneje že v izhodišču boljšo od uradne različice. Sun lahko s tem izgubi ves svoj vpliv, preostalo bi mu le drobljenje podlage, to pa je verjetno zadnje, kar želi.

Današnje razmere v industriji zahtevajo povsem prosto različico jave, ki jo lahko nadgrajuje in pili celotna skupnost zainteresiranih programerjev, skupaj z velikani industrije. Ali jo bo podprl tudi Sun, je pomembno predvsem za njih same. Ob morebitnem zavlačevanju je povsem mogoče da bo, podobno kakor z "Mrkom", pravo potezo povlekel sam IBM.

Naroči se na redna tedenska ali mesečna obvestila o novih prispevkih na naši spletni strani!

Komentirajo lahko le prijavljeni uporabniki

 
  • Polja označena z * je potrebno obvezno izpolniti
  • Pošlji