Pensieri e parole su HCI, home computing, tecnologie desktop e sul Progetto Lobotomy

venerdì 9 maggio 2008

Web costruttivo, Web distruttivo

0 commenti
Devo ancora finire di stupirmi guardando i piccoli demo di utilizzo del recentissimamente annunciato Processing.js, ma poiche' la pagina risulta correntemente slashdottata e di difficile consultazione ne approfitto per riportare qui qualche commento a caldo.
Cos'e' Processing.js? Il port Javascript dell'omonimo framework Processing, dedicato all'elaborazione grafica di alto livello e sviluppato in Java. E a cosa serve? Ad eseguire trasformazioni di elementi grafici direttamente nella pagina del browser. Consiglio ovviamente di dare uno sguardo alla pagina dell'annuncio del progetto per rendersi conto di cosa cio' significhi, ma basti dire che gia' qualcuno mormora di una possibile sostituzione di Flash con questo tipo di engines Javascript per il web.
Questo potrebbe sembrare l'ennesimo hack simpatico e divertente fatto dall'ennesimo developer in vena di perdere tempo giocherellando con un poco di codice, destinato ad essere dimenticato una volta scivolato al fondo della homepage di Slashdot, ma ho l'impressione che questa sia una tecnologia di carattere "distruttivo" nei confronti del web design: allo stesso modo in cui le micro-librerie Javascript come script.aculo.us, mootools, jQuery et similia hanno cominciato a proliferare subito dopo che la manipolazione del DOM e dei CSS sono divenuti pane quotidiano per gli sviluppatori di applicativi web (o meglio: Web2.0), o come l'XMLHTTPRequest divenuto cosi' popolare dopo anni di oblio in seguito allo sfruttamento massivo da parte di Google, anche la manipolazione avanzata della grafica in Javascript ha tutte le carte in regola per scatenare una nuova ondata di librerie, estensioni, tools ed amenita' di ogni tipo pronte per essere massicciamente usate prima dai maniaci domestici dell'innovazione homebrew e poi dai grandi colossi che determinano l'andamento della Rete globale.
Quel che piu' mi affascina di questo nuovo giocattolo per nerd e' il nuovo grado di flessibilita' e scalabilita' offerto all'interno del set di tecnologie usabili dai web developers, in quanto contrariamente al gia' menzionato Flash (che nonostante la recente apertura da parte di Adobe e' e rimane uno strumento chiuso ed isolato rispetto al resto) un canvas grafico trattato in questo modo puo' andare a pescare i dati da un server remoto in tempo reale (ed asincronicamente) e risultare assai piu' trasparente e facile da gestire per chi gia' lavora con i moderni tools oggi a disposizione.
Traslascio per ora i commenti personali sull'impiego di questo genere di orpelli nell'implementazione di pagine web, limitandomi a sperare che il loro utilizzo sia sempre ponderato e misurato in modo da risultare una vera innovazione e non uno sperpero di risorse al solo fine di pavoneggiarsi con amici e colleghi.
Il web cambia, si crea e si distrugge, non sempre e' facile starci dietro. Ma l'importante e' che ci sia qualcuno davanti.

lunedì 5 maggio 2008

Saranno Famosi

0 commenti
Non so bene come ho iniziato le mie ricerche, ma sta di fatto che questa sera mi son capitati tra le mani quelli che sono stati i primissimi brani ed articoli in cui hanno iniziato a delinearsi le idee portanti del Progetto Lobotomy. Probabilmente non freghera' a nessuno, e a linkare certi siti e certi pezzi scritti tanti anni fa' non ci faccio una bella figura, ma un po' di nostalgia e di auto-ironia non gusta mai...
Tutto inizio' nel lontano 2004, quando frequentavo la community di Kuth (oramai non solo chiusa ma di cui s'e' pure persa traccia del sito...): lessi questo articolo che parlava del desktop Linux e di come esso non doveva essere necessariamente una copia di quello Windows, lo commentai con fervore nel forum, e alla domanda "E allora te che cosa proporresti, di alternativo?" scatto' la molla.
Scrissi questa pagina in quello che allora era il mio sito personale (bei ricordi, quando il Web non era ancora descritto con numeri di versione...) ed iniziai l'opera su BrainTop, il primissimo componente di quello che allora neppure pensavo sarebbe cresciuto a dismisura fino a diventare Lobotomy. BrainTop era un window manager "potenziato", una applicazione rivolta ad organizzare superficialmente i dati prodotti dall'utente con le applicazioni di tutti i giorni, ma il progetto venne interrotto in breve tempo a causa di un ostacolo: come riuscire ad organizzare i files se su di essi non avevo alcuna informazione sulla loro natura ed il loro utilizzo?
Pensa che ti pensa, giunsi alla conclusione che il window manager avrebbe dovuto essere solo l'ultimo strato di un sistema ben piu' complesso, che doveva erigersi a partire dal filesystem e sostituire non solo la rappresentazione grafica del desktop ma l'intero modello di interazione uomo/macchina: approfondii l'argomento con due ulteriori pezzi (questo e questo, che a tutt'oggi risiedono sul mio server domestico) in merito a quello che chiamavo "BrainFS" e dopo poco divenne Hyppocampus, ovvero un filesystem relazionale che contenesse quei "metadati" indispensabili per mantenere collegamenti logici tra i contenuti.
Il resto e' storia: la costituzione del Progetto Lobotomy, ovvero il nome collettivo con cui accomunare BrainTop ed Hyppocampus (ed in seguito Synapse, il filemanager destinato a facilitare la navigazione della base dati di files), il nuovo sito web, questo blog, e tutti gli ulteriori progressi che a tutt'ora non esistono se non in qualche angolo della mia testa (non avendo mai avuto occasione di documentarli per iscritto).
Ed e' cosi' che, leggendo un breve articoletto neppure troppo interessante sull'Internet, nasce una idea. Regola #1 dell'innovazione: "got inspired".

giovedì 1 maggio 2008

Quattro chiacchere su ItsMe

0 commenti
Da taaanto tempo non aggiorno codesto mio blog, ma tra il lavoro regolare e le altre attivita' non solo non trovo tempo di commentare qui le ultime news a tema ma neppure riesco a meditare piu' approfonditamente sul Progetto Lobotomy.
Sta di fatto che qualche giorno addietro son riuscito a fare un salto a Milano presso l'Universita' Bicocca per scambiare quattro chiacchere con il prof. De Michelis, fautore del progetto ItsMe di cui ho gia' fatto cenno in passato; ebbene, devo dire di aver solo adesso compreso in cosa consiste l'attuale sviluppo del progetto, e tra qualche perplessita' ma anche molta curiosita' lo reputo quantomeno interessante.
Sostanzialmente, diversamente da quanto immaginavo, al momento i ragazzi della neonata azienda meneghina stanno implementando una sorta di layer di astrazione del filesystem che si occupa di filtrare i contenuti scritti e letti operando qualche piccola opera di organizzazione degli stessi in funzione dell'attivita' dell'utente, che di volta in volta si trova a lavorare in un workspace dedicato ad un suo particolare task. Operando al livello del filesystem il sistema puo' essere usato con i normali applicativi software cui tutti siamo abituati, anche se "inconsapevoli" della struttura ponderata che ci sta sotto, e, almeno in questa fase dell'implementazione, non sono previste bizzarre interfacce grafiche o modelli di disposizione degli elementi sullo schermo, se non forse una sorta di "desktop esteso" che permetta di navigare i dati appunto secondo la nuova organizzazione non gerarchica.
Mi ha (piacevolmente) stupito il forte peso che si vuole dare alle interazioni "sociali" dell'utente, al pesante utilizzo delle mail come criterio di discriminazione tra i contenuti per la manipolazione: dall'analisi off-line delle comunicazioni fatte tra persone diverse si vuole fare in modo di "intuire" i nuovi task che ci si trova ad affrontare o le interazioni con essi, in modo da suggerire a chi si trova dinnanzi al monitor correzioni e perfezionamenti al modello.
Forse a questo punto sarebbe d'uopo un confronto tra questa opera ed il Progetto Lobotomy, ma credo che un diretto accostamento sia impossibile: i due lavori partono da presupposti molto diversi tra loro e fungono in maniera quasi opposta (ma non totalmente), mentre ItsMe punta ad un "caos ordinato" tagliato a misura dell'utente che lo usa (e che dunque fallisce se l'utente non segue certe regole) il mio progetto verte sull'immediata richiesta e necessita' (e dunque fallisce sul lungo termine non avendo una visione di insieme); ad ogni modo, loro arriveranno certamente prima di me ad avere qualcosa di usabile, dunque il problema non si pone...
Non ho ben capito a quale grado di sviluppo siano gia' giunti gli sviluppatori di ItsMe, ma mi e' stato riferito che entro non troppo tempo (subito dopo l'estate?) potrebbe essere disponibile online un simulatore atto a far toccare con mano la tecnologia e le implicazioni di un manager automatico per le informazioni: per intanto mi frego le mani in vista di metterci le mani sopra, si' da diventar membro della community e collaborare quantomeno in veste di tester, e vedro' di tenermi aggiornato in merito alle prossime news a riguardo.