Il mondo geospaziale sta cambiando rapidamente. L'intelligenza artificiale sta rimodellando il modo in cui i dati vengono creati e interpretati. Nuove API stanno emergendo in tutti i settori. E le organizzazioni di tutto il mondo stanno cercando di modernizzare i sistemi obsoleti senza compromettere ciò che già funziona.
In momenti come questi, è facile parlare di "standard".
È molto più difficile, e molto più importante, assicurarsi che funzionino davvero nella pratica.
Ecco cos'è un Code Sprint OGC: una prova di resistenza alla realtà , un luogo in cui le idee si trasformano in implementazioni, dove le ipotesi incontrano il codice e dove le lacune emergono abbastanza presto da poterle correggere.
Gli OGC Code Sprint sono il momento in cui gli standard smettono di essere semplici testi su una pagina e iniziano a diventare strumenti effettivamente utilizzabili. Creano spazio per implementatori, redattori e nuovi arrivati curiosi per:
- Dimostrare cosa funziona (e cosa no)
- Scopri casi limite che nessuno aveva previsto
- Rileva i problemi di integrazione prima che raggiungano la produzione
- Testare i modelli emergenti rispetto al codice del mondo reale
- Costruire una comprensione condivisa e soluzioni pratiche
In un mondo che corre verso sistemi connessi, infrastrutture predisposte per l'intelligenza artificiale e integrazione dei dati tra domini, questi sprint non sono più considerati "gradi extra".
Sono essenziali per costruire ecosistemi tecnologici di cui possiamo fidarci.
Una panoramica del Rotterdam Code Sprint
Dal 20 al 22 ottobre 2025, l'Open Geospatial Consortium (OGC) ha organizzato un Code Sprint a Rotterdam, ospitato da Geonovum e dal Comune di Rotterdam. Lo sprint si è svolto presso l'iconico edificio Timmerhuis , punto di riferimento dell'architettura olandese, e il Vonk Innovation Centre , un polo per l'innovazione tecnologica della città.
Lo sprint è stato ibrido, combinando la partecipazione in presenza con la componente online ospitata sul server Discord di OGC-Events. Il server, che ora conta 983 membri, registra un picco di attività durante e intorno agli sprint, creando uno spazio vivace per la collaborazione tra partecipanti in presenza e da remoto.
Chi erano gli sprinter?
I partecipanti al Code Sprint provenivano da 17 paesi diversi, provenienti da diversi continenti. Solo una piccola parte ha partecipato di persona, con una forte presenza locale dai Paesi Bassi. È sempre un piacere vedere una grande partecipazione da parte dei nostri organizzatori, come è stato il caso questa volta.
Vale la pena sottolineare che essere un programmatore non è un requisito per partecipare agli OGC Code Sprint. Molti contributi preziosi provengono da coloro che si impegnano in attività no-code come la segnalazione di problemi, il testing e la creazione di documentazione.
Lo sprint ha riunito un mix equilibrato di sviluppatori esperti e partecipanti più orientati al prodotto. La maggior parte dei partecipanti aveva già una certa familiarità con gli standard OGC, sebbene l'esperienza pregressa non sia mai un requisito e i nuovi arrivati siano sempre benvenuti.
Come è stato strutturato lo sprint?
Lo sprint è stato preceduto da un webinar pre-evento il 9 ottobre, che ha definito il contesto illustrando gli obiettivi dei diversi Standards Working Group (SWG) e i percorsi specifici. Ogni SWG può segnalare il proprio interesse a partecipare allo sprint prima del webinar pre-evento.
Durante lo sprint di Rotterdam, abbiamo presentato dieci gruppi di lavoro (SWG) e due percorsi speciali: Linters e Validators e DCAT-AP e OGC API – Records . Per molti partecipanti, il lavoro di preparazione è iniziato proprio da questo momento.
La prima giornata si è aperta con una sessione di avvio, dopo la quale i partecipanti si sono organizzati in gruppi di lavoro più piccoli, alcuni di persona, altri online.
Il gruppo si riuniva quotidianamente per brevi briefing e aggiornamenti, per poi concludere con una sessione dimostrativa in cui i partecipanti presentavano i risultati raggiunti. Il programma completo è consultabile qui.
La sessione di chiusura ha incluso anche una tradizionale torta tompouce olandese , gentilmente offerta dal direttore di Geonovum.
Discussioni ad hoc
Durante lo sprint sono state programmate quattro sessioni ad hoc per discutere argomenti specifici di interesse:
- Discussione JSON-FG, che riunisce i presidenti e gli implementatori di SWG.
- Discussione sulla negoziazione dei contenuti tramite profilo: toccando più standard.
- Dati non geospaziali in OGC API – Features: che ha portato ad un'azione volta a redigere un documento di buone pratiche.
- Sessione OGC API – Records: focalizzata su transazioni e raccolta.
Queste discussioni sono state molto utili, poiché hanno riunito diversi implementatori, a volte con prospettive diverse sugli Standard. È stato inoltre molto utile che i membri di un SWG partecipassero alle discussioni di un altro, poiché hanno potuto trovare punti in comune e talvolta suggerire soluzioni alternative per un determinato requisito.
Giorno di onboarding
Il primo giorno dello sprint ha ospitato anche l'Onboarding Day, un percorso parallelo per chiunque volesse approfondire gli standard OGC. La giornata è iniziata con un'introduzione ed è proseguita con cinque tutorial della durata di circa 45-60 minuti ciascuno.
Il primo tutorial ha introdotto DGGAL , una libreria open source gratuita che fornisce un'interfaccia per i sistemi di riferimento a griglia globale discreta (DGGRS). Questo strumento supporta le implementazioni dell'API OGC – DGGS e offre binding per diversi linguaggi di programmazione. Durante il tutorial, i partecipanti hanno sperimentato l'interazione con un DGGS utilizzando i binding Python, la cui installazione è risultata piuttosto semplice. Ispirato da questo tutorial, uno dei partecipanti allo sprint ha poi utilizzato questa libreria nella sua demo finale.
Il secondo tutorial ha introdotto l' estensione WebSub dell'API SensorThings . WebSub, uno standard W3C, è un protocollo che consente di ricevere notifiche in tempo reale sugli aggiornamenti dei contenuti. Questo approccio è più efficiente per i client rispetto al polling del server per gli aggiornamenti, in quanto evita la necessità di impostare un intervallo fisso e funziona con i dati dei sensori descritti dall'API SensorThings. Gli istruttori hanno mostrato implementazioni lato server e lato client di STA-WebSub e si sono persino offerti di configurare un Raspberry Pi per la raccolta di dati ambientali per chiunque desiderasse testare l'approccio.
Successivamente, è stato presentato un tutorial sulla versione più recente di GeoNetwork (GeoNetwork 5), che ne ha illustrato il supporto nativo per l'API OGC - Records. GeoNetwork 5 supporta le Parti 1 e 2 dello Standard, incluse funzionalità interessanti come le ricerche sfaccettate. Il docente ha fornito una composizione Docker che ha permesso di avviare GeoNetwork 5 e le sue dipendenze come un set di microservizi.
Il seguente tutorial si è concentrato sulle API OGC – Join. È iniziato con una descrizione di alto livello dello standard candidato, seguita da dimostrazioni delle implementazioni server e client. Durante questa dimostrazione, l'istruttore ha eseguito join al volo tra tabelle (in formato CSV) e dati geospaziali (feature).
Il percorso di tutoraggio si è concluso con un'introduzione a libCartoSym , una libreria gratuita e open source che implementa la simbologia cartografica OGC 2.0 . La libreria facilita la transcodifica tra i formati di rappresentazione più diffusi, come CartoSym-CSS, SLD e Mapbox GL. Uno dei partecipanti, uno sviluppatore QGIS, ha poi collaborato con il docente nei giorni successivi per migliorare il supporto della simbologia in QGIS.
È interessante notare che a questo Code Sprint non c'erano molti principianti. Gli istruttori dei tutorial hanno finito per assistere ai tutorial degli altri, il che ha portato a discussioni preziose (anche se a volte di livello avanzato). L'elenco completo dei tutorial, con riassunti e link pertinenti, è disponibile qui.
Attività principali della pista
Gli sviluppatori che hanno implementato gli standard si sono auto-organizzati in gruppi più piccoli, dove hanno lavorato a stretto contatto con i presidenti degli SWG, ponendo domande e talvolta segnalando problemi. Un contributo degno di nota è arrivato da OS4CSAPI: Open Source for Connected Systems API , che si è dimostrato ben organizzato e ha fornito quotidianamente rapporti scritti sui progressi compiuti.
pygeoapi ha confermato il suo ruolo di "campo di prova" per l'implementazione degli standard, essendo stato oggetto di due fork durante lo sprint (per OGC API – Connected Systems e OGC API – Joins) e ricevendo una bozza di Pull Request per JSON-FG. Va notato che queste implementazioni sono prototipi e potrebbero essere integrate nel progetto principale.
Un altro punto saliente è stata la crescente consapevolezza tra i progetti software. Durante la sessione demo, diverse implementazioni hanno mostrato integrazioni con altri strumenti presentati durante lo sprint. Il linter ogc-checker, ad esempio, è stato utilizzato sia da ldproxy che da pygeoapi per convalidare i loro output JSON-FG.
La maggior parte delle attività descritte sopra si è tradotta in attività su GitHub. Puoi trovare i link ai problemi, alle richieste di pull e ai commit originati da questo sprint di codice su questo problema di GitHub.
Standard e progetti software che hanno preso parte a questo sprint; le frecce tratteggiate indicano quali standard implementano i progetti software, mentre le frecce piene indicano i progetti software che hanno utilizzato altri progetti.
Conclusioni
Questo sprint ha confermato il ruolo chiave dei Code Sprint nel processo di sviluppo degli Standard. Spesso, questo è il momento in cui gli Standard vengono messi in pratica da diversi implementatori e sorgono numerose domande. A volte queste domande possono essere chiarite dai presidenti degli SWG, altre volte portano a modifiche che (si spera) miglioreranno lo Standard.
Lo sprint rappresenta anche un'opportunità per aggiornare le implementazioni alle ultime versioni dello Standard e per condurre esperimenti di interoperabilità tra client e server. Nel complesso, si traduce in una maggiore adozione degli Standard e in un miglioramento dell'interoperabilità.
Incoraggiamo tutti coloro che sono interessati agli standard OGC, indipendentemente dal loro livello di competenza, a partecipare a questi eventi e a prendere parte a questo processo.
Le lezioni apprese durante questo sprint sono state raccolte, in modo collaborativo, in una issue di GitHub.
Puoi seguire gli annunci dei prossimi Code Sprint sul sito web dei Code Sprint . Se vuoi saperne di più sugli standard OGC dal punto di vista di uno sviluppatore, visita il sito web OGC per sviluppatori . Se vuoi chattare, unisciti a noi sul server Discord di OGC-Events.
Vuoi partecipare al nostro prossimo evento?
L'OGC RAINBOW Sprint @ iDays 2025 si svolgerà l'11 dicembre 2025 presso il Dolce by Wyndham Bad Nauheim, in Assia, Germania.
Invitiamo sviluppatori, esperti di dati e professionisti del settore geospaziale a registrarsi e partecipare.
🔗 Iscrizione e dettagli: https://events.ogc.org/SprintOpenScienceOGCRAINBOWOGCAPIs
Disclaimer:
In questo articolo, per semplicità, il termine "Standard" si riferisce sia agli Standard approvati che a quelli candidati. È possibile verificare lo stato di un determinato Standard sulla Roadmap degli Standard dell'OGC.