[Gfoss] Che male abbiamo fatto? (scherzando ma non troppo)

http://elegantdesigns.ca/blog/2008/04/22/gdal-ogr-gui-go-gui/

Un'altra fottuta GUI... Se ne sentiva proprio il bisogno.

Invece di una schifezza con Wxcoso, una schifezza Javica, se contiamo
pure le Qtrash, abbiamo fatto en plein. E meno male che gli e'
stato detto a chiare lettere che il Java binding FA SCHIFO.

Polemico?

Per farmi del male la scorsa settimana ho dato una scorsa a questi
formidabili prodotti, uno dei quali compilato sacrosantemente e
bestemmiando un paio di volte anche:

uDig
gvSIG
SagaGIS

Sull'ultimo stendo pietoso velo, bellino a vedersi ma dopo non essere
riuscito a importare 4 shp in croce o una banda geotiff Quickbird
ho deciso che non c'era da perderci molto tempo. Il bug reporting
e' da paura, tanto per non scontentare nessuno...

uDig e' subito funzionante, ma la lentezza e' qualcosa di esasperante.
Sto ancora aspettando che mi visualizzi una banda Quickbird, e si'
che e' passata una settimana... Gesu' mica gli ho chiesto di importarmi
tutta la zona 32 eh? Sara' mica che Eclipse non e' roba da usare
per queste cose?

Va beh la prox settimana mi dedichero' pazientemente all'impresa
sia con uDig che con gvSIG. Dei 3 forse quest'ultimo e' il piu'
promettente a parte che bisogna sposare la filosofia d'uso che
non mi pare proprio immediata (io che c'ho ste brutte idee grassiane
one-step-per-time...), ma transit...

Per quanto riguarda Qgis - %!^%@^!@!#! No so quale sia l'esperienza
di pcav ma su sid i686 up-to-date il grass toolbox e' inusabile il
che riduce per me l'utilita' di Qgis quasi a zero per quanto mi
riguarda (0.9.2 e 0.10.0).

Aridatece la command line, S.Grass salvaci tu! Perche' tutti questi
inutili sforzi su inutili prodotti elegantemente inusabili e incompleti?
Perche' non tirare su un solo team su un solo prodotto decentemente
usabile? Ho provato - ahime' - un prodottino TatukGIS che e' free as
beer e fa il suo lavorino di browser senza tentennamenti e senza
sforzi.

Quindi per dirla alla Mel Brooks

!!! SI ... PUO' ... FAREEEEEEEEE !!!

CAZZO!

Scherzi a parte, nessuno vuole sputare un po' di veleno su questi
andazzi incomprensibili del mondo Workstation Foss4gis? Su che fa bene!

--
Francesco P. Lovergine

2008/5/3 Francesco P. Lovergine <frankie@debian.org>:
...

Per quanto riguarda Qgis - %!^%@^!@!#! No so quale sia l'esperienza
di pcav ma su sid i686 up-to-date il grass toolbox e' inusabile il
che riduce per me l'utilita' di Qgis quasi a zero per quanto mi
riguarda (0.9.2 e 0.10.0).

Dico solo
http://trac.osgeo.org/qgis/ticket/459
"Collapse GRASS tool list"
- Opened 1 year ago, Last modified 3 days ago

.... quanto difficile è...? Sigh!

Aridatece la command line, S.Grass salvaci tu! Perche' tutti questi
inutili sforzi su inutili prodotti elegantemente inusabili e incompleti?
Perche' non tirare su un solo team su un solo prodotto decentemente
usabile? Ho provato - ahime' - un prodottino TatukGIS che e' free as
beer e fa il suo lavorino di browser senza tentennamenti e senza
sforzi.

Che fortuna che siamo nel gruppo giusto :slight_smile:
Ahoi GRASS, nel 25° anno!

markus

On Sat, May 03, 2008 at 09:19:18PM +0200, Markus Neteler wrote:

2008/5/3 Francesco P. Lovergine <frankie@debian.org>:
...
> Per quanto riguarda Qgis - %!^%@^!@!#! No so quale sia l'esperienza
> di pcav ma su sid i686 up-to-date il grass toolbox e' inusabile il
> che riduce per me l'utilita' di Qgis quasi a zero per quanto mi
> riguarda (0.9.2 e 0.10.0).

