Standard Web, lo stiamo facendo sbagliato?

Ho iniziato a seguire qualche blog famoso di web designing (il più presitigioso, A list apart), e ho letto qualche articolo a proposito dei nuovi standard web definiti dal W3C: parliamo quindi di CSS, HTML, ma anche Javascript (o meglio, ECMAScript).

Questi gli articoli che mi hanno fatto riflettere:
A List Apart: Every time you call a proprietary feature “CSS3”, a kitten dies
e questo post, con relativi commenti
Edit di HTML.it: Proposta per estendere i valori multipli dei CSS

Nel primo articolo, l’autore lancia un allarme ai web designer: il troppo uso di proprietà CSS con i prefissi proprietari (i famosi -webkit-*, -moz-*, -o-*) rischia di far nascere una nuova selva di non-standard come quella creatasi durante la guerra dei browser tra Netscape e Internet Explorer. In poche parole, un delirio.
Il secondo articolo narra le peripezie di un programmatore che ha proposto una feature, banale ma comoda, da implementare nello standard CSS che è stato respinto con pressapochismo e senza una seria considerazione, lamentando soprattuto che il futuro di uno standard è spesso controllato dagli sviluppatori dei browser che non hanno voglia di fare troppa fatica per implementare qualcosa di nuovo.

Che dire?
Leggendo l’articolo linkato a quello pubblicato su A list apart, ho visto tante buone, ottime idee su nuove proprietà CSS. Ce ne sono molte che andrebbero migliorate, la stessa sintassi CSS sarebbe da ampliare (citando Oliver Twist “Please, sir, i want some more“), magari con un po’ di ereditarietà e elasticità nelle assegnazioni.
Il problema secondo me è la lentezza del processo di standardizzazione. L’ultimo standard emesso dal W3C per i CSS, quello a proposito dei CSS 2.1, risale al 2004. I CSS 3 sono si ormai supportati dai maggiori browser, ma non sono standard pubblicati. In teoria quindi, una pagina che utilizza i CSS 3 non è valida secondo gli
standard vigenti e validi.
Perchè? Perchè aspettare così tanto tempo per poter implementare nuove feature? Non sarebbe più semplice elasticizzare il processo, rilasciare aggiornamenti spesso e non essere avidi in nuove feature da implementare?
Il compito della standardizzazione è infatti quello di stabilire un modo comune per i browser di processare un dato e produrne il giusto output, e per i programmatori stabilire le giuste sintassi e regole semantiche per i linguaggi.
Questo processo può essere molto velocizzato. Già molte feature proprietarie e sperimentali, usabili con mille diversi prefissi ma implementate grossomodo allo stesso modo, potrebbero essere regolamentate e pubblicate.
Sia chiaro, non credo di modificare radicalmente gli standard in pochi giorni e come viene viene, ma penso che le funzionalità più semplici e ininfluenti sul resto dello standard possano essere incluse senza stare troppo a filosofeggiare, ma soprattutto senza aspettare di dover finire di sviluppare tutte le altre.
I tempi ormai sono maturi per questo, i browser si stanno aggiornando con sempre maggior velocità, sia Chrome che Firefox pubblicano una nuova versione ogni circa 6 mesi, non vedo perchè a scadenze simili non si potrebbero aggiornare anche gli standard, integrandosi perfettamente quindi con i cicli di sviluppo dei browser.
Una maggiore sveltezza si potrebbe dire, può portare a commettere errori con altrettanta maggiore facilità. Dov’è il problema? La rapidità degli aggiornamenti permette anche una rapidità nelle correzioni. Inoltre credo che questo sistema si potrebbe integrare con politiche di sviluppo con gli sviluppatori molto più ampie di quelle attuali, permettendo di avere più controllo di quello che sia ha ora.

Credo che una rivoluzione in questo senso andrebbe fatta, voi che ne dite?
Il form per i commenti è lì, a voi la parola 😉

Per un pugno di cucchiai

