sabato 9 aprile 2011

7 Promossi col 3 (punto zero).


Della serie: Internet sta cambiando velocemente, negli ultimi tempi. E con "velocemente", intendo pressappoco una magnitudine di proporzione "Barry Allen" (AKA "Flash", per intenderci... ;) ).

«Ahhh! Marpione!!! Ormai ti conosciamo bene! Se citi il super eroe, in verità lo fai per usare una perifrasi ed incensare mirabolanti applicazioni "Adobe" create con l'omonima tecnologia, giusto!?».

"Flash", il supereroe di casa "Adobe"! ;)

SBAGLIATO! Anzi, scordatevi di "Adobe Flash", per l'amor di Dio, che se a questo punto ci confondiamo ed invece del super eroe prendiamo in considerazione la tecnologia "Adobe" per l'implementazione della grafica vettoriale in contesti web, prendiamo fischi per fiaschi e ci incasiniamo di brutto... ;)

...Del resto, già che ci siamo, partiamo da una premessa concreta liberamente ispirata al "misunderstanding" d'apertura post, che lo spunto è comunque buono! :P

Il mondo dell’informatica è strambo: è il progresso, eppure è contemporaneamente funestato da tecnologie che, per qualche strano motivo, prendono piede quando fanno ancora schifo. Oppure le suddette tecnologie vengono utilizzate da cani e diventano orribili con il tempo... Diversamente, le idee innovative spesso e volentieri seguono una "roadmap" ben precisa:

  • Viene concepita una tecnologia rivoluzionaria per risolvere una situazione particolare e si sviluppa l'idea avendo in mente la specifica soluzione per quel determinato problema.
  • La trovata ha successo e tutto attorno a lei si crea una piccola orda di fanboy che tentano di utilizzarla in ambiti che poco hanno a che fare con il contesto per il quale la tecnologia era stata pensata.
  • I fanatici domandano a gran voce nuove funzionalità. I creatori della tecnologia cominciano ad integrarla con una quantità di nuove funzioni fondamentalmente inutili che, piuttosto che migliorarla, la portano a non funzionare più. (Inserire nuove features a martellate dentro un codice non è mai una cosa sana... :) ).

Le tecnologie che hanno avuto questa triste sorte sono tante. Tantissime. Milioni di milioni... Come "Flash", per esempio. :)

...Che poi Internet stesso è un esempio del problema che ho appena descritto. Oggigiorno, scrivere una pagina web è un incubo: esistono quantità immani di "pezzetti" da incastrare; dal "PHP" che produce codice "HTML" al "Javascript", passando per il succitato "Flash"...magari raccogliendo contemporaneamente dei dati da un database "SQL"!

Un delirio! :)

Perché tutto questo casino? Perché il web non è nato per fare animazioni!!! :)

E così, pian piano, la gente ha cominciato ad aggiustarlo (a martellate! :P ) per farlo funzionare in maniera diversa dai piani iniziali ed ora ci ritroviamo alle prese con un accrocchio complicatissimo che necessita di attenzioni e tempistiche considerevoli anche solo per sviluppare delle banalità...

Facile... Come infilare un pallone dentro una scatola! :)

Nel modello attuale, "Flash" fondamentalmente è un fastidioso intruso. Nello specifico, un browser riesce a gestire in maniera completamente autonoma "HTML" e "Javascript"; per loro semplicemente legge una descrizione (il codice) e "disegna" la pagina a seconda di quel che ha letto...e tutti son contenti! :) "Flash", invece, non lo conosce personalmente, diciamo; sa che esiste un rettangolo sulla pagina all’interno del quale deve mettere della roba, sa che quella roba la deve gestire il "Flash Player", ma non ha idea di cosa effettivamente sia 'sto "Flash Player" nè cosa verrà disegnato li dentro...

Bella noia! :D

Aggiungete che "Flash" è un programma fondamentalmente scritto con i piedi ed avrete il quadro completo della situazione. ;)

