Newsgroup: it.lavoro.informatica
Titolo: [Discussione semi-OT] (Inter)facce toste

Vi sedete davanti ad un computer.
Lo accendete.
Sullo schermo compare qualcosa, indipendentemente dall'hardware e dal 
sistema operativo, che è sostanzialmente un disegno bidimensionale con dei 
simboli (icone) che rappresentano oggetti (programmi o documenti) oppure 
contenitori di oggetti, e una o più barre con pulsanti da usare per 
raggiungere rapidamente qualche destinazione. All'apertura di un aggeggio 
qualunque, un'area più o meno rettangolare dello schermo (finestra) viene 
assegnata a contenerlo e a permettere all'utente di manipolarlo come 
preferisce; tale area può essere spostata, ridimensionata, fatta sparire 
temporaneamente, sovrapporsi ad altre e, ovviamente, essere chiusa.
Dal punto di vista logico, la metafora è quella della scrivania virtuale 
(desktop), con sopra appoggiate le vostre cose, organizzate in una struttura 
gerarchica (directory) sulla scrivania stessa oppure all'interno del disco, 
con una o più atività in corso.
Con il mouse si selezionano e si attivano gli oggetti, con la tastiera si 
immettono testi o comandi più complessi.
Tutto qui, tutto uguale, da 20 o 30 anni (non so bene). Cambiano solo forme 
e colori.
Ora, immaginate di dover progettare da zero un sistema per far interagire 
l'utente e il computer. Per semplicità, diremo che il computer rimane quello 
che è (e quindi, almeno su disco, file e directory rimangono tali), e le 
periferiche di I/O pure (perciò vi tenete la tastiera e il mouse).
Vi sentireste per forza obbligati a seguire la strada del dektop con le 
icone e del suo contorno di barre e finestre, o vi verrebbe in mente qualche 
soluzione alternativa? Come la concepireste, come la organizzereste, cosa 
rappresenterebbe e come comunicherebbe l'utente con essa?
Non considerate affatto le eventuali problematiche tecniche, mi interessa 
solo un vostro parere su come rappresentare le informazioni, i programmi e 
il computer stesso, al di fuori del solito paradigma "icona sul desktop, 
finestra, barra dei menu".
A voi la palla, se vi va :-)
Massimo

 sul desktop, finestra, barra dei menu".
Dipende dal tuo contesto culturale.
Se sei un agricoltore, il paradigma sarà fattoria, campi, rimessa per 
gli attrezzi, trattore e così via.
-- 
ale
http://www.riolo.org

periferiche di I/O pure (perciò vi tenete la tastiera e il mouse).
Tanto per cominciare invece io eliminerei proprio mouse e tastiera.
Okuda insegna.
C'ya
	STeve
-- 
Legge di Flon
Non c'e' linguaggio in cui sia difficile scrivere cattivi programmi.
FAQ del gruppo : 
http://www.sen.it/faq/it.lavoro.informatica.faq.html

 Okuda insegna.
Uh, mi sfugge...
Massimo

Massimo ha scritto in it.lavoro.informatica:

Tastiera tipo pianoforte.
E un grosso trackball da usare con un piede a mo' di pallone.
E due o tre pedali per l'altro piede.
Per quanto riguarda il monitor, le finestre rettangolari derivano dal fatto
che si scrive mediamente su righe orizzontali e si tende ad incolonnare le
cose per fare tabelle. Anche i fogli di carta sono rettangolari da molto
tempo, e se il computer deve poter scrivere mi sembra una semplificazione.
Altro discorso sarebbe un interazione che non preveda la scrittura, ma la
scrittura è da secoli il principale tipo di formalizzazione utilizzato.

Uh, mi sfugge...
LCAR


 A voi la palla, se vi va :-)
