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

lunedì 17 dicembre 2007

Webmaster si nasce, parte seconda

0 commenti
Dopo aver (mesi addietro) sistemato il blog, questa sera colto da ispirazione ho sistemato anche il sito del progetto Lobotomy. Non che abbia fatto stravolgimenti particolari, semplicemente ho spostato il menu in una barra laterale (anziche' nell'intestazione) e poco altro, probabilmente la novita' piu' grossa consiste nel feed RSS agganciato alle news pubblicate sulla pagina. Ultimamente metto RSS ovunque :-P
Prossimamente faro' in modo di aggiungere tra le news anche la pubblicazione di nuovi papers, documentazione ed altro, insomma usare davvero questo strumento come "news" e non solo come annuncio delle nuove releases. E vorrei iniziare ad usare questo simpatico strumento che facilita la trasformazione di puro testo in pagine HTML, sempre per la documentazione (soprattutto quella cosiddetta "informale").

sabato 15 dicembre 2007

Magic Ink

0 commenti
Negli scorsi giorni ho avuto modo di leggere questo paper.
Nonostante sia stato scritto da una persona senza particolari referenze o titoli, ottimamente rappresenta quello che e' e quello che dovrebbe essere l'interfaccia utente di un PC: oggi abbiamo a che fare con lo strascico di vent'anni di pigrizia ed abitudine, durante i quali sono stati usati, riusati , abusati ed edulcorati concetti creati agli albori del personal computing per ovviare alla scarsita' di risorse dei sistemi dell'epoca, mentre la strada dovrebbe essere quella dell'integrazione e dell'automatizzazione.
La prima parte splendidamente riassume i principi intorno a cui dovrebbe essere costruita una interfaccia non solo "usabile" ma anche comoda ed intuitiva con un poco di buon senso e di stile, mentre nella seconda (dopo una lunga divagazione dell'autore un po' fuori tema, sull'implementazione di un tool per designers...) sono illustrati esempi di come i piu' forti progressi potrebbero essere raggiunti sfruttando al meglio la potenza delle macchine odierne per prevenire ed anticipare le esigenze dell'utente e limitare al massimo la fase di interazione col sistema (ovvero: la fase piu' critica, noiosa ed error prone).
Ammetto di essere stato fortissimamente influenzato da questa lettura e dalle perle di ingenua saggezza che riserva (alla fine, non dice nulla di nuovo. Semplicemente lo dice molto bene...), ho rafforzato alcune idee per lo sviluppo di Lobotomy, scartatene altre ed introdotte un paio di nuove. Mentre occasionalmente continuo il perfezionamento del VFS object oriented in LibHyppo di quando in quando mi fermo a meditare su come potrebbe apparire il prossimo Synapse soprattutto nella sua nuova prossima incarnazione di desktop manager.
Dovro' decidermi a scrivere una paginetta di documentazione preventiva prima o poi...

martedì 11 dicembre 2007

LiPS