Uffa! Faccio sempre errori di battitura! :(

"Javascript" è superiore a "Flash" praticamente sotto qualsiasi punto di vista. Grazie a babbo "Chrome" (per merito del quale quale tutti i browser si sono evoluti) viene "interpretato" a velocità altissima. Inoltre è semplicissimo da programmare e, soprattutto, è integrato in tutto e per tutto nel browser. Così il software di navigazione capisce direttamente cosa c’è scritto in un codice web e può dialogare con il programma stesso... E questa è una cosa decisamente importante, perché è possibile e, anzi, facilissimo che qualcosa di esterno all’animazione influisca sull’animazione stessa (l'interazione umana, per dire... ;) ).

Quando racconto questa storiella ai bambini, in coro mi chiedono: «Ma perché allora la gente non abbandona "Flash"?». :)

Bella domanda, vorrei saperlo anche io. Probabilmente perché, come dice un antico proverbio assiro-babilonese, "il programmatore è pigro". "Flash" funzionicchia e quindi viva "Flash"! Far cambiare abitudini ad un informatico è difficile, sapete? :P

Tanto si possono fare praticamente le stesse cose con qualunque linguaggio di programmazione (e lo dice il signor Turing, non io! :) ). Ed è per questo, per esempio, che un codice nato per programmare lavatrici (leggi: "Java") è diventato il linguaggio più usato dell’universo solo ed esclusivamente perché ha (aveva...) una sintassi semplice (ed ora non lo si riesce a rimpiazzare neanche a prenderlo a cannonate, nonostante esistano alternative di gran lunga migliori... ;) ).

Ma vabbé, non divaghiamo e torniamo al discorso iniziale, che è meglio! ;)

Avete presente Steve Jobs, vero? Ricordate quando circa un anno fa (era la fine di Aprile '10, se non erro...) il boss di "Apple" shockò il mondo con una lettera aperta riguardante la tecnologia "Flash"? In buona sostanza Jobs, dall'alto del suo dolcevita antracite, dichiarava: «Forse "Adobe" dovrebbe lavorare alla creazione di migliori strumenti "HTML 5" e criticare meno "Apple" per aver lasciato il passato indietro...».

Parole forti, indubbiamente.

Parole che un anno fa sembravano davvero pura follia perfino a me...

"Apple" in quel periodo parlava già con convinzione di cose come "HTML 5", "H.264" e suggeriva nuove e rilevanti novità provenienti da ambiti impensabili come il "CSS" o perfino "Javascript".

"Jobs s'è bevuto il cervello", commentavano increduli gli utenti finali, confrontandosi con una quotidianità fatta di "applets Java", "Flash embedded" & Co. (dove "Co." = frameworks esterni e/o plugins vari ed eventuali, impiegati per espandere le funzionalità dei browser standard "che altrimenti mi renderizzano solo immagini e testi nella mestizia più totale, che non è una cosa bella...". :) ).

Aprile 2011. Un anno dopo.

Sono venuti alla luce un sacco di browsers nuovi ("IE 9", "FF 4", "Chrome 10"...) e ne abbiamo già abbondantemente parlato...

...Di una cosa, diversamente, non abbiamo ancora trattato, se non per sommi capi. Nel dettaglio, le farneticazioni di Jobs erano tali o in effetti tutta questa storia del web 3.0 ha un concreto fondamento di verità?

Vi dirò... Nell'ultima settimana ho fatto degli esperimenti interessanti, saggiando con mano le potenzialità dei browser di ultima generazione e la versatilità delle tecnologie che dovrebbero/devono/dovranno rivoluzionare Internet.

In tutta sincerità, il primo impatto è stato invero sconvolgente...

L'avventura inizia con il Marte che si mette d'impegno col suo bel portatile. Rincuorato dall'impiego di programmi moderni come "Firefox 4" e "Chrome", il baldo giovane si butta a capofitto nell'esplorazione delle più succulenti novità in ambito "Javascript". La battuta di caccia si apre con l'esplorazione del territorio dell'«animazione bidimensionale simil "Flash"», messa in atto a tutto schermo grazie all'ausilio di appositi "frameworks Javascript" costituiti da circa 4 K (QUATTRO!!!) di codice...

Una cosa del genere, per capirci...

Il povero Marte, a questo punto, deve ricorrere al pronto soccorso medico perchè gli si è violentemente slogata la mascella... :P La videata aperta a tutto schermo non è in "Flash", eppure l'effetto è più o meno quello... Le nuvole svolazzano leggere. Gli alberi sembrano proprio vettoriali... E la CPU? La CPU è fredda! Che il mio portatile è già agonizzante di suo ed una cosa del genere in "Flash" l'avrebbe definitivamente ucciso, porello! Nel complesso: FIGATA! ;)

Un po' tremante per la sensazionale scoperta, il nostro eroe manifesta un certo timore reverenziale nei confronti dello step successivo: il "WebGL", ovvero l'accellerazione grafica 3D "OpenGL" via "Javascript" e "HTML 5 Canvas". (Che, detto così, sembra una cosa brutta-brutta-brutta, ma non è... Fidatevi! ;) ).