Periferiche di I/O differenti: schermo touch screen orizzontale 
(verticale diventa impossibile lavorarci sopra per troppo tempo).
Riconoscimento scrittura e vocale, scrittura per immettere dati, vocale 
per comandi e interazioni semantiche anche complesse.
Interfaccia ad agenti, intesi come enti (animaletti, persone, robottini, 
graficamente quello che vi pare) che effettuano operazioni. Ricreare il 
modello reale dell'ambiente di lavoro, ma organizzato meglio ovviamente :-)
Ogni operazione viene eseguita da questi agenti dandogli gli input non 
come elenco di dati, come avviene ora, ma con forme semantiche complesse 
che gli agenti stessi riescono a rielaborare per estrarre ulteriori 
informazioni su ciò che vogliamo fare, saprebbero chiedere conferme e 
richiedere informazioni aggiuntive (per chi non lo sapesse studi del 
genere sia sui linguaggi sia sugli agenti esistono già non sto 
inventando niente).
Alzerei il livello di astrazione della GUI e delle operazioni sui dati 
di vari livelli, anche della programmazione.
Ovviamente siamo indietro di almeno 30 anni su cose del genere, chissà 
se un giorno le vedrò usare a mio figlio...
Però è bello sognare il futuro in questo modo, almeno per me...

 LCAR
Confesso l'ignominia: l'ho infilato in Google e non ne sono venuto a capo.
Ahimé, chiedo lumi.
Massimo

 vari livelli, anche della programmazione.
Quindi tu vorresti un livello di "comprensione" delle informazioni molto 
superiore, da parte del computer.
Ma qui non si parla più di "interfacce", qui cambia completamente il modo in 
cui il computer (e l'utente) interagisce con le informazioni.
Lo ritieni possibile? Anche a fronte di tutti gli studi sull'intelligena 
artificiale (nel senso più ampio del termine) che si sono più o meno 
impantanati senza pietà?
Massimo

Ahimé, chiedo lumi.
Sigh.
LCAR -> Library Computer Access and Retrieval System
Mike Okuda e' l'ideatore del "sistema" computer di Star Trek da TNG in
poi, che non e' solo un design grafico ma un modo di concepire l'uso
del computer.
Al di la' dello spettacolo, il lavoro fatto dietro questo tipo di
interfaccia e' notevole e abbraccia in pieno la teoria originale della
Xerox.
Interfaccia principalmente vocale, il computer "fisicamente" non si sa
dov'e', ovvero l'elaborazione puo' essere fatta ovunque e hai una
serie di interfacce di vario tipo che ti permettono di comunicare con
il "sistema" (che e' composto da una mega rete di computer).
Vocale principalmente ma anche "tavolette" per consultare
testi/foto/ecc., il comunicatore integrato nel sistema che ti permette
di interagire con il computer e ovviamente anche con altre persone,
ecc. ecc.
E la filosofia alla base e' notevole se la si analizza un attimino in
profondita'.
Le implicazioni sull'uso del computer sono .. fascinating.
C'e' un intero universo da costruire.
Altro che "tastiera, mouse e simulazione desktop" ... gia' Scotty
rimase sconcertato vedendo un Mac :-)
C'ya
	Steve


impantanati senza pietà?
Certo che e' possibile.
Il problema attualmente e' economico. Realizzare una cosa simile costa
semplicemente troppo.
Per quello ci tocca ancora avere tra i piedi W$ :-), tastiere e topi.


Perň č bello sognare il futuro in questo modo, almeno per me...
Non sei il solo e c'e' gente che sta lavorando per realizzarlo davvero
questo futuro.


"Papavero Rosso" [cut] ha scritto
E scordare non posso il papavero rosso
che alle piccole api dà miele
e al mondo crudele dà gioia,
la gioia che c'è nel mio cuor.
*sigh*
F.B.

 impantanati senza pietà?
Sì che lo ritengo possibile. L'analisi di nuovi linguaggi (con vincoli, 
formali di ogni tipo, riconoscimento vocale, reti neurali evolute 
ecc...) consentono già di fare molto, a livello di ricerca, poi il 
passaggio al mondo industriale come si sa è indietro di 20 anni almeno.
Ovviamente sarebbe un processo molto lungo, ma la vedo simile all'idea 
di Bodini.

 questo futuro.
