L'oggetto nella scrivania - Interfaccia e semplificazione del lavoro con OS/2


Lavorare con un personal computer è qualcosa di completamente differente dall'utilizzare strumenti tradizionali, e diversi gradi di integrazione tra tecniche e tecnologie successive di uso spesso si sedimentano nell'utilizzo quotidiano, per comodita' o per la relativa sicurezza, in quanto provate, che offrono.
Quanti di coloro che utilizzano OS/2 Warp ancora si portano alla linea di comando ed alla affidabilita' di uno dei tanti cloni del Commander di Peter Norton quando devono copiare files, ad esempio?
Tanti direi, e io stesso fra questi.
Il fatto è che le abitudini profondamente radicate sono dure a smettersi, anche quando sono apertamente improduttive od addirittura dannose. E se comunque avere una visione da command line della propria macchina aiuta la comprensione di certi meccanismi di funzionamento, non è stata altrettanto positiva l'identificazione GUI/Microsoft ed il conseguente modo d'approccio all'uso delle interfaccie grafiche prodotto dall'enorme diffusione di Win 3.x.

Le interfaccie grafiche, al di la' di inesistenti meriti di democratizzazione plausibili solo per chi possa pensare che alla stessa stregua il cambio sincronizzato ed il servosterzo abbiano democratizzato le automobili, hanno portato enormi vantaggi concettuali nella concretizzazione del modo di utilizzare il personal computer e nelle metafore astratte (object-oriented, client-server, distributed networking) che guidano lo sviluppo e del software e dell'hardware, di cui sono ad un tempo effetto e volano.

Ma da una linea di comando io ho due possibilita': digitare un comando comprensibile al SO o digitare qualcosa di errato, e nient'altro. Le cose con una interfaccia grafica si complicano notevolmente, dal momento che il flusso di informazioni ricevute e trasmesse tra operatore e sistema aumenta esponenzialmente.
E se un errato modo d'uso di un sistema operativo da linea di comando puo' portare a malfunzionamenti e perdite di dati, raramente portera' alla insoddisfazione ed improduttivita' di un sistema con una GUI mal realizzata o mal utilizzata.

Ma allora che cosa differenzia buone e cattive interfaccie, da un punto di vista di puro utilizzo?
Una buona interfaccia non è "intuitiva", qualunque cosa questo significhi vista l'aleatorieta' del termine: una buona interfaccia avra' una curva di apprendimento gradevole per l'utente, ma l'avra'.
Non esiste l'interfaccia a grado zero di difficolta', perché qualsiasi compito per essere eseguito necessita di una conoscenza delle regole tramite le quali puo' essere svolto.

Assimilatene le regole diviene probabilmente "intuitivo".
Siamo accerchiati da articoli di costume sulla complessita' dei telecomandi tv di nuova generazione, e personalmente, utilizzandola poco, trovo tutt'altro che semplice il pannello comandi della mia lavatrice.

Una buona interfaccia non è nemmeno fortemente caratterizzata, perché è uno strumento, non un fine, e ogni bravo artigiano avrebbe difficolta' a dire dove finisce la mano e dove inizia lo strumento: la buona interfaccia tende a diventare invisibile.

Una buona interfaccia è sicuramente configurabile dall'utente secondo preferenze personali, sufficientemente robusta da reggere un uso errato od improprio da parte di chi sta imparando, e offre un sistema d'uso coerente in ogni sua parte; ma soprattutto una buona interfaccia è aperta ad un utilizzo che si fa via via piu' esperto, sicuro e complesso mano a mano che si sale lungo la curva di apprendimento.

Questi criteri escludono il mainstream programming di Windows.
La piu' grave responsabilita' infatti che puo' essere imputata a Microsoft è sicuramente quella di avere banalizzato lo sviluppo e l'utilizzo delle interfaccie ad icone in un ampio segmento del mercato del personal computer, con un impatto, per mera forza dei numeri, destinato a durare e ad influenzarne per diverso tempo le strategie produttive ed il pensiero critico.

Per preciso calcolo o per semplice inadeguatezza l'approccio rivoluzionario introdotto dal Macintosh e di cui IBM ha fatto buona scuola nel progettare OS/2 Warp è divenuto per molti utenti di personal computer quell'incubo bidimensionale che va sotto il nome di Program Manager, una shell costruita per ordinare una sempre piu' dispersiva collezione di programmi multifunzione e che sostituisce semplicemente all brutalita' di un cursore lampeggiante l'altrettanto ignava icona da cliccare.