Consapevole che un impatto troppo violento con una realtà oltremodo difforme da un normale sito web costituito da testo ed immagini potrebbe privarlo della residua sanità mentale, il Marte adotta un approccio evasivo teso a preservare la sua incolumità; consulta quindi "DoesMyBrowserSupportWebGL"...

Il responso è categorico:

NAY!!!

In altre parole: «Visto che sul PC portatile AKA "catorcio" sei perennemente ancorato a "Windows XP", fai meglio ad attaccarti a questa grandissima fungia, perchè il tuo computer è decisamente troppo obsoleto per visualizzare delle pagine web di cotanta magnificenza!».

"Fungia" della quale abbiamo una splendida diapositiva! :)

L'obsolescenza, questa sconosciuta. Che, nella vita, uno ha parecchie aspettative. Certi fatti li ignora... Diversamente, una cosa non me la sarei mai aspettata, nel senso più assoluto. Mai nella vita avrei pensato che una pagina web, un giorno, mi avrebbe comunicato che sto adoperando un computer obsoleto... UNA PAGINA WEB!!! Capite?! Non un videogame ultra avveniristico. No. "Firefox". Candidamente... "Mi dispiace, ma serve un OS di ultima generazione, un Browser altrettanto aggiornato e driver recenti per la scheda video, che qui si fa il web serio, MicaPizza&Fichi!!!".

Comunque, nel caso mi accontento... ;)

Un po' avvilito dalla consapevolezza dell'età che avanza irrimediabilmente per tutti (evidentemente anche per i computer e per i sistemi operativi... ;) ), mi sono fatto forza e mi sono rivolto ad un frutto diverso dal fico per cercare di risollevare le mie sorti: la mela! :)

Sotto "OSX Snow Leopard" (ma voialtri ce la potete fare anche sotto "Windows 7" e "Linux", driver grafici permettendo, a patto di usare "Chrome" o "Firefox"... ;) ) ed assistito dai suddetti "browsers d'ultima generazione" (che a "Safari" il "WebGL" gli va ancora parecchio indigesto, come ad "IE", del resto... :D ) ho potuto provare questa nuova e fantomatica tecnologia 3D per il web...

Ebbene, signori, io ne ho viste cose che voi umani non potreste immaginarvi…

In effetti...

"Navi da combattimento in fiamme al largo dei bastioni di Orione… E ho visto i raggi B balenare nel buio vicino alle porte di Tannhäuser…". No... Confondo. Queste cose le ho viste in sogno, dopo aver contato delle pecore elettriche per addormentarmi... ;)

Tornando a noi, signori, è sacrosanto fare una carrellata delle mie fantomatiche visioni, giusto per rendervi partecipi ed edotti della proporzione del tutto.

Cominciamo:

"Fractal Lab".

"Fractal Lab": Una vera e propria applicazione web più che una volgare demo. Nel dettaglio, si tratta di un completo tool per l'esplorazione dei frattali (bi e tridimensionali!) che offre all'utente finale anche la possibilità di generare e salvare immagini in alta qualità del tutto. Sicuramente intrigante per l'artista digitale o per il matematico, "Fractal Lab" è comunque emblematico delle potenzialità di queste nuove tecnologie web.

"Hallo Racer"

"Hallo Racer": Questa, diversamente, è proprio una "tech demo". Un'autovettura da "Formula 1" ("Ferrari", of course... ;) ) si comporrà davanti ai vostri occhi man a mano che la "pagina" (chiamiamola "pagina"!) viene caricata. Completamente controllabile tramite le frecce direzionali della vostra tastiera, il bolide seguirà docilmente le traiettorie che vorrete impartirgli, costantemente sottoposto all'occhio vigile della telecamera variabile ed interattiva... Mentre lo pilotate, ricordatevi di ripetere costantemente il mantra: «non è "Flash", non è "Flash", non è "Flash"...». ;)

"Chrysaora"

"Chrysaora WebGL": Meduse sul vostro browser. Illuminate in tempo reale ed inquadrate da una telecamera ruotabile liberamente via mouse. Il mantra è sempre lo stesso di prima, chiaramente... :P

"Glass"

"WebGL Glass": Una demo "Old Skool" ("Glass" by Psykorp) riconvertita per il web. Perchè? Perchè si può fare, e che diamine! :)

"Aquarium"

