Software libero e sostenibilità: la storia di SpatiaLite e Alessandro Furieri

Maurizio Napolitano
8 min readAug 5, 2020

PREMESSA

Alessandro Furieri è uno sviluppatore italiano geniale che ha creato il progetto Spatialite: una estensione geospaziale a SQLite che contribuisce a tantissimi progetti di successo.
L’ultima versione di Spatialite ha impiegato molto ad uscire per varie ragioni che Alessandro ha scritto nella mailing-list collegata al progetto.
Quanto scritto è in inglese, con il suo permesso ho fatto la mia traduzione in italiano.
Credo che questa sia una storia importante, su cui riflettere, che aiuta a capire quanto i progetti di software libero abbiano bisogno di persone competenti e di sostenibilità per esistere.

La storia originale si trova qui https://groups.google.com/g/spatialite-users/c/vKLokX4aSVU/m/qNDZDBoSAwAJ

Cosa è successo a SpatiaLite negli ultimi anni

o anche “ il modello di businnes di Spatialite”, o anche “ la carriera professionale di uno sviluppatore open source

Suppongo che molti di voi siano curiosi di sapere perché lo sviluppo di SpatiaLite ha subito un brusco rallentamento negli ultimi anni, e la cosa peggiore è stata completamente congelata negli ultimi due anni.
Ecco la storia completa; è una lunga storia, quindi preparati per una lettura piuttosto lunga.

Alessandro Furieri

Passato remoto

Ho iniziato a lavorare come sviluppatore C freelance e come consulente software all’inizio degli anni ’80.
Fino alla fine del secolo scorso i miei principali clienti erano sempre i piccoli comuni, gli ospedali di periferia e le piccole compagnie di trasporto situate principalmente in Toscana.
Tutti avevano pochissimi soldi da spendere per l’acquisto di sistemi software e sono stato in grado di offrire soluzioni ultra economiche basate su Xenix o SCO Unix a basso prezzo: era sufficiente un solo PC, da due a cinque stupidi terminali ed un paio di stampanti ad aghi per soddisfare i requisiti di queste organizzazioni piccole e poco sofisticate.
Anche se il software richiesto era abbastanza semplice da sviluppare ed era gestito da una sola persona (il sottoscritto), era esattamente quello che i miei clienti si aspettavano per risolvere i loro problemi.
Molte di queste mie installazioni hanno funzionato ininterrottamente per 10–15 anni e quando hanno trovato il loro corso per cui sono state abbandonate e sostituite da nuove soluzioni industriali hanno lasciato molti utenti in preda a nostalgia e rimpianti.
All’inizio degli anni 2000 era diventato difficilissimo resistere alla concorrenza di Windows e quindi tutto questo mio lavoro ha dovuto concludersi.

Nuove esperienze

Nei primi 10 anni del nuovo secolo sono stato assunto come consulente software dal Dipartimento dei trasporti della Regione Toscana; il mio compito iniziale era quello di progettare e amministrare un database piuttosto grande e complesso contenente tutti gli orari degli autobus e dei treni e i calendari dei servizi che coprono l’intera regione.
Solo successivamente è emersa la richiesta di completare il database integrando tutti i dati geografici relativi a fermate, percorsi e rete stradale.
Quello è stato il mio primo contatto con i dati geospaziali.
Nuovamente, ho dovuto affrontare il problema dei costi insopportabili: i costi delle licenze del software di ESRI e Oracle Spatial erano completamente al di fuori delle risorse disponibili e le soluzioni alternative open source all’epoca erano piuttosto immature e inaffidabili e / o estremamente complesse, quindi decisi di scrivere il mio software applicativo da zero.

I miei primi tentativi si basavano su MS Access, ma era chiaro che si trattava di una soluzione troppo grezza e limitata. Successivamente però ho scoperto il meraviglioso SQLite con la sua architettura intelligente che consente di aggiungere infinite funzioni SQL … e finalmente SpatiaLite è nato.

il logo di Spatialite

Dopo un periodo iniziale di diffusione limitata all’interno della comunità toscana dei pianificatori di servizi trasporto pubblico, ho capito che SpatiaLite poteva avere un campo di applicazione più generale, quindi ho finalmente deciso di rilasciare un progetto open source a tutti gli effetti.

Gli anni successivi

Alla fine del mio contrattato con il dipartimento dei trasporti sono stato in grado di proseguire lo sviluppo di SpatiaLite per due o tre anni utilizzando i miei risparmi: le mie precedenti entrate erano abbastanza buone da permettermi questa soluzione anche grazie al fatto che, essendo io una persona piuttosto parsimoniosa, non avevo grandi costi.

