APE, Ajax Push Engine: un nuovo modo di concepire il web

Siamo abituati a vedere il web da un’unica angolatura: siamo noi che, tramite il browser, richiediamo una pagina web, ok, chiaro e lineare. Ma se per un momento girassimo le carte in tavola e fosse il server a distribuire i dati senza una precisa richiesta dell’utente?

APE è una soluzione Open Source completa e pronta all’uso per la gestione di Ajax Push, un sistema che mette i client (browser) in attesa delle richieste http che arrivano dal server. Questo stravolge la normale concezione del web che si basa sullo scambio dati “richiesta e risposta”.

Il progetto è completo delle due componenti client (Javascript Framework) e server (comet server). APE in sostanza permette di sviluppare qualsiasi tipo di streaming in tempo reale sul browser senza bisogno di componenti aggiuntivi (vd. Flash, Silverlight) . Questo perchè APE utilizza standard web come Ajax comprensibili alla stragrande maggioranza dei browser moderni.

In questo caso si parla tecnicamente di pushing real-time data, ovvero il contrario di pull! Le informazioni vengono inviate in tempo reale a centinaia di client in ascolto, tramite socket Javascript.

APE funziona con tutti i browser, è cross-platform e cross-subdomain. Funziona su dispositivi mobili, smartphone e tutte le console di gioco che supportano la navigazione su internet. Per ultimo, ma non meno importante, il progetto APE è 100 % Open Source e GRATUITO per utilizzi commerciali e non commerciali, rilasciato con licenza GNU GPL 2.

Una chat in Ajax Push Engine

Per darvi un’idea di come funziona, guardate questo esempio funzionante di una chat scritta con APE.

Come funziona? Il browser si mette in ascolto dei dati che arrivano dal server. Il server accetta in ingresso i messaggi degli utenti e li ridistribuisce immediatamente a tutti i client in ascolto.

Questo è semplicemente un esempio, ma le applicazioni sono infinite: serve tanta fantasia e un nuovo modo di vedere le cose!

Una progress bar di puro CSS

progress bar in css

Fino a qualche anno fa una progress bar era possibile farla solamente in Flash. Ora con l’avvento dei framework Javascript e con l’uso sistematico dei fogli di stile il Flash è passato in secondo piano perchè quasi completamente sostituito.

In questo breve tutorial, Alen Grakalic mostra come creare una progress bar fatta esclusivamente con fogli di stile e immagini. L’idea è di creare un contenitore di dimensione fissa e con overflow=hidden che ha come background la progress bar completa. Un secondo elemento contenente un’immagine bianca, posizionato in maniera assoluta sopra al primo, viene fatto scorrere per creare l’effetto animato finale.

L’idea è semplice ma efficace. Potete vedere l’effetto finale tramite gli esempi nella demo, oppure scaricare direttamente il codice già scritto per voi!

Ext JS, un framework javascript per GUI

ext js 2.0 - un framework javascript per creare interfacce grafiche
Tra i tanti framework Javascript che sono in circolazione oggi vorrei segnalare Ext JS, ora alla versione 2.0. Questo framework è stato appositamente creato con l’idea di dare allo sviluppatore uno strumento agile ed efficace per costruire applicazioni web. Nasce come estensione del più famoso (e pesante) Yahoo! User Interface framework, ma nel corso dei sui 2 anni di vita è riuscito a camminare con le proprie gambe e ora non necessita di nessuna altra libreria di appoggio.

Notevoli sono le sue potenzialità nell’ambito grafico. Tab, scroller, grid, tabelle, finestre sono il suo pane e sinceramente devo dire che il risultato è eccezionale. Inoltre può essere affiancato tranquillamente ad altri framework javascript come jQuery, YUI o Scriptacolous che sono specializzati in altri ambiti.

Molte demo sono state pubblicate per mostrare le potenzialità di Ext JS 2.0. Se vi piace e volete approfondire l’argomento, troverete una documentazione molto ben scritta, con faq, tutorial, API e screencast, ovvero tutto ciò che vi occorre per imparare questo bel framework javascript.