0 commenti
Quando ho letto per la prima volta la notizia ho pensato "bella iniziativa, ma con tutto l'hype generato intorno ad Android probabilmente finira' nel dimenticatoio...". Ed invece, qualche reazione c'e' stata, sebbene di entita' mediatica assai minore che non il teatrino messo in piedi da Google e soci.
LiPS, consorzio per la standardizzazione di Linux su piattaforma mobile, ha rilasciato (dopo due anni dalla fondazione del consorzio stesso... Sign...) la prima versione della specifica di riferimento.
Personalmente vedo luci ed ombre su questo evento: da una parte la volonta' di costruire uno standard effettivo (agnostico rispetto a qualsiasi framework o ambiente di sviluppo) per garantire interoperabilita' tra le applicazioni mi suona bene, ma dall'altra trovo la specifica insoddisfacente sotto diversi aspetti (troppo restrittiva su certi componenti, troppo lasca su altri...); il proposito e' quello di facilitare la vita a chi sviluppa applicazioni, ma il consorzio e' totalmente chiuso e scarso e' il margine di interazione col mondo esterno (la community, insomma); si punta molto su tecnologie open, ma l'ente poco sembra essere propenso ad aderire anche solo lontanamente alla filosofia di condivisione.
Ad ogni modo, voglio credere a questa opera, in quanto piu' concreta che non il gia' menzionato Android (che mira all'implementazione di una piattaforma, non alla definizione di un'API comune, che sul lungo termine porta a molti piu' vantaggi): gia' ho mandato una mail sulla lista degli sviluppatori del framework di OpenMoko per chiedere in merito alla loro adesione allo standard, ma non ho ricevuto risposta; vedro' di adoperarmi per fare la mia parte, magari implementando quel poco glue code che funga da interfaccia tra le funzioni elencate nella documentazione e gli strumenti gia' oggi esistenti.
Questo e' un passo verso l'interoperabilita', e l'interoperabilita' e' un passo verso l'integrazione.

sabato 8 dicembre 2007

Cambiare, dalle fondamenta

0 commenti
Ieri sera, dopo aver scritto il precedente post, mi sono auto-ispirato e sono andato a leggere qualche articolo online del gia' menzionato Raskin e da altre fonti correlate, per rinfrescarmi la memoria.
La convinzione generale che mi sono fatto e' che i commenti di Raskin, correttissimi e sacrosanti, implicherebbero uno stravolgimento completo non solo del concetto di interfaccia utente, ma di tutto il sistema operativo a partire dal kernel.
Gia' da tempo il ben noto Tanenbaum sostiene il fatto che un PC deve essere stabile e sicuro per essere usabile, esattamente come... un televisore (che, notoriamente, non crasha, non reboota ed e' usabile da chiunque), ma oltre a cio' occorrerebbe forse rivedere il modo in cui le applicazioni interagiscono con il resto del sistema.
Per fare un esempio: a detta di Raskin (e non solo) non dovrebbe mai esserci bisogno di salvare i documenti o i files che si stanno elaborando. Sfido chiunque a dire che sia una cosa sbagliata. Ma come implementare cio'? L'applicazione deve costantemente tenere traccia delle operazioni che esegue l'utente, bufferizzarle e sbatterle permanentemente sul disco, ma... Ad oggi, nella specifica POSIX non e' minimamente prevista una cosa del genere, ed un file deve sempre essere scritto per intero (o comunque: a partire da dove e' stata eseguita la modifica in poi, tutto). Manca una syscall per dire al filesystem "salvami questi tot dati a partire dalla posizione X, ma non al posto di quelli esistenti: nel mezzo!".
Nei prossimi giorni leggero' (o ri-leggero') qualcosa in piu' di quanto scritto da Tanenbaum (o, piu' in generale, in merito a Minix3) per trovare qualche punto di contatto tra le visioni di alto (l'interfaccia utente) e di basso livello (il kernel) dei due personaggi, in costante ricerca di ispirazione.

venerdì 7 dicembre 2007

La via del Maestro

0 commenti
L'altro giorno ho acquistato un libro (usato) su Amazon. Oltre a segnalare il fatto in se' (e' il primo acquisto di un bene materiale che effettuo sull'Internet...), il motivo della menzione su questo blog e' da ricercare nella natura del libro stesso: "The Humane Interface" del mai sufficientemente compianto Jef Raskin.
Per sapere chi sia stato Raskin rimando alla pagina su Wikipedia, di cui consiglio lettura a tutti coloro che non sanno a chi mi stia riferendo: se state usando un sistema operativo dotato di interfaccia grafica (un sistema qualunque ed una interfaccia una qualunque...) e' opportuno sapere a chi dovete cio'.
Gia' possedevo una copia... ehm... digitale "di valutazione" del libro, ma ho voluto procedere con l'acquisto della copia cartacea onde poterne consultare spesso e velocemente i contenuti: dal poco che ho avuto modo di leggere (la mia "copia di valutazione" e' assai scarsamente navigabile, stramaledetto chi ha inventato il formato CHM...) ed apprezzare, il volume offre una infinita' di spunti per la costruzione di interfacce grafiche *realmente* usabili, che vadano al di la' dei soliti preconcetti e delle solite abitudini.
"Una provocazione", viene definito da uno dei commenti trovati su Amazon, ma una provocazione generata da chi ha inventato quello che ad oggi e' lo standard di fatto sui monitor del mondo intero e dunque degna quantomeno di considerazione.
Non nascondo di sperare di essere largamente ispirato da questa lettura durante la definizione del prossimo Synapse e della libreria Kiazma: staremo a vedere quanto riusciro' a elevarmi al di sopra dei miei stessi preconcetti e ad aderire alla drastica visione di Raskin.