Dico solo
http://trac.osgeo.org/qgis/ticket/459
"Collapse GRASS tool list"
- Opened 1 year ago, Last modified 3 days ago

.... quanto difficile è...? Sigh!

A parte l'approccio di uso, il vero problema e' che mi riesce facilmente
di mandarlo in segfault, ci vuole proprio uno sforzo minimale. Il che
mi fa pensare che il plugin grass sia ormai completamente 'scollato'
rispetto allo stato della API.

IMHO per quanto riguarda Grass non ha senso dare accesso da menu'
a tutti i moduli, andrebbero piuttosto definiti dei processing
globali di uso generale (che lavorano una sequenza di moduli e
traggono un risultato netto) e magari un approccio di data-flow
programming visuale, il che avrebbe il grosso vantaggio di
rendere facilmente usabili tutti i moduli con un approccio
creativo e visuale (per la felicita' dei GUI-dependent).
Non so se qualcuno ha presente l'approccio di Simulink
oppure di PureData o di SNNS (per restare nel FOSS): un network di box
parametriche collegate tra loro in cui gli output di una box vengono
usati come input di un'altra. Ognuno scrive una applicazione come
un grosso network di filtri, parametrizzando tutto cio' che serve, e
dando il run. I box servono per l'input, processing e visualizzazione
di tutto.

http://wiki.networkdictionary.com/index.php/Graphical_programming_language

Questo e' il mio sogno di GUI per certe cose e consentirebbe di evitare la
scrittura di script e mantenere l'uso dei moduli Grass as is. Parliamoci
chiaro: ogni volta che c'e' da implementare qualcosa con d.m, gis.m e
compagnia (non mi pare sia diversa la cosa nella interfaccia wx)
adesso bisogna perdersi alla ricerca della entry giusta nel menu giusto...
Cui prodest?

--
Francesco P. Lovergine

Scrive "Francesco P. Lovergine" <frankie@debian.org>:

On Sat, May 03, 2008 at 09:19:18PM +0200, Markus Neteler wrote:
> 2008/5/3 Francesco P. Lovergine <frankie@debian.org>:
> ...
> > Per quanto riguarda Qgis - %!^%@^!@!#! No so quale sia l'esperienza
> > di pcav ma su sid i686 up-to-date il grass toolbox e' inusabile il
> > che riduce per me l'utilita' di Qgis quasi a zero per quanto mi
> > riguarda (0.9.2 e 0.10.0).
>
> Dico solo
> http://trac.osgeo.org/qgis/ticket/459
> "Collapse GRASS tool list"
> - Opened 1 year ago, Last modified 3 days ago
>
> .... quanto difficile è...? Sigh!
>

A parte l'approccio di uso, il vero problema e' che mi riesce facilmente
di mandarlo in segfault, ci vuole proprio uno sforzo minimale. Il che
mi fa pensare che il plugin grass sia ormai completamente 'scollato'
rispetto allo stato della API.

Per dirne una: il plugin GRASS è l'unico plugin ad usare ancora Qt3:
http://lists.osgeo.org/pipermail/qgis-developer/2008-April/003690.html

Steko

--
Stefano Costa
http://www.iosa.it * Software Libero per l'Archeologia
Jabber: steko@jabber.linux.it

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

Rispetto i pareri di Francesco, ma non credo sia possibile pensare di allargare l’utenza di GRASS (e di un GIS in generale) prescindendo dallo sviluppo di GUI amichevoli, visto che molti (forse la maggior parte) degli operatori GIS non sono esperti geoinformatici, ma eseguono operazioni quotidiane di gestione e visualizzazione dei dati non altamente specialistiche…
Concordo tuttavia che si dovrebbe focalizzare lo sforzo nella produzione di poche GUI ma buone, ma questo fa parte dell’OS no? Ognuno è libero di inventare e proporre soluzioni…
Ritengo che QGIS e GRASS potrebbero realizzare una sinergia maggiore, ma come più volte ribadito i due progetti rimangono e rimanarranno ben distinti, ognuno con le sue priorità e la sua roadmap. E questo secondo me non è una grande scelta.

Per quanto riguarda la costruzione di workflow grafici, tipo il Model Builder di gvSIG o, in ambito commerciale, di ERDAS o ArcGIS, stanno avendo un grandissimo successo tra gli operatori (lo vedo anche all’istituto dove sono stato finora), e più volte ho immaginato e ipotizzato qualcosa del genere anche per GRASS… Questo sarebbe un bel passo in avanti per GRASS! Credo che richiamerebbe una bella fetta di utenza, specie di media competenza, che ha bisogno più di una toolbox di gestione ma che non vuole addentrarsi troppo tra le righe di comando…
Potremmo partire dal lavoro fatto con Python?

Bho… intanto buona domenica!

Giovanni

Uso GRASS occasionalmente, e non sono un esperto nè di grass
nè di gis, però quando mi è servito ho imparato molto
velocemente quello di cui avevo bisogno.

Personalmente mi trovo molto meglio con la riga di
comando, mentre trovo spesso qualche difficoltà nel
ricercare una funzione addentrandomi nei meandri del sistema
di menù e sottomenù. Il richiamo veloce all'aiuto in linea
<comando> --help oppure man <comando> è di una comodità
unica.

Penso che l'uso o meno della riga di
comando sia più che altro una questione di abitudine; gli
utenti GNU/Linux sono abituati all'uso della riga di comando,
mentre gli utenti windows e mac sono abituati ai menù
grafici e alle icone; di questa abitudine grafica è in
parte responsabile anche la scuola e in genere tutto il
sistema di formazione informatica di base.

Per agevolare la ricerca dei comandi corrispondenti alla
funzione voluta si potrebbero raggruppare ulteriormente le
pagine di manuale dei comandi, magari seguendo lo schema
gerarchico dei menù.

Ciao,
  Marco

Stefano Costa ha scritto:

Per dirne una: il plugin GRASS è l'unico plugin ad usare ancora Qt3:
http://lists.osgeo.org/pipermail/qgis-developer/2008-April/003690.html

Giusto per chiarire: il plugin e' un'invenzione di Radim Blazek, che ha
poi interrotto i suoi contributi a GRASS e QGIS (una perdita cruciale,
secondo me).
Questo spiega la mancata evoluzione.
Saluti.
pc
--
Paolo Cavallini, see: * http://www.faunalia.it/pc *

Buongiorno a tutti,

sono molto contento che qualcuno abbia sollevato questo argomento: provo a dire la mia (scusate per la prolissità, ma ci sono molte cose da dire… leggete con calma, se volete e ne avete il tempo):

  1. personalmente credo che una GUI amichevole e ben fatta sia un aspetto chiave per la buona riuscita di un qualsiasi software. Lo scoglio culturale con cui mi sono maggiormante dovuto scontrare nell’ambiente degli sviluppatori è la considerazione che le GUI siano solo strumenti per utenti inetti ed incapaci: IMHO tutto ciò è pura follia. Non continuerò oltre spiegando i motivi per i quali credo che una GUI ben fatta sia assolutamente uno strumento necessario, e non solo per i neofiti, piuttosto preferirei fare alcune considerazioni basate sulla mia esperienza nel mondo GIS. Sono entrato in contatto con il mondo GIS solo da pochissimo tempo, e, tra le altre cose, solo per vie traverse (non faccio parte, infatti, di quelle classiche figure professionali che, tipicamente, costituiscono il bacino d’utenza dei software GIS). Posso dire di avere solo una conoscenza di base per quanto riguarda il mondo della programmazione, ed una discreta conoscenza (direi a 360°) del lato utente, in quanto utilizzo correntemente molti strumenti di tipo diverso (data la mia configurazione di Ingegnere AllRound) e su diversi sistemi operativi (MS, Linux e Mac). In qualità di utente low level, posso descriversi quali sono attualmente le mie scelte operative: utilizzo principalmente QGIS, in quanto più intuitivo, più rapido, sia perchè mappa e strumenti sono in un’unica finestra, sia perchè la gestione delle proprietà dei layer è estremamente completa, compatta ed intuitiva. Detto questo, devo anche aggiungere che, per quanto mi riguarda, lo strumento QGIS sarebbe assolutamente inutile se non disponesse del plugin di GRASS, a meno che non si intenda utilizzare sepraratamente GRASS per l’elaborazione dei dati e QGIS per la sola creazione delle mappe. Capita spesso che utilizzi i comandi di GRASS direttamente da shell (da GRASS toolbox), ma questo dipende solo da alcune limitazioni della GRASS toolbox di QGIS, piuttosto che dall’effettiva maggiore comodità di un comando in linea piuttosto che il relativo in GUI. Ritengo, comunque, che l’utilizzo di due software diversi per l’elaborazione e manipolazione dei dati da un lato, e la rappresentazione degli stessi dall’altro, sia disagevole e rappresenti una fastidiosa perdita di tempo (nonchè possibile fonte di confusione ed errori nel trattamento dei dati e dei flussi di lavoro).

  2. in base a quanto detto sopra, si possono fare due semplici considerazioni:

2.1. GRASS

è ottimo per l’elaborazione dei dati, ma presenta gravi lacune dal punto di vista della GUI, non in quanto bellezza dell’interfaccia, chiaramente (era ovvio, ma è sempre meglio essere chiari), ma in quanto intuitività e facilità di gestione dei processi di lavoro; in particolare risulta molto complicato generare delle mappe accattivanti per l’utente finale.

2.2. QGIS

è estremamente facile ed intuitivo (anche se un po’ confusionario sotto certi aspetti) e permette di creare mappe complete e belle con pochi semplici passi. Tuttavia, se non disponesse del plugin di GRASS (e di altri python plugins), sarebbe disarmante la sua carenza dal alto elaborazione… cosa peraltro gravissima! se i dati non li elaboro, che me ne faccio di un bel strumento che me li mostra solamente?

  1. Per quanto mi riguarda la GRASS toolbox è un punto chiave di QGIS: permette di ottenere, all-in-one, la potenza di elaborazione dei dati di GRASS con la facilità d’uso e la capacità di rendering grafico di QGIS. Tuttavia c’è moltissimo lavoro da fare ancora su tale strumento, al di là della sua necessaria migrazione da QT3 a QT4, che è un aspetto meramente tecnico e non progettuale:

3.1. LIMITI DELLA GRASS TOOLBOX:

una delle cose che preferisco della GUI di GRASS è che posso lanciare direttamente un modulo senza doverlo cercare fra le molteplici opzioni dei menu a tendina: digito il nome del modulo nella finestra di output e premo semplicemente il pulsante Run GUI… fantastico! approccio ricalcato dalla GRASS toolbox… con la differenza che questa presenta tutti i comandi in unica schermata, a volte ripetuti (per esempio più comandi g.region, in funzione della finalità del comando e delle opzioni necessarie, cosa che non gradisco assolutamente) e disposti in maniera alquanto poco leggibile e poco pratica. Un ulteriore grosso limite della GRASS toolbox è la non completezza dei comandi (nella GUI): in primis l’impossibilità della gestione di file multipli in input (cosa che in pratica rende impossibile l’utilizzo di comandi fondamentali quali r.patch e v.patch), infine la non completezza delle opzioni previste per ogni singolo comando; sarebbe fantastico poter disporre di una GUI per ogni comando che ricalchi esattamente quella disponibile in GRASS.

3.2. COME VORREI LA GRASS TOOLBOX:

il mio desiderio? disporre di una struttura di comando a tendina che ricopi quella attuale di GRASS e la possibilità di lanciare comandi singoli proprio come in GRASS; il che permetterebbe, inoltre, di facilitare la manutenibilità e la compatibilità della GRASS toolbox con l’evoluzione di GRASS stesso.

3.3. COSA MANTENERE DELLA GRASS TOOLBOX:

cosa mantenere dell’attuale GRASS toolbox? sicuramente la comodità di aprire le GUI dei comandi in finestre tab, comprese la finestra relativa al manuale e all’output (in GRASS, per esempio, tutte le volte che apro il manuale di un comando mi apre una nuova finestra di explorer… troppo confusionario!). Ritengo estremamente comoda e ben fatta, inoltre, la tab browser, che mi permette di visualizzare a colpo d’occhio i raster e vettoriali contenuti nella location, con relative info e la possibilità di eliminare i raster (o i vettoriali) dalla location o di rinominarli. Infine, assolutamente da mantenere è la possibilità di eseguire i comandi GRASS da shell, imprescindibile per un power user.

3.4. SVILUPPO DELLA GRASS TOOLBOX

personalmente sarei molto felice di poter partecipare in prima persona allo sviluppo di una nuova GRASS toolbox, ma purtroppo al momento non posso per gravi mancanze di tempo. Tuttavia, su questo tema, vorrei fare un’osservazione: ho cercato in rete e chiesto al team di sviluppatori alcune informazioni relativamente alla documentazione di progetto, ritenendo l’attuale lavoro un ottimo (direi addirittura essenziale) punto di partenza per un futuro sviluppo dello strumento, ma purtroppo ho scoperto che nessuno ne sa nulla e, per di più, sembra non esistere alcuna documentazione a riguado… cosa, questa, molto, molto grave!

  1. Alcune considerazioni sulla GRASS GUI

cosa detesto, invece, della GRASS GUI? sostanzialmente che ogni comando (Run GUI) mi apre un’ulteriore finestra, oltre alle 3 già aperte di base, e che se non mi ricordo di chiuderla mi può capitare, dopo pochi minuti, di averne aperte altre 6 o 7, di cui alcune relative allo stesso comando (se non mi sono ricordato di chiuderle)…
Se uno dovesse utilizzare solo o pricipalmente GRASS per il proprio lavoro potrebbe essere un aspetto trascurabile… per quanto mi riguarda, invece, non lo è proprio: se a tutte le finestre di GRASS aggiungiamo: mail client, browser web, file browser (nel caso windows spesso multipli), editor di testo, fogli di calcolo, chat e/o voip, CAD, strumenti software specifici (dalla gestione db alla gestione file in remoto)… insomma, di norma lavoro con almeno 10 applicazioni/finestre aperte, per ogni finestra un’applicazione… se aggiungo 5 o 6 finestre attive solo per GRASS comincio veramente a sclerare!!!

infine alcune considerazioni sulla nuova wxPython GUI: è decisamente migliore della GUI in tcl/tk, anche se prevede ancora due finestre separate per la gestione delle mappe e per i controlli/comandi. In generale sono state effettuate molte modifiche verso una migliore usabilità, anche se molte questioni rimangono ancora aperte… l’unica cosa veramente grave che ho notato è la generale estenuante lentezza dell’interfaccia: spesso mi impalla windows per qualche secondo anche solo per inserire un nuovo raster.

  1. Considerazioni conclusive:

Scusatemi, mi rendo conto di aver scritto troppo, ma almeno ho espresso definitivamente ed apertamente molte delle considerazioni che in questi ultimi mesi ho continuato a sottoporre ad elementi singoli di questa ed altre liste di discussione. Spero sinceramente (vista anche la partecipazione al thread sia di Paolo che di Markus) che questo possa essere uno spunto di riflessione costruttivo per una svolta (relativamente all’argomento GUI) di strumenti quali QGIS e/o GRASS. Siamo ad un punto in cui il mercato comincia a proporre molte opportunità, un punto in cui è assolutamente necessario proporsi con forza e decisione: gli utenti comiciano ad abituarsi al discorso software GIS, abbandonando molte vecchie ed inadatte soluzioni informatiche, ma richiedendo al contempo uno strumento completo, intuitivo e con ulevato tasso di interoperabilità; gli strumenti GIS opensource cominciano a nascere come funghi, ma non tutti dispongono dei numeri necessari, soprattutto dell’esperieza maturata in anni da un fornito ed altamente referenziato gruppo di sviluppatori e ricercatori… ma (come spesso capita in qualsiasi ambito professionale) con una forte capacità di comunicazione ed una notevole (anche se spesso ingannevole) appetibilità nei confronti dell’utente finale (leggi GUI ed usabilità da parte di utenti base) rischiano di prendere il sopravvento anche nei confronti di strumenti più avanzati e completi che, sulla carta, sono maggiormente competitivi.
Lo ripeto ancora, rischiando di essere noioso e ripetitivo: il software GIS sta definitivamente approcciando il punto di svolta: da software per ricercatori smaliziati e very skilled, a strumento diffuso e con un bacino d’utenza molto ampio, sia dal punto di vista della tipologia professionale e d’uso, che dal punto di vista delle capacità informatiche dell’utente che andrà ad utilizzarlo…

… e non aggiungo altro (per fortuna! direte voi…).

Distinti saluti a tutti,

Marco Pasetti

On Sun, May 4, 2008 at 11:26 AM, Francesco P. Lovergine
<frankie@debian.org> wrote:
...

Questo e' il mio sogno di GUI per certe cose e consentirebbe di evitare la
scrittura di script e mantenere l'uso dei moduli Grass as is. Parliamoci
chiaro: ogni volta che c'e' da implementare qualcosa con d.m, gis.m e
compagnia (non mi pare sia diversa la cosa nella interfaccia wx)
adesso bisogna perdersi alla ricerca della entry giusta nel menu giusto...

Esatto.
Poi: avevo implementato "keyword" supporto per ogni comando circa
1-2 anni fa. Ma NON viene usato. Sarebbe molto carino avere una
ricerca stile albero basato su tale keywords:

- raster - import - ASCII
            | - binary
            - export - ...
            |
            - filter - ...
- vector - import - ASCII
            | - binary
            - export - ...
            |
            - network - shortest path
                           - traveling salesman

etc. Sia in GRASS (wxPython?) che in QGIS (QGIS).
Oppure nel online help manual...

Difficile?

Markus

A me non dispiace il sistema a tre finestre di GRASS più il
terminale, a parte la finestra dell'output che è un po'
fastidiosa; ho anche cercato tra i file di configurazione un modo
per impostare la geometria delle finestre all'avvio ma non ci sono
riuscito.

Per quanto riguarda la vestizione delle mappe e altre cose che
sarebbero gestibili meglio con Qgis, non trovo tutta questa
scomodità a utilizzare programmi diversi. Una delle cose più
importanti in un software è la possibilità di scambiare i dati
con altri software, e in questo grass è imbattibile.

Saluti,
  Marco

On Tue, May 6, 2008 at 9:19 PM, Marco Curreli <marcocurreli@tiscali.it> wrote:

A me non dispiace il sistema a tre finestre di GRASS più il
terminale, a parte la finestra dell'output che è un po'
fastidiosa; ho anche cercato tra i file di configurazione un modo
per impostare la geometria delle finestre all'avvio ma non ci sono
riuscito.

Da poco è possibile:
http://trac.osgeo.org/grass/ticket/130
wxgrass: Remember the position of gui windows on Grass exit
closed enhancement: fixed

Per quanto riguarda la vestizione delle mappe e altre cose che
sarebbero gestibili meglio con Qgis, non trovo tutta questa
scomodità a utilizzare programmi diversi. Una delle cose più
importanti in un software è la possibilità di scambiare i dati
con altri software, e in questo grass è imbattibile.

Perfetto!

Markus

marco.pasetti@alice.it ha scritto:

Buongiorno a tutti,

sono molto contento che qualcuno abbia sollevato questo argomento: provo
a dire la mia (scusate per la prolissità, ma ci sono molte cose da
dire... leggete con calma, se volete e ne avete il tempo):

...

... e non aggiungo altro (per fortuna! direte voi....).

Premesso che:
- il monopolio e' male
- la diversita' e' bene
- le risorse di sviluppo sono limitate
- gli sviluppatori, in quanto volontari, hanno le proprie inclinazioni,
preferenze e competenze
il che spiega largamente la situazione attuale, credo sia giusto che gli
utenti esprimano le proprie preferenze ed indicazioni, che possono
essere utili per i coordinatori dello sviluppo.
L'area critica nel GFOSS e' il desktop, dove c'e' anche una
notevolissima duplicazione di sforzi. Io vedo grass come il miglior
motore per le analisi, e qgis come la sua migliore interfaccia. Secondo
me gli sforzi in questa direzione saranno i piu' produttivi, e invito
chi *puo'* a muoversi in questa direzione.
Saluti.
pc
--
Paolo Cavallini, see: * http://www.faunalia.it/pc *