A volte mi sembra di essere il solo, quando parlo tra informatici delle 
mie idee di evoluzione dell'interazione o anche solo della 
programmazione mi prendono per matto.
Quasi tutti sono troppo legati al basso livello, non riescono a 
concepire un innalzamento del livello di astrazione, un po come 
convincere qualcuno che certe cose in C++ si possono realizzare "meglio" 
che in assembler, ed altre che in C# si possono realizzare con altri 
vantaggi, ed altre ancora che in linguaggi funzionali vengono ancora 
"meglio", ecc...
Ogni linguaggio è adatto a certi scopi e se si alza il livello di 
astrazione si possono risolvere meglio alcuni problemi e, formalmente, 
anche tutti quelli dei livelli sottostanti, se l'architettura è 
realizzata come si deve, salvo rari casi per motivi di efficienza, che 
cmq sono solo questione di tempo sullo sviluppo dell'hardware, come la 
storia ci insegna.
Anche per lo sviluppo di applicazioni vorrei un sistema più evoluto, un 
sistema completamente grafico (esistono già i CASE, estremizziamoli 
ancora di più).
Soprattutto per lo sviluppo di applicazioni web, gestionali, database, 
un sistema grafico ad agenti sarebbe facilissimo e comodissimo da usare 
per creare applicazioni.
Una sorta di videogioco con tante componenti da gestire, come in simcity 
ad esempio o qualsiasi altro gioco gestionale, in cui gli agenti sono 
parti dell'applicativo.
Non rispondetemi con la banale conclusione che così chiunque saprebbe e 
potrebbe programmare, già è così oggi e lo so bene, figuriamoci con un 
giochino del genere, bimbi di 8 anni che progettano i loro primi DB per 
la gestione dei voti delle verifiche alle elementari con 
interfacciamento web con pagine dinamiche :-)
Ovviamente l'innalzamento del livello di astrazione serve proprio a 
questo, a rendere inutile qualsiasi competenza della mera creazione 
dell'applicativo, per far sì che chi si occupa di informatica si possa 
dedicare ad altre problematiche complesse, come la sicurezza, la qualità 
(intesa come qualità del sw, vedi ing. del sw), il livello di servizio, 
l'integrazione di diversi sistemi ecc...
Continuerebbero ad esistere i programmatori in uno scenario del genere, 
solo che invece che smadonnare 2 giorni su del codice che deve spostare 
dei dati fra db o interagire con xml o reagire alla pressione di un 
bottone si smadonnerà su problematiche di più alto livello, cosa che 
migliorerebbe solo la qualità del sw in generale.
In teoria è questo lo scopo dell'evoluzione dell'informatica, ma 
purtroppo ci sono troppi informatici smanettoni che pensano solo a 
tirare verso il basso livello, senza pensare che certi approcci sono e 
resteranno sempre validi in determinati domini ma non lo sono nel 
contesto generale di informatica e di evoluzione dell'informatica.

tirare verso il basso livello, senza pensare che certi approcci sono e 
+1


graficamente quello che vi pare) che effettuano operazioni. 
NO LA GRAFFETTA ROMPICOGLIONI DI OFFICE NO!!!!!!!
Il ritorno di un incubo... :)
-- 
Rimetta  a posto  la  candela...

 +1
;-)

 Il ritorno di un incubo... :)
Ahahahah!
Ovviamente le graffette di office non si avvicinano minimamente al 
concetto di agente intelligente che svolge compiti per noi, per pochi 
semplici motivi:
1) saltano fuori senza motivo e nei posti/momenti meno opportuni;
2) non sanno risolvere alcun problema, figuriamoci quelli complessi;
3) non interagiscono né tra loro né con altri agenti
4) non conoscono il sistema per cui dovrebbero fornirti aiuto
5) oltre a non essere agenti sono troppo stupidi, qualsiasi cosa siano 
(pezzetti di codice sequenziale, sostanzialmente uno switch) :-)
Dovessi fare un sistema operativo evoluto io il primo personaggio che 
metterei sarebbe la supergraffetta :-D
A me graficamente piace molto, poi perde non appena apre bocca... questa 
frase l'ho già sentita...

 punti con il dito per selezionarla.
Non so se aveta gia' visto questo:
http://mrl.nyu.edu/~jhan/ftirtouch/
'bye

 
http://mrl.nyu.edu/~jhan/ftirtouch/
Yes, spettacolare e molto promettente.
Massimo

frase l'ho già sentita...
E' il prologo della biografia di Flavia Vento...


