Zilele astea s-a facut zarva mare pe internet cu lansarea noilor browsere IE 9 si Firefox 4. Evident, ca acest lucru a dat nastere la vechea discutie despre care e mai bun, mai rapid, mai versatil.
Si era normal ca discutia sa nu ramana la IE si Firefox. Sustinatorii Chrome si Opera au sarit si ei cu argumentele lor. In fine, nu despre razboiul browserelor vreau sa vorbesc in acest articol. Aceste lansari si felul in care s-a facut trecerea pentru fiecare in parte m-a pus pe ganduri.
Sa le luam pe fiecare in parte si sa discutam despre ele:
Firefox si Opera au optiunea Check for updates. Daca utilizatorul n-o foloseste timp indelungat, browser-ul descarca noua versiune si cere permisiunea sa o instaleze.
Google Chrome poate fi upgradat prin optiunea Check for updates, dar poate fi setat si sa instaleze versiunile noi fara sa mai ceara permisiune.
Internet Explorer vine in mod normal prin Windows Updates, dar numai la mult timp dupa ce a fost lansata o noua versiune, iar Check for updates nu exista. Daca vrei noua versiune te duci pe site la Microsoft si o descarci.
Deci cum e mai bine? Pai, depinde din ce punct de vedere privim. In mod normal utilizatorul ar trebui sa aiba control total al programelor pe care le are in calculator. El ar trebui sa decida cand si daca vrea sa treaca la o noua versiune.
Dar sa privim si punctul de vedere al dezvoltatorilor web. Ai celor care trebuie sa ofere utilizatorului o experienta web corecta si placuta. Ei bine, aici lucrurile stau altfel.
Daca ar fi dupa mine, browserele ar trebui sa instaleze cea mai recenta versiune fara sa sufle nicio vorba. De ce? Pentru ca de prea multe ori am lucrat la o aplicatie web care desi mergea pe toate browserele (inclusiv IE), nu mergea pe IE6. Si da, sunt in continuare foarte multi utilizatori care il folosesc.
Si asta nu e cea mai mare problema. Pentru ca IE6 este notoriu pentru problemele de randare, asa ca se poate testa separat pentru el. Mai mult, exista softuri de development (cum ar fi Dreamweaver), care iti analizeaza codul si iti arata unde ar putea aparea probleme cu acest browser buclucas.
Dar ce te faci in situatii mai delicate de atat? Am testat la un moment dat o aplicatie de-a mea pe Firefox 3.x si mergea. Din pacate, lucrurile nu se asezau la fel de bine si in Firefox 2.x, care inca mai era folosit destul de mult la vremea aia. La fel si Chrome, care pana de curand a suferit multe imbunatatiri, ceea ce inseamna ca de la o versiune la alta puteau exista multe diferente de comportament.
Evident ca niciun dezvoltator nu poate testa pe 3 versiuni ale celor 4-5 browsere diferite de pe piata. Ar fi crunt. Asa ca solutia e simpla. Toti utilizatorii sa aiba cea mai noua versiune de browser. Astfel eu, ca dezvoltator trebuie doar sa ma asigur ca testez tot timpul pe cea mai recenta versiune.
Unii dintre voi veti spune, ca aleg cale usoara si ca incerc sa oblig utilizatorii sa se adapteze la codul meu in loc sa ma adaptez eu la ce folosesc ei. Eu cred ca nu e asa si aduc si argumente in acest sens.
In primul rand, este in avantajul utilizatorului sa foloseasca cea mai recenta versiune. De cele mai multe ori, versiunile mai noi aduc optimizari atat in randarea paginilor web, cat si in managementul resurselor. Deci ai sanse ca Firefox 4 sa mearga mai bine decat 3.x.
Mai mult, e o chestie de ergonomie. Este mult mai firesc si mai natural ca utilizatorul sa sa faca un upgrade (fara erfort, ca tocmai am zis ca sa face automat), decat ca dezvoltatorul sa testeze pe 7-8 platforme (nu uitati vorbim nu numai de browsere diferite, ci si de versiuni diferite ale acestora).
Si mai e ceva. La un moment dat, tot vei trece pe o versiune mai noua. Nu o sa stai la nesfarsit cu versiunea aceasta pentru ca la un moment dat nu o sa mai vrei tu. Asa ca daca tot trebuie sa faci trecerea, de ce sa nu o faci la timp?
Dar ce facem cu controlul utilizatorului? Nu e normal sa-i bagam pe gat noi optiuni. Poate are motive foarte intemeiate pentru a pastra ce are acum. Eu propun o solutie civilizata si ergonomica (zic eu). Browser-ul face automat upgrade (asa cum am zis mai devreme), iar la prima pornire dupa acest proces sa apara un dialog in care sa anunte acest lucru.
Daca utilizatorul este de acord cu upgrade-ul (si majoritatea vor fi), nu trebuie decat sa dea “accept” pentru a marca faptul ca a luat la cunostinta acest lucru. Daca, in schimb vrea naparat sa ramana la vechea versiune, sa apese butonul “downgrade” si in maxim 2 minute se va face rollback.
Asa vad eu lucrurile. Astept pareri.