Il treno viaggiava veloce sulle rotaie arroventate dal sole. Quel giorno faceva più caldo del solito, e i passeggeri combattevano la calura tenendo aperti i pochi finestrini. L’atmosfera era sorniona. Chi dormiva, chi leggeva un consunto giornale, chi sorseggiava un tè. Intanto il treno sfrecciava nel famigerato Deserto dei Desperados. La ferrovia passava dritta sulla sabbia rossastra, tra rocce aride, irsute e plasmate dal vento in milioni di anni. Qua e là sporadici ciuffi d’erba rinsecchita, qualche cactus dai grossi bracci spinosi. Da un alto promontorio si riusciva a spaziare fino a perdita d’occhio. L’orizzonte tremolante era l’unico limite a quella desolazione completa. Una lunga fumata nera restava a segnare il passaggio del treno, che sbuffava come se avesse caldo anche la locomotiva.
Ecco spuntare un cavallo nero, uscire da un anfratto delle rocce e cominciare a inseguire a tutta velocità il treno, sollevando un gran polverone quasi volesse gareggiare con il fumo del treno. Sopra quel formidabile cavallo c’era l’uomo più temibile del Far West: Spoon Bill, la posata che non perdona.
Spoon Bill era un famigerato criminale a quei tempi, il peggior uomo mai visto in circolazione da quelle parti. Una macchina di morte, capace solo di spietatezza e crudeltà. Lavorava da solo, svaligiando carovane, diligenze, rapinando banche. Tutto da solo. Chi osava rivolgergli la parola, era un uomo morto. Nei saloon, si sedeva al bancone e ingollava litri di Scotch come fosse acqua fresca, con il suo cappellaccio calcato sul viso, di cui si riuscivano a distinguere solo due folti mustacchi neri. La sua arma: il cucchiaio. Cucchiaini da tè, cucchiai da minestra, cucchiai di legno, cucchiai da portata: li padroneggiava magistralmente, imponendo il freddo metallo sulle pistole degli avversari o sulle nuche dei vinti, con potenza e precisione maniacale. A quell’epoca, si diceva che se un uomo con un cucchiaio incontrava un uomo con una pistola, l’uomo con la pistola era un uomo morto. Nessuno sapeva di più sul conto di Spoon. O meglio, nessuno che fosse ancora vivo.
Ma lo sceriffo Knife lo stava aspettando. Aveva girato in lungo e in largo quel posto dimenticato da Dio, seguendo la scia di disperazione e morte lasciata da Spoon Bill. Quello che cercava era vendetta, vendetta per un intero villaggio raso al suolo da un solo cucchiaio da portata. Knife l’avrebbe preso e gli avrebbe reso il favore, oh si se l’avrebbe fatto, ci avesse rimesso la pelle, diamine. Non l’avrebbe fatta franca.
A tutta velocità partì verso il treno, giù per il ripido versante, sul suo intrepido destriero che faticava nella sua folle corsa verso il bandito, che stava dietro al treno ancora sul suo cavallo. Ma Knife era più veloce e ben presto lo raggiunse.
Spoon Bill e lo sceriffo cavalcavano adesso uno affianco all’altro. La furia di Spoon non si fece attendere: un cucchiaino lanciato a incredibile velocità fischiò a pochi millimetri dall’orecchio dell’altro. Knife prese la sua revolver grazie ai suo pronti riflessi. Scarico il caricatore sulla testa del nemico, ma l’abilità di Spoon era enorme, armato di due cucchiaini deviava i colpi con freddezza, e con la parte curva del cucchiaio destro, fece rimbalzare il colpo sulla briglia di Knife che perse il controllo del cavallo.
Ma ormai i due avevano raggiunto l’ultimo vagone e lo sceriffo balzò felinamente aggrappandosi alla ringhiera del balconcino dell’ultimo vagone. Spoon lanciò una raffica di cucchiai verso Knife che rotolando riuscì a non farsi colpire. Il rumore dei cucchiai che colpivano il metallo lo guidavano. Prese la rivoltella e sparò dove capiva venire i colpi di cucchiaio, ma prima che potesse sparare un solo altro colpo, Spoon Bill si era già tuffato su di lui brandendo un grosso cucchiaio da minestra e vibrò un forte colpo alla mano dello sceriffo, facendogli cadere la pistola. Knife reagì girandosi violentemente e calciando via il bandito, mentre la rivoltella, vibrando per la corsa del treno si avvicinava pericolosamente al bordo. Knife cominciò a trascinarsi verso di essa, ma Spoon era di altro parere e lo afferrò per le gambe con una mano mentre continuava a percuoterlo con il cucchiaio con l’altra. Lo sceriffo si divincolava e tendeva il braccio sempre di più, fin quasi a riuscire a toccare la pistola, ma Spoon Bill, lasciata la prese girò il corpo provato di Knife e inizio a sparare nuovamente una raffica di piccoli ma affilatissimi cucchiaini da tè: un vero incubo di metallo si abbatteva ora sullo sceriffo che continuava a provare a raggiungere la pistola, nonostante i cucchiaini gli sfilacciassero i vestiti e lo riempissero di lividi. Knife stava per perdere i sensi, sentiva che era giunta la sua ora: quand’ecco che la sua stella di sceriffo si rivelò provvidenziale. Dalle mani di Spoon era partito il suo ultimo cucchiaio: roteante e velocissimo, diretto verso il petto di Knife, il cucchiaio scivolò sulla stella dorata dello sceriffo, tornando indietro al carnefice con la stessa forza con cui era stato diretto verso l’avversario. Inesorabile, il cucchiaio si andò a conficcare dritto in mezzo agli occhi di Spoon Bill, infilandosi nel suo cranio come un grissino nel Rio Mare.
L’oscura era del cucchiaio era finalmente giunta al suo tramonto. Knife aveva ottenuto la vendetta, liberando il mondo dalla peggior specie di uomo.
Sul suo fedele destriero, lo sceriffo Knife ripartì sullo sfondo del tramonto nel deserto, mentre il treno, l’ultimo che avesse conosciuto la minaccia di Spoon Bill, continuava indifferente la sua corsa, mentre gli ignari passeggeri continuavano a sorseggiare tè, a leggere il giornale, o a schiacciare un pisolino.
Ma si sa, la gratitudine non è roba da eroi.