l'integrazione di diversi sistemi ecc...
ok ok... tu sei un sistemista che vede la programmazione come un
grosso limite.
Purtroppo i case non funzionano: o meglio funzionano per quello per
cui sono stati progettati (se vuoi una cosa non prevista non è
possibile)
L'ambiente RAD è l'unico mezzo per programmare (e sicuramente ci
saranno in un futuro dei RAD ancora più evoluti (es. VS2005)

Non so se aveta gia' visto questo:
No, grazie per la segnalazione !
WOW !
Ecco, appunto questo intendo con l'abbandonare tastiera, mouse e
concetti che come Massimo ha detto, iniziano ad essere vecchiotti.
Ciao


E' il prologo della biografia di Flavia Vento...
Cioe' una graffetta con le tette ? :-)


saranno in un futuro dei RAD ancora più evoluti (es. VS2005)
Sei ancora legato troppo a concetti stantii.
Qui si sta discutendo di spiccare il volo, non di correre rasoterra.
Nuove idee, nuovi modi di porsi di fronte ad un nuovo concetto di
computer.
Per ora "just for fun", un domani chissa'.
C'ya
	STeve


Cioe' una graffetta con le tette ? :-)
Fuochino: ha il cervello che e' un paperweight... :)


 concetti che come Massimo ha detto, iniziano ad essere vecchiotti.
Sai, in un mondo perfetto io starei lavorando con la scrivania
costituita da un enorme touch-screen; meglio, non avrei manco la
scrivania (tanto, a che serve, visto che la carta non si userebbe
più?), ma lavorerei, come si diceva sopra, con un sistema
multiinterfaccia alla ST. Purtroppo, pero', non vivo in un mondo
perfetto, e in questo mondo imperfetto le tastiere, unite a mouse e
monitor standard costituiscono un sistema interfaccia che, per quanto
vecchio, è economico e reperibile con estrema facilità. Conseguenza:
almeno entro breve non vedo probabile una loro sostituzione, se non per
applicazioni estremamente specializzate.
A proposito, ricordo una mia visita a Parigi nel lontano '98. In una
stazione periferica della metro (non chiedetemi quale, una di quelle
prossime a Bois de Boulogne) ho avuto modo di provare il mio primo
sistema di ricerca: con un tousch screen consentiva, una volta inserita
la destinazione, di avere un grafo che costituiva il percorso per
raggiungere il punto, con tutte le informazioni sui cambi. Il tutto
disponibile in 5 lingue differenti.
-- 
Ciao!
Luca

Sai, in un mondo perfetto io starei lavorando con la scrivania
Luca, con questa attitudine il mondo continuera' ad essere imperfetto
:-)


 saranno in un futuro dei RAD ancora più evoluti (es. VS2005)
Non sono un sistemista e la programmazione non è un limite, è limitata 
dai sistemi attuali che è diverso.
Chi ha studiato linguaggi formali sa bene di quanto si discosti la 
teoria dalla pratica.
Coi RAD già ci si sposta più in alto ma è proprio la struttura che va 
dalla logica del nostro pensiero alla logica degli elaboratori che deve 
evolversi, dall'interfaccia fino all'esecuzione.
Bella questa discussione ;-)

 :-)
Vero. In un mondo perfetto io starei lavorando per il bene della
collettività, la quale a sua volta starebbe lavrando per me.
Oh my, non è che io mi stia trasformando incoscientemente in un Borg?
;-)
-- 
Ciao!
Luca

 per comandi e interazioni semantiche anche complesse.
No, scusate una cosa: non e' che vi state facendo troppo condizionare 
dalla fantascienza?
Perche' per come la vedo io, l'interfaccia vocale per dispositivi meno
complessi di HAL9000 e' maledettamente inefficiente e aggiunge un
enorme livello di complessita'. 
"Computer, apri il file dei rapporti della sede di Pescara del giorno
ventisei agosto duemilasei"
Certo, e' fico a vederlo in Star Trek, ma 1) quanto ci hai messo IN PIU'
rispetto a farlo col mouse ma soprattutto 2) FALLO UN PO' PER OTTO ORE
DI FILA??? Arrivi a fine giornata stremato con la lingua come un cactus!!

 DI FILA??? Arrivi a fine giornata stremato con la lingua come un cactus!!
Non intendevo una cosa del genere. Un sistema di puntamento a touch 
screen per i comandi lo vedo obbligatorio, magari a puntamento multiplo 
come quello postato da qualcuno.
Il riconoscimento vocale può essere usato o per comandi complessi o per 
immissione dati. Comunque la sintesi di semantiche complesse è ad un 
ottimo livello in ricerca, sono l'implementazione e gli investimenti 
industriali che sono indietro.
Comunque ripeto, secondo me i sistemi di puntamento per operazioni 
classiche sui dati sono fondamentali.