Ogni volta che creo un nuovo sito Web, e la cosa avviene più o meno ogni cinque anni, cerco sempre di introdurre qualcosa di innovativo.
Tutti i miei siti Web. :)
Nella tarda metà degli anni '90, gli albori di Internet in Italia, la mia prima homepage utilizzava delle immagini dinamiche al posto dei noiosi bottoni grigi del menu. Oggi lo fanno tutti ma all'epoca era una cosa da OOOH!
Il sito successivo, LockSoft hp, sfruttava i nuovi fogli di stile evoluti in modo da racchiudere l'intera struttura in una cornice pseudo-tridimensionale, e le sezioni interne potevano essere aperte e chiuse come un cassetto.
Quello dopo ricordava vagamente il foglio uscito da una macchina da scrivere e si avvaleva dell'allora innovativo tag <div> per fare in modo che il menu principale scorresse verticalmente insieme alla pagina, e fosse sempre a portata di click. Era anche multilingue: italiano nella colonna di sinistra (prego ignorare gli errori di ortografia, ero giovane), inglese su quella di destra.
C'è stato poi il passaggio dalle pagine statiche (HTML) a quelle dinamiche (ASP). Finalmente, non ero più costretto a scrivere un articolo in locale, collegarmi al server, caricarlo e modificare l'indice a mano prima di poterlo rendere pubblico. Il primo sito ad avvalersi di una sorta di backoffice rudimentale si apriva in una finestra grande come un telefonino, a dimostrazione che la fantasia prevalica tranquillamente ogni limite fisico.1Detto più terra terra, l'idea era di andare in controtendenza a tutti quei siti che facevano di Flash il nuovo messia; ho voluto estremizzare il concetto di luna contro dito (quando il dito indica la luna, ecc. ecc.) visto che il leitmotiv del periodo era grafica, grafica, grafica.
Il più avanzato grado di evoluzione personale l'ho raggiunto con Only Words. Era dotato di un completo editor Web, un database Access2Lo so, fa ridere, eppure quell'antiquato formato mi ha permesso ancora oggi di preservarne, in 6 miseri MegaByte, tutti i contenuti, che prima o poi riporterò qui. e una serie di funzioni dinamiche che al tempo mi hanno semplificato molto la vita.
A seguire è stato il turno di Lemonskin, il primo ad adottare WordPress, segnando al contempo il mio abbandono al mondo della programmazione. Ha anche introdotto la localizzazione negli articoli.
Infine c'è questo qui, che stai leggendo, che ancora non ha un nome e nemmeno so se mai lo avrà.
Anche lui si appoggia a WordPress e non presenta alcuna tecnologia particolarmente originale.3A parte un generoso apporto di CSS3 che simula più dinamicità di quanta non ce ne sia, ma è una naturale evoluzione di Internet per cui non fa testo.
Quindi dov'è l'innovazione? Beh, non c'è. O meglio, è nella cura che ho messo intorno al sito, ma andate avanti a leggere perché detto così non si capisce niente.
Nel precedente post ci eravamo lasciati con la mesta decisione di rifare tutto ciò che stava dietro all'estetica del sito. Bene, probabilmente non vi siete accorti di nulla ma, dopo qualche giorno e qualche notte di lavoro, credo di aver terminato.
Cos'è cambiato? Innanzitutto la grandezza delle pagine servite al vostro browser. Siamo passati da un peso di circa 650 KB a una media di 120, ergo meno di 1/5 della dimensione originale.
Dopo aver seriamente valutato l'idea di buttare tutto e ricominciare davvero da zero, grazie al sempre prezioso contributo di mia moglie Mian4Che con me condivide un pacato e positivo approccio verso i problemi, con la sottile differenza che lei non ulula, non bestemmia e non spacca le cose. sono riuscito a eliminare tutta la mer parte di codice inutile.
A quel punto, però, è scattata la mia solita molla del perfezionismo. Perché limitarmi a togliere il superfluo e non impegnarmi per ottimizzare l'intero blog? E alé…
Ci sono siti che aiutano chi fa siti a farli meglio. Uno di questi era Pingdom5Adesso è apparentemente diventato a pagamento, per cui non è più possibile utilizzarlo se si è taccagni come il sottoscritto., che misurava la dimensione delle pagine, il tempo per processarle, il numero delle risorse impiegate e forniva una sorta di punteggio che indicava a grandi linee l'effettiva efficienza del sito. Un altro è Pagespeed Insights di Google. Questo sito entra un po' più nel dettaglio, analizzando il codice e fornendo un report di tutto ciò che potrebbe essere migliorato.
Ecco, gli ultimi due giorni li ho passati lì sopra, facendo test su test fino a quando non sono riuscito a raggiungere la mia ‘perfezione’.
E qui si apre un universo, che poi sarebbe dovuto essere il nocciolo del post se non avessi scritto il mio consueto wall of text.6Letteralmente 'muro di testo', cioè una valanga di frasi pressoché inutili per esprimere un concetto che potrebbe essere spiegato in poche parole; esempio pratico: ho fatto molti siti, in ognuno ho sempre messo qualcosa di particolare; ora vi spiego cosa c'è in questo nuovo.
Cos'è la perfezione?
Escludiamo immediatamente quella assoluta, non esite.7Non è una frase fatta, nel caso specifico un sito web perfetto si aprirebbe istantaneamente, cioè in tempo zero da quando premiamo 'invio' sull'URL a quando la pagina termina di caricarsi; cosa evidentemente impossibile, almeno nella nostra dimensione. :)
Rimane dunque quella percepita, chiamiamola perfezione umana e facciamo finta che possa essere misurata in modo oggettivo.
Bene, il valore restituito dal test di Google fornisce un punteggio di perfezione umana che va da 0 a 1008In realtà ne ha due, una per i siti desktop e una per quelli mobile (cioè smartphone e tablet e si legge 'mobàil', non è la scarpiera di casa) ma, siccome per i secondi non ho ancora cominciato a ottimizzare niente, direi che possiamo tranquillamente ignorarne il valore. e il mio è ancora ben distante dalla cifra tonda.
Sono scemo allora?
Beh sì, sono scemo ma non è questo il punto. Il punto è che tutto è relativo. Google divide la valutazione in una decina di punti e tale giudizio avviene secondo un principio booleano: vero o falso. Valori intermedi non sono accettati per cui, se anche si riesce a ottimizzare una procedura fino al 90%, quel test è comunque negativo.
Scendendo più in dettaglio…
Prendiamo ad esempio la compressione delle pagine9In pratica il server compatta il più possibile la pagina HTML prima di inviarla in modo da farla arrivare prima e consumare meno banda e tempo., che lui chiama ‘Minimizza HTML’. Io la faccio, ma la procedura che utilizzo comprime il file fino al 96% mentre Google vuole anche quel 4% in più.
Perché non mi impegno di più? Perché non ne vale la pena.
Il 100% si può fisicamente raggiungere, ma sono necessari calcoli più complessi, che a loro volta comportano più carico di lavoro sulla CPU del server, il che può facilmente portare a un effettivo peggioramento delle prestazioni. Se ci metto (per dire, eh, ovviamente i tempi sono differenti) un secondo in più per inviare una pagina che è l'1% più piccola dell'originale non ho ottimizzato, ho fatto una cazzata. :)
Vale più o meno la stessa cosa per tutti gli altri punti del test, con l'eccezione di due o tre che non posso proprio migliorare a causa dei limiti del mio portafoglio ('Abilita la compressione', 'Sfrutta il caching del browser', 'Riduci tempo di risposta del server', opzioni disponibili solo sugli account premium del mio sito di hosting, e che non costano due lire). Per migliorarne altri dovrei fare a meno di WordPress che è comodo ma non un fulmine di guerra e tornare a scrivere pagine HTML statiche, senza colori, formattazione o immagini. In pratica alle origini di Internet.
Tanto per dire, il test non dà 100% nemmeno alla propria astronave madre google.com, nonostante abbia mezzi che nemmeno la NASA si sogna.
Bene, la mia perfezione è questa. E sono felice perché so che oltre questo limite non potrò andare. Ma, soprattutto, non vorrò andare.
Ora posso voltare pagina concentrarmi sulle altre millemila cose da fare. Poi, finalmente, mi rilasserò e mi focalizzerò unicamente sull'unico scopo per cui ho aperto questo blog: condividere pensieri.
E questo mi rasserena.10Almeno per il momento. :)