È poi accaduto che SpatiaLite ha attirato l’attenzione del Sistema Informativo Territoriale e Ambientale della Regione Toscana con la conseguenza che ha iniziato a finanziare generosamente il progetto per diversi anni.

Quella la posso considerare l’ Età dell’Oro di SpatiaLite, infatti il software divenne uno strumento di elaborazione robusto, completo e potente per elaborare enormi quantità di dati geospaziali in maniera sorprendentemente efficiente senza perdere la sua intrinseca semplicità e leggerezza.

Sfortunatamente, come ogni cosa buona nella vita, era assolutamente chiaro che una tale combinazione magica non poteva resistere per sempre: era assolutamente necessaria una nuova fonte di finanziamento.

Nuove esperienze

Intorno al 2014 è emersa inaspettatamente una nuova opportunità lavorativa: la Regione Toscana aveva deciso di avviare una riforma rivoluzionaria del suo sistema di trasporto pubblico.

Invece di continuare con il sistema storico ben consolidato basato su molte società locali indipendenti (principalmente di proprietà di Comuni e Province) che operano in condizioni di monopolio protetto, decise che tutti i servizi di trasporto pubblico di tutta la regione dovevano ora essere gestiti da un’unica società integrata che operasse secondo le norme dell’UE sulla concorrenza del libero mercato.

Di conseguenza venne lanciata una gara pubblica europea per individuare la nuova società incaricata di gestire tutte le reti di trasporto pubblico in Toscana per i successivi 11 anni.

Fornisco qualche numero per capire meglio il contesto; si tratta di circa 5.500 lavoratori e 3.000 mezzi di trasporto, per un valore monetario totale di oltre 4 miliardi di euro.

Come poi è emerso in seguito, questa è stata di gran lunga la più importante e ricca gara pubblica mai lanciata in Europa per il settore del trasporto pubblico.

I due contendenti

alla fine dei giochi a partecipare alla gare si sono trovate in competizione solo due offerte: una composta dalla coalizione di tutti gli operatori storici toscani, l’altra invece dalla francese RATP (l’operatore di servizi di metropolitana e autobus a Parigi e la quinta compagnia di trasporti del mondo) che già gestiva la rete tranviaria di Firenze.
I francesi erano ovviamente in forte svantaggio poiché mancavano di esperienza diretta di prima mano sul territorio toscano, ma lo compensarono rapidamente creando un team di consulenti senior locali, Io venni assunto in quel team per supportare tutte le attività del progetto gestendo un database spaziale di tutti i servizi di autobus.
Era più o meno lo stesso ruolo che avevo avuto nella mia precedente esperienza, e inizialmente sembrava un impegno molto ragionevole, ben pagato e che non richiedeva uno sforzo straordinario.

L’accordo iniziale era di sei mesi per supportare i miei colleghi nella preparazione del progetto industriale e della pianificazione finanziaria; in caso di vittoria, mi aspettavo di sostenere il processo di transizione durante il primo anno di operazioni.

Come si può intendere, è stato un impegno molto ragionevole ed è stato pienamente compatibile con il proseguimento dello sviluppo di SpatiaLite: purtroppo nessuna previsione si è mai rivelata più fallace di questa, come vi spiegherò successivamente.

Alla fine della gara pubblica la Regione Toscana scelse l’offerta francese, principalmente per il fatto di avere una stabilità finanziaria più solida e per una più forte esperienza industriale a livello internazionale.

Di conseguenza io e i miei colleghi abbiamo iniziato a pianificare attentamente quello che sembrava, in apparenza, essere un processo di transizione imminente per iniziare rapidamente le nostre operazioni. Abbiamo però purtroppo scoperto che molti ostacoli imprevisti erano presenti ovunque.

Detto in parole povere, i nostri concorrenti si sono appena rifiutati di accettare l’esito finale della gara pubblica ed hanno iniziato e una serie infinita di ricorsi giudiziari a tutti i livelli possibili, a partire dal Tribunale amministrativo toscano, passando dal Consiglio di Stato italiano e per arrivare fino al Tribunale di Giustizia dell’Unione Europea.

Tutte i loro ricorsi venivano regolarmente respinti, ma nel frattempo passavano gli anni e non accadeva nulla in attesa della fine di tutti i processi giudiziari.

Dal mio limitato punto di vista personale ciò significava che quello che ci si aspettava fosse un impegno breve che non durasse più di un paio d’anni finì inaspettatamente per essere un impegno a lungo termine non così semplice di sei anni (fino ad ora).

