sabato 8 aprile 2006

GUI - Guarda Un Imbecille (davanti al pc)!

Non credo che il significato della sigla sia proprio quello del titolo (anzi GUI starebbe per Graphical User Interface), ma poco ci manca.

Che siano state una grande invenzione non lo metto in dubbio, per molte persone oggi sarebbe impossibile lavorare senza di esse, ma quanto questo è un bene?

Questo non vuole essere un articolo contro Windows, ma uno spunto per far capire ai vari Windowsiani uno dei tanti motivi perchè il mondo Unix ci piace così tanto.

Tante volte i vari Windowsiani accusano noi Unixiani di voler utilizzare le cli (leggasi Command Line Interface - ovvero le shell) per farci grandi verso gli altri, facendo vedere quanto siamo bravi a utilizzare tutti quei comandi che potrebbero essere benissimo impartiti con il mouse facendo click su un pulsante, ma ciò che questi utenti non capiscono è che noi lo facciamo per comodità.

Comodità? Si!

Le shell sono comode, performanti e altamente configurabili. Il fatto è che l'utente professionista medio/alto di windows si immagina la shell come una specie di prompt dei comandi di DOS... il problema è far capire a questi user che non è così!

Primo vantaggio di una shell: sono comode

Problema: devo visualizzare il contenuto di una cartella.

GUI:

1) Apro Konqueror/Nautilus/Windows Explorer (e aspetto in media 2 secondi per il caricamento)
2) Clicco sull'icona del disco/directory radice
3) Apro tutte le sottocartelle fino alla catella desiderata
4) Guardo il contenuto della cartella
CLI (tipo bash):

1) digito "ls /percorso/cartella"

fine... e posso utilizzare pure combinazioni di caratteri jolly e caratteri alfanumerici per fare delle "query" al filesystem

senza contare che con l'autocompletamento dei parametri e comandi, solitamente si digita il 10-20% dei caratteri necessari per impartire il comando

Secondo vantaggio: sono veloci (e stabili)

Problema: copiare un direttorio o un file

GUI:

1) Apro la mia interfaccia (attendo il caricamento)
2) Eseguo le operazioni riportate precedentemente per la visualizzazione della directory che voglio copiare/spostare
3) Apro la mia seconda interfaccia e attendo il caricamento
4) Eseguo le operazioni riportate precedentemente per la visualizzazione della directory di destinazione
5) (a volte) posiziono le due finestre in modo tale che non si sovrappongono
6) cerco la cartella/file da copiare e la trascino nella directory di destinazione.

CLI (tipo bash):

1) per sposotare un cartella: "mv /percorso/directory_da_copiare /dir_destinazione" oppure per copiare sostituisco "mv" con "cp"
Fine...

Terzo vantaggio: applicazioni più semplici da usare

Problema: cambiare indirizzo ip alla mia scheda di rete

GUI (esempio con Windows, vado a memoria):

1) Clicco su start
2) Apro il pannello di controllo
3) Apro le Impostazioni di rete
4) Apro le impostazioni relativi alla scheda di rete interessata
5) Clicco sul vecchio ip, (sposto la mano da mouse alla tastiera) digito il nuovo IP
6) Clicco su OK
7) Riclicco su Ok
8) Chiudo le finestre

CLI:

1) Digito "ifconfig scheda ipnuovo" (per esempio sulla mia macchina Linux: "ifconfig eth0 192.168.1.10")

Finito... Non è più semplice?

Si tratta solo di imparare qualche comando e tutto ciò permette di lavorare senza aspettare eventuali tempi morti dell'interfaccia grafica (o sistema operativo, dato che la più grande scemata di tutti i tempi è stata includere in kernel space di windows la gui di quel sistema... Credo che quando Tanenbaum abbia saputo la notizia abbia fatto pace con Tordvalds :-) (chi conosce la storia di Linux capirà...) ) evitando pure i vari errori dovuti all'utente che trascina le icone dove non deve o dove non si aspettava.

Il solo problema è che per familiarizzare con le CLI ci vuole solo un pò più di tempo che con le GUI, ma credetemi, ne vale la pena...

Attendo molte critiche...

Ciao Piero

5 commenti:

  1. L'uomo con la fascia10 aprile 2006 11:57

    Caro Piero, questa volta mi trovo in disaccordo. Come dici tu la shell di unix e performante, altamente configurabile, veloce e stabile ma decisamente non comoda! La maggior parte degli utilizzatori dei pc non ha alcun interesse a cambiare l'ip della scheda di rete o imparare combinazioni di caratteri jolly e caratteri alfanumerici per fare delle “query” al filesystem. Lui vuole accendere il pc e fare tutto ciò che vuole senza dover sapere cosa sia la scheda di rete, o come vada configurata la scheda video o quella audio.
    L'utente deve accendere il pc -> e poter fare ciò che vuole utilizzando il minor numero di conoscenze; questo è quello che si propongono di fare le GUI. Questo è il futuro.
    p.s. Ho visto ora la nuova veste del tuo blog: molto bella!

    RispondiElimina
  2. E' vero, l'utente medio/basso non avrà mai bisogno di questi comandi, infatti mi riferivo all'utente medio/alto di Windows (generalmente un sistemista) che deve svolgere diversi lavori di manutenzione su server o workstation.

    Ora non per fare il rompiscatole/rinfacciafatti, ti ricordi il progetto di economia? Abbiamo copiatol'intera cartella del progetto da qualche parte con un'interfaccia grafica... peccato che al riavvio del pc non ne abbiamo più trovato traccia... con la cli perlomeno avremmo avuto un riscontro in caso di errore di scrittura... (questo è un caso, anche se siamo stati estremamente sfortunati...)

    Quante volte in win hai cercato in una cartella dei file (pensiamo ai video) e l'unica cosa che hai potuto fare è stata "ordina per tipo"? io credo che un utente che abbia un minimo di cognizioni informatiche abbia la necessità di imparare il funzionamento di una shell.

    Un altro scenario (per altro molto frequente nell'ambito dell'amministrazione) è la configurazione da remoto di un server.
    E' possibile sia farlo tramite GUI (utilizzando tipo Windows Terminal Server) oppure tramite Shell.
    Capisci che inviare un flusso dati che rappresenta una GUI è assai meno performante che inviare un flusso dati di I/O di testo.

    Comunque mi trovo d'accordo con te nel campo end-user (ovver la classica segretaria che ha bisogno di scrivere un testo e stamparlo), ma non nel campo professional.

    Risposta al ps: Grazie!

    RispondiElimina
  3. L'uomo con la fascia11 aprile 2006 11:48

    Sì, allora sono d'accordo. Mi ero distratto nella lettura e mi sono perso il dettaglio che parlavi all’utente medio/alto!
    Chiedo umilmente perdono! ;-)

    RispondiElimina
  4. Perdono concesso... ma sarai frustato con fruste chiodate... :-)

    RispondiElimina
  5. L'uomo con la fascia11 aprile 2006 22:02

    Non speravo di meglio! Grazie

    RispondiElimina