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

mercoledì 28 aprile 2010

Progress Box

0 commenti
Mentre stavo mettendo insieme una interfaccia grafica per l'editor di feeds in Tracker (attualmente nel repository SVN di Phidias, sebbene ancora non completo) mi si e' presentato il problema di fornire all'utente del feedback durante la fase di download di un ipotetico file OPML da parsare e da cui importare gli indirizzi di interesse: assunto che dal momento in cui si clicca il pulsante per scaricare a quello in cui si mostra la lista di feeds identificati passa del tempo e si compiono una serie di operazioni (connettiti al server, tira giu' qualche kilobyte, leggi l'XML...), cosa visualizzare sullo schermo per informare del fatto che il primo click e' andato a buon fine e il programma sta facendo quel che deve fare?
Una classica progress bar ben si presta alla bisogna, ma il problema rimane: dove piazzarla? Creare una finestrella informativa separata sembra uno spreco, in quanto e' piu' il tempo che ci mette il window manager a gestirla che non quello per completare il task. Le status bar non mi sono mai piaciute, in quanto le considero troppo fuori dal locus dell'utente. Dedicare un'altra qualsiasi area a questo genere di informazione e' uno scempio.
Alche', mi sono "inventato" la ProgressBox.
Questa non e' null'altro che un semplicissimo (e per ora estremamente grezzo) widget GTK+ che incorpora un contenitore orizzontale liberamente riempibile ed una progress bar, mostrati alternativamente a seconda del bisogno. Nel caso specifico dell'editor di feeds: nel contenitore metto il campo ove incollare l'URL del file da scaricare ed il tasto per avviare la procedura, e quando esso viene cliccato il widget mostra la barra di progresso aggiornata in base allo stato del download. Una volta completata la trafila, il widget torna allo stato originale permettendo di incollare un eventuale nuovo indirizzo web.
Grazie a questo modestissimo espediente, si ottengono i seguenti risultati:
  • l'utente e' informato del fatto che il programma ha colto il suo input
  • l'utente e' informato del fatto che il programma sta lavorando
  • l'utente sa quanto tempo ci sta mettendo
  • si evita la classica situazione in cui, a causa dell'assenza di feedback, l'utente clicca dieci volte sullo stesso pulsante avviando dieci volte la stessa procedura
  • l'utente, anche volendo, non puo' interferire con l'operazione schedulandone un'altra uguale prima che la prima sia completata
Come detto l'elemento e' estremamente rozzo ed ha un'API tutta sua (non avevo voglia estendere correttamente quella originale di GtkBox), ma per intanto l'ho reso disponibile come al solito su BarberaWare e ho preparato un video dimostrativo (che "fa figo e non impegna").

lunedì 26 aprile 2010

L'ovvio che non dovrebbe essere ovvio