Dove si era prefigurata una innovativa associazione tra oggetti hardware e oggetti software (icona del floppy, addirittura guidato via software, icona della stampante, cestino) ed un nuovo pensiero dell'interazione tra uomo e computer abbiamo avuto, su di un vasto mercato di massa, una derivazione deprivata e inconsistente, in cui l'approccio visivo è solo un miglior presentare lo stesso modus logico, in cui la modalita' grafica è solo un ausilio alla standardizzazione della programmazione e della visualizzazione.

Se muoversi tra directories alla ricerca di un certo programma non era facile od agevole dalla linea di comando, incomincia a divenire quanto meno dispersivo anche l'identificarne l'icona tra altre cento scarsamente dissimili.
Oppure infilarsi nei menu concatenati di una start-up bar che mostra in sequenza start/programs/myprograms/mmedia /paint/psp/Paintshop.
Utilizzare soluzioni rigidamente codificate, quali che siano, porta ad una rapida perdita di controllo non appena viene oltrepassato il limite teorico di complessita' del sistema: digitare "dir" per discriminare tra cinque files è pratico, ma lo è molto meno se i files sono cinquecento. Avro' allora switches per modificare l'output del comando "dir", per data, estensione, dimensione: si aumenta il grado di complessita' del comando per risemplificarne il risultato.

Le cose non cambiano poi molto utilizzando la nostra start-up bar:
ottimale per avere accessibili dieci - venti funzioni, assolutamente improduttiva quando menu si aggiunge a sottomenu di un sottomenu di un menu con lista di files. Ecco il discorso di crescita della complessita' d'uso, di cui si puo' avere una rapida valutazione comparando il certo meno efficace graficamente SmartCenter di Warp 4 e la start bar di Windows 95: se in quest' ultima il concatenarsi di menu su menu e l'incremento di voci tendono rapidamente alla saturazione della capacita' di discernimento dell'utente, nel primo il pur semplice utilizzo di "trays", cioè cassetti configurabili presentati in ciclo e non tutti insieme, consente di mantenere sotto controllo, ed eventualmente eliminare, il complicarsi dei riferimenti.
Purtroppo, complice l'enorme diffusione delle soluzioni Win 3.x e Win95 (che, per inciso, condividono in tutto e per tutto l'impostazione e la filosofia di base, almeno a livello di integrazione tra interfaccia e sistema, quasi inesistente), è diventato patrimonio comune il pensare a qualsiasi tipo di interfaccia utente/computer in termini win-like, termini se non esclusivi almeno comparativi. Il problema è che questo tipo di approccio è, per gli utenti di OS/2 Warp, estremamente riduttivo.

Programma e documento

OS/2 infatti, abbastanza stranamente e per fortuna nostra, non ha un Program Manager. Questo è un enorme vantaggio strutturale che deve essere sfruttato, perché è l'indice piu' visibile di una diversa concezione dell'interfaccia che solo ora e con molta fatica Microsoft sta cercando di imitare. Ovviamente banalizzando.

