Skripta za splet
Nove in nove uporabne storitve svetovnega spleta še vedno prihajajo kot po tekočem traku. V sveži ponudbi najrazličnejših spletišč pa lahko zasledimo skupne značilnosti, ki zelo jasno pokažejo, katere tehnologije so sprejeli sodobni spletni mojstri.
Ena izmed ključnih značilnosti sodobnih spletišč je vse večja funkcionalnost odjemalca, torej samega brskalnika, ki se s strežnikom pogovarja vse manj, to pa seveda blagodejno vpliva na uporabniško izkušnjo. Do večje vloge odjemalca je prišlo zaradi vrste napredkov v celotni računalniški industriji, od zmogljivejše telekomunikacijske infrastrukture do še vedno veljavnega Moorovega zakona, ki ponuja vedno večje računalniške zmogljivosti po ceni, dostopni skoraj vsakomur.
Vendar če se po aktualni ponudbi najrazličnejših spletnih storitev ozremo malo bolj od blizu, bomo našli zanimive tehnične rešitve. Velika večina je izbrala tehnologije, priljubljeno poimenovane "Ajax", tu in tam pa še vedno najdemo spletišča, temelječa na bogatem vmesniku, ki ga omogoča vtičnik Flash. Zelo odmevna pa je bila tudi odločitev ameriške televizije NBC, ki je imela izključne pravice za prenose s pekinške olimpiade. NBC je namreč za tehnologijo distribucije video posnetkov sprejel Microsoftov Silverlight. Privlačnost olimpijskih vsebin je tako na marsikateri (ameriški) računalnik dostavila še en vtičnik za spletni brskalnik, ki pa tako, kot že nekaj časa Flash, želi razcepiti splet.
Da je v ozadju igra z visokimi vložki, priča tudi nedavna novica iz organizacije ECMA, ki želi standardizirati zaenkrat še vedno ključno tehnologijo spletnih odjemalcev. Microsoftu je uspelo, da je zavrl obsežne nadgradnje standarda ECMAScript, ki sta ga zagovarjala predvsem Adobe in tvorec javascripta, Brendan Eich iz Mozille. Novi javascript bo tako le manjša nadgradnja, to pa bo največ težav povzročilo prav Adobu z njegovim actionscriptom, ki je temelj dinamičnih tehnologij za Flash, Flex in AIR. Programerji, ki si želijo še zmogljivejših orodij, bodo verjetno zdaj še bolj motivirani, da si od blizu ogledajo in tudi uporabijo... hja, Silverlight. Zaradi projekta Mono bo celo na voljo za brskalnike v Linuxu in podobnih operacijskih sistemih. Microsoft je šel celo tako daleč, da bo brezplačno, vendar ne prosto, zanje ponujal napredne video kodeke.
Za dodatke, kot sta Flash in Silverlight, je trenutna ubijalska aplikacija ravno spletni video. Za vse drugo sta sicer na videz privlačna, vendar veliko preveč zapletena, da bi bila uspešna v okolju, v katerem vladajo besedilne datoteke in preprosti urejevalniki, brskalniki pa znajo razkrivati skrivnosti z možnostjo pogleda izvirne kode. Kar poglejmo, kako z lastniškimi binarnimi zapisi pometa XML. In tako z različnimi vtičniki zadnje čase pometa tudi javascript. Ajax, ki je sicer kratica za kar nekaj tehnologij, je v ospredje znova postavil predvsem javascript. Ta že od leta 1995 omogoča dinamično krmiljenje brskalnika in spletnih strani. Za nekoga, ki je spoznaval vse muke dinamičnega spletišča, je bil javascript že od začetka skoraj božji dar. Res, bil je neroden in poln nedoslednosti in čisto po modi ukrojen po skladnji jave - še danes ju zna marsikdo zamešati - čeprav nimata skoraj nič skupnega. Vojna brskalnikov je javascript postavila v nemogoč položaj, saj ni bilo več trdnega standarda, ki bi omogočal enoten razvoj za več brskalnikov in podlag. A storitve, ki jih je ponujal, so bile preveč privlačne tudi za tako visoko oviro. Ves splet se je podal v iskanje zvijač, bližnjic in celo prevar, s katerimi je bilo nekako le mogoče ukrotiti razlike med sistemi. Javascript se je celo standardiziral skozi organizacijo ECMA, ki je sicer znana predvsem kot pospeševalec standardizacije spornih, lastniško preobremenjenih tehnologij, vendar je bilo razlik med izvedbami še vedno veliko.
Javascript je bilo že od nekdaj mogoče dokaj preprosto uporabiti za "začimbo" strani. Npr. za dinamično fotogalerijo. V primeru nedelovanja javascripta je spletna stran pač odpirala vsako posamezno fotografijo v novem oknu. Skratka, kdor je imel pravo kombinacijo operacijskega sistema in brskalnika, je lahko užival, vsi drugi pa še vedno niso bili prikrajšani za ogled slik. Reč je (bila) tako priljubljena, da ima celo svoje geslo v Wikipedii ("Unobtrusive JavaScript"). Ajax pa je javascript tako izpostavil, da so se razvila številna programerska ogrodja, ki so dokončno presekala z nezdružljivostmi med brskalniki. To je omogočilo programerjem, da so se osredotočili na ključno funkcionalnost spletišč in niso več izgubljali neskončnih ur s preverjanjem in razhroščevanjem kode v (pre)številnih kombinacijah brskalnikov in sistemov.
Danes je izbor nadvse kakovostnih programerskih ogrodij za učinkovito programiranje odjemalca v javascriptu silno obsežen. Naj naštejemo le nekatere: prototype, jQuery, dojo, mootools, YUI, sproutcore ... Imajo čvrsto zaledje spletnih skupnosti in številnih uporabnikov, med katerimi najdemo nekatera največja svetovna podjetja. Da bi še bolj pospešil njihovo rabo, je Google večino teh knjižnic začel gostiti na lastni, visoko zmogljivi infrastrukturi (http://code.google.com/apis/ajaxlibs/). Danes tako lahko z vrstico ali dvema v HTML v trenutku "nadgradimo" lastne spletne strani do stopnje, ko za njihovo nadaljnje programiranje ne bomo več prisiljeni razmišljati o številnih anomalijah posameznih brskalnikov.
A to je šele začetek. V javascriptu so bila razvita celotna razvojna in izvajalna okolja, ki omogočajo hitro izgradnjo najrazličnejših aplikacij. Zanimiva, nikakor pa ne edina primera, sta TibcoGI in ExtJS. Če si nekdo, ki se je z javascriptom igral v njegovih rosnih letih, ogleda npr. predstavitveni video okolja Tibco GI, bo šokiran nad zmogljivostjo "igračkastega" jezika za "začinjanje" spletnih strani. Javascript je ob pomoči izjemnih programerskih knjižnic prišel presunljivo daleč in nič ne kaže, da se bo razvoj ustavil. Tudi navidezna zmaga "konservativih" sil pri njegovi standardizaciji skozi ECMA je pravzaprav blagoslov v preobleki. Vse predlagane novosti bi namreč znatno otežile prenos že izdelanih knjižnic. Nova, bolj evolutivna pot bo za vse razvijalce precej sprejemljivejša, hkrati pa je znova povezala vse pomembne igralce v spletu in to bo dalo javascriptu še večji zagon.
In prihodnost vtičnikov? Sodobni brskalniki se ne dajo in bodo v novih različicah podprli oznako <video>. Če bo javascript še naprej tako napredoval, večpredstavna podpora pa bo vgrajena v same brskalnike, so vtičniki obsojeni na propad. Če nas je splet česa naučil, potem nas je tega, da zna velikanska spletna skupnost vedno najti pot okrog zapletenih in lastniških rešitev, če je le na voljo alternativa.
V javascriptu so bila razvita celotna razvojna in izvajalna okolja, ki omogočajo hitro izgradnjo najrazličnejših aplikacij.