5 cose che mi fanno amare Google Chrome

Un bel post per lodare Google Chrome, con i 10 motivi per cui lo preferisco a tutti glia altri browser che ho provato finora.
PS: I problemi che ho descritto nell’altro post erano probabilmente causati dal fatto che avevo dimenticato di reimpostare l’orologio di sistema dopo aver fatto alcune prove!

  1. Velocità
    Anche se gli altri browser gli stanno dando del filo da torcere su questo campo, Chrome resta in media il browser più veloce su tutto il campo: avvio, caricamento delle pagine, esecuzione degli script. Tutto fluido e rapido anche su macchine non proprio performanti come la mia. Grazie al multitasking poi, puoi tenere aperte molte schede e non essere mai pesantemente rallentato, così come puoi continuare a navigare normalmente anche se una scheda è molto caricata di lavoro o si blocca. Il task manager che molti adulano non è esattamente utilissimo, perchè è raro (almeno, lo è per me) andare a vedere i parametri delle singoli schede in rapporto a CPU e uso di memoria, nemmeno per benchmarking delle pagine (migliori risultati si ottengono con gli strumenti per sviluppatore integrati)
  2. Interfaccia grafica
    L’interfaccia grafica di Chrome è molto bella, pratica ed essenziale, molto compatta, lascia tantissimo spazio alla pagina web e riduce al minimo lo spessore delle bare dei menu. Adesso più o meno tutti i browser hanno seguito questa scelta e quindi hanno GUI molto simili, ma Chrome è da ricordare come il primo con una tale cura nell’avere una finestra discreta.
  3. Developers Tools
    Una chicca che mi ha conquistato da subito! Chrome ha integrato una serie di strumenti che permettono di lavorare con CSS, HTML e Javascript, modificandoli e vedendo gli effetti subito. Inoltre ci sono diversi strumenti di profiling delle performance di caricamento della pagina ed esecuzione degli script. So che l’idea non è nuova (Firebug, estensione per Firefox, esisteva già da un bel po’), ma Chrome l’ha implementata davvero bene, migliorata rispetto a molti altri browser (vogliamo parlare del CSS inspector?), che solo adesso cominciano a riguadagnare un po’ di terreno
  4. Gestione delle schede
    Questa è una parte davvero adorabile di Chrome! Le schede si possono spostare, trascinare, spostare in nuove finestre e spostarle da una finestra all’altra, davvero fenomenale, permette una gestione inuitiva, pratica e veloce. Ho scoperto da poco poi, che esiste una funzione chiamata “Blocca scheda”, che permette di bloccare una scheda visualizzandone solo l’icona, e mantenerla attraverso più sezioni di browsing. Inoltre ogni modifica alla pagina bloccata fa lampeggiare la scheda (con Twitter la cosa cade a fagiolo)
  5. Gestione dei crash
    Qualunque cosa crashi, se per quel motivo Chrome viene chiuso inaspettatamente, sai già che riaprendolo potrai riavere le tue belle schede di nuovo aperte, senza perdere quello che stavi facendo. Ottimo!

Queste sono le ragioni che me lo fanno preferire ad altri browser, non tutti i suoi pregi. Se siete d’accordo o non d’accordo, i commenti ci sono e sarò felice di leggerli!