Dal punto di vista dell'utente, che colloquia con il computer utilizzando l'interfaccia (e per comodita' mi riferisco alla sola interfaccia software), i modelli di organizzazione dell'interazione sono riconducibili a due, diametralmente opposti tra loro: il modello programma ed il modello documento.

Esemplificando, utilizzo il primo quando il mio modo di procedere segue una logica "programma=>file", cioè lancio un word processor, cerco un file documento, lo apro, lo edito, lo chiudo, apro un secondo file e via dicendo. Uso il secondo quando invece ragiono in termini di obiettivi e non di mezzi: cosa devo fare e non con cosa o come devo farlo.

In questo modello il file/documento/oggetto è il centro e non lo è il programma specifico che uso per compiere l'azione richiesta.

Il primo è paradigmatico in Win 3.x / Win95, il secondo è tipico tra gli altri di OS/2 Warp e del Macintosh.

Il fatto è che la Workplace Shell (WPS), l'interfaccia grafica di Warp, non è una replica a migliore tecnologia del Program Manager di Windows, ma un potente strumento di lavoro OO, un "document oriented desktop" estremamente flessibile e configurabile che poggia su di una robusta struttura ad oggetti (SOM) che consente una facilita' di configurazione ed una molteplicita' di modi di uso tali per cui difficilmente due workstation Warp non out-of-the-box possono assomigliarsi, e nell'apparenza grafica, poiché fonts, colori, icone e bitmap sono assegnabili dall'utente oggetto per oggetto, e nelle procedure operative, poiché il drag and drop tra tutte le componenti di sistema, la accessibilita' dei menu contestuali, l'uso delle workareas, la creazione di oggetti ad hoc per compiti specifici, siano essi stampanti, templates o sessioni DOS/Win VDM, offrono piu' di un modo di compiere un lavoro.

La prima e piu' banale richiesta che spesso mi sono personalmente sentito fare da utenti, professionali e non, posti di fronte al desktop di Warp è stata: "e il File Manager, dov'è?".
Recentemente, grazie alla rivoluzione tecnologica di Windows 95, la domanda viene di solito riformulata in "e la Gestione Risorse, dov'è?".

Ammetto di considerare la domanda spiazzante, perché questo tipo di approccio è inconsistente, o largamente riduttivo, della logica con cui è stata progettata l'interfaccia utente di Warp. Warp non necessita di un "programma file manager", poiché tutte le operazioni possibii su files possono essere svolte elegantemente e con estrema efficacia utilizzando gli oggetti della WPS e gli oggetti drives in particolare.

Se volete, il file manager è inglobato, affogato nel sistema, per fornire le funzioni che servono dove servono, ed è questo un punto di forza di OS/2 spesso non adeguatamente sfruttato da utenti e sviluppatori allo stesso modo. Il miglior prodotto per Warp è un prodotto quasi trasparente, che non si vede e che non è intrusivo.

Un esempio tipico, ottimo ed incompiuto, è l'integrazione FTP di Warp 4. Ottimo perché perfettamente aderente alla logica ad oggetti della WPS, incompiuto perché purtroppo ancora privo di funzioni fondamentali quali il reget e terribilmente avaro di informazioni sulle transazioni in atto, niente transfer rates e sopratutto niente che avverta l'utente dello stato percentuale di download/upload.
Probabilmente chi ha sviluppato il codice aveva in mente un client connesso in rete, con nessun problema di tempi e delays, piu' che un utente TCP/IP su linea telefonica.

Fig. 1 - Il folder Connections di Warp 4: drives locali e drives remoti ed il folder FTP di Hobbes aperto e connesso

I folder FTP creati sul desktop non sono altro che cartelle speciali la cui apertura connette all'host remoto, mostrando il contenuto esattamente come un drive folder locale, consentendo tree views o icon o details views, filtering, drag and drop da/per il sistema locale.

Microsoft ha recentemente annunciato che una futura release di Internet Explorer operera' esattamente secondo questa logica, integrando file system locale e remoto, ovviamente sottolineando quel carattere innovativo che IBM si è ben guardata dal valorizzare nel suo prodotto, gia' sul mercato da circa sei mesi.

Un ottimo esempio esterno ad IBM di modello ad oggetti è rappresentato da Object Desktop di Stardock, o dalle innumerevoli utilities shareware e freeware che incrementano o modificano le prestazioni o le capacita' della Workplace Shell, come Desktop Wizard o WPS Scheduler.

Le funzioni e le possibilita' accessorie fornite da questi software ad oggetti sono integrate a livello di WPS, nuove opzioni sul drag and drop, menu contestuali, nuove classi di oggetti per gestire nuove periferiche o nuovi formati di files: ad una prima occhiata dopo l'installazione non sembra cambiato nulla, il pacchetto non conteneva eseguibili ma solo DLLs, nel folder creato dal programma sono non molte icone quasi tutte deputate alla configurazione o alla documentazione. Poi si comincia a lavorare e si vede che il settanta per cento di quanto serve c'è solo ed effettivamente quando serve: ma ora quel file .ZIP o .RAR funziona come un folder, utilizzando la stessa metafora, ora posso vedere o stampare quel file .CDR di CorelDraw senza avere nemmeno il programma installato e senza lanciare nessun file viewer. Le aggiunte sono trasparenti.

Fig. 1 - Un file .DOC di Word con una voce menu per la visualizzazione e la stampa dovuta a Object Desktop Pro e due voci per il salvataggio e l'upload create mediante template

Associazioni, menu e templates

Siamo abituati a considerare i files come "proprieta'" di uno o piu' programmi che ne riconoscono il formato e lo interpretano correttamente per fornirci il foglio di calcolo o l'immagine che ci serve.
Warp non solo consente di avere associazioni tra files e programmi come Win 3.x / Win95, consentendo associazioni multiple tra un certo tipo di files e piu' programmi di editing, ma fa un uso di questo tipo di link logico molto piu' estensivo.

I files sono concretizzazioni singole degli oggetti e delle classi gestite dal sistema via WPS, e come tali non hanno nessuna necessita' di avere per esempio una estensione ".ext" nel nome: le applicazioni OS/2 riconoscono i "loro" documenti basandosi su firme binarie scritte negli attributi estesi del file, col risultato che i documenti

     lettera.sdw
     lettera del 2502 alla ditta
     letteraditta.2502.copia

scritti con StarDivision StarWriter sono, per quanto riguarda la capacita' del word processor di identificarli come "propri", tra loro equivalenti. E' ovvio che non tutti possono trovare comodo o utile abbandonare lo schema 8.3, ma questa possibilita' esiste, ed è una possibilita' che muove via dal programma, che gestisce le associazioni in modo trasparente per l'utente, e verso il documento.

Come oggetti, i files e ogni componente del sistema, sottolineo ogni, possono avere funzioni "private" associate al proprio menu contestuale.

Il mio drive X:, uno Iomega ZIP esterno, ha una voce di menu che dice "download backup" e che, tramite uno script Rexx non piu' complicato di un batch DOS, effettua la copia da una mia personale directory /incoming su hard disk al floppy ZIP. Ovviamente, copia solo i files scaricati nell'ultima giornata.

Se è possibile aggiustare i menu dei miei oggetti, siano di sistema o per cosi' dire personali, non c'è nessun bisogno di mantenere un oggetto, o una shadow, di ogni programma sul desktop, cosa che porta tra l'altro, oltre che ad una scrivania alquanto ingorgata, a rallentamenti del refresh video, a patto che dei due modelli organizzativi si utilizzi quello che abbiamo definito documento.

E' che la metafora della scrivania ci ha probabilmente deviato o traviato piu' del dovuto e del necessario.

Sulla scrivania abbiamo la penna per scrivere e il telefono per parlare col mondo: questo non è necessario nello spazio virtuale del nostro desktop video. Qui è possibile, io aggiungo auspicabile, avere metaforicamente la carta per scrivere e la "telefonata" o la "persona da chiamare", la "conversazione" per telefonare. Il modello ad oggetti è un modello astratto, che guarda piu' al procedimento logico che ai dati fattuali relativi al compiere una determinata operazione: ma questo è d'altronde vero anche per il modello programma, seppure piu' limitatamente e con un certo numero di compromessi.

Ho ricevuto da amici e colleghi, utilizzatori di OS/2 come di Windows, diverse domande incuriosite, spesso diffidenti, circa la mia personale abitudine di rinominare (a volte) e cambiare icona (quasi sempre) ai programmi installati sul mio PC. Per quanto questa sia una deprecabile abitudine privata che non consiglierei certamente a tutti e per la quale spero mi vorrete perdonare, ha una sua logica che è coerente al nostro anzidefinito modello documento.

Io, come molti, non ho dieci wordprocessors, quattro programmi di posta elettronica, tre fogli di calcolo, o perlomeno non tutti in uso (tengo certo programmi aggiuntivi in prova, ma separati da quello che è il work desktop). Scrivo pero' lettere, articoli, progetti, spedisco email su Internet e Fidonet: ho quindi un wordprocessor ed un mail writer.

Come si chiamino è pero' dal mio punto di vista relativamente ininfluente, ed averli identificati con la loro icona personale a volte addirittura fuorviante.

In un certo senso associare al mio programma di posta una icona decisa da me, visto che il SO mi offre questa facilita', costante, una busta, una casella postale, mi garantisce che qualora io decida di comprare un nuovo mail writer (o che lo sviluppatore effettui un minimo di restyling) continuero' ad associare funzione ed icona, con un buon riflesso pavloviano.

Questo comporta certamente una buona cura ed una pianificazione del desktop che ad alcuni puo' sembrare eccessiva o inutile, ma ripaga ampiamente in termini di produttivita' chi ha necessita' di una interfaccia stabile e "uncluttered".

Ovviamente, immagino ce lo si potesse aspettare, questo non è il massimo di astrazione possibile.

Il passo successivo, molto piu' aderente alla logica object-oriented di Warp, è quello di eliminare il passaggio per il programma e di creare uno o piu' folders di templates (maschere) rispondenti alle esigenze di lavoro: se necessita uno schema estremamente preciso, o semplicemente devono essere automatizzate operazioni per larga parte ripetitive, avro' piu' templates associati ad una stessa applicazione, ognuno predisposto per i ristretti scopi definiti. Un template per un certo tipo di lettera, un template per un certo tipo di immagine, un template per la stampante e un template per i folder di smistamento dei downloads. Templates e workareas, folders contenitori speciali la cui apertura/chiusura provoca la apertura/chiusura di tutto quanto in essi contenuto (ls WPS è una workarea ad esempio), sono una potente combinazione di lavoro. Con un saggio uso delle shadows degli oggetti d'uso comune, siano essi stampanti o files, si è in grado di creare desktops di lavoro pronti con un click, indipendentemente dal numero di operazioni che sarebbero necessari ogni volta per rendere attivi i programmi richiesti uno ad uno.
Il mio folder "the Net", figura 3, è una workarea, ad esempio. Con la sua apertura vengono attivati automaticamente uno script Rexx che effettua la connessione ad internet utilizzando il PPP di Warp, il mailer ed il folder FTP di Hobbes, ed il software di comunicazione vocale InterCOM. Due folder contenenti links e shadows di files utili vengono aperti a fianco. La chiusura della workarea chiude il collegamento, i programmi ed i folder.

Fig. 3 - La workarea "the Net".


E', all'ennesima potenza ed applicato al sistema operativo nel suo complesso, quello a cui molti sono abituati lavorando con un word processor, nel quale utilizzano un modello preparato per i fax, uno per le lettere private, uno per i manuali.

Il grosso vantaggio, pratico ma anche di organizzazione logica, di questo modello documento è la semplificazione che avvia nella strutturazione del desktop, e semplificazione, in un mondo sempre piu' connesso ed interpiattaforma, è una parola d'oro.

Prestazionismo

Questo mi porta a spendere una breve nota sul prestazionismo.
Il prestazionismo ("featurism") strisciante di molte applicazioni Windows, che vivono un mercato nel quale la corsa verso l'ultimo applet e la feature dei sogni ("ultimate", "definitive", "feature rich" sono le parole piu' frequenti dei frequenti ads che le pubblicizzano o recensiscono) è ormai parossistica ed insensata, ha condotto a prodotti nei quali la apparente semplificazione delle operazioni è unicamente riduzione prestazionale (un esempio tipico sono i wizards, agenti software con un quoziente intellettivo alquanto deficitario) e le centinaia di funzioni disponibili si perdono in muri di bottoni, drop lists, selection boxes.