"Aquarium": Probabilemente la "tech demo" più convincente tra tutte quelle che ho visto ed elencato (il piatto forte si serve per ultimo, vero? ;) ). Come dice il nome, ci troviamo davanti ad un enorme acquario sferico, all'interno del quale nuotano a rilento tre trote, cinque triglie e tinche cento... :D Vabbè, scioglilingua a parte, il numero di pesci contenuti nella boccia è variabile a discrezione dell'utente, così come numerosi altri effetti grafici sono attivabili/disattivabili a piacere. L'effetto finale, apprezzabile tramite differenti inquadrature, è a dir poco stupefacente anche perchè la morale è sempre quella: stiamo adoperando un browser e tutto quello che vediamo su schermo non è renderizzato da plugin esterni...

In conclusione, non so voi, ma io ho scoperto un mondo, in pratica. :)

Post scritto a quattro mani assieme a Lorenzo "El(W)rath" Muti (che polpa!!! :D ).

Cos'è questo QRCode?
Come l'hai realizzato?


7 commenti:

BrunoB ha detto...

Flash è uno standard de facto, c'è poco da fare... Jobs con i suoi iCosi gli ha dato una spallata non da poco, ma prima che i filmatini mangiaCPU spariscano credo che ci vorrà ancora un bel po', e in particolare ci vorrà una base installata sufficiente di browser "moderni" che renderizzino tutti con la stessa precisione ed efficienza HTML5 e javascript... fino ad allora converrà fare la roba in flash e se c'è caso anche in html5 per gli iCosi.

Marte ha detto...

Mah, secondo me "H.264" versione "HTML 5" (o anche "Ogg Theora + Vorbis") si mangeranno tutti i video in "Flash" della rete in un sol boccone.

Poi accadrà che il porno farà propri questi standard e di li a poco il "Flash" come lo conosciamo oggi dovrà adattarsi o scomparire... :P

...Che per gli effetti 2D da impiegarsi nel rendering delle pagine web di ogni giorno è già inutile (ed il nuovo indice dinamico di Blogger è già una prova in tal senso...nemmeno lui è in "Flash"! :) ).

Rimarrà per i giochi? Ma anche no, visto quello che si può fare col "Javascript"... :)

BrunoB ha detto...

Ecco ad esempio per i video, già ancora non s'è capito bene come si farà per i codec, poi c'è il problema delle pubblicità in sovrimpressione o prima/dopo il video stesso, che finora nessuno è riuscito a mantenere senza flash...

Sicuramente i siti più o meno piccoli e più o meno "da appassionati" faranno il salto prima, ma i grandi portaloni tipo YouTube manterranno soluzioni ibride finché la situazione non si sarà normalizzata...

Marte ha detto...

Beh, i codec non serviranno di fatto più perchè farà chiaramente tutto il browser, nativamente. I files video in locale, volendo, li portai aprire con "Firefox", per dire. :)

La pubblicità te la metteranno attorno o la associeranno ad eventi del mouse, tipo l'"over"... (Che, personalmente, se me la levano del tutto, sono anche più contento. Non sopporto ballons e bottoni, sui video... :P ).

Per il resto, puoi provare "YouTube HTML 5", per saggiare con mano come sarà il tutto. Lo puoi attivare/disattivare da qui:

http://www.youtube.com/html5?gl=IT&hl=it

Per "Ogg Theora" il discorso è lo stesso. Viene supportato nativamente dal browser e l'utente finale non deve installare nulla per visualizzare i contenuti.

Per esempio, l'articolo di Wikipedia che parla del formato video (http://en.wikipedia.org/wiki/Theora), a metà pagina ti propone direttamente un .OGG dimostrativo che viene tranquillamente riprodotto nativamente dal browser, se questo è abbastanza moderno. ;)

Tutto ciò è molto ma molto bello, a mio parere. :)

BrunoB ha detto...

Il problema dei codec è che (come dice la pagina stessa di YouTube che hai linkato) FireFox e Opera non aprono i video in H.264, ma solo quelli in WebM.

Per gli ad, se li tolgono fa piacere pure a me, ma poi i server di YouTube chi li paga?

Nella situazione attuale, se io oggi volessi fare YouTube2 usando HTML5 dovrei encodare ogni video in almeno due formati diversi, risolvere le problematiche tecniche legate a pubblicità, annotazioni e sottotitoli, ed in ogni caso infilarci pure un player flash per le tante persone che ancora non hanno un browser aggiornato, nonché per risolvere eventuali problemi relativi a rendering differenti dello stesso codice html5 in browser differenti.

Insomma un bel casino! È il futuro, molto probabilmente, ma ancora non ci siamo al 100%.

Marte ha detto...

Eh, come dice bene il Wrath, i programmatori son pigri! :)

Marte ha detto...

...A proposito di "CSS".

Sto facendo esperimenti. Si vede? :P

Ritorna in alto! Related Posts Plugin for WordPress, Blogger...