Browsere Web

Un browser este, într-un fel, echivalentul covorului fermecat din poveste: suportul care ne permite de fapt să ne plimbăm comod prin lume, ducîndu-ne cu viteza gîndului din loc în loc, sau lăsîndu-ne să zăbovim după dorintă acolo unde sîntem tentati să o facem.

Iosif Fettich

Simplă bucătică de soft, un browser de WWW este cel care determină în final senzatia de confort sau disconfort, de entuziasm sau de dezamăgire pe care o lasă orice trecere prin WWW. Căci, acum, o partidă de "web surfing" - greu de găsit un termen mai potrivit pentru a descrie raportarea la oceanul de informatii pe care îl descoperim - implică o componentă afectivă imposibil de ignorat. A-ti alege traseele nu e un act neutru, de luare la cunostintă, ci o participare: voi retine cu plăcere si voi reveni, probabil, în locurile în care m-am simtit bine, si nu voi mai trece a doua oară pe acolo unde am dat de ceva care mi-a displăcut…

S-au dus vremurile în care numai initiatii să poată accede la asa ceva, date fiind dificultătile tehnice sau de operare; dusă e si vremea interfetelor seci si insipide, care să lase o aceeasi primă impresie de ansamblu de litere si atît. Sunet si lumină, culori si desene, ritm si viteză - cine le-a gustat odată, nu mai vrea să renunte.

Sigur că existenta WWW, a retelelor de calculatoare, a metodelor si tehnicilor din ce în ce mai sofisticate de acces la informatii reprezintă infrastructura determinantă - dar să nu uităm rolul incredibil de important în acest mozaic pe care îl are fărîma care decide în final cum ne apare în fata ochilor si cum "simtim" această infrastructură informatională. Dacă e să o percepem ca o binefacere si nu ca o amenintare, browserul - unealta soft cu care ne miscăm în WWW - este singurul element determinant, cel pe care îl vedem mereu si mereu. Prin el vedem, cu el ne miscăm; dacă el ne "ghiceste gîndurile", vom fi încîntati să ne folosim de el, dacă e scortos si neprietenos (sau de-a dreptul tembel, uneori…) vom prefera să-l evităm - si odată cu el, tot ce înseamnă lumea din spatele lui…

Modestele noastre cerinte...

Recapitulînd: unde se plasează deci un browser - companionul nostru prin WWW - si cam ce pretentii (justificate sau nu) am avea de la el?

Există trei conexiuni principale:

Fără nici o îndoială, prima este cea mai importantă si ei i se subordonează celelalte. Vom vrea, desigur, ca browserul să ne fie un fel de secretar, ajutor devotat si neobosit în orice voiaj: să ne scutească de formalitătile de rutină, neplăcute si obositoare; să ne prezinte lucrurile corect, dar totdeauna în maniera în care ne place mai mult; să noteze diversele denumiri imposibil de pronuntat si retinut si să ni le poată aminti oricînd, la cerere; să tină minte pe unde am mai fost; să fie iute, nu un tîrîie-brîu; să poată duce mai multe sarcini deodată la bun sfîrsit, fără să le încurce în vreun fel; să fie usor adaptabil toanelor noastre - dacă dorim un fond albastru, nu rosu, să-l putem face, dacă nu vrem sonor, să devină mut cvasiinstantaneu (fără să ne ceară pentru aceasta să dăm comenzi dificile sau să ne plimbăm prin zeci de meniuri) etc. Să nu gresească prea tare chiar atunci cînd, din neatentie, dăm comenzi dezastruoase si, în general, să permită revenirea si din situatii dificile în care singuri sau de circumstantă am intrat; să ne fie translator din diverse limbi, sfătuitor si consilier atunci cînd e cazul, fără să devină sîcîitor, etc.

Toate acestea pornind de la sarcina de bază pentru care l-am "angajat": să ne ajute să ne descurcăm fată cu noianul de informatii diverse la care există acces, în Internet, printr-o interfată mai degrabă "spartană" si foarte riguroasă - protocolul HTTP si dezvoltările acestuia.

Pentru a ne putea servi, browserul are la dispozitie, la rîndul său, un singur ajutor: functiile pe care i le pune la dispozitie sistemul de operare.