Forse Wordstar 1.0 aveva meno funzioni della media degli ipertrofici word processor di oggi, ma certo veniva utilizzato al novanta per cento delle sue possibilita'. Oggi il gioco sembra quello di offrire valori aggiunti inutilizzabili per mero surplus di informazioni o per precoce obsolescenza.

Ho recentemente visto una shell Windows per PKWare PKZip. Non ne faccio il nome, perché il programma è un buon programma, in grado persino di agire come un editor di testo, come un file manager e chissa' che altro.Ha talmente tante funzioni che duplicano quelle di sistema o di altri programmi ad appesantirlo ("bonus add on", probabilmente) che ci si dimentica del suo scopo primario, aprire file compressi per accedere al contenuto.

Non è che questo tipo di programmazione non esista nell'angolo di mondo di Warp, esiste eccome: le insegne ed i lustrini della concorrenza a volte sono meglio che gli specchi per le allodole. Ma il fatto è che è possibile, come per l'uso dell'estensione dei files, farne a meno. Una scelta che non è data (forse nella prossima release, direbbe certamente l'addetto stampa) a chi usa piattaforme Win 3.x o Win95.

Il programma ideale è non intrusivo, possibilmente modulare, mimetizzato nell'interfaccia e coerente con essa. Ma chi usa Warp non deve, per fortuna, attendere la prossima release. Si puo' fare anche senza File Manager.


a cura di Andrea Resmini

- [ Pagina precedente ] - - [ Sommario ] - - [ Just WARP! homepage ] - - [ Pagina successiva ] -