0 commenti
Potrebbe sembrare quasi strano che la maggior parte di critiche e lamentele nei confronti dell'usabilita' generale dei PC arrivino da utenti esperti ed in grado di usare il computer con cognizione di causa, ma a ben guardare e' una cosa ovvia. Il motivo si evince piuttosto chiaramente leggendo ad esempio uno degli ultimi articoli pubblicati in merito, che ha pure riscosso un discreto successo nel giro (stranamente, trattandosi di argomenti sin troppo noti a tutti gli addetti ai lavori): per l'utenza di bassa lega e' normale che il PC non funzioni.
E' normale avere qualche problema installando o disinstallando una applicazione, e' normale che il computer non si avvii piu' da un giorno all'altro o si spenga all'improvviso, e' normale non riuscire ad aprire un file in qualche formato stravagante, e' normale prendersi un virus, e' normale non capire come si utilizza un dato software. Nel gergo informatico dei non-informatici, "computer" e' sinonimo di "errore".
Chi paga le spese di suddetti capricci digitali sono per l'appunto coloro che hanno maggiore dimestichezza con la tecnologia informatica, che sanno come risolvere i propri problemi e, per estensione, vengono puntualmente interpellati da amici, parenti e conoscenti che incappano in qualche banale condizione di malfunzionamento affinche' risolvano anche i loro. Tutti, ma proprio tutti gli smanettoni hanno carrettate di aneddoti ed esperienze di tal fatta. E' un fenomeno talmente comune e radicato da essersi meritato pure una maglietta dedicata su ThinkGeek. Qualsiasi giovanotto col pallino per i PC e' ben conscio dei pericoli che rischia, ed evita accuratamente di dare la mail o peggio il numero di telefono a chiunque gli dica "Ah, allora tu sei capace di aggiustare i computer!" sapendo che se il suo contatto finisse nella mani sbagliate sarebbe continuamente tirato in ballo per sistemare, aggiustare, configurare e spiegare i mille e piu' difetti dei sistemi moderni.
Ma il fatto che il PC sia "rotto di default" non e' per niente normale.
Tanenbaum sostiene da decenni che l'esempio di riferimento dei sistemi operativi dovrebbe essere il televisore, ovvero un elettrodomestico che funziona continuativamente dal momento in cui si attacca la spina elettrica a quando i suoi componenti interni cedono strutturalmente per usura. Raskin sosteneva la teoria per cui ogni dispositivo elettronico dovrebbe fare una singola cosa (ad esempio: un cellulare dovrebbe solo permettere di telefonare e ricevere telefonate) ed essere dotato solo dei tasti e del software necessari a fare quella cosa, e null'altro, per arginare e limitare al massimo i rischi di errore da parte dell'utente. Nessuna di queste visioni e' mai stata applicata nel mondo reale, o comunque si e' mai diffusa, se non forse in parte.
Forse perche' quella di realizzare apparati general purpose, e per questo necessariamente complessi (e bacati), e' la norma sia per i produttori che per i consumatori. Forse perche' ben pochi hanno mai realmente esplorato le potenzialita' commerciali di questo genere di soluzioni, e nessuno ha voglia di provarci. Forse perche' il fatto di tenere in ostaggio l'utenza inconsapevole permette di generare fior di introiti in servizi di assistenza e supporto, dunque non e' economicamente conveniente farli campare felici e sereni. Forse perche' a priori si preferisce spendere meno per comprare un singolo dispositivo che faccia tutto che non tanti dispositivi che facciano cose specifiche (senza considerare minimamente il costo successivo del software, che pareggerebbe i conti), ed il risparmio immediato oscura il risparmio in termini di tempo e scocciature dopo.
Si assistera' mai ad una inversione di tendenza, dettata dal buon senso anziche' dagli istinti di conservazione monetaria? Per conto mio credo che prima o dopo dovro' procurarmi una qualche schedina "SoC", buttarci sopra un kernel ed il software essenziale per disegnare qualcosa sullo schermo, e fare qualche esperimento...

martedì 20 aprile 2010

Paura e Delirio nel Pannello Configurazioni

0 commenti
Manco il tempo di finire di elogiare l'ottimo Déjà-Dup, che oggi mi son trovato a dover domare l'intricato (e talvolta inestricabile) Evolution. Prova provata della diffusa isteria compulsiva di aggiungere funzioni su funzioni laddove non ce ne sarebbe il benche' minimo bisogno, quasi solo per giustificare l'avanzamento del numero di versione.
Per qualche tempo ho fatto a meno di un client di posta per via di una riorganizzazione dei miei PC ed ho usato solo l'interfaccia web di GMail, che pero' reputo difficile da maneggiare dal momento in cui seguo moltissime mailing lists e senza la vista per thread e' pressoche' impossibile capirci qualcosa. Alche' ho installato su questo PC il summenzionato programma (prima lo usavo solo su un'altro computer), e l'ho dovuto configurare.
Devo ammettere che prima non avevo mai fatto caso alla quantita' di opzioni, sotto-opzioni, caselline, features e settaggi da gestire nel pannello di configurazione: forse perche' e' passato molto tempo dall'ultima volta che ho dovuto metterci mano (avendolo sistemato sull'altro PC non mi son mai piu' posto il problema), forse perche' sclerando alla ricerca della configurazione per la signature me lo son girato in lungo ed in largo scoprendo cose che prima non avevo visto (per la cronaca: alla fine ho dovuto cercare su Google come si imposta la firma al fondo delle mail, e ho scoperto di non essere l'unico a non esserne stato capace), forse perche' inconsciamente ispirato dalla recente analisi appunto di Déjà-Dup sono stato incline a prestare maggiore attenzione alla disposizione ed alla disponibilita' di scelte da far fare all'utente... Sta di fatto che sono attualmente molto deluso da come il programma si presenta.
Tanto per dirne qualcuna:
  • in "Mail Preferences / General" si trova una checkbox che dice "Enable Magic Spacebar". E' ignoto cosa sia questa spacebar magica, di default e' abilitata e ho paura di cambiarlo per vedere cosa succede
  • in "Composer Preferences / General" c'e' una opzione espressamente dedicata a chi ha la pessima abitudine di fare top quoting, permettendo di piazzare la signature sopra al testo quotato insieme al resto. Ed e' pure specificato "Not Reccomended". A che diamine serve una opzione che incentiva e spalleggia un comportamento biasimato da chiunque e pure esplicitamente deprecato nel pannello stesso?
  • in "Mail Preferences / Automatic Contacts", che peraltro dovrebbe stare nell'apposita sezione "Contacts" anziche' li', si chiede se si vogliono importare in rubrica i contatti da Pidgin. Ora: per quale assurdo motivo al mondo io, utente, *non* dovrei volere l'integrazione tra queste due applicazioni? Fallo e basta!
