Nú er skammstöfunin AJAX búin að vera í notkun í nokkurn tíma, æ fleiri stökkva um borð í lestina og lofa dýrðina, en aðrir líta málið öðrum augum. Persónulega er ég fremur efins um gagnsemi þessarar tækni, einkum þegar gallarnir eru dregnir fram í dagsins ljós. Fyrir mörgum kann AJAX að hljóma eins og splunkuný uppfinning, en þeir sem kanna málin til hlýtar vita að svo er ekki. AJAX (Asynchronous Javascript And XML) er tækni til að framleiða gagnvirkar vefsíður, þó án fullrar endurhleðslu eins og tíðkast hefur í gegnum tíðina. Uppistaða AJAX er ECMAScript mállýska, svo sem VBScript, Java- og JScript, sem og XmlHttpRequest hluturinn. XmlHttpRequest var framleitt af Microsoft á sínum tíma, og hefur verið í boði síðan frumútgáfa Internet Explorer 5.0 leit dagsins ljós (sem ActiveX hlutur). Það var í raun ekki fyrr en Mozilla fylgjendur bjuggu til stuðning við þessa tækni (og síðar fleiri, svo sem Opera og Safari) sem skammstöfunin hlaut einhvern byr undir vængi, og allir sem eitthvað vissu um vefþróun ákváðu að nýta sér þessa tækni, líkt og þegar skammstöfunin DHTML (Dynamic Hyper Text Markup Language) varð til, sem er í raun ekkert annað en Javascript eða sambærileg mállýska nýtt samhliða HTML og CSS. Ef þannig er litið á hlutina kemur greinilega í ljós að hér er ekki um annað að ræða en enn eitt tískuorðið, því tæknin sjálf er orðin nokkuð gömul (látum þroskann liggja á milli hluta að sinni).

Nú er hins vegar svo komið að jafnt reyndir sem óreyndir vefsmiðir eru ekki alveg með á nótunum, og allt sem áður hét einfaldlega JavaScript er orðið að AJAX í hugum þeirra. Fyrir smámunasama menn eins og mig er það gróf misnotkun á merkingu hugtaksins, einfaldlega vegna þess að AJAX != JavaScript. Til dæmis um þennan fremur algenga misskilning eru fyrirbæri eins og hreyfanlegir sem og aðrir virkir hlutir á vefsíðum. Allt er þetta framkvæmt á tölvum skoðenda, fremur en á vefþjóninum sem skilar gögnunum, og án nokkurra samskipta við vefþjóninn. Það er ekki fyrr en að gögn eru sótt til þjónsins og birt án þess að endurhlaða allri síðunni sem við erum farin að nýta AJAX. Raunar er það einnig mögulegt með Iframes, en þeir gera okkur þetta einnig kleyft, þó á umtalsvert frumstæðari og takmarkaðri máta.

En hvað um kosti og galla? Gagnvirknin fer ekki á milli mála; Við getum auðveldlega breytt eða eytt hlutum vefsíðu með tiltölulega stuttum fyrirspurnum til vefþjónsins og fengið til baka smáa skammta af upplýsingum, í stað þess að endurhlaða allri vefsíðunni í einu. Samhæfnin er einnig furðu góð, því sömu skipanirnar virka flestar nánast óbreyttar í hinum ýmsu vöfrum sem styðja XmlHttpRequest hlutinn á annað borð.

Gallarnir fara þó ekki leynt. Fyrst og fremst verður vafri notandans að styðja og nota JavaScript (Internet Explorer 6.0 og eldri þurfa einnig að hafa ActiveX og ActiveScript virkt). Einnig er viðbragðstími mikilvægur þáttur, því ef vefsmiðurinn sýnir ekki á einn eða annan hátt að verið sé að senda eða sækja upplýsingar er eins víst að notandinn snúi baki við vefsíðunni í þeirri trú að álag og/eða netsamband sé orðið of mikið. Svo ekki sé minnst á bókamerkin og „til baka„ hnappinn, en það er líklega á flestra vitorði að þetta á enga samleið. Mismunandi lausnir hafa þó verið þróaðar og reyndar í þessum málum, en illu heilli samsvarar árangurinn jafnan ekki vinnunni sem í verkið fer.

Sjálfur átti ég nýlega þátt í hönnun og forritun skoðanakönnunarvefs, en þar er nánast einvörðungu notast við AJAX í stað gamaldags form taga. Þetta gerir það að verkum að hver sá sem reynir að nota kerfið en hefur ekki nauðsynlegan stuðning í sínum vafra verður fyrir sárum vonbrigðum, því hann getur nánast engar upplýsingar vistað. En þar sem tíminn er dýrmætur verður ekki allt eins og best verður á kosið, eða hvað?

Þó gallarnir séu hvimleiðir, þá eru kostirnir vissulega ágætir. En til að búa svo um hnútana að sem flestir geti áfram nýtt sér sömu möguleika, þó á misjafnan hátt sé, þarf að skipuleggja hlutina vel og vandlega, og leggja allan sinn metnað í verkið.