Dificultăti

Dacă asta ar fi foarte pe scurt teoria (abstractă), să încercăm să vedem si dificultătile (practice). Întîi de toate, să nu uităm că nici un browser nu s-a născut perfect, că browserele de care ne bucurăm acum sînt rezultatul maturizării partiale măcar a unor idei si totodată tributare pînă la un punct felului în care s-a născut si a devenit ceea ce este acum Web-ul. Poate că dacă totul s-ar reproiecta de la zero, pe o altă planetă, acum sau peste cîtiva ani, foarte foarte multe lucruri ar arăta cu totul altfel; dar fiindcă ceea ce există nu poate fi pur si simplu ignorat, inclusiv browserele, cît de noi ar fi, mai poartă cu ele un balast "istoric" important.

Si as remarca tot aici că în nici o altă situatie contradictia între necesitatea imperioasă de standardizare - cum să faci altfel să se înteleagă între ele toate serverele racordate în Internet ? - nu se loveste de o diversitate comparabilă de platforme hard/soft ca cea de care este vorba în cazul aplicatiilor legate de Internet, WWW în mod special - e vorba, în fond, de (aproape) toate calculatoarele lumii! De toate sistemele de operare si de dezvoltare - si să ne amintim doar de nenumăratele inconsistente sau incompatibilităti care marchează chiar doar versiuni distincte ale unui acelasi sistem de operare… Iar imediat alături, să punem dorinta legitimă a unui utilizator de a "vedea" Web-ul la fel, indiferent de platforma hard sau soft pe care lucrează. Un utilizator oarecare va fi la fel de stresat de faptul că pe calculatoare diferite ar trebui să folosească interfete diferite ca si de ideea că pentru a profita de anumite avantaje disponibile pe o anumită platformă, va trebui să renunte la cea cu care este obisnuit…

Apoi: nevoia imperioasă de a veni în întîmpinarea utilizatorului, de a-i da o facilitate în plus, un serviciu care să te departajeze de concurentă, este în flagrantă opozitie cu nevoia evidentă de standarde comune, care, de nevoie, încercînd să împace solicitări contradictorii, nu pot fi decît la un numitor comun minim, mai "slab" de fapt decît oricare din elementele pe care le-a luat în considerare…

Sigur că, pînă la urmă, cîstigă cine a cîntărit cel mai bine riscurile de a renunta la frînele pe care le aduce cu sine renuntarea la trecut - compatibilitatea DOS de exemplu - fată de cele reprezentate de o proiectare prea avansată în viitor - cum ar fi pretentia ca platforma hard pe care să se lucreze să pornească de la un minim de 32M, pentru a face posibile animatii 3D si secvente video de calitate în timp real…

Browserele WWW, la început, erau niste scule menite doar să permită citirea documentatiilor de tip HTML, aflate pe diverse servere, într-o manieră consistentă. Acum, ele sînt pe cale de a deveni unica interfată pentru Internet, integratoare, preluînd "din mers" si functiile rezervate unor aplicatii initial total distincte: prelucrarea postei electronice si a grupurilor de stiri, transferul de fisiere, intrarea în "taclale" cibernetice, interogarea de baze de date etc.

Mici probleme

"Diplomati" prin definitie, intermediari ai nostri în relatia cu Internet-ul, browserele actuale tind să stăpînească din ce în ce mai bine arta compromisului - si au de rezolvat o serie întreagă de probleme.

1) HTML - dar care?