La lista di cose palesemente inutili e di quelle che potrebbero essere largamente migliorate e' lunga, ed intendo nel prossimo futuro inviare una mail sulla mailing list dei developer per discutere le mie osservazioni ed eventualmente anche offrirmi per provvedere alle patch necessarie (sul codice di Evolution ho gia' combinato qualcosina in passato), perche' e' intollerabile che una applicazione del genere, una delle piu' importanti nella piattaforma Gnome e riccamente usata in ambienti di produzione (anche perche' sembra essere l'unico client open che si interfaccia in un qualche modo con Microsoft Exchange) debba essere cosi' complicata anche solo da mettere all'opera.
E' uno sporco lavoro, ma qualcuno lo dovra' pur fare...

domenica 18 aprile 2010

User-proof

0 commenti
Da molto tempo esiste l'ironico motto secondo cui i developers Gnome saranno soddisfatti della loro opera solo quando l'intera interfaccia del sistema sara' ridotta ad un tasto solo. Ma l'altro giorno sono incappato per caso in una applicazione che fa davvero proprio il concetto: la schermata principale di Déjà-Dup presenta infatti due soli grossi pulsanti, "Restore" e "Backup".
Chiaramente esiste anche un pannellino per selezionare cosa backuppare e dove, o automatizzare la procedura in modo da dimenticarsi completamente della sua esistenza e lasciare che faccia da solo (se non e' automaticamente attivato, il backup non serve a niente), ma mi ha colpito la scelta estrema nel design del pannello primario. In fin dei conti una volta manipolati i diversi parametri non c'e' ragione di metterli continuamente sotto al naso all'utente, che di volta in volta e' interessato solo a sincronizzare i suoi dati locali con la cartella remota, dunque mi sembra piu' che azzeccata.
E le accortezze in termini di usabilita' non si limitano a questo. Tra i commenti pubblicati su OSSBlog, da cui appunto ho appreso l'esistenza di questo programmillo, qualcuno lamenta la limitazione di poter selezionare un solo insieme di cartelle da duplicare in un solo repository distaccato, ma anche in questo caso mi trovo a dar ragione al developer: il target del software e' chiaramente l'utenza domestica, che non ha particolari esigenze ed anzi ancora grazie se si premura di effettuare una copia di salvataggio dei propri dati, dunque inutile e' fornirgli un necessariamente complesso sistema per incrociare cartelle su cartelle. Se l'utilizzatore dovesse mai abbisognare di tale genere di funzionalita', potra' trovare una risposta in una qualsiasi tra le altre dozzine di applicazioni esistenti nel settore senza necessariamente rendere piu' difficile la vita a chi vuole campare lieto e sereno con una cartella sola.
In breve: a parte il nome pieno di accenti ritengo Déjà-Dup un esempio assoluto di pulizia, facilita' di utilizzo e design, una perla rara in un oceano di applicazioni troppo spesso raffazzonate o strabordanti di features inutili. Gli utenti necessitano urgentemente di piu' software fatto cosi'.

venerdì 16 aprile 2010

Faldoni VS Database

0 commenti
L'altro giorno mi sono recato con un amico presso un piccolo produttore agricolo con lo scopo (che non intendo qui approfondire nel dettaglio) di appurare come utilizzasse lui il computer nello svolgimento delle sue pratiche burocratiche e produttive. Ne e' emerso uno scenario perfettamente prevedibile e scontato, ma non per questo meno disarmante: il PC viene usato pressoche' esclusivamente come macchina da scrivere, per compilare bolle e fatture da stampare e maneggiare poi analogicamente (= su carta).
L'apoteosi dello sconforto l'ho raggiunta quando il suddetto agricoltore (lui, come lo potrebbe fare la stragrande maggioranza dell'utenza informatica di basso livello odierna) ha apertamente ammesso che il computer, massima espressione della scienza tecnologica nella sua esistenza rurale, e' un problema inevitabile piu' che una soluzione desiderabile: difficile da usare, incomprensibile, caotico, con l'unico pregio che con un paio di copia&incolla si velocizza qualche sporadica operazione nella compilazione dei moduli che se altrimenti fatta a mano richiederebbe piu' tempo. Mentre diceva cio', io guardavo il vicino armadio carico di faldoni e carte accumulate dopo essere uscite dalla stampante del vituperato marchingegno digitale, certamente perche' il personaggio riesce meglio a scartabellare e cercare cio' che gli serve su supporto fisico anziche' tra le cartelle virtuali del filesystem.
Del resto, neppure mi sento di dargli tutti i torti: il computer ha un costo, cosiccome la licenza di Excel installata sopra (suppongo sia stato originale, acquistato in bundle con la macchina numerosi anni addietro, e se anche fosse stato pirata glielo ha installato qualche pseudo tecnico in qualche negozietto di informatica facendosi comunque pagare per il disturbo), e tale applicativo viene usato per compiti ben piu' complessi ed avanzati che non quelli per cui e' stato ideato. L'acquisto di un software specifico per la sua attivita' costerebbe 3000 euri (e non e' una stima: il programma esiste davvero e gli e' stato offerto esattamente a quella cifra), e per esperienza gia' so che si tratterebbe comunque di un accrocchio Visual Basic + Access messo in piedi alla meno peggio con lo scopo esplicito dell'azienda produttrice di trarre profitto ulteriore con i corsi per sommariamente imparare ad usarlo e l'assistenza. Pertanto ci si arrangia con quel che si ha, ovvero qualche programma realizzato da vendors diversi tra loro nient'affatto integrati, con interfacce diverse e carichi di features introdotte per giustificare le nuove release, e appena possibile si ricorre al tasto "Stampa" per portare le informazioni importanti fuori dal ronzante scatolone di plastica e alluminio.
Non oso neppure immaginare cosa la piu' scarsa e umile tecnologia digitale oggi esistente potrebbe realmente fare per quest'uomo: i dati, se immessi in un database, potrebbero essere spulciati e tra loro intersecati con dettaglio estremo in pochi secondi; le anagrafiche di fornitori e clienti, se formattate in hCard e gestite direttamente dagli interessati, potrebbero essere pescate dall'Internet ed aggiornate automaticamente, e istantaneamente accessibili digitando tre caratteri del nome; i documenti potrebbero calcolarsi per conto proprio quantita' totali, prezzi totali, IVA e altri parametri burocratici partendo da pochi valori relativi alla merce ricevuta o da consegnare; gli stessi totali potrebbero essere trasmessi al commercialista in formato digitale, e questo potrebbe a sua volta importarli nel suo proprio programma per farci quel che deve farci; i pagamenti, se trasferiti per via telematica, sarebbero usati seduta stante per computare bilanci ed introiti (o al contrario innescare sollecitazioni automatiche se non arrivati in tempo). Senza parlare del risparmio di carta, inchiostro e spazio.
Se nell'Anno Domini 2010 tutte le attivita' produttive e commerciali ancora non hanno trovato nella tecnologia un valido ed appropriato supporto la causa non e' solo delle ovvie resistenze riscontrate presso il grande pubblico nei confronti delle novita' ma anche e soprattutto da imputare a coloro che dovrebbero provvedere alla messa in opera di questi semplici e talvolta persino banali (per un tecnico, intendo) strumenti, e che speculano sulla scarsa consapevolezza e dimestichezza dei propri clienti per spremere ogni singolo centesimo dalla loro ingenuita'.
Le cose possono cambiare. Devono cambiare. Poche righe di codice, se stese con criterio, possono allo stesso tempo ridurre il tempo (e dunque il costo) necessario a svolgere una operazione, aiutare a massimizzare i profitti incentivando particolari scambi monetari, e salvare un albero destinato a diventare carta da stampa. E' venuta l'ora di iniziare a scriverle.

mercoledì 7 aprile 2010

Vintage Computing

0 commenti
Oramai ogni tre per due si annuncia la morte del PC desktop, pronto per essere assassinato dalla piu' nuova, promettente e modaiola tecnologia: una volta incombe il web desktop ed il cloud computing, una volta avanza a grandi passi il mobile, una volta l'iPad sembra destinato a stravolgere la vita di ogni essere sul pianeta. L'ultimo articolo letto in merito e' questo qui, che definisce "legacy" (= obsoleto) il desktop.
Esistono pero' almeno due falle nella logica di questo genere di conclamazioni.
La prima e' che tutti assumono che gli utenti si dividano in due categorie: chi produce e chi consuma. Chi produce (contenuti, documenti, codice...) abbisogna di tastiere fisiche, grossi monitor e software di editing audio e video performante, chi consuma (contenuti, documenti, applicazioni...) puo' largamente accontentarsi di un monitor touchscreen ed una tastierina virtuale per i pochi commenti che puo' al massimo scrivere su Facebook. Ma, per fortuna o purtroppo, il mondo non e' bianco e nero. Anche l'utente piu' negletto e passivo della Rete spesso scrive a lungo e relativamente lunghi testi, prova ne e' la capillare diffusione di Messenger e altri client di instant messaging con cui abitualmente alla sera gli studentelli spettegolano sui loro compagni e gli adulti spettegolano sui colleghi di ufficio. La chat e' una delle attivita' piu' comune per ogni categoria di cittadino digitale, gli smanettoni complottano su IRC ed i profani discutono del piu' e del meno su GTalk, dunque per quanto strano possa sembrare tutti abbisognano di una bella tastiera su cui scrivere i propri pensieri a qualcun'altro, da li' non si scappa. Inoltre, moltissime sono le persone che, pur capendone poco, col computer ci devono lavorare: tanto per dirne una chiunque abbia una attivita' commerciale o produttiva deve gestire fatture e rendicontazioni, e sebbene tale genere di applicazioni potrebbe benissimo essere adattato per i devices moderni (il tablet ad esempio sarebbe perfetto per tenere allineato un magazzino con la propria base dati) il traguardo prevede una congiunzione astrale tra offerta da parte del mercato, richiesta da parte dell'utenza, e disponibilita' della piattaforma hardware.
Cio' introduce alla seconda mancanza del ragionamento secondo cui il desktop debba perire a breve, ovvero l'innata resistenza a qualsiasi genere di innovazione da parte del grosso mercato consumer. Credo che la diffusione di Internet Explorer 6, browser risalente a 9 anni fa' e che in marzo 2010 deteneva il 9% di share, sia constatazione sufficiente per confermare la tesi. Se il pubblico oppone cotale ritrosia nell'effettuare un upgrade software, pressoche' indolore e gratuito, per quale ragione dovrebbe cambiare in modo radicale le sue abitudini andando pure a spendere qualche centinaio di euri per un nuovo arnese elettronico? Molto meglio tenersi quel che si ha il piu' a lungo possibile. E di conseguenza continuare ad istigare il mercato a proporre soluzioni per quello, anziche' intraprendere mosse azzardate su un terreno popolato in larga parte da entusiasti di tecnologia e poco altro. Certamente i developers web, iPhone, iPad, Android e compagnia cantante abbondano, ma ne passera' di tempo prima che provvedano alternative valide a tutto quello che e' stato sinora realizzato sul desktop, magari da qualche cane in Visual Basic e Access, che non solo facciano le stesse cose ma pure meglio (si' da giustificare il costo della migrazione), e fino ad allora le possibilita' di convincere qualcuno ad abbandonare il sano vecchio scatolone sibilante sono nulle.
In quanto freesoftware advocate so bene quante e quali sono le difficolta' che si parano dinnanzi all'adozione di qualsiasi strumento anche solo di poco diverso rispetto a quanto gia' familiare e consueto, indipendentemente dalla facilita', comodita' e bellezza dello stesso. E, per quanto sostenitore di quasi ogni novita' sensata che spunti sull'orizzonte di Slashdot, mi guardo bene dal dare credito a ogni affermazione eccessivamente entusiasta sull'imminenza di un cambiamento di paradigma. In qualita' di nerd sarei ben lieto di vedere la gente per strada leggere la versione digitale del quotidiano sul proprio tablet ("Il futuro e' adesso!"), ma in qualita' di osservatore so che questo scenario e' ben lungi a venire, checche' ne dicano i santoni del marketing.