Le monde géospatial évolue rapidement. L'IA transforme la manière dont les données sont créées et interprétées. De nouvelles API voient le jour dans tous les domaines. Et partout dans le monde, les organisations s'efforcent de moderniser leurs systèmes vieillissants sans compromettre leur fonctionnement.
Dans des moments comme ceux-ci, il est facile de parler de « normes ».
Il est beaucoup plus difficile — et bien plus important — de s'assurer qu'elles fonctionnent réellement en pratique.
Voilà ce qu'est un OGC Code Sprint : un test grandeur nature , un lieu où les idées deviennent des implémentations, où les hypothèses rencontrent le code et où les lacunes apparaissent suffisamment tôt pour être corrigées.
Les OGC Code Sprints permettent aux normes de passer du statut de texte sur une page à celui d'outils concrets et utilisables. Ils offrent aux développeurs, aux éditeurs et aux nouveaux venus curieux un espace pour :
- Démontrer ce qui fonctionne (et ce qui ne fonctionne pas).
- Découvrez des cas particuliers que personne n'avait anticipés.
- Détecter les problèmes d'intégration avant leur mise en production
- Tester les tendances émergentes par rapport au code réel
- Développer une compréhension partagée et des solutions pratiques
Dans un monde qui se précipite vers des systèmes connectés, une infrastructure prête pour l'IA et une intégration des données interdomaines, ces sprints ne sont plus de simples « bonus ».
Ils sont essentiels à la construction d'écosystèmes technologiques auxquels nous pouvons faire confiance.
Aperçu du Rotterdam Code Sprint
Du 20 au 22 octobre 2025, l'Open Geospatial Consortium (OGC) a organisé un sprint de programmation à Rotterdam, accueilli par Geonovum et la municipalité de Rotterdam. Ce sprint s'est déroulé dans l'emblématique bâtiment Timmerhuis , fleuron de l'architecture néerlandaise, et au Vonk Innovation Centre , pôle d'innovation technologique de la ville.
Le sprint était hybride, combinant participation en présentiel et session en ligne sur le serveur Discord OGC-Events. Ce serveur, qui compte désormais 983 membres, connaît une forte activité pendant et autour des sprints, créant ainsi un espace dynamique de collaboration entre les participants présents et ceux à distance.
Qui étaient les sprinteurs ?
Les participants au Code Sprint provenaient de 17 pays différents, répartis sur plusieurs continents. Seule une petite partie était présente en personne, avec une forte participation locale des Pays-Bas. C'est toujours un plaisir de constater une telle mobilisation de nos hôtes, comme ce fut le cas cette fois-ci.
Il est important de souligner qu'il n'est pas nécessaire d'être développeur pour participer aux OGC Code Sprints. De nombreuses contributions précieuses proviennent de personnes qui s'impliquent dans des activités sans code, comme le signalement de problèmes, les tests et la création de documentation.
Ce sprint a réuni un groupe équilibré de développeurs expérimentés et de participants davantage axés sur le produit. La plupart des participants connaissaient déjà bien les normes OGC, mais aucune expérience préalable n'est requise et les nouveaux venus sont toujours les bienvenus.
Comment le sprint était-il structuré ?
Le sprint a été précédé d'un webinaire préparatoire le 9 octobre, qui a permis de contextualiser l'événement en présentant les objectifs des différents groupes de travail sur les normes (GTN) et des thématiques spécifiques. Tout GTN peut manifester son intérêt à participer au sprint avant ce webinaire.
Lors du sprint de Rotterdam, nous avons présenté dix groupes de travail logiciels (SWG) et deux sessions thématiques : « Linters et validateurs » et « DCAT-AP et API OGC – Records » . Pour de nombreux participants, le travail préparatoire a débuté à partir de ce moment.
La première journée a débuté par une séance de lancement, à l'issue de laquelle les participants se sont organisés en petits groupes de travail – certains en présentiel, d'autres en ligne.
Le groupe se réunissait quotidiennement pour de brefs bilans et mises à jour, puis concluait par une séance de démonstration où les participants présentaient leurs réalisations. Le calendrier complet est disponible ici.
La séance de clôture comprenait également un gâteau traditionnel néerlandais au tompouce , aimablement offert par le directeur de Geonovum.
Discussions ad hoc
Quatre séances ad hoc ont été programmées pendant le sprint pour discuter de sujets d'intérêt spécifiques :
- Discussion JSON-FG, réunissant les présidents et les responsables de la mise en œuvre des SWG.
- Négociation de contenu par discussion de profil : abordant plusieurs normes.
- Données non géospatiales dans OGC API – Features: ce qui a conduit à la rédaction d'un document de bonnes pratiques.
- API OGC – Session d'enregistrement : axée sur les transactions et la récolte.
Ces discussions se sont avérées très utiles, car elles ont permis de réunir différents acteurs de la mise en œuvre, parfois avec des points de vue divergents sur les normes. La participation de membres d'un groupe de travail aux discussions d'un autre s'est également révélée très précieuse, car elle a permis d'identifier des points communs et, parfois, de suggérer d'autres solutions pour une exigence donnée.
Journée d'intégration
La première journée du sprint comprenait également une journée d'intégration, un parcours parallèle destiné à tous ceux qui souhaitaient se familiariser avec les normes OGC. La journée a débuté par une introduction, suivie de cinq tutoriels d'une durée de 45 à 60 minutes chacun.
Le premier tutoriel présentait DGGAL , une bibliothèque libre et open source offrant une interface aux systèmes de référence de grille globale discrète (DGGRS). Cet outil prend en charge les implémentations de l'API OGC – DGGS et propose des liaisons pour différents langages de programmation. Au cours du tutoriel, les participants ont expérimenté l'interaction avec un DGGRS à l'aide des liaisons Python, très faciles à installer. Inspiré par ce tutoriel, l'un des participants au sprint a ensuite utilisé cette bibliothèque dans sa démonstration finale.
Le deuxième tutoriel présentait l' extension WebSub de l'API SensorThings . WebSub, une norme du W3C, est un protocole permettant la notification en temps réel des mises à jour de contenu. Cette approche est plus efficace pour les clients que l'interrogation du serveur, car elle évite de définir un intervalle fixe et fonctionne avec les données de capteurs décrites par l'API SensorThings. Les formateurs ont fait la démonstration d'implémentations serveur et client de STA-WebSub et ont même proposé de configurer un Raspberry Pi pour la collecte de données environnementales à l'intention de ceux qui souhaitaient tester l'approche.
Ensuite, un tutoriel a été présenté sur la toute dernière version de GeoNetwork (GeoNetwork 5), mettant en avant sa prise en charge native de l'API OGC – Enregistrements. GeoNetwork 5 prend en charge les parties 1 et 2 de la norme, et propose des fonctionnalités intéressantes telles que la recherche à facettes. Le formateur a fourni une image Docker permettant de déployer GeoNetwork 5 et ses dépendances sous forme de microservices.
Le tutoriel suivant était consacré à l'API OGC – Jointures. Il débutait par une description générale de la norme candidate, suivie de démonstrations d'implémentations côté serveur et côté client. Lors de cette démonstration, le formateur a effectué des jointures à la volée entre des tables (au format CSV) et des données géospatiales (entités).
La session de mentorat s'est conclue par une présentation de libCartoSym , une bibliothèque libre et open source implémentant la symbologie cartographique OGC 2.0 . Cette bibliothèque facilite la conversion entre les formats de représentation courants tels que CartoSym-CSS, SLD et Mapbox GL. L'un des participants, développeur QGIS, a ensuite collaboré avec le formateur les jours suivants afin d'améliorer la prise en charge de la symbologie dans QGIS.
Étonnamment, nous n'avions pas beaucoup de débutants à ce Code Sprint. Les formateurs ont fini par assister aux tutoriels des uns et des autres, ce qui a donné lieu à des discussions enrichissantes (bien que parfois pointues). La liste complète des tutoriels, avec leurs résumés et les liens utiles, est disponible ici.
Activités principales
Les développeurs ayant mis en œuvre les normes se sont auto-organisés en petits groupes, collaborant étroitement avec les présidents des groupes de travail, posant des questions et signalant parfois des problèmes. Le projet OS4CSAPI (Open Source for Connected Systems API) s'est particulièrement distingué par son organisation et la publication quotidienne de rapports d'avancement écrits.
pygeoapi a confirmé son rôle de « terrain d’expérimentation » pour l’implémentation de standards, ayant fait l’objet de deux forks durant le sprint (pour l’API OGC – Systèmes connectés et l’API OGC – Jointures) et recevant une ébauche de pull request pour JSON-FG. Il convient de noter que ces implémentations sont des prototypes et pourraient être intégrées au projet principal.
Un autre point fort a été la sensibilisation accrue des projets logiciels. Lors de la session de démonstration, plusieurs implémentations ont présenté des intégrations avec d'autres outils présentés lors du sprint. Le linter ogc-checker, par exemple, a été utilisé par ldproxy et pygeoapi pour valider leurs sorties JSON-FG.
La plupart des activités décrites ci-dessus se sont traduites en activités sur GitHub. Vous trouverez des liens vers les tickets, les demandes de fusion et les commits issus de ce sprint de code sur ce ticket GitHub.
Projets de normes et de logiciels ayant participé à ce sprint ; les flèches en pointillés indiquent les normes mises en œuvre par les projets logiciels, tandis que les flèches pleines indiquent les projets logiciels ayant utilisé d’autres projets.
Réflexions finales
Ce sprint a confirmé le rôle essentiel des sprints de code dans le processus d'élaboration des normes. C'est souvent à ce moment que les normes sont mises en pratique par différents acteurs et que de nombreuses questions surgissent. Parfois, les présidents des groupes de travail peuvent apporter des réponses à ces questions, et d'autres fois, elles conduisent à des modifications qui, espérons-le, amélioreront la norme.
Ce sprint est également l'occasion de mettre à jour les implémentations vers les dernières versions de la norme et de réaliser des tests d'interopérabilité entre clients et serveurs. Au final, il favorise une meilleure adoption des normes et une interopérabilité accrue.
Nous encourageons toutes les personnes intéressées par les normes OGC, quel que soit leur niveau d'expertise, à assister à ces événements et à participer à ce processus.
Les enseignements tirés de ce sprint ont été compilés, de manière collaborative, sur un ticket GitHub.
Vous pouvez suivre les annonces des prochains Code Sprints sur le site web des Code Sprints . Pour en savoir plus sur les normes OGC du point de vue du développeur, consultez le site web OGC pour les développeurs . Pour discuter, rejoignez-nous sur le serveur Discord OGC-Events.
Intéressé(e) par notre prochain événement ?
L'OGC RAINBOW Sprint @ iDays 2025 aura lieu le 11 décembre 2025 au Dolce by Wyndham Bad Nauheim, en Hesse, en Allemagne.
Nous invitons les développeurs, les experts en données et les praticiens de la géomatique à s'inscrire et à participer.
🔗 Inscription et informations : https://events.ogc.org/SprintOpenScienceOGCRAINBOWOGCAPIs
Avis de non-responsabilité :
Par souci de simplicité, le terme « Normes » désigne ici aussi bien les normes approuvées que les normes candidates. Vous pouvez consulter le statut d’une norme sur la feuille de route des normes de l’OGC.