<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type></HEAD>
<BODY>
<DIV>
<DIV style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif">Devo dire che già dalla email iniziale immaginavo che il tutto sarebbe andato a finire male, e onestamente ho combattuto parecchio contro me stesso per non intervenire rispondendo alle varie mail perlomeno sottolineando la leggerezza e superficialità di tanti commenti.<BR>Però una cosa la voglio dire:<BR>"<BR>Si in effetti siamo d'accordo, non è che gli ingegneri informatici<BR>servano a molto per la programmazione informatica<BR>"<BR>Ovviamente la frase è sarcastica, ma l'atteggiamento di tanti non mi stupisce, ahimè. Di fatto, oramai sappiamo più cose dei laureati in chimica, perché abbiamo letto su internet che per fare la fusione fredda basta la coca cola e le mentos ma le multinazionali non ce lo dicono, o dei medici, perché l'aids si cura con il balsamo come è scritto su Wikipedia ma l'onu l'ha creato per tenere sotto controllo le nascite. Sarà colpa dei templari informatici se spatialite non è thread-safe, sicuro sicuro.<BR><BR>Per il resto, ed in generale (e vale soprattutto per me che me lo scordo troppo spesso) occhio a giungere a conclusioni affrettate, soprattutto se e quando le conclusioni sembrano ovvie:  significa che molti probabilmente vi sta sfuggendo più di una cosa.  <BR><BR>P.S: maledetti thread, comunque!</DIV></DIV>
<DIV dir=ltr>
<HR>
<SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">Da: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif"><A href="mailto:simone.giannecchini@geo-solutions.it">Simone Giannecchini</A></SPAN><BR><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">Inviato: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif">‎23/‎03/‎2014 18.28</SPAN><BR><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">A: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif"><A href="mailto:aperi2007@gmail.com">Andrea Peri</A></SPAN><BR><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">Cc: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif"><A href="mailto:gfoss@lists.gfoss.it">gfoss@lists.gfoss.it</A></SPAN><BR><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">Oggetto: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif">Re: [Gfoss] Rilascio MapStore 1.5.1 con versione Mobile per Android</SPAN><BR><BR></DIV>Salve Andrea,<BR>trovi le mie risposte inline sotto.<BR><BR>> Interessante questo mapstore 1.5.1<BR>><BR>> Veod che gestisce pure un db spatialite.<BR>><BR>> Come RT abbiamo finanziato anche uno studio per vedere se si riusciva a far<BR>> funzionare spatialite con l'ambiente java.<BR>> Ma la ditta a cui per vie traverse era stato dato l'incarico, una ditta<BR>> esperta su geotools, non ci risulta che alla fine avesse concluso alcunche'<BR>> di significativo.<BR>><BR><BR>Onestamente, essendo GeoSolutions un' azienda con sede legale e<BR>operativa in Toscana che da lavoro a 15 persone di cui almeno 10<BR>residenti in Toscana facendo il 70% del fatturato all'estero e pagando<BR>circa 14k di IRAP l'anno, ci dispiace (a me e al management di<BR>GeoSolutions) dover constatare questo ormai ovvio risentimento nei<BR>confronti di GeoSolutions da parte della nostra regione con cui<BR>peraltro non abbiamo MAI lavorato direttamente.<BR><BR>In qualità di rappresentante di GeoSolutions mi sento in dovere di<BR>rispondere ancora una volta puntualizzando alcuni aspetti non solo dal<BR>punto di vista tecnico e se questo comporterà di non lavorare piu' con<BR>enti vicini o legati a RT lo prenderò come uno stimolo in piu' per<BR>decidermi finalmente a spostare l'azienda all'estero. Fatto questo,<BR>GeoSolutions e tutti i  suoi collaboratori dovranno necessariamente<BR>smettere di intervenire su questa lista per evitare che l'immagine<BR>aziendale venga deliberatamente danneggiata senza apparenti motivi e,<BR>a mio parere, spesso con critiche fuori luogo e scarsamente<BR>documentate tecnicamente.<BR><BR>Aggiungo anche che vedendo come altre regioni e province italiane ma<BR>anche altri paesi (tutti) proteggano le loro aziende (spesso dobbiamo<BR>fare forzatamente da subcontractor per lavorare all'estero pagando<BR>pesante dazio) questa situazione è quantomeno assurda.<BR><BR><BR>Andando sul lato tecnico, innanzitutto, il supporto a spatialite di<BR>cui si parla si limita alla versione Android che non ha niente a che<BR>fare con il java standard come sicuramente saprai in quanto il codice<BR>non è (quasi) mai portabile tra una JVM standard e Dalvik.<BR><BR>Oltretutto si basa su una versione non aggiornata di spatialite e NON<BR>usa driver JDBC ma istanzia la libreria e parla con essa direttamente<BR>via JNI, ergo mi sfugge il parallelo e sarei portato a pensare che sia<BR>solo un modo, come spesso è accaduto anche in passato, per criticare<BR>trasversalmente visto che la azienda che citi siamo noi.<BR><BR>Visto che ci hai citato spiego l'antefatto. Spatialite si puo' usare<BR>abb tranquillamente in applicativi desktop basati su Java, ma su<BR>applicativi lato server come GeoServer, perlomeno al  momento in cui<BR>abbiamo fatto il famoso studio di ben 9 ore (o giu' di li non ricordo<BR>nel dubbio posso anche condividerei timesheet giornalieri e le<BR>relative fatture) aveva grossi (enormi?) problemi di gestione di<BR>thread multipli e di scalabilità (questo a livello dei driver JDBC).<BR><BR>Noi, nella persona di Andrea Aime non l'ultimo arrivato, abbiamo<BR>evidenziato con test di scalabilità (che possiamo fornire a tutti) che<BR>questi problemi esistevano ed abbiamo testato tutti i diver JDBC<BR>esistenti. Abbiamo quindi chiesto di coinvolgere Furieri per validare<BR>i nostri risultati visto che chi meglio di lui poteva commentare e non<BR>mi risulta che qualcuno abbia detto che ci siamo sbagliati.<BR><BR>Senza voler criticare Furieri, mi ricordo una sua email girata anche<BR>in questa lista dove evidenziava (su suggerimento di Even Roualt btw)<BR>che spatialite inizializzava male GEOS (in modo non thread-safe) e<BR>questo poteva portare a dei crash, cosa non accettabile in una<BR>applicazione Java e che sicuramente era una delle sorgenti dei crash<BR>che vedevamo.<BR><BR>In 9 ore di studio spero che sia ovvio per tutti che non si sarebbero<BR>potuti risolvere tutti i problemi del supporto java verso spatialite e<BR>noi abbiamo correttamente suggerito i tempi ed i modi per intervenire<BR>nel caso ci fosse stato richiesto (dopo allego scambio email).<BR><BR><BR><BR>> Tante' che l'unico reale aiuto viene fornito dall'intervento dalle<BR>> istruzioni di Furieri.<BR>> Alla fien dei slmi, esperti, ingegneri, informatici, tante chiacchere,<BR><BR><BR>Si in effetti siamo d'accordo, non è che gli ingegneri informatici<BR>servano a molto per la programmazione informatica. Credo che saranno<BR>d'accordo su questa osservazione anche tutti gli altri ingegneri<BR>informatici che leggono la lista. Però in qualità di ingegneri<BR>informatici laureati in meno di 6 anni con lode almeno la<BR>documentazione la archiviamo bene, per cui per chi fosse interessato<BR>alcuni degli scambi, perlomeno la nostra parte è reperibile qui:<BR><BR>https://docs.google.com/document/d/1YzTeCyo6q1Lj5Kj3C3dsSOzBXs_2hne-f1wyBcqgWrQ/edit?usp=sharing<BR><BR>Diro' di piu', se qualcuno vuole posso anche passare le classi di test<BR>che abbiamo scritto.<BR><BR><BR>Dall'interazione con Furieri abbiamo poi appreso che in effetti l'uso<BR>di Spatialite da Java in applicazione thread safe non è cosa<BR>immediata, soprattutto con i binari già disponibili nei pacchetti<BR>binari a disposizione nelle distribuzioni (la ricompilazione dai<BR>sorgenti è spesso un tabù, una libreria che la imponga diventa in<BR>questi casi inutilizzabile), cito un pezzo di mail dello stesso ( di<BR>nuovo non me ne verrà, visto che sa che lo stimo):<BR><BR>"se mi passate la facile battuta, non parrebbe che quella di fare<BR>sviluppo thread safe sia stata una priorita' elevata per tutti quanti<BR>i principali team che curano le librerie di base C/C++ perlomeno non<BR>prima degli ultimi due anni o giu' di li quando poi ci e' premuniti di<BR>inserire qualche patch appiccicata un po' in qualche modo e spesso<BR>tenendole ben nascoste dentro a documentazioni un po' criptiche e con<BR>pochissima visibilita'.<BR><BR>...<BR><BR>riassuntino ultra-short:<BR><BR>- tutte le versioni di spatialite rilasciate fino ad oggi (Aprile<BR>2013, ndr) sono  sicuramente thread unsafe<BR>"<BR><BR>Ora, lo studio lo si è fatto in autunno 2013, quindi i problemi di<BR>thread safety erano risolti nelle versioni sorgente, ma non nelle<BR>versioni binarie disponibili nelle varie distribuzioni.<BR><BR>Come problema ulteriore, spatialite stesso al momento dei test andava<BR>in crash a causa di problemi nel caricamento dinamico della libreria,<BR>cosa risolta dopo la fine del nostro studio e non so se già rilasciata<BR>in forma stabile e ufficiale (mi pare di no, l'ultima versione è di<BR>Giugno 2013, noi abbiamo fatto i test durante l'autunno).<BR><BR>In buona sostanza, il nostro breve lavoro ha messo in luce una serie<BR>di criticità che richiedono lavoro per essere risolte. La cosa non è<BR>oltrettuto banale perchè non si lavora su campo libero, GeoTools ha<BR>già un modulo Spatialite vecchio di qualche anno che punta alla<BR>semplicità facendo embedding delle librerie native necessarie,<BR>staticamente compilate dentro alcune lib java (pagando però il prezzo<BR>di scalabilità pressochè nulla), proporre una versione che funzioni<BR>solo se sono installate librerie native di recente aggiornamento<BR>(anche visto il problema che spesso aggiornare le librerie sui server<BR>non è permesso) non è immediato, una nuova soluzione deve tener conto<BR>delle problematiche di semplicità d'uso, e evitare di cozzare contro<BR>il lavoro di supporto a GeoPackage, che per quanto non usi Spatialite,<BR>usa lo stesso driver JDBC Xerial usato dal modulo Spatialite: il<BR>driver JDBC in uso deve rimanere allineato, visto che non si possono<BR>agganciare due volte le librerie native di sqlite con versioni diverse<BR>dallo stesso processo, ne conseguen che qualunque passo venga fatto<BR>non si può limitare alla sola revisione del modulo Spatialite, ma<BR>necessariamente coinvolge anche un aggiornamento dei moduli<BR>GeoPackage.<BR><BR>Vista l'ampiezza dello sforzo necessario e le inevitabili discussioni<BR>in comunità una operazione come quella sopra descritta richiede un<BR>significativo sforzo in termini di tempo, cosa che noi abbiamo<BR>sottolineato nelle nostre comunicazioni scritte con il committente.<BR>_______________________________________________<BR>Gfoss@lists.gfoss.it<BR>http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss<BR>Questa e' una lista di discussione pubblica aperta a tutti.<BR>I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.<BR>666 iscritti al 22.7.2013</BODY></HTML>