Front-end e innovazione: quanto è dura con le vecchie versioni di Internet Explorer
Nello sviluppo del front-end un aspetto da tenere in considerazione per un elevato standard di qualità è garantire una visualizzazione omogenea sui browser più diffusi: Internet Explorer, Firefox, Chrome e Safari.
Ogni versione rilasciata dai team dei rispettivi browser ha avuto ed ha – chi più, chi meno – qualche piccola falla… d’altra parte i ritmi incessanti e l’alta competizione richiedono date di uscita al pubblico sempre più stringenti.
In questo caso voglio però concentrarmi su Internet Explorer, in particolare le versioni 6 e 7, che più o meno tutti conosciamo.
Il primo, rilasciato il 27 agosto 2001, ha il record di longevità e si è sempre distinto per non aver seguito in modo preciso gli standard definiti dal W3C, tanto da essere stato spesso vittima – a torto o a ragione – di strali da parte degli addetti ai lavori.
Il secondo, rilasciato il 14 novembre 2006, ha, tra le varie cose, migliorato, rispetto al predecessore, il supporto per HTML 4.01, DOM e CSS 2.1 ed introdotto il supporto per le PNG.
Lo stato dell’arte, oggi
Parlerò di loro perchè con HTML5, CSS3, e nuove tecnologie all’ordine del giorno, anche in Italia il web sta cercando di “emanciparsi”; tuttavia ci sono alcuni clienti che, per non completa conoscenza del web o per testardaggine o per esigenze particolari, pretendono che un sito si veda con la stessa precisione “pixellistica” anche su IE6 e IE7. Colpa anche nostra che in passato ci siamo cullati negli allori, senza guardare alle novità. Ciò comunque significa spendere molto più tempo per adottare degli hack adeguati e implementare tecniche di degradazione visiva dei contenuti.
Cosa fare?
Un’obiezione da sollevare potrebbe essere argomentare sulla reale diffusione dei suddetti browser nel mondo e in Italia.
Abbiamo almeno tre fonti che fanno al caso nostro: W3CSchools, Statcounter e NetMarketShare (servizio parzialmente gratuito).
Partiamo subito dalla prima.
Come panoramica globale, possiamo tranquillamente notare che dal 2010 fino ad oggi, Internet Explorer ha perso circa il 15% del mercato mondiale, a scapito dei competitor.
Andiamo nel dettaglio:
IE6 e IE7 sono ormai a percentuali bassissime.
Una sola fonte potrebbe non dare autorevolezza a dati oggettivi, di fatto.
Passiamo allora a StatCounter.
Su scala mondiale, IE detiene il 40,18% del mercato.
IE6 è diffuso per il 2,47%, IE7 per il 4,29%, cifre leggermente più alte rispetto a quelle indicate da W3CSchools, ma che confermano comunque il trend verso il basso.
Nelle statistiche che riguardano l’Italia IE6 non è menzionato, IE7 si stabilisce su un 4,4%.
Per NetMarketShare le cose vanno leggermente meglio: IE6 si attesta a 7,50% e IE7 a 5,41%.
Il comune denominatore è che entrambe le versioni sono ben al di sotto del 10%, una soglia che definirei psicologica per prendere seriamente in considerazione uno sviluppo dedicato.
E se non bastasse?
Come dicevo prima, HTML5 e CSS3 (e jQuery, per fare un nome) ci mettono a disposizione delle novità che sono cool e soprattutto sono utili perchè ci aiutano a sviluppare codice e pagine con – spesso – meno righe e meno tempo (e di sviluppo e di caricamento delle pagine).
Un semplice modulo, inteso come parte di pagina, ha bisogno di un tempo giusto per essere sviluppato e superare la compatibilità sui browser moderni (incluso IE9), poi ne serve sempre di più per farlo funzionare pian piano sulle precedenti versioni di IE.
Prendiamo ad esempio un box con angoli smussati e sfondo in gradiente: con CSS2.1 dobbiamo caricare uno sfondo con immagine già pronta con l’aspetto che ci serve. Con CSS3 gli angoli smussati e lo sfondo in gradiente si realizzano con le regole border-radius e background, con un risparmio effettivo di byte… Purtroppo, in questo caso specifico, su IE lo sfondo è instabile e i bordi arrotondati si vedono con un file da caricare appositamente.
Quindi il caricamento delle pagine su IE6 e/o IE7 potrebbe rallentare per gli hack necessari. Potrebbe essere una differenza lieve ma è un aspetto tecnico da non sottovalutare.
Decide il cliente!
Se il cliente insiste a chiedere una retro-compatibilità per IE6 e/o IE7, preferisco valutare la possibilità di inserire, in fase di preventivo, lo sviluppo per questi browser come voce extra, poichè il tempo dedicato serve per garantire il funzionamento del progetto anche a browser non più al passo con i tempi. Sta a me far capire se ne vale davvero la pena. Poi, se rifiuta, valuto insieme al cliente come è meglio procedere.
Se invece per il cliente è sufficiente una compatibilità fino a IE8 e comunque per browser non troppo vecchi, ci sono due strade:
- Rendere, come di norma, tutto il sito “degradabile” e fino a IE6 anche con qualche piccola imperfezione visiva
- Spingere gli utenti ad aggiornare il proprio browser con un plugin visibile solo per chi usa IE6 e/o IE7
Conclusioni
E’ un argomento che presenta dei pro e dei contro, ma è un dato di fatto che, oltre a rallentare la ricerca dell’innovazione, uno sviluppo dedicato alle vecchie versioni di IE richiede molto più impegno e il tempo impiegato non è da valutare gratis: ci vogliono analisi, ricerca e pazienza. Mettendo in chiaro questo aspetto, la professionalità e la correttezza vengono apprezzati.
Voi che esperienze avete avuto? Preferite garantire la compatibilità fino a IE6, sempre e comunque? Gratis o a pagamento?
26 commenti
Trackback e pingback
Non ci sono trackback e pingback disponibili per questo articolo
Personalmente ho abbandonato la compatibilità a IE6 da qualche mese mentre per IE7 continuo a combattere senza pretendere extra al cliente finale. Ma sono in attesa, nella speranza che il buon Bill abbandoni definitivamente l’idea di creare Browser, non sono mai stati capaci di farli :-)
Ciao Adriano,
probabilmente dovremo aspettare ancora un po’… per IE6 abbiamo dovuto aspettare circa 8 anni perchè fosse dichiarato pubblicamente cessato il suo supporto. :)
Sarà una via Crucis, hehehe…
mmm io non aggiungo extra per la retrocompatibilità. in fondo i trucchi oramai sono sempre quelli, e se li conosci li applichi fin da subito, se il cliente vuole la retrocompatibilità fino al 6.
personalmente cerco di informarmi se il cliente usa proprio ie6 e mi adeguo di conseguenza: se ce l’ha sto attenta, altrimenti non lo considero.
baci!
concordo pienamente.
personalmente io vado giù con il badile…ahahaha :D
modal personalizzato anti ie 6/7 che consiglia di scaricare nuove versioni e sull’8 graceful degradation senza pietà (nonostante i “guru” dell’accessibilità favoriscano la progressive enhancement ormai da tempo).
per esempio su ie8 zero animazioni e se c’è un border radius visualizzo un rettangolo e arrivederci.
sono abbastanza “intollerante” ai vecch browser di microsoft :P
Quoto in toto Luca, e quando il cliente insiste si fa un preventivo ad hoc, spesso è un buon modo per “spaventarlo”
Quoto anche io.
Il nostro sembra essere l’unico mondo nel quale si va a rincorrere tutti anche quando i loro prodotti sono superati o non conformi. Vi faccio un esempio.
Pochi anni dopo l’introduzione dei DVD, sugli scaffali dei negozi erano completamente sparite le VHS. Vuoi vedere un film? Comprati un lettore DVD. Basta. Finito.
Certo che se fossimo noi a gestire i negozi ci sarebbero ancora sugli scaffali le VHS e magari anche i super 8.
In più aggiungo.
Pensate che se un’azienda produttrice di lettori DVD vendesse un lettore non conforme agli standard le case cinematografiche starebbero a fare tutte le correzioni nei DVD in modo che fossero visibili correttamente anche su quei lettori?
In un mercato normale quell’azienda non venderebbe nemmeno un pezzo.
Quoto Maurizio dall’inizio alla fine, tutto ciò non ha alcun fondamento logico.
Inoltre non riesco proprio ad entrare nella psicologia dell’utente che si ostina a non voler cliccare sul tasto “aggiorna”. Santo cielo, è così faticoso??
Quoto in toto Luca e Maurizio.
E’ strano tanto più considerando che l’informatica e di conseguenza il web corrono alla velocità della luce e dall’oggi al domani troviamo dei passi avanti spaventosi.
Come dicevo nell’articolo, è anche colpa nostra se abbiamo fatto in modo che IE6 – in particolare – resistesse nel tempo.
A furia di non aggiornarsi, di accontentare qualsiasi richiesta senza controbatterla con dati oggettivi, abbiamo dato lunga vita ad un browser che probabilmente poteva anche durare meno. :-)
Per rispondere a Pupixel, per certi versi è comprensibile. Si è creato il mito per cui usare un computer è come giocare ma nei fatti ci vuole elasticità mentale, studio e allenamento. Così come io non pretendo di saper usare un martello pneumatico, rischierei altrimenti di fare solo danni e disastri.
Un buon articolo davvero..bella l’analisi.. mi piace. Se oltre alla compatibilità si mettono, se ad esempio hanno IE7, anche la caterva di barre dei segnalibri, amazon, google e motori di ricerca vari…non è più finita!
Noi, come azienda, abbiamo abbandonato lo sviluppo su IE6 più di due anni fa quando anche google lo ha dichiarato obsoleto in una dichiarazione ufficiale. Per ie7 diamo garanzia di funzionamento e non di aspetto ottimale, ovvero garantiamo un accessibilità ed utilizzabilità minima ma senza curare i pixel, i rounded box ecc… da ie8 in poi è tutto garantito al 100%. Ovvio che se, come capita, dobbiamo sviluppare una webapp o un sito intranet utilizzato da aziende che montano solo ie6/ie7 per policy aziendale ci si adatta mettendo ben in chiaro al cliente i limiti “strutturali” del sistema.
Lo vedo un approccio equilibrato che forse, in certi casi, risulta anche fin troppo tollerante.. WebKit 4 life! :D
Da circa un anno nei preventivi specifico che il sito non viene ottimizzato per IE6 (fornendo, nel caso, le statistiche che ne provano l’obsolescenza).
IE7, salvo rari casi, è più benevolo e meno difficoltoso da ottimizzare e lo mantengo tra i browser “supportati” senza alcun extra richiesto.
Se fosse per me farei come il backend di WordPress! “Hai una versione vecchia di Internet Explorer? Imparare come navigare felicemente!” con un bel link a http://browsehappy.com/
Ciao Alessandro,
e grazie.
L’iniziativa sarebbe effettivamente da diffondere a macchia d’olio.
Comincio con un bel tweet.
Saremo mica noi a tenerlo ancora in piedi con i nostri test di compatibilità?
Se smettessimo tutti di provare i nostri siti su ie6 quelle percentuali si annullerebbero. :-)
Personalmente sono un paio d’anni che lo considero più.
Sono perfettamente d’accordo con te, sono i siti internet che assecondano questi “browser” che li tengono in vita. Che l che senso ha supportare browser con market share del neanche il 5%??
Stiamo scherzando? Supportare IE6, un software con ben 10 anni di vita?
Non vedo l’ora che Facebook e YouTube stacchino la spina…
Personalmente non mi curo più di IE6 dall’uscita di http://www.ie6countdown.com/.
Non chiedo mai un extra per la retro compatibilità su IE7, come non la chiedo ormai per iPhone e iPad.
Da qualche mese uso CSS3PIE http://css3pie.com/ per CSS border radius, rgba con alpha, gradienti e box shadow compatibile con IE7+. Ha i suoi limiti (form, tabelle e rallentamento del caricamento delle pagine) ma in fin dei conti rende bene, è veloce da applicare e non necessita di hack particolari.
I problemi strutturali di IE7 sono tutti noti e documentati. Una soluzione si trova quasi sempre…ma se non ci fosse preferisco trovare un’altra tecnica e riscrivere il codice per risolvere il problema alla radice o segnalare la questione al cliente preventivamente.
I problemi maggiori sorgono quanto il cliente stesso usa IE7…avrà certamente un’approccio al web e una visione del web design molto lontana da quella che abbiamo noi addetti ai lavori.
In Italia ie6 è ancora molto diffuso nella pubblica amministrazione a causa dei vecchissimi software utilizzati. Nella mia breve esperienza lavorativa per INPDAP ho visto cose che voi umani……. (cit.)
Ho scelto di non rendere i miei lavori compatibili con IE6 ed IE7, quando un utente utilizza uno di quei browser, si trova un avviso non invasivo ma ben visibile nel bordo alto della pagina (ti segue e non demorde) che consiglia di aggiornare ad IE8 o IE9 (consigliato, perché è meglio dell’8 e non voglio dare l’impressione che sto facendo una campagna pro concorrenza XD) oppure cambiare proprio di browser.
Onestamente vorrei abbandonare anche IE8 ma è prematuro ed inoltre che usa XP, sono tanti, e vuole usare IE, non può far altro che usare quello.
Nonostante ciò per IE7 cerco di rendere il sito visivamente il migliore possibile, senza diventarci scemo.
Noi abbiamo scelto di non supportare più ie6 e ie7: l’aggiornamento dei browsers è gratuito e si può fare in pochi istanti, in certi casi è solo pigrizia dell’utente. Come dice Alessandro in un commento precedente la pubblica amministrazione usa ancora sw del pleistocene su hw se si può più antichi e quindi è “legata” a ie6, ma se stiamo ad aspettare la burocrazia italiana stiamo freschi.
Anche per questo abbiamo appena lanciato una web app natalizia (http://www.myxmascard.it per chi vuole dare un’occhiata) che sfrutta ciò che c’è di più nuovo nel nostro mondo (html5, css3, jQuery, trasformazioni svg, …) nella quale diciamo esplicitamente che se si vuole il massimo dell’interattività è bene aggiornare il proprio browser, altrimenti funziona, ma con qualche limitazione.
Personalmente non prendo minimamente in considerazione Internet Exploder 6/7.
Confido sempre nel fatto di attirare clienti SVEGLI che comprendano che siamo nel 2012! :D
Sebastian
Io sto sbattendo la testa dappertutto, ricercando la “graceful degradation” anche su ie6/ie7, perché il sito di cui mi sto occupando ora ha una percentuale consistente di utenti (circa il 20%, ahimè!) che utilizza queste versioni.
ti ringrazio per il link al google code che propone l’upgrade: chiederò al cliente la possibilità di inserirlo nelle pagine, per ridurre questa immensa fetta di browser non aggiornati!
e comunque il dubbio era venuto anche a me: vuoi vedere che ie6 lo teniamo in vita noi con i nostri test di retro-compatibilità?
poi ho cominciato a lavorare in una società che nella build standard dei pc ha XP (passi..) e ie6…ah, ok…
Le prime statistiche, quelle di W3CSchool.com sarebbero anche lusinghiere…peccato che appena sotto si può leggere:
“W3Schools is a website for people with an interest for web technologies. These people are more interested in using alternative browsers than the average user. The average user tends to the browser that comes preinstalled with their computer, and do not seek out other browser alternatives.
These facts indicate that the browser figures above are not 100% realistic. Other web sites have statistics showing that Internet Explorer is a more popular browser.”
Mi sa tanto che per vedere Internet Explorer 6 /7 all’1% ci vorrà ancora pazienza…PURTROPPO!
Non avevo letto questa nota, i dati sembravano troppo allettanti.
In effetti dipende molto dal target che visita un sito. Ad esempio ho avuto accesso alle statistiche di uno stilista che produce abiti da sposa. La presenza di visite con IE è allucinante e desolante: il target medio è una donna sopra una certa età che di certo nemmeno sa cosa sia un browser.
Qui ci vuole una petizione mondiale dove chiediamo formalmente il ritiro di Mircrosoft dal mondo del browsing! :-))
Personalmente ho avuto parecchi visitatori che utilizzano ancora IE6 :( e sinceramente non capisco perchè le persone si ostinano ancora ad utilizzare Browser così datati
Perchè la totalità di quella gente che usa IE6 non sa neanche chi si può aggiornare.
Perchè la totalità di quella gente pensa che il proprio computer è si un po’ lento, ma funziona benissimo.
Perchè la totalità di quella gente se gli dici che è ora di cambiare il computer ti rispondono; Nooo, per cosa fare, tanto ci vado solo in internet, a me non serve un computer nuovo.
Concordo con quanti appoggiano il fatto di non fare più siti compatibili.