Ma il peggio della storia deve ancora arrivare.

Gli ultimi due anni e Spatialite

A partire dagli ultimi mesi del 2018 era piuttosto chiaro che la serie infinita di processi giudiziari stava finalmente raggiungendo la sua fine naturale, quindi ci stavamo preparando per una transizione imminente.

Il management francese era diventato nervoso, perché il tempo passava e le prospettive future erano ancora poco chiare, quindi nel cercare di compensare tutto questo ha elaborato una serie infinita di piani di emergenza costantemente aggiornati in modo da essere pronti ad affrontare qualsiasi possibile scenario futuro.

Per me è stata una vera tragedia, perché essendo l’unico membro dello staff in grado di estrarre dati utili dal nostro database spaziale sono stato continuamente sopraffatto da infinite richieste, una più urgente dell’altra.

Tutti i nostri sforzi furono vani; i nostri concorrenti si sono semplicemente rifiutati di avviare il processo di transizione come richiesto dalla Toscana, quindi la data del subentro è stata continuamente spostata di mese in mese.

Sono stato costretto a lasciare SpatiaLite al suo destino semplicemente perché non avevo tempo libero da dedicare allo sviluppo del software. Per molti lunghi mesi non ero più uno sviluppatore di software, ero semplicemente diventato una macchina SQL che schiacciava una query dopo l’altra a un ritmo frenetico.

Dato che ero già stato fregato da precedenti brutte esperienze, quando qualsiasi previsione sul futuro sviluppo di SpatiaLite si era presto rivelata irrealistica a causa della pressione di eventi esterni completamente al di fuori del mio controllo personale, ho deciso di interrompere qualsiasi interazione della comunità, riservandomi di tornare una volta di nuovo in tempi migliori e solo quando finalmente ho avuto qualche risultato tangibile da mostrare.

Martin SoulStealer - Flickr: Mexican Standoff Scene from a “steampunk” convention, The Asylum, Lincoln, England, September 2012 — CC-BY

Lo stato attuale

Nel frattempo la “ guerra degli autobus toscana” era diventata un caso politico di rilievo, con partiti nazionalisti e anti-UE “ Italexit” di estrema destra che protestavano contro l’ “ invasione francese” annunciata e il conseguente “ tradimento di interessi nazionali che conferivano un prezioso valore strategico a i peggiori nemici dell’Italia “.

Finalmente ora abbiamo raggiunto una situazione di stallo perfetto. È il più classico “ stallo alla messicana “ in cui nessuno ha la minima idea del risultato finale di questo duro confronto.

Tutti i tribunali amministrativi insistono sul fatto che la Toscana dovrebbe materializzare rapidamente gli effetti pratici della gara pubblica.

L’Autorità nazionale antitrust sta minacciando i nostri concorrenti che annunciano punizioni esemplari per i loro comportamenti dilatori che mirano a prolungare per sempre i loro privilegi monopolistici.

Dall’altro lato, accettando le lamentele dei nostri concorrenti, il procuratore generale di Firenze sta accusando il presidente della Toscana di frode e falsità per aver favorito illegalmente la vittoria francese per motivi politici.

Questa primavera l’emergenza del Coronavirus ha semplicemente aggiunto un tocco finale di ulteriore follia.

Fortunatamente, a partire dall’inizio dello scorso luglio è accaduto un miracolo inaspettato; un’improvvisa “ tregua armata “ è iniziata quando è diventato assolutamente evidente a tutti che la situazione di stallo continuerà almeno fino alla prossima elezione di un nuovo presidente della Toscana fissata per il prossimo 20 settembre.

Ho subito approfittato di un mese intero di pace e relax inaspettati e la Release Candidate of SpatiaLite 5.0..0 è finalmente pronta.

Non ho assolutamente idea del futuro; la “ guerra degli autobus toscana” può facilmente ricominciare ancora una volta nelle prossime settimane, ogni possibile previsione è semplicemente impossibile.

Per ora sono abbastanza soddisfatto per essere stato in grado di raggiungere un punto così critico ed un traguardo tanto atteso.

… e questa è la fine della storia (almeno, per ora)

Alessandro Furieri

Originally published at https://de.straba.us on August 5, 2020.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Maurizio Napolitano
Maurizio Napolitano

Written by Maurizio Napolitano

fbk, openstreetmap, gis, neocartography, okfn italy, open data, open source, software libero, sociologia, trento, pallavolo, digital commons lab

No responses yet

Write a response