HTML 2.0 este un standard - dar e sărac, nu spune nimic despre cum să se rezolve cîteva din posibilitătile si necesitătile de formatare mai spectaculoase ale unui document. HTML 3.0, aparent înghetat în faza de draft, vine cu cîteva elemente suplimentare de strictă importantă - centrarea textului, definirea unei imagini grafice de fundal, tabele complexe si diverse posibilităti de definire/manipulare a acestora (subtabele, grosimea liniilor), posibilitatea de a defini imagini transparente sau de a muta controlul dimensiunii imaginii la client, degrevînd serverul de acest gen de sarcini si reteaua de un trafic semnificativ, posibilităti de a defini felul în care se utilizează culorile în marcarea textului, etc. Dar desi încă nu e gata decît în schită, e deja depăsit si în urma evolutiei inovatiilor tehnologice, care nu se pot referi la altceva decît la ele însele, definind "standarde" de facto. Spre exemplu, Netscape a definit o serie întreagă de tag-uri HTML proprii - printre ele, cîteva referitoare la frame-uri, blinking, fonturi, indici superiori si inferiori în texte tehnice - iar Microsoft a introdus în Internet Explorer tag-uri relative la controlul fontelor si la "marquee"-uri, texte gen reclamă luminoasă miscătoare, care să se miste pe ecran. Dar inovatiile, ca toate inovatiile, au proprietatea că nu sînt întelese de browserele conservatoare sau de "celelalte", care nu "se descurcă" cu lucrurile astea noi, sau care vin cu solutii paralele, care au promovat alte căi de rezolvare ale acelorasi idei. Ceea ce înseamnă că un document - să-i spunem mai degrabă o prezentare - va arăta foarte bine pentru un browser care "întelege" toate tag-urile mai speciale folosite, dar riscă să fie urît sau chiar neinteligibil văzut de pe un altul. Autorul prezentării este, evident, în dilemă: să introducă îmbunătătirile care, uneori, realmente cresc cu mult spectaculozitatea unei prezentări, sau să nu o facă, păstrînd documentul în forme obisnuite (terne…), stiind că astfel va putea fi văzut la fel de mai multă lume?

2) Lupta cu timpul - viteza

Chiar si pe legături destul de rapide - ca să nu vorbim de cele lente…- timpul de asteptare în fata ecranului pînă ce "soseste" un document care să poată fi prezentat pe ecran poate fi substantial - poate pur si simplu din cauză că pagina la care tocmai vrem să ne uităm este atît de solicitată încît serverul care o livrează nu poate să o facă mai repede. A astepta pînă ce vine tot documentul, pentru a-l lăsa în final să "explodeze" pe ecran, este extrem de frustrant. Solutia: orice bucătică din document sosită este folosită, imaginea textului sau grafica implicată fiind construită dinamic, pas cu pas, astfel încît pînă ce a sosit în întregime un text mai mare l-am si citit în mare măsură, iar o imagine am "ghicit-o" chiar dacă nu era decît aproximativă; dacă nu ne interesează, putem renunta din timp, fără să pierdem vremea cu adusul ei integral numai pentru a putea decide că nu ne interesează…

3) Multithreading

Se referă la faptul că pot face mai multe lucruri simultan chiar în cadrul unui task (asociat unei ferestre): de exemplu, în timp ce se încarcă o imagine .gif, textul din document poate fi deja editat sau parcurs cu scroll în sus sau în jos.

4) Sesiuni multiple

Obisnuinta de a face mai multe lucruri deodată - citim ziare cînd mergem cu trenul, mîncăm stînd la televizor, vorbim la două telefoane simultan, etc. - nu se opreste cînd ne asezăm la calculator, din contră. Dacă ne plimbăm prin lume, de ce să fim numai într-un singur loc odată, dacă e mai mult decît tentant să fim cu un ochi pe Playboy-ul de luna viitoare, cu altul printr-o documentatie pe care trebuie să o parcurgem si cu un al treilea să vedem ce mai e nou în grupul de stiri care ne interesează? În afară de asta, canalul de comunicatii utilizat e probabil folosit mai eficient dacă timpii de asteptare ce intervin pe un canal sînt folositi de un altul; voi putea aduce două sau trei documente într-un timp mai mic dacă o fac simultan decît dacă le-as aduce pe rînd. Sesiunile multiple sînt o caracteristică ce nu poate lipsi unui browser modern.

5) Parcă am mai fost pe-aici… - Istoric

Cum documentele din Web sînt interconectate, trimiterile încrucisate de la unul la altul pot lesne să ne prindă în bucle mai mici sau mai mari, lăsîndu-ne impresia rătăcirii într-un labirint. Pentru a evita sau măcar a ne atentiona asupra unor astfel de trimiteri din diverse locuri înspre o aceeasi adresă (greu sau imposibil de retinut cînd aceasta e de forma "http://uts.cc. utexas.edu/churchh/latin1.html", ca să nu mai amintim că trimiterea respectivă se află într-un document asociat cu imaginea unei cesti de cafea si în altul cu un text scos în evidentă prin culoare si intitulat "un loc pe care neapărat ar trebui să-l vizitati…"), browserul păstrează o istorie "ascunsă" a ultimelor N (de obicei de ordinul sutelor) adrese pe care le-am mai vizitat, marcîndu-le pe acestea cu o altă culoare în documentele la care ne uităm. Astfel încît, si într-un document nou, trimiterile spre locuri în care am mai fost înainte (indiferent cum am ajuns acolo) apar marcate în culoarea lui "déja vu", spre deosebire de trimiterile spre locuri noi, marcate la rîndul lor cu altă culoare.

6) Lista favoritilor

Tot navigînd prin Internet, este normal să îti găsesti "locuri" în care vrei să treci mai des si în care să ajungi repede - de exemplu, pagina cu noutătile zilei în materie de soft de Internet, sau ce s-a mai întîmplat relativ la Excel (dacă sînt un utilizator de Excel), sau care sînt cursurile zilei pentru actiunile care mă interesează, etc. Întretinerea si gestionarea unei astfel de liste - care poate deveni repede lungă… - este în mod evident si necesar una dintre facilitătile cvasiobligatorii ale unui browser. Dincolo de existenta acestei functii, ea poate fi implementată simplu - o listă - sau mai complicat - o arborescentă, indexabilă după diverse criterii, unde să pot face adnotări personale, etc.

7) Vei avea nevoie de un document imediat după ce l-ai aruncat…- Cache

Murphy nu doarme - nici cînd e să te plimbi prin Internet. Cunoscînd acest lucru, orice browser serios va păstra - în limitele pe care i le fixăm noi, explicit, sau spatiul disponibil pe disc, implicit - copii ale documentelor pe care le-am parcurs, într-o memorie cache gestionată în regie proprie (de fapt un anumit spatiu disc) - pe de o parte pentru a contracara efectul din titlul paragrafului, pe de altă parte pentru a ne scuti de timpii de asteptare implicati de o nouă încărcare a documentului. Si nu în ultimul rînd, acest mod de actiune se conformează principiului nr. 1 din Internet: be nice! De ce să încarci traficul - mărind implicit timpii de asteptare pentru toti participantii… - dacă poti să nu o faci?

8)…iar dacă l-ai păstrat, va lipsi din el exact ceea ce te interesează! - "Get all links"

Aducerea unui document pe ecran într-o formă care să arate corect este numai prima parte a problemei. De foarte multe ori, vom decide că vrem să păstrăm acel document, pentru referiri ulterioare, si pentru a-l consulta si offline, în momentele în care din motive independente de vointa noastră legătura spre Internet este închisă. Încercînd să-l vedem, nu mică va fi surpriza - si supărarea - cînd vom constata că ceea ce am salvat nu este decît o fractiune neinteresantă din documentul pe care l-am văzut pe ecran… Ceea ce percepem ca un document întreg, pe ecran, cînd sîntem online, este de fapt un set de mai multe fisiere, legate împreună - text sau imagine, o structură arborescentă. Salvarea ei nu este nici pe departe simplă, pentru că arborele poate fi ramificat - prin trimiteri - peste tot Internet-ul, legînd zeci de milioane de fisiere de tip text, imagine sau sunet. La fiecare trimitere, decizia de luat este: salvez si fisierul spre care există trimiterea, sau numai trimiterea? Dacă salvez numai trimiterea, risc să nu "iau cu mine" exact portiunea care mă interesa de fapt; dacă iau totdeauna si fisierul spre care se face trimiterea, risc să fiu prea mic pentru un volum atît de mare - posibil, zeci de Gbytes… - chiar dacă mă limitez numai la fisierele locale unui anumit calculator. Curios cît de greu se ajunge la un compromis rezonabil - încă si acum, putine browsere sînt în stare să preia "dintr-una" si să păstreze legăturile interne (cum să le rezolve pe cele externe…?) măcar pentru acele fisiere care definesc nivelul 0 al unui document, deci cele care contribuie direct la aspectul său. Pe de altă parte, a prelua offline documentul înseamnă a minti putin - poate mîine deja autorul său îl schimbă, iar ceea ce e salvat nu mai este decît istorie, un instantaneu a ceea ce a fost cîndva documentul original…

9) Nu toată lumea vorbeste aceeasi limbă

Si mai ales nu scrie la fel. Engleza este cvasiobligatorie în prezent - marea majoritate a documentelor disponibile prin Internet sînt concepute în engleză. Dar dacă vrei să scrii în altă limbă, încep să apară probleme. Pe de altă parte, dacă prezinti o hartă a României, parcă ar fi frumos ca numele românesti să păstreze grafia corectă, deci să aibă si caractere românesti - dar dacă aceste caractere apar unui privitor ce utilizează un alt browser ca "hieroglife", textul va arăta mult mai rău decît dacă ar fi fost scris de la bun început fără diacritice, rămînînd măcar partial citibil. Iar cum se descurcă oare chinezii sau japonezii? Greu de crezut că vor învăta toti engleza. Unicode-ul ca solutie - un standard care măcar în principiu acoperă toate caracterele tuturor limbilor vorbite în prezent - este departe de a fi monedă comună. Dar China si mai ales Japonia sînt piete mult prea interesante ca extensiile de limbă accesibile din browsere să nu devină functionale în viitorul apropiat.

10) Integrarea mai multor protocoale

De la HTTP s-a pornit - dar HTTP-ul e numai unul din mai multi. Dacă încă si acum, pentru fiecare actiune ai de regulă la dispozitie un program specific (care se foloseste de un protocol specific…) - un mailer pentru a face posta, un newsreader pentru a citi stirile, un chatter pentru a sta de povesti cu-cine-te-mai-întîlnesti-prin-Internet, un gopher pentru a extrage date dintr-o bază de date aranjată să fie accesată în acest mod, etc. - este totusi absolut normală si clar decelabilă tendinta de a integra toate aceste lucruri distincte sub o unică interfată - browser-ul de fiecare zi. Pentru că din punctul de vedere al utilizatorului, toate aceste lucruri diferite reprezintă de fapt unul singur - Internet-ul.

11) Căutări inteligente

A găsi acul în carul cu fîn ar fi în mod cert mult mai simplu decît găsirea informatiei în Internet, dacă nu ar exista "masinile de căutat", searcher-ele. Dacă acum singurul ajutor pe care îl oferă browserele în această directie - atunci cînd o fac.. - este că au pe aproape trimiteri spre cîteva din site-urile de căutare existente, lăsînd apoi utilizatorul să se descurce cum stie "acolo", pe masina respectivă de căutare (fiecare cu regulile ei, fiecare cu sintaxa ei…), sînt convins că una din primele îmbunătătiri semnificative ce urmează să apară este unificarea acestora, nu la nivelul masinilor de căutare, ci la nivelul browserelor. Astfel încît un om obisnuit cu un browser să poată formula o cerere de căutare într-un singur fel, indiferent către care masină va trimite apoi cererea sa; ba poate chiar spre toate, sau numai spre cele care sînt mai libere sau răspund mai repede, sau …

12) Securitate

O problemă veche, dar neimportantă - pînă ce se ajunge la bani. Cum acum a început să nu mai sune deloc a SF efectuarea de cumpărături via Internet - toate marile firme americane se pregătesc serios pentru acest lucru - problemele de securitate se pun din ce în ce mai stringent. Dacă e să cumperi de pe PC-ul de acasă, e necesar ca nimeni în afară de cei autorizati să nu afle numărul de cont de la bancă si parola secretă care face posibilă efectuarea de plăti din acel cont. Sau să nu poată adăuga la un mesaj care este un ordin de plată către un cont încă o plată, pe un alt cont… Încă oarecum la început, această latură a problematicii Internet WWW se face din ce în ce mai repede simtită inclusiv în browsere. Si va deveni o componentă vitală a lor într-un viitor mult mai apropiat decît si-ar fi putut imagina cineva cu foarte putin timp în urmă.


(C) Copyright Computer Press Agora