De Lutèce à Cité libre avec Magali Lemaire et Philippe Bareille
Sommaire
- 1 De Lutèce à Cité libre avec Magali Lemaire et Philippe Bareille
- 2 Présentation de Magali Lemaire et Philippe Bareille
- 3 Présentation de Lutèce
- 4 Les utilisateurs de Lutèce
- 5 Les grandes évolutions de Lutèce
- 6 La définition des évolutions
- 7 La communauté autour de Lutèce
- 8 Les évènements autour de Lutèce
- 9 Lutèce et la concurrence
- 10 Qu’est-ce que Cité libre ?
- 11 La licence de Lutèce
- 12 La création de l’OSPO de la mairie de Paris
- 13 L’organisation pour accueillir des contributions externes
- 14 Les implications de produire du code Open Source
- 15 Relation entre équipe de dev et l’OSPO
- 16 Les défis de Lutèce et Cité libre
- 17 Le mot de la fin des invités
- 18 Licence
Walid: chères auditrices, chers auditeurs, bienvenue pour ce nouvel épisode de Projets Libres! Aujourd’hui, on va parler de Paris et on va parler d’un sujet qui va être très intéressant et qui me tient à cœur. Puisqu’il se trouve que le sujet dont on va parler aujourd’hui a été une de mes premières expériences professionnelles. Je reviendrai après. Et donc, c’est avec grand plaisir qu’on va reparler de tout ça. Donc aujourd’hui, on va parler de Lutèce et de l’initiative qui suit qui s’appelle Cité Libre. Donc, qui sont des initiatives et des logiciels de la ville de Paris. Et pour en parler, j’ai avec moi deux invités. J’ai avec moi Magali Lemaire qui est chef du bureau de l’ingénierie logicielle et du développement et Philippe Bareille qui est chargé d’une mission open source et référent OSPO. Peut-être que vous avez entendu un épisode il n’y a pas très longtemps du podcast Libre à vous, l’épisode 228, qui m’a en partie servi de trame aussi, je le cite parce que c’était très intéressant. Voilà, et donc écoutez Magali et Philippe, bienvenue sur le podcast Projets Libres!
Philippe: bonjour, merci.
Magali : merci beaucoup.
Présentation de Magali Lemaire et Philippe Bareille
Walid: eh bien c’est parti, on va commencer. Je vais vous demander d’abord de vous présenter, vous nous dire un petit peu… qui vous êtes ? Quel est votre parcours ? Et pour commencer, Magali, à toi l’honneur.
Magali: alors donc, Magali Lemaire, je suis au sein de la ville de Paris et dans cette équipe précisément depuis 2009. En fait, j’ai commencé comme chef de projet où j’ai travaillé sur des services numériques et le développement de plugins génériques pour Lutèce. Et petit à petit, j’ai pris d’autres responsabilités au sein de la ville pour devenir chef de bureau en remplacement de Pierre Levy il y a deux ans.
Walid: et toi Philippe ?
Philippe: bonjour Walid, et tout d’abord merci pour ton invitation. Moi j’ai commencé ma carrière comme développeur dans les télécoms et la magie des entreprises de service m’a fait découvrir de nombreux domaines. Et c’est en fait dans le service public à la mairie de Paris que j’ai décidé de poser un peu mes valises quand on m’a proposé de m’ancrer davantage dans le projet Lutèce. Donc j’étais alors chef de projet technique et mon implication dans le projet et sa diffusion et tout le travail autour de sa diffusion m’a permis d’y consacrer un peu plus de temps au sein de la mission transverse du système d’information à la direction informatique.
Présentation de Lutèce
Walid: je vous propose de rentrer dans le vif du sujet. J’aimerais tout d’abord qu’on parle de Lutèce et que vous puissiez me présenter, pour les auditrices et les auditeurs, ce qu’est Lutèce.
Magali: Lutèce, c’est un framework de développement Java qui a permis de développer l’ensemble des services numériques de la ville de Paris, déjà, pour donner un peu une vue d’ensemble. Je pense que c’est déjà un bon démarrage. On a 300 services numériques qui sont développés sous Lutèce aujourd’hui. Ça peut être comme apparenté une grosse boîte de Lego. En gros, on a un gros Lego qui est le cœur de la machine et après on fait des assemblages pour arriver à définir des services numériques. Ou des applications métiers aussi, ça peut être les deux. Donc on a développé cette offre au fur et à mesure depuis 2002.
On est assez transverse, on est assez généraux. On a créé toute une palette de services autour de la collectivité. Du coup, on a autant d’une offre de rendez-vous, des offres pour faire des formulaires électroniques à destination… des formulaires dématérialisés à l’usage des Parisiens. On fait de l’intermédiation aussi, c’est-à-dire on pourrait mettre des associations en contact avec des citoyens parisiens. On a construit des plateformes autour de tout ce qui est démocratie participative. Donc en fait, on a une offre qui est assez diverse. Et on couvre l’ensemble de l’activité de la collectivité. Donc, on a des services d’état civil qui tournent, on a de la prise de rendez-vous. Du coup, on a tout ce qui est collecte d’encombrants. On gère vraiment toute la vie de la collectivité au niveau des services numériques après, au niveau des applications métiers on peut en parler. Il y a des fois des logiciels ou des solutions qui sont plus appropriées.
Les utilisateurs de Lutèce
Walid: OK. Est-ce qu’à part la ville de Paris, il y a d’autres gens qui utilisent Lutèce ?
Philippe: alors oui, je me permets d’y répondre. Effectivement, c’est assez compliqué aujourd’hui de savoir précisément qui utilise, parce que quand on met un projet comme ça, libre d’accès, libre d’utilisation, on n’impose pas à l’utilisateur de se référencer, de se manifester. Donc aujourd’hui, on a parmi les collectivités et organismes qui se sont signalés, oui, effectivement, il y en a un certain nombre. On recense une trentaine de villes en France, que ce soit à travers soit des départements, soit des agglomérations de communes, des villes, etc. À l’étranger également, on en recense quelques utilisations. Et ce n’est pas qu’une application dédiée au secteur public, on a aussi du secteur privé, avec un groupement hospitalier qui utilise Lutèce pour sa prise de rendez-vous, notamment. Historiquement, on a eu Météo-France, qui était un des premiers utilisateurs de Lutèce, Notaire.fr, ce genre de structure également.
Walid: d’accord, ok, je ne savais pas. J’aimerais bien que vous nous expliquiez comment est née l’idée de développer sa propre solution pour la ville de Paris. Après, j’expliquerai un tout petit peu qu’est-ce que c’était de l’autre côté du décor en tant que prestataire qui a bossé dessus.
Philippe: la genèse, elle est plutôt simple. C’est qu’en 2001, le maire de l’époque, Bertrand Delanoë, avait pour volonté de proposer aux administrés, aux citoyens parisiens, des sites web conçus de la même façon, avec principalement de l’édition de contenu. Donc, c’était des informations sur la vie locale des différentes mairies d’arrondissement qui étaient proposées à cette époque-là, dans ce besoin. Donc il s’est tourné vers la direction informatique qui a étudié les différentes façons de pouvoir le faire et au final, on s’est rendu compte qu’aucune offre sur le marché permettant de faire de l’administration de contenu n’était disponible. Dans l’équipe, on avait une personne qui était un architecte logiciel qui avait déjà une empreinte dans l’écosystème open source, qui a proposé que nous le développions en interne. Donc Lutèce est né comme ça en 2001 pour répondre à un besoin purement de gestion de contenu. Il a été déployé pendant toute l’année de 2002 sur l’ensemble des mairies d’arrondissement et ce que ça permettait aussi, c’était évidemment l’administration de contenu par des personnes non techniques, mais également un habillage graphique qui correspondait aux couleurs politiques de la mairie d’arrondissement, donc au niveau local. C’était également un critère primordial.
De là, l’offre, ou en tout cas le besoin autour des sites web a beaucoup évolué et c’était bien beau de diffuser, de permettre de la gestion de contenu, mais il devenait important et primordial de proposer du service aux citoyens. Donc c’est comme ça qu’une des premières évolutions de Lutèce a été de refaire totalement l’architecture pour s’orienter vers de la modularité. Donc ça, je pense qu’on y reviendra un petit peu plus tard. Cet aspect de modularité est extrêmement important parce que, comme le disait Magali, aujourd’hui un site Lutèce est une construction, un assemblage de différents composants qui viennent spécifier et spécialiser un site web.
Un petit mot peut-être sur pourquoi ça a été ouvert en open source : l’exécutif, l’équipe municipale, a constaté que ce projet avait consommé pas mal d’argent public. Leur souhait était de le remettre à disposition des autres administrations françaises et même d’ailleurs, pour permettre à des collectivités qui n’ont pas forcément nos moyens, nous de capitale française, d’implémenter et de mettre également en place ce type de service. Sachant que si la ville de Paris en a eu le besoin, on peut établir que l’ensemble des villes avait également besoin ou pourrait avoir également besoin d’un système de gestion de contenu et de proposer du service à ses citoyens. On ne va pas réinventer le besoin du service public.
Philippe Bareille
Walid: et là, à cette époque-là ? Vous n’aviez pas les compétences en interne pour développer un tel système ? Parce que je me rappelle, en tant que prestataire, que ça a pris quand même pas mal de temps à développer ce système.
Magali: alors, peut-être que tu vas pouvoir nous donner un autre éclairage, parce que Philippe et moi, en 2001, on n’était pas là (rires). Non, moi, de ce que je sais, c’est que l’équipe interne a été composée de quatre personnes à l’époque et ils ont commencé à faire le développement en 2002. ça a vraiment été pour moi fait en full interne. Après, il y a peut-être eu une seconde version d’évolution où il y a de la prestation effectivement qui a été mise en œuvre. Mais pour moi, la version de départ, ça a été fait en interne. Et la mise en prod des mairies, la première mairie, mairie du 3ᵉ, ça a été fait en janvier 2002, si je me rappelle bien.
Walid: je ne me rappelle plus les dates, mais on a travaillé… Alors moi, à l’époque, je bossais chez Atos. On était toute une équipe de trois ou quatre personnes et on a travaillé sur la création de zéro de cette plateforme, je me rappelle bien. Et donc on avait un cahier des charges, on a développé ça. À l’époque, c’était surtout du CMS. Donc je me rappelle bien qu’on a travaillé là-dessus, la gestion des droits, etc. Tous les systèmes de workflow de publication et tout. Je ne me rappelle pas à l’époque qu’on ait parlé que ça ait vocation à devenir open source. Par contre, ce que je me rappelle très bien, c’est avoir moi-même été l’installer sur les serveurs de la mairie de Paris, les versions de préprod, ça je me rappelle très bien par contre. Et en Java, je ne sais pas pourquoi ça a été développé en Java, mais à l’époque, effectivement, tout avait été, dès le départ, développé en Java quand nous, on a travaillé dessus.
Magali: la raison pour laquelle c’est développé en Java, c’est assez simple, c’est qu’en fait, les compétences internes qu’on avait, dont Pierre, étaient des compétences Java. Donc ça s’est fait assez naturellement. SPIP à ce moment-là, ça n’existait pas encore. Je crois que c’est 2001 que ça a été lancé. En tout cas, c’était concomitant. PHP, ce n’était pas encore orienté objet. Donc on avait nous des librairies, enfin eux, avaient des librairies en interne et des services. Et du coup, ils sont partis sur du Java. Il s’est avéré dans le temps, avec les problématiques de maintenabilité et de robustesse, que le choix de Java s’avérait être le bon. Et aujourd’hui, on est assez contents d’être partis sur ça.
Walid: ok, intéressant. Moi, ça me rappelle de bons souvenirs. J’ai un souvenir que c’est la première fois de ma vie où j’ai fait un rm -rf / sur le serveur de pré-prod et que trois jours avant de livrer, j’avais effacé tout le serveur de pré-prod. Je ne l’ai plus jamais refait après.
Philippe: ta marque. C’est formateur.
Walid: voilà, c’est formateur. J’étais jeune ingénieur. Maintenant, on parle du lancement. Cette première version qui est mise à disposition du public, comment elle est accueillie ? Est-ce que ça se passe bien ? Est-ce qu’on voit tout de suite le potentiel ? Qu’est-ce que vous en savez en fait ?
Magali: ça se passe bien. Déjà, c’était assez important pour la ville de Paris que les mairies disposent de leurs propres sites. Et en plus, de manière assez industrielle. Donc ça, c’était quand même quelque chose d’assez novateur. Très vite, surtout notre équipe, dans un premier temps, a identifié le potentiel énorme qu’il y avait derrière. Tout ce qui était plug-in générique, le cœur de Lutèce… En fait, ils se sont tout de suite axés sur le fait d’avoir du re-use, de pouvoir réutiliser l’ensemble des composants, de ne pas redévelopper tout à chaque fois. Et ça, ça a été vraiment au cœur des problématiques.
Alors, le véritable envol finalement de Lutèce… évidemment, il y a eu le site des mairies, il y a eu l’intranet de la ville de Paris aussi qui s’est construit sur Lutèce. Et vraiment, le point important de bascule, c’était tout ce qui était dématérialisation des services numériques. Donc c’était, que je ne dise pas de bêtises, mais il y a 14 ans à peu près, 14-15 ans. C’est l’époque où tu es arrivé aussi, Philippe, je pense, non ?
Philippe: il y a eu à peine deux ans plus tard, en 2016.
Magali: et donc du coup, il y a eu une grosse vague d’investissements sur l’ensemble des services numériques de la ville de Paris. Et du coup, le potentiel de Lutèce s’est révélé vraiment essentiel parce qu’en termes de coûts, de maintenance et d’investissement, on arrivait à faire des choses sur mesure, en même temps des plugins qui soient génériques, des choses qui soient réutilisables et derrière, qui ont fait leur preuve parce que les choses ont quand même beaucoup évolué. En revanche, le cœur dont tu parlais, l’administration des droits, c’est des choses qui sont pérennes, qui ont évolué, mais qu’on utilise toujours.
Philippe: et c’est un gain qu’on retrouve également dans les administrateurs des plateformes, alors qu’ils ne sont pas des personnes techniques. Encore une fois, des gens qui gèrent les applicatifs métiers, qui ont accès à ces outils d’administration et qui, d’un site à l’autre, reconnaissent et sont capables de capitaliser sur une formation qu’ils ont eue ou sur leur expérience pour être performants sur d’autres sites basés sur Lutèce. Donc, au final, en interne, il y a eu un certain nombre de gains au niveau de l’équipe de développement, etc., mais aussi au niveau des agents et utilisateurs des plateformes qui se sont, une fois habitués, retrouvés tout de suite dans un environnement familier qu’ils connaissaient et ils pouvaient comme ça passer d’un site à l’autre sans douleur.
Walid: est-ce que le fait que les sources étaient assez rapidement mises à disposition, que ce soit devenu un logiciel libre, a été un gain en termes d’image ou en termes d’opportunités pour la ville de Paris ?
Philippe: alors oui, très clairement. Alors ça, pour le coup, on était la première administration, de tête, française à pousser du code libre et disponible, sous forme open source évidemment. On a bénéficié naturellement d’une curiosité qui a fait parler de nous et du projet. Donc en 2002, lorsque l’équipe municipale a voté l’ouverture du code, aussi bien la presse que de grands acteurs dans le logiciel se sont penchés sur la plateforme parce que c’était un événement en soi.
Par contre, on s’est aperçu, pour l’anecdote, qu’une communauté s’entretenait. Ce n’est pas juste bien de montrer patte blanche et de pousser du code sur une plateforme. Il faut aussi encourager, entretenir, informer, diffuser des informations, des événements, des possibilités de se réunir, de discuter et possiblement d’orienter la feuille de route également et de co-développer, co-construire cette plateforme. On en a appris un peu à nos dépens au fur et à mesure parce que ce n’est pas tellement dans nos métiers d’agent du service public que de marketer ou de communiquer sur ce type d’outils, même si on était aux manettes dans le développement.
Magali: oui, et au-delà de ça, on était très orientés projet. Autant Philippe que moi, j’étais dans une cellule dont l’objectif était de développer des projets rapidement sur la base de Lutèce et des plugins génériques. Donc, on devait sortir des choses très vite, très fort. Donc, on a sorti vite le budget participatif, rapidement Dans ma rue. Et du coup, c’est vrai qu’on a été complètement orientés sur les projets et qu’on n’avait pas de délégation de temps sur le marketing ou la promotion de Lutèce. Donc, c’est vrai qu’on n’avait pas de métier dédié à ça. Au départ, on était vraiment dans le cœur du système. C’est vraiment depuis deux, trois ans qu’on a plus de temps pour travailler sur Lutèce et faire la promotion de Lutèce. C’est vraiment récent.
Les grandes évolutions de Lutèce
Walid : moi, ce qui m’intéresserait, c’est de savoir, entre les premières versions que vous mettez à disposition, donc là, ce qu’on voit, ce que disait Magali, c’est que déjà, vous avez eu un premier travail qui était de rendre le cœur plus extensif, de pouvoir faire des plugins, etc. Quelles ont été un peu les grandes évolutions qui se sont passées sur Lutèce au fil du temps ?
Magali : alors, au départ, on a effectivement créé, développé nous-mêmes et avec des prestataires la solution. Rapidement, on a intégré des frameworks plus reconnus, dont le framework Apache. À mesure, on a intégré aussi d’autres composants, comme la gestion des logs et la gestion des caches. Techniquement, ça évolue surtout aussi par le fait de prendre d’autres solutions open source pour les intégrer. On ne fonctionne pas tout seul, on ne réinvente pas la roue à chaque fois. Et là, la dernière grosse évolution technique, c’est une migration vers Jakarta EE pour passer en compatibilité cloud native au maximum. Ça, c’est vraiment un énorme travail qui est fait en ce moment pour être dockerisable. On a une grosse évolution en termes d’infrastructures en cours.
Walid: tu peux expliquer pour les gens qui ne savent pas ce que c’est que Jakarta par rapport à Java ?
Magali: comment je vais pouvoir expliquer ça simplement ? Disons qu’on passe d’une solution qui devenait payante. Oui, en fait, nous, on a le souci de rester indépendant au niveau de l’utilisation de notre open source et des outils qu’on utilise. Java devenait payant, en tout cas, on passait là-dessus. Et ça n’a pas été dans notre politique du tout de rester dans cette dynamique-là. Et le choix a été fait de passer sur Jakarta EE, même si effectivement, ça nécessite de réécrire un grand nombre de choses. Ce n’est pas anodin pour nous cette montée de version. Est-ce que ça répond à la question ?
Walid: ça répond à la question, je me demandais si c’était une implémentation open source de Java. C’est un projet complètement séparé maintenant d’Oracle.
Magali: oui.
Walid: et communautaire.
Philippe: tout à fait.
Walid: à part ces problématiques techniques, qui sont des grosses évolutions, est-ce que vous avez eu des grosses évolutions fonctionnelles ? Là, on a parlé des plugins, etc. Est-ce qu’il y a eu des grosses évolutions fonctionnelles ?
Magali: en fait, on est passé vraiment de la partie CMS sur laquelle tu as dû travailler, et on a évolué beaucoup vers tout ce qui est service numérique. C’est-à-dire qu’aujourd’hui, on est capable avec un plugin de formulaire de créer des formulaires à étapes plus ou moins complexes qui sont adossés à des workflows et à d’autres composants et nous permet de faire un service numérique où un usager va déposer des pièces. Nous, on va être en capacité, ville de Paris de demander des pièces complémentaires, de faire progresser la demande dans un workflow avec des états de la demande, et resituer aux Parisiens où en est le traitement de leur demande.
On a mis en place l’année dernière toute la partie gestion d’identité du Parisien. Il y avait déjà un compte Paris, mais plus largement, on a géré toutes les entités du Parisien. Et du coup, on a créé un écosystème, ce que je disais tout à l’heure, avec énormément de fonctionnalités. On a une plateforme de rendez-vous où il y a plus de… combien, Philippe, 150 instances de rendez-vous ?
Philippe: non, il y en a une cinquantaine d’instances qui génèrent pas loin de 600 000 rendez-vous par an.
Magali: voilà, et donc là, ces services permettent aux Parisiens de prendre rendez-vous avec les mairies, avec différents services de la collectivité. Et derrière, il y a tous les services d’état civil qui tournent. Tout ce qui est titres d’identité, on est relié avec l’ANTS (NDLR : Agence Nationale des Titres Sécurisés). Du coup, on fait remonter nos rendez-vous sur la plateforme de l’État.
On a fait évoluer Lutèce au fil des besoins. On construit des plugins en fonction des besoins. Et là, en fait, on est vraiment motivé par le fait qu’un service numérique ne doit pas nous faire dépenser des millions d’euros pour être réalisé. Donc l’idée c’est que vu qu’on a déjà plein de composants, quand on nous demande à nouveau sur un service numérique, théoriquement les éléments dont on dispose nous permettent de faire peut-être 60 ou 80 % de la demande et on va peut-être compléter le reste avec des développements spécifiques si nécessaire.
Walid: ANTS, Agence Nationale des Titres Sécurisés, si je ne dis pas de bêtises.
Magali: c’est ça, tout à fait. C’est vrai que tout le monde ne connaît pas l’ANTS.
Walid: pas de souci.
Magali: et donc, du coup, oui, on a beaucoup de services différents et réutilisables. Fonctionnellement, oui, on est parti du CMS. Aujourd’hui, la partie CMS constitue peut-être 10 % de notre activité. Ce n’est vraiment plus le cœur de notre activité du tout. C’est anecdotique comparé au reste.
Walid: et alors, il y a une autre évolution aussi qui n’est pas technique et qui n’est pas fonctionnelle, c’est l’évolution des compétences. Comment vous êtes passés d’une petite équipe de quatre personnes à, d’ailleurs, je ne sais pas combien vous êtes ?
Magali: on est 17, donc un peu plus. Mais compte tenu de la quantité de choses qui sont portées par Lutèce, au final, ce n’est pas si énorme que ça. Comment on est passé de 4 à 17 ? Par une volonté, quand même, au niveau de la collectivité d’asseoir Lutèce. c’est-à-dire dans la mesure où le service était utilisé par l’ensemble des services numériques et le service socle pour tout le développement de la ville de Paris, on a intégré de plus en plus de compétences.
Les 17 personnes ne font pas tous les développements en interne. On garde la souveraineté, on définit les principes de ce qu’on veut faire, et ensuite, on confie les principaux axes de développement à des sociétés de prestations qui ont le marché de maintenance Lutèce.
Walid: et d’ailleurs, une fois que c’est développé, après, c’est vous qui faites la maintenance du code ?
Magali: non, on garde le pilotage de cette maintenance, c’est-à-dire qu’on organise la roadmap de développement, on priorise le besoin et voilà. Et après, le développement, il y a une partie qui est faite en interne, on a quand même des développeurs en interne qui font une partie des développements. Après, on est accompagné par une société de prestations qui réalise cette maintenance et les évolutions du cœur et des plugins associés. C’est mixte. On n’est que 17 là où les sociétés de prestations ont une force de frappe beaucoup plus importante que nous. Du coup, on s’appuie beaucoup sur les prestataires de services.
La définition des évolutions
Walid: pour terminer sur cette partie-là, comment vous définissez les orientations ? Comment vous dites, dans la prochaine version, on aimerait faire ça ?
Magali: on a beaucoup de services numériques qui utilisent des outils. On a des retours des utilisateurs qui nous indiquent que j’aimerais bien voir apparaître telle fonctionnalité ou telle fonctionnalité parce que ça leur manque. Du coup, on l’inscrit dans la roadmap, on définit effectivement le caractère générique de la fonctionnalité, voir si ça intéresse toute ou partie des gens. Et après, on lance le développement. Et en fonction des projets, pour l’instant, au priori, effectivement, la réalisation, en fonction des projets, on est en interne. C’est eux qui nous font vivre aujourd’hui. Ça reste les projets qui nous font vivre.
La communauté autour de Lutèce
Walid: ok, très bien. Pour revenir à ce qu’on disait un petit peu en introduction, si on passe maintenant sur la communauté, à part les mairies et donc Paris au sens large, qui d’autres utilisent Lutèce ? Quel rapport vous avez avec ces gens-là ? Est-ce que vous les connaissez ? Comment vous interagissez avec eux ?
Philippe: moi, j’ai l’intention d’animer trois types de communautés. La toute première, c’est celle dont je viens de parler, que j’identifie comme fonctionnelle. Ce sont des villes, des utilisatrices, des utilisateurs qui ont un besoin et qui souhaitent disposer d’un outil qui permette de répondre à un besoin. Pour ça, il n’y a que les villes. Il n’y a que les utilisateurs qui peuvent identifier leurs besoins, le nommer, le définir et de voir si l’outil correspond à la réponse à ce besoin. Ce n’est pas une équipe technique qui va dire « Oui, je crois que cet outil, on l’a testé, il va bien. » Non, c’est aux équipes fonctionnelles et métiers de se prononcer là-dessus. J’estime qu’une communauté qui sait parler du logiciel et qui sait se concentrer uniquement sur le fonctionnel plutôt que sur la technique ou de mélanger un peu tous ces sujets est beaucoup plus efficace.
Ensuite, une communauté technique, parce que, comme Magali le disait, rien que pour la ville de Paris, on a un certain nombre de partenaires extérieurs qui sont amenés à travailler sur la plateforme. Ces intégrateurs-là, ces partenaires, sont amenés aussi à développer du service Lutèce ailleurs. Donc, il est de bonne intelligence de travailler avec eux, d’animer cette communauté technique et d’être en mesure de les guider, de les accompagner et de leur proposer une partie du support, mais également des comités d’architecture où on soit capable de leur dire, « non, non, attendez, ça, c’est pas dans les règles de l’art de Lutèce, c’est pas comme ça que Lutèce a été pensé, et comme ça que Lutèce pourra accepter vos contributions, donc s’il vous plaît, veillez à telle et telle contrainte. De cette façon, on pourra tous en bénéficier ».
Et la troisième communauté, ça peut paraître plus anecdotique, mais c’est une des plus dynamiques en ce moment, c’est la communauté de traducteurs. Parce qu’on s’est rendu compte qu’il y avait un intérêt croissant à l’étranger. Et sur plusieurs présentations que j’ai pu faire auprès d’homologues, notamment européens, j’ai été amené à voir un intérêt de leur côté. Et présenter une solution dont l’interface est purement en français. Bon, je voyais des yeux écarquillés, j’ai bien compris qu’il fallait que je leur présente quelque chose dans leur langue. J’en suis pas capable, donc ce sont ces mêmes personnes qui ont accepté de contribuer et de participer à un hackathon que j’ai organisé, qu’on a organisé en octobre 2023 et qui a permis donc de traduire le cœur de Lutèce, donc cette partie socle qui est commune à chacun des sites Lutèce, en six langues intégralement. Et six nouvelles ont reçu des contributions qui ont permis d’avancer. Là, la prochaine étape, c’est de se concentrer sur les fonctionnalités métiers pour avancer sur les traductions, notamment de ces six langues, pour pouvoir permettre de proposer du test intégralement traduit à ces communautés qui font réellement preuve d’intérêt pour les développer et les implémenter localement.
Walid: donc si je reprends, il y a d’un côté les utilisateurs utilisatrices finaux, de l’autre côté il y a toutes les personnes techniques qui peuvent contribuer au code et donc ça inclut les sociétés.
Philippe: tout à fait. Ou même d’autres villes et administrations qui ont des compétences techniques en interne. C’est notre cas et ça existe.
Walid: mais vous avez une volonté de faire un écosystème avec des sociétés partenaires qui sont capables d’intégrer du Lutèce ?
Philippe: idéalement, oui, parce que lorsqu’on répond à des homologues, à d’autres administrations françaises, d’autres villes, agglomérations de communes, etc., qui viennent nous voir et qui nous disent « Tiens, fais-moi voir ton Lutèce, comment tu le fais fonctionner et comment je peux, moi, le réutiliser », c’est quand même une des raisons pour lesquelles on l’a mis open source, sans parler de la transparence, des algorithmes et des services derrière, évidemment. Mais le but était de le partager et que les gens se le réapproprient.
Les évènements autour de Lutèce
Walid: et alors, tout à l’heure, tu as parlé d’un hackathon. Est-ce que vous organisez d’autres événements pour que les gens se rencontrent ? Que ce soit en ligne ou que ce soit physique.
Philippe: on a eu organisé par le passé certains événements physiques. Une plateforme dédiée à ça, dont le nom m’échappe, mais dont on reprend un petit peu les rênes pour remettre ces groupes de discussion. Clairement, ce sont des groupes de discussion basés principalement sur des individualités, comme dans ce milieu, dans cet écosystème open source. Donc de remettre ces rencontres physiques possibles, parce que c’est vraiment là que se font les contacts, que les décisions sont prises, et qu’on est capable d’évaluer la maturité d’un projet open source et le dynamisme d’une équipe de développement derrière. Donc il n’y a que comme ça, réellement, qu’on peut le faire.
J’ai également en tête de monter des webinaires réguliers qui soient orientés pour ces différentes communautés que j’ai citées précédemment, pour leur permettre d’identifier aussi qui les utilise, qui est là, qui ne soit pas tout seul, qui soit rassuré par le fait qu’il ne soit pas tout seul, et que si une décision est prise, s’il y a un bug qui venait à être détecté, qu’il soit rassuré sur le fait que si ce n’est pas eux… tout le monde n’a pas des capacités techniques sous la main et prêtes à dégainer, que ce soit ville de Paris ou que ce soit une autre ville qui soit en mesure de proposer un correctif qui puisse être déployé rapidement et comme ça, tout le monde en bénéficie.
Donc c’est vraiment ça qu’on cherche à faire. Et donc par ce genre de webinaire, au-delà de s’identifier, c’est aussi faire des flashs, des coups de projecteur plutôt, aussi bien techniques que fonctionnels, pour présenter l’évolution des outils, l’évolution du produit, des fonctionnalités qui peuvent être méconnues, pourquoi pas des petites sessions de formation. Dire voilà, « si vous souhaitez vous intégrer dans ce type d’utilisation, voilà comment on vous le propose, voilà comment nous on le fait, voilà comment ça se fait sur la plateforme ». Parce qu’on a une documentation qui est là, mais elle est assez conséquente. On reste dans une administration, et pas Google avec juste un champ de recherche, un bouton pour lancer une requête. C’est un peu plus complexe que ça.
Lutèce et la concurrence
Walid: très bien. Je vais dire, mes questions suivantes qui en découlent, c’est la gouvernance. Mais avant, je voudrais juste qu’on revienne 5 minutes sur la concurrence. Bon, des concurrents, je pense qu’il y en a plein de manière générale. Comment vous comparez par rapport aux concurrents ? Est-ce que vous avez vraiment des points forts ? Et aussi, est-ce qu’il y a des concurrents, il y a des choses que vous voyez à l’extérieur qui vous inspirent aussi pour le développement de Lutèce ?
Magali: alors, des concurrents, effectivement, il y en a, mais pas sur le même segment que nous. Encore une fois, nous, on est excessivement transverse. Et du coup, si tu veux, il y a des concurrents comme Liferay, Jahia, sur la partie CMS, on a OpenCMS et Ametys. Il y a aussi Public qui propose une offre assez proche de la nôtre par certains aspects. après, les concurrents, on va en avoir plus sur des segments vraiment, par exemple rendez-vous, tu vas avoir des outils pour créer des rendez-vous. Tu vas avoir un outil pour gérer des formulaires, tu vas avoir la plateforme Decidim qui va être centrée sur la participation citoyenne, mais on ne va pas vraiment avoir une offre transverse avec une société ou une collectivité qui va proposer un ensemble de services comme nous on fait.
Ça, c’est la vraie différence. Et la vraie différence, c’est que nous, on est vraiment open source. C’est-à-dire, on parlera de Cité libre tout à l’heure, mais vraiment, l’idée, c’est vraiment de donner les éléments à d’autres collectivités, des associations, des acteurs divers, variés, pour qu’ils puissent reprendre notre code, nos plugins, pour créer leurs solutions.
Et là-dessus, effectivement, je ne pense pas qu’il y ait de société ou de collectivité qui propose ce que nous, on propose. Aujourd’hui, à l’échelle… France ou même ailleurs, je ne vois pas d’autres organisations qui proposent ce que nous, on fait.
Alors là où, effectivement, après, on a des choses plus fines sur vraiment des secteurs d’activité précis. Moi Decidim, ce qu’ils font, je trouve ça génial. Je trouve que c’est très bien, mais ils n’adressent qu’une toute petite partie de l’activité.
Et la difficulté qu’on a, nous, c’est de nous spécialiser sur quelque chose de particulier parce qu’en fait, ce n’est pas notre objectif. On n’a pas pour objectif d’être spécialiste vraiment de quelque chose. On reste générique, on veut rester volontairement un peu haut par rapport aux services qui sont proposés, parce que nos services, ils sont déclinables. Faire du rendez-vous pour faire du formulaire. Et du coup, si tu veux, on fait des plugins métiers particuliers, mais c’est vrai qu’on évite la majeure partie des cas.
Magali Lemaire
Walid: pour les gens qui sont intéressés, j’ai interviewé Valentin Chaput l’année dernière pour parler de Decidim. L’histoire est assez intéressante, puisqu’il y a quelques parallèles aussi, puisque ça vient de la mairie de Barcelone. Et sur les aspects gouvernance, il y a des choses aussi très intéressantes.
Philippe: à l’origine, ça vient de Consul, qui était un projet madrilène.
Walid: c’était un peu des bisbises entre Madrid et Barcelone. Et finalement, Barcelone a fini. Enfin, c’est ça, mais il y a des choses très intéressantes. Je pense en particulier au fait qu’à un moment, ils ont fini par sortir Decidim de la mairie de Barcelone pour éviter les problématiques de changement de majorité politique.
Ce qui, vous, dans votre cas, je suppose qu’il y a un consensus politique au fil du temps pour continuer à travailler là-dessus, mais eux, ils avaient cette problématique-là. Bref, ce n’est pas le sujet de l’épisode.
Magali: pour répondre à ta question, Decidim, effectivement, super intéressant. Public aussi, il y a des choses intéressantes. Après, il y a des initiatives au niveau de l’État, comme celle de la DINUM, de par leur force de frappe qui est… Vraiment, nous, on trouve ça fascinant parce qu’ils ont une possibilité de diffusion assez importante. La seule chose qu’on regrette, c’est de ne pas travailler assez avec eux, de ne pas être assez embarqués dans leurs solutions pour arriver à diffuser ce que nous, on fait. Ça, on le regrette, nous, quand même profondément.
On aimerait arriver à travailler, à diffuser nos solutions à un niveau un peu plus élevé, puisque je pense que ce qu’on propose, c’est recréé par ailleurs et c’est dommage.
Qu’est-ce que Cité libre ?
Walid: ça m’amène à la transition suivante. Le mieux, c’est que vous introduisiez Cité Libre pour introduire le constat qui a amené de passer de Lutèce à Cité Libre. Qu’est-ce que Cité Libre ? Et quel est le constat qui fait que vous en êtes arrivé à créer Cité Libre ?
Philippe: Cité Libre, c’est une réponse qu’on a trouvée pour améliorer et surtout améliorer la capacité à être diffusée de Lutèce, tout en réduisant la difficulté technique qui est liée aujourd’hui.
Juste pour illustrer l’exemple, c’est que quand je disais tout à l’heure une administration, une ville, n’importe quoi, qui vient nous voir et qui disent « Tiens, j’aime bien ton Lutèce, comment je peux m’en servir ? », notre réponse pendant 20 ans, ça a été « Ben, va voir sur GitHub ! ». Je veux dire, on a été suffisamment technique pour le faire, estimé avoir affaire à des gens techniques majoritairement.
À tort, parce qu’une fois sur GitHub, si on n’est pas développeur, intégrateur ou ingénieur en informatique, on a juste des répertoires avec des fichiers sources et on ne sait pas forcément comment intégrer. D’autant plus que Lutèce est une plateforme extrêmement modulaire et générique, ce qui fait que pour implémenter un service comme Rendez-vous, par exemple, on parle d’un assemblage de pas loin de 70-75 modules et qu’il n’y a pas une documentation qui dise fonctionnellement : si vous voulez faire du rendez-vous avec un raccordement et un gestionnaire de file d’attente, il faut prendre tel plugin, mais attendez si vous êtes sur tel type de file d’attente, il faut tel module… C’est quand même extrêmement complexe.
Ça faisait quelques années qu’on réfléchissait à mettre en place un système qui puisse déployer un service numérique complet, mais vraiment le plus complet possible, tel qu’on l’utilise nous en fait, à l’identique, sur les mêmes versions, avec les mêmes compatibilités de version, les mêmes fonctionnalités. Mais c’est clairement le manque de temps qui nous a empêchés de le faire.
Mais là, depuis deux ans, on a eu l’autorisation de créer Cité Libre, qui vient s’inscrire comme la solution de package pré-assemblé basé sur Lutèce. Donc, on évite maintenant de parler Lutèce, parce qu’au final, c’est une plateforme technico-technique dont on peut parler avec des gens qui s’y connaissent et qui veulent contribuer. Là, évidemment, il va falloir parler technique. Mais pour ceux qui souhaitent rester au niveau service, en fait, inutile de parler du plugin OAuth2 ou SSO, etc. Au final, vous souhaitez quoi comme type d’authentification en SSO ? On va vous recommander cet assemblage-là. Mais l’assemblage, au final, on l’a déjà vécu, on l’a déjà mis en place chez nous, donc on a industrialisé un certain nombre de services numériques chez nous.
Donc autant en faire profiter, au même titre que du code mais en open source, des assemblages déjà faits, avec une liste de composants qu’on recommande et qu’on utilise nous en interne, pour les citoyens parisiens. Avec des versions compatibles et avec des fonctionnalités qui sont clairement établies, parce que ça répond à un besoin qui a été déjà défini.
Donc, tout ça pour dire au final que Cité Libre propose des services pré-assemblés. Alors, je ne vais pas aller jusqu’à dire prêts à l’emploi, mais prêts au test, en tout cas, pour un déploiement facile en local, sur une machine. On met en place un certain nombre de serveurs qui permettent de montrer toute la puissance sur un jeu de test qu’on propose également. Toute la puissance d’un outil, tout le fonctionnel, les notifications, la puissance du workflow, comme le disait Magali, tout ce qu’il est possible de faire pour permettre aux prospects, alors j’aime pas trop ce terme parce que je suis pas un commercial ni un vendeur, mais au final aux gens intéressés de dire « Bon bah ouais, en fait ça colle à mon besoin ».
Philippe Bareille
Voilà Cité Libre. Et l’intérêt aussi à travers ça, c’est de proposer ces fonctionnalités en marque blanche. C’est-à-dire qu’il y a tout un graphisme et un univers graphique propre à Cité Libre, mais tout est fait pour une appropriation de cette interface graphique par les utilisateurs des packages Cité Libre, pour leur permettre de garder un parcours usager le plus cohérent possible aux couleurs de leur administration.
On ne veut pas, je ne citerai aucun fournisseur de rendez-vous par exemple, mais basculer comme ça du site de sa mairie ou de son administration vers la plateforme XX qui fasse du rendez-vous : « Ah mince, mais attends, je ne sais pas où je suis, je ne sais pas d’où je viens, est-ce que je suis bien sûr de prendre rendez-vous à cet endroit-là ? Que se passe-t-il de mes données ? » Parce que c’est quand même aussi un critère important.
Ben non, en fait, Cité Libre, si vous le mettez à votre charte, reste dans l’écosystème de votre organisation.
Walid: est-ce qu’en simplifiant, on ne pourrait pas dire que, peut-être que je me trompe, que Lutèce, c’est le projet et que Cité Libre, c’est le produit, quoi ? Pour rester dans un…
Philippe: tout à fait.
Walid: c’est un peu de la productisation. Pour avoir une diffusion.
Philippe: c’est tout à fait ça. Et ça permet aussi de recentrer le discours commercial. Non, encore une fois, je ne me suis pas commissionné à chaque adoption, mais en tout cas, de recentrer le discours sur du service fourni aux citoyens et non un assemblage technique.
Magali: ça permet surtout d’avoir une approche fonctionnelle auprès des collectivités et de leur parler un langage qu’elles comprennent. Pour l’instant, on était quand même très technocentrés. Et Lutèce, quand on expliquait ce que c’était, les gens ne comprenaient pas. Clairement, on avait quand même une grosse difficulté à définir ce que c’était Lutèce et ce qu’on pouvait faire.
Et du coup, avec Cité Libre et en déclinant des services au sein des collectivités pratiques – l’état civil, la prise de rendez-vous, des services pour enlever un encombrant – des choses qui parlent aux gens en fait. Et en montant des services qui parlent vraiment aux collectivités avec leurs préoccupations quotidiennes. Du coup, là, on arrive à passer sur un autre plan. On arrive à discuter, à les intéresser beaucoup plus qu’en parlant technique.
Walid: et alors, la création de Cité Libre, qu’est-ce que ça a représenté pour vous en termes d’équipe ? C’était beaucoup de travail ?
Philippe: non, du tout. Parce que comme je disais tout à l’heure, on a déjà industrialisé la plupart des services proposés par Cité Libre et inclus dans Cité Libre. Donc, au final… je vais essayer de rester éloigné de la technique, mais on a un fichier d’assemblage et un thème graphique à appliquer à un site.
Donc au final, le temps réellement passé à reconstruire ou en tout cas à génériser ces applications qu’on utilise, c’est de l’ordre de quelques heures, honnêtement.
Le plus compliqué aujourd’hui, parce que si vous allez sur le GitHub, Cité Libre a son propre GitHub, vous verrez qu’il y a un certain nombre de commits et d’activités dessus, mais au final, ce sont de nouvelles fonctionnalités qu’on n’utilise pas forcément chez nous, mais qu’on souhaite mettre à disposition des gens qui souhaitent le mettre en place et le tester, pour leur montrer la puissance notamment, je ne sais pas moi, de l’authentification en back-office, donc à l’interface d’administration, via un annuaire d’entreprise.
Voilà. Donc ça, on l’a fait nous, parfois, mais étant donné qu’on l’a fait, on le propose également.
Donc tout ça basé sur des… alors, on n’a pas tout développé. On réutilise aussi beaucoup d’open source et des briques libres, mais c’est basé sur des standards, et c’est ça qui nous permet d’enrichir ces offres. Même si on n’est pas forcément utilisateur, on se dit que ça a tout intérêt à venir compléter l’offre.
Walid: et vos premiers retours ?
Philippe: les premiers retours sont extrêmement intéressants. J’ai énormément d’interlocuteurs, aussi bien dans des villes que des départements qu’à l’étranger. Maintenant, ça y est, je suis capable de leur dire : voilà la commande à taper pour déployer un service Cité Libre dans votre langue. Tout de suite, ça ouvre des portes qu’on n’aurait pas eues auparavant sans un certain investissement côté testeur. Aujourd’hui, c’est beaucoup plus pratique. Il y a énormément de tests et de benchmarks en cours parce qu’on est aussi dans l’administration. La prise de décision, on est souvent challengé face à des solutions d’entreprise, qui elles proposent des offres en SaaS ou là, pour le coup, juste du turnkey, du prêt à l’emploi.
On n’en est pas encore là. De toute façon, on n’a pas le droit, nous, Ville de Paris, de proposer ces services en SaaS. Par contre, on sait que également en plus de cet intérêt auprès de futurs utilisateurs, on a aussi créé un intérêt ou recréé un intérêt auprès d’intégrateurs qui se disent qu’ils peuvent aussi proposer ce service-là. Donc de proposer des services Cité Libre en SaaS qui pourraient être déployés, maintenir et supervisés pour leurs clients.
La licence de Lutèce
Walid: deux remarques parce que je m’aperçois que, un, j’ai oublié de vous demander quelle licence c’était, donc on va y revenir. Et deux, pour les gens qui sont intéressés par toutes ces problématiques autour de l’évaluation, justement, je vous invite à aller voir la conférence d’Open Source Experience que j’ai republiée, qui s’appelle « Comment évaluer le logiciel libre ? », dans laquelle on parle de tous ces sujets-là, aussi les sujets du public.
Donc ça peut être aussi un complément là-dessus. On parle de SaaS, etc. J’ai complètement oublié de vous demander : quelle licence il y a sur Lutèce ?
Philippe: on est sur une BSD-2. Le choix a été pris il y a 24 ans. Ça n’a pas changé depuis. Pourquoi ? Parce que c’est un des types de licences les plus permissifs possibles. Aujourd’hui, ça permet à quiconque, en plus de l’intégrer chez soi, de se le réapproprier, de développer dessus, de contribuer et de le refournir. Le choix de ce type de licence était motivé vraiment par l’absence de barrière à l’adoption de Lutèce. Vraiment aucune.
La création de l’OSPO de la mairie de Paris
Walid: si maintenant on passe sur le dernier gros sujet, parce que l’heure tourne, qui est la gouvernance, c’est là que ça devient assez intéressant aussi. Non pas que le reste ne l’est pas, mais parce qu’on va définir le mot OSPO, dont je n’ai pas encore trop parlé sur le podcast, et il y aura un épisode de définition un peu plus tard dans l’année là-dessus.
Est-ce que vous pouvez expliquer un petit peu ce que vous avez mis en place en termes de gouvernance autour de toutes ces contributions ? Parce que je n’ai pas posé la question de savoir si l’expérience de Lutèce vous a donné envie et est-ce que vous contribuez à d’autres logiciels depuis ? Donc en fait, c’est un peu le moment pour commencer à parler de ces sujets-là.
Philippe: d’accord. Alors l’OSPO ? C’est une notion qui, alors je te laisserai en parler lors d’un prochain épisode, mais en tout cas, c’est extrêmement important parce que c’est ce qui a permis, nous, déjà la création de Cité Libre, en tout cas de justifier un meilleur facteur de diffusion de notre plateforme.
Non pas juste en disant qu’on fait de l’open source, mais aussi en prenant les actions en face pour le concrétiser.
Walid: ah les deux sont liés ?
Philippe: tout à fait, tout à fait. Une partie de la feuille de route de l’OSPO, donc OSPO ça veut dire Open Source Programme Office.
Ça a été organisé à la Ville de Paris, en tout cas on a commencé à en parler en 2019, on l’a mis réellement en place en 2022. C’est une notion, ce n’est pas une équipe à proprement parler, c’est du temps que je dédie sur une activité qui nous permet d’être un bon acteur professionnel dans cet écosystème open source qui est complexe, qui jusqu’à il y a quelques années, notamment avec Pierre Lévy, était soutenu et garant de notre bon comportement dans cet écosystème.
Et au final il était temps de concrétiser cette empreinte, cette prise sur le secteur, en se disant, en fait, l’open source n’est pas juste poser du code, n’est pas juste réutiliser du code, n’est pas juste faire un peu de doc et considérer que notre code est quelque part réutilisé. Ça a aussi des vertus dans le milieu RH, ça peut être un vrai argument de recrutement. Ça peut nous permettre de réfléchir à : est-ce qu’un agent du service public peut contribuer, en tout cas du service public à la Ville de Paris, dans un environnement plus localisé ? Qu’est-ce qu’on fait des besoins et des envies de contribution à d’autres projets ? Donc ça, la réponse a été traitée. Et ensuite, comment est-ce qu’on peut professionnaliser notre approche et notre usage de l’open source ?
Philippe Bareille
C’est ce qui nous permet, nous, de justifier un peu plus de participation à des salons, à des conférences, etc., pour montrer un petit peu et parler de notre politique open source et de s’assurer que ce soit correctement ou le plus correctement appliqué en termes plus concrets.
Walid: est-ce que le fait d’avoir l’OSPO, c’est ce que je comprends sous-entendu, vous fait plus contribuer ? Ou en fait, l’OSPO va juste servir à faire ça dans les règles de l’art ?
Philippe: alors, l’OSPO permet déjà d’avoir une personne à contacter quand on est à l’extérieur et qu’on veut savoir comment la politique de la Ville en termes d’open source est mise en œuvre. Ça tombe dans une boîte qui est relevée et une personne qui suit ça. Nous, on a profité pour mettre en place des métriques sur les contributions extérieures, etc. Donc, on a des tableaux de bord qui nous permettent de mieux suivre les tentatives de contributions de l’extérieur.
Donc, je dirais que le sujet est extrêmement vaste. On s’est basé sur une méthode qui est, j’espère, connue maintenant. Ça fait quelques années que ça existe. C’est l’Open Source Good Governance Initiative, avec la Fondation Eclipse et OW2 et d’autres acteurs du secteur privé, notamment.
On a défini un cadre de déploiement ou de mise en place d’un OSPO dans n’importe quel type de structure. Le but étant de se dire : quel que soit notre background, notre environnement, notre périmètre, sachez que l’open source peut avoir un impact là-dessus. Donc si c’est un de vos objectifs du numérique, dans votre gouvernance, etc., sachez que l’open source peut avoir une emprise, peut avoir une influence et un impact positif dessus.
Donc au final, en se basant là-dessus, on a une espèce d’éventail de sujets couverts et qui peuvent être résolus par une approche supervisée par cette gouvernance et qui permet donc évidemment, de traiter toutes ces bonnes pratiques et toutes les règles qu’on souhaite mettre en place pour des contributions, soit de nous à l’extérieur, soit de l’extérieur sur nos projets.
Voilà, j’espère avoir répondu à ta question.
Walid: c’est intéressant. Et qu’est-ce que ça vous apporte en termes de relations avec l’écosystème, avec d’autres acteurs publics, etc. ? Est-ce que ça vous place dans une position, parce que ça fait longtemps que vous faites du logiciel libre par rapport à d’autres, est-ce que ça vous place dans une position où on vient vous voir pour prendre des conseils, on regarde ce que vous faites, etc. ? Est-ce que finalement, ça met plus en avant ce que vous faites depuis des années ?
Philippe: alors oui, ça nous permet d’avoir une meilleure visibilité, évidemment, et de considérer cette visibilité comme nécessaire et indispensable, en fait, à la bonne évolution du produit et à cet aspect de partage qui est nécessaire.
Encore une fois, la politique open source de la Ville n’est pas juste motivée à publier du code. C’est également faire partie d’écosystèmes pour réfléchir et permettre d’établir des communs sur lesquels on n’impose pas nécessairement tout ce qu’on fait. Évidemment, on travaille de pair avec d’autres organisations, mais le chapitre Lutèce et Cité Libre n’est pas le seul de l’OSPO. L’OSPO permet également de suivre d’autres projets sur lesquels, soit on n’est pas contributeur, mais on est juste utilisateur.
Donc quels sont nos droits et nos devoirs en tant qu’utilisateurs d’une plateforme ou d’une solution open source, qu’est-ce qu’on peut faire et comment on doit s’intégrer ?
Donc c’est également un point d’entrée, comme je le disais, un point de contact qui est indispensable. Et cette notion d’OSPO, alors elle existe depuis 25 ans dans le secteur privé, dans le public on a découvert ça plus récemment. Mais on est en train, pareil, avec la Commission européenne – enfin, on n’est plus en train, on anime maintenant des groupes de travail avec la Commission européenne et des homologues dans les États membres, que ce soit au niveau des villes ou des gouvernements nationaux, on organise quelques rencontres dans l’année. Ce n’est pas énorme, mais en ligne, on a des discussions sur nos feuilles de route respectives, sur l’application de certaines choses ou du partage de problématiques qu’on peut avoir au quotidien, et comment est-ce que les autres les résolvent.
Donc c’est un vrai apport, c’est un vrai atout que de s’être organisé comme ça et de s’être réuni en tant que Programme Office de l’open source.
L’organisation pour accueillir des contributions externes
Walid: une question qui est liée à ça… Comment vous comptez vous organiser si demain, vous commencez à avoir, par exemple, des contributions d’organismes étrangers qui, eux, vont arriver avec des problématiques spécifiques ? Je pense à l’authentification, ce genre de trucs, etc. Comment vous allez vous organiser pour, justement, contribuer ?
Je pense que c’est comme un ERP avec les comptas dans tous les pays. Est-ce que vous avez déjà des idées de comment vous allez organiser ça pour qu’à la fois, vous continuiez à travailler sur le projet, mais aussi que des gens puissent arriver et contribuer sur des problématiques externes sur lesquelles ils ne pouvaient pas forcément avoir la main ou des manières de vérifier un peu tout ça ?
Philippe: en fait, on a déjà eu l’expérience par le passé de tentatives de contribution qui ont dû être refusées. C’est toujours malheureux parce qu’on voit toujours des efforts finalement vains et en tout cas qu’on ne peut pas valoriser, malheureusement. Mais ça, c’est pour plein de raisons. Une des premières, c’est un non-respect de règles : des règles de nommage, des règles d’architecture, etc. D’autres peuvent être, malheureusement, des spécificités trop importantes qu’on ne peut pas considérer comme génériques. Je veux dire, Lutèce est une plateforme générique avant tout. Donc là, ce qui serait idéal, parce que ça ne s’est pas toujours passé comme ça par le passé, c’est que la structure ou le commanditaire de ces évolutions nous contacte en amont et dise : « Bon, j’ai l’intention de faire réaliser ça. Selon toi, comment je dois le faire ? »
Et là, on ne parle pas de le faire pour eux, on parle juste de les accompagner et de leur donner 2-3 directives à respecter pour que ça puisse s’intégrer totalement dans l’univers Lutèce.
Il y a une question de généricité et une question de rentrer dans le spécifique du besoin du métier. Là-dessus, la réponse d’architecture serait de développer un composant qui vienne se brancher à un composant générique, qui puisse adresser tous les différents systèmes spécifiques. Donc ça, il suffit juste de donner ce genre de conseil pour dire :
« Est-ce que vous connaissez ? Est-ce que vous allez respecter ça ? Si vous le respectez, montez un GitHub à côté, dites que vous êtes un projet ou un repo Lutèce compliant, et hébergez vos propres données spécifiques, ou vos propres codes et projets spécifiques, et tout se passe bien. » Après, ce jeu d’assemblage peut aller chercher des projets à droite à gauche. On peut imaginer sur les GitHub de la Ville de Paris, pour tout ce qui est vraiment purement générique, et l’entité ou la structure qui contribue peut tout à fait proposer ses propres outils que eux ont dû mettre en place pour satisfaire leurs besoins.
Walid: ok, c’était une question que j’avais après : est-ce qu’en fait, les gens peuvent faire leur propre catalogue de plugins finalement, qui sont justement spécifiques pour eux, ou des besoins qu’on n’aurait pas en France, ce genre de choses ?
Philippe: tout à fait. Nous, du coup, on a fait la même. En toute transparence, on a un repository aussi en local, qui n’est pas public, justement pour aller finement dans certains besoins qu’on a jugés spécifiques, donc qu’on ne peut pas partager, parce que tous nos devs ne sont pas forcément open source.
Par contre, dès qu’on peut faire du générique, on le fait et on le met en partage.
Les implications de produire du code Open Source
Walid: une dernière question là-dessus. Est-ce que le fait que ça soit du code libre, ça change quelque chose quand vous créez le code ? Je suppose qu’il n’y a pas de différence entre un plugin propriétaire que vous faites pour vos besoins à vous et un plugin open source. Mais est-ce que vous, en termes de développement, ça vous change quelque chose ou ça vous met une contrainte particulière par rapport au développement ?
Magali: oui, bien sûr, ça nous met une contrainte particulière.
Le fait de développer quelque chose de générique, qui puisse s’adresser au plus grand nombre, ça exige plus de temps de conception, de réflexion, pour arriver à définir quelque chose qui puisse être évolutif et qui n’aille pas trop dans le détail pour répondre à un besoin pour que ça reste à un niveau… toujours, on essaye… En fait, la problématique qu’on a, c’est finalement de rester à un niveau au-dessus, et c’est plus compliqué que d’aller répondre aux besoins spécifiques de la personne qui te le demande. Parce que du coup, tu vas te dire : « Je suis obligée de remonter d’un niveau dans ma réflexion pour rester générique. » Et concevoir du générique, c’est plus compliqué que de développer quelque chose de spécifique qui va être jetable, pour évoluer sur un autre projet ou faire un fork d’autre chose.
Magali Lemaire
Là, on a vraiment cette problématique de se dire : on fait quelque chose qui est durable. Il faut qu’on se pose, il faut qu’on évalue les possibilités d’évolution, comment on va pouvoir avoir des interfaces, quelles vont être les API à mettre en œuvre avec d’autres systèmes. C’est comme une partie d’échecs : on compte le coup d’après pour concevoir notre solution. Du coup, oui, je pense que ça demande un effort de réflexion et aussi un investissement financier qui n’est pas neutre. C’est plus long de développer quelque chose de générique que de développer quelque chose de spécifique. Alors, dans un premier temps. Après, sur le long terme, c’est plus rentable.
Relation entre équipe de dev et l’OSPO
Walid: quelle est la relation entre vous, le service de développement, et l’OSPO ? Quelles sont vos relations, en fait ?
Magali: Philippe va t’expliquer lui comment il fait son animation et moi je vais t’expliquer mon point de vue.
Philippe: merci Magali, je vais commencer par dire qu’on est totalement dépendants l’un de l’autre. Je vais les voir régulièrement, on a des points hebdomadaires pour se tenir informé, je me tiens informé des nouveautés sur les plugins génériques, de ce que je peux intégrer ou pas, des montées de versions sur un assemblage qui va par exemple instruire les demandes, procédure administrative basée sur le workflow, etc. Donc je vais être au courant comme ça de montées de versions que je suis capable de faire et que je dois faire pour tenir informés les utilisateurs et pour leur mettre à disposition.
Donc j’ai, moi, cette petite maintenance à faire des packs sur la base des informations que j’ai des équipes de Magali. Ensuite, inversement, mon action permet… Alors, eux sont principalement dédiés à l’implémentation des projets de la mandature et de l’exécutif. Mais de temps en temps, je peux également dire, tiens, j’ai un besoin, j’ai une idée d’intégration dans un service parce que je sais que je vais avoir une réutilisation derrière. Donc, est-ce que vous pouvez m’aider sur un détail technique ? Parce que bon, j’ai été développeur une dizaine d’années auparavant, donc je ne suis pas tout à fait autonome parce que vraiment, c’est quand même deux métiers différents. Mais ce background technique, moi, me permet d’en faire une certaine partie, mais sur certaines, je sèche et j’ai besoin d’une intervention, d’une équipe support pour me permettre de mettre en place de nouveaux services ou d’ajouter de nouvelles fonctionnalités à mes services.
Magali:
pour moi, ça permet de donner une autre dimension à notre métier, c’est-à-dire que ça nous permet de prendre de la hauteur sur ce qu’on réalise et le réemploi qu’on peut en faire notamment au niveau de l’OSPO. En fait, le partage d’expérience qu’on peut avoir des autres collectivités, les retours qu’on a de Philippe, ça nous nourrit aussi. C’est important aussi d’avoir effectivement le développement projet, mais aussi d’avoir la projection de Philippe de l’extérieur et le regard qu’il nous apporte de l’extérieur parce que ça nous permet de lever un peu la tête de la feuille et de considérer qu’effectivement on peut s’ouvrir à d’autres, que d’autres peuvent contribuer. Alors on le sait, mais effectivement, avec Philippe, ça se matérialise.
Magali Lemaire
Et ça, c’est important pour les équipes de voir effectivement qu’on peut intéresser Lyon, Bordeaux, Marseille, qu’on peut intéresser l’étranger. On a quand même pas mal travaillé avec les États-Unis, avec Bloomberg. Il y a quand même beaucoup de choses qui arrivent à rayonner. Et pour les équipes qui travaillent sur les projets, je pense que c’est hyper important de voir qu’effectivement, ça a une résonance autre qu’au sein de la Ville de Paris et sur leurs propres projets.
Philippe: tu as dit quelque chose d’important sur lequel je me permets de rebondir, c’est qu’effectivement, l’OSPO permet de concrétiser, matérialiser le travail qui est fait par les équipes de dev et les chefs de projet technique au quotidien. Et de se baser sur des faits, des chiffres qui permettent de faire du reporting, de faire de l’auto-évaluation, d’atteinte d’objectifs, etc. plutôt que de compter juste sur le souvenir qu’a chacun de son rôle et de ce qu’on attend de lui.
Magali: je pense que pour compléter juste, je crois que ça complète, ça donne la dimension open source. Tu vois, open source finalement, dire que c’est open source c’est bien, mais ce n’est pas suffisant. L’OSPO, ça va permettre vraiment de le concrétiser. Moi, je dirais vraiment ça. Ça valorise le travail des gens.
Walid: en parlant de valorisation du travail, c’est quand même valorisant de faire du code qui est utilisé par les concitoyens et qui peut être réutilisé par d’autres. Est-ce que c’est une grosse motivation dans les équipes ?
Magali: j’espère. Oui, oui. Moi, je pense qu’on a un certain nombre de personnes qui sont très engagées. Je pense que de toute façon, si tu viens dans notre équipe et que tu viens faire de l’open source, tu es forcément engagé.
Parce que c’est quand même prenant, c’est intéressant, c’est hyper diversifié. Et puis, on a quand même tout ce sens de l’engagement pour le service commun. Donc, je pense que oui, je pense sincèrement qu’on a tous ce côté-là.
Walid: les gens qui viennent travailler dans l’équipe, ils faisaient de l’open source avant ou pas du tout ?
Magali: pas mal, oui. Pas tous, mais au niveau de l’équipe Java, il y a quand même une grosse sensibilité de base, forcément. Et après, au niveau des chefs de projet, on a des gens qui sont très investis, effectivement, dans l’open source.
Une de nos jeunes collègues, qui était cartographe en enseignement et qui était très investie, qui est très investie dans l’open source. Donc, on a vraiment déjà, on s’est vraiment chevillé au corps.
Les défis de Lutèce et Cité libre
Walid: avant qu’on termine, la dernière chose que je vais vous demander, c’est les défis. Est-ce que vous avez un ou deux défis majeurs qui vous attendent, que ce soit techniques ou en termes d’organisation ou de communication ? Est-ce qu’il y a quelque chose que vous voudriez mettre en avant ?
Magali: à mon niveau, j’en ai deux très importants. C’est déjà l’intégration de l’IA dans nos travaux. Non pas pour le subir, mais pour l’accompagner et l’amener en douceur dans nos projets, tout en considérant toute la partie éthique, écologique, financière et toutes les problématiques qu’on a derrière.
Pour ne pas le subir, on veut arriver à proposer des plugins qui intégreraient des modules d’IA. Après, on réfléchit vraiment à toutes les problématiques et ce qui est sous-jacent avec l’IA. Et ça, c’est une grosse problématique qu’on aura tous. De toute façon, ce n’est pas seulement nous. Donc je pense qu’on va devoir suivre le mouvement et ne pas le subir. Donc, du coup, on va le faire avec toute la réserve et toutes les protections qu’on peut avoir. Mais néanmoins, on va y aller.
Et après, il y a toute l’organisation dont tu parlais, la communauté. Comment l’accompagner, la faire grossir, amener les gens à contribuer ? Parce qu’aujourd’hui, effectivement, on est dans la diffusion. Moi, j’adorerais que les gens contribuent aussi, plus encore. Et c’est vrai que ça demande encore une ouverture qui est nécessaire et qu’on va parvenir à avoir.
Walid: Philippe, de ton côté ?
Philippe: je partage tout à fait le second défi évoqué par Magali. C’est clairement ça pour moi, c’est l’animation de cette communauté et de trouver des axes, même si ça a été fait par le passé, il n’y a pas de souci, mais de le faire maintenant sous couvert de l’OSPO et surtout cette mise à l’échelle, en fait. Voilà. Moi, c’est le passage à l’échelle qui m’importe.
Aujourd’hui, c’est de dire, ce qui a pu marcher avec telle ville, en fait, il faut s’assurer que ça puisse marcher avec toutes les autres. Donc, au début, c’est un accompagnement presque individuel et après, c’est un accompagnement de groupe. Donc, c’est vraiment ces animations au sens large des communautés qui permettent à chacun de s’intégrer, de trouver un rôle et un niveau de participation qui le satisfasse.
Donc pour moi, c’est la mise en place de ces bonnes pratiques, de choses qui puissent marcher, sachant qu’on est quand même une équipe assez réduite, et que, alors, j’ai pas le rêve que la communauté s’autosuffise, j’ai arrêté de rêver là-dessus, mais en tout cas que les actions qu’on puisse mettre en place soient suffisantes pour montrer effectivement que ce projet est viable, animé, dynamique, qu’il y a une équipe… des personnes qui bossent au quotidien dessus et que c’est suffisamment sécurisant pour les gens qui hésiteraient encore.
Le mot de la fin des invités
Walid: on a terminé, alors je vais vous laisser avant de partir, de faire chacun un mot de la fin. Si vous avez un message à faire passer aux auditrices et aux auditeurs de Projets Libres!.
Magali: venez nous voir, contribuez. Si vous avez une hésitation, ou en tout cas un intérêt pour Lutèce et Cité Libre surtout, je pense qu’on offre des solutions qui sont largement accessibles et facilement implémentables dans les associations, les collectivités, petites, grandes et moyennes. Et je pense que cette solution a vraiment un potentiel énorme et c’est vraiment dommage de passer à côté.
Philippe: moi, je vais répéter quelque chose qui a été dit un petit peu auparavant, que tu as dit et sur lequel on n’abonde pas suffisamment, c’est que lorsqu’on a un besoin, arrêter de nous focaliser sur ce qui nous sépare, sur ce qui nous rend unique, mais regardons plutôt ce qu’on a en commun avec d’autres personnes qui ont traité le sujet.
J’ai été souvent confronté à ce type de réponse : « Non, vous, Ville de Paris, vous êtes différent. Et moi, mon besoin est différent. » Non, en fait, on est des villes. On est des villes, on fournit un service public à nos citoyens. Notre but est le même. Il est fait de différentes façons, ça oui. L’outil peut effectivement parfois s’adapter, parfois avoir besoin de s’adapter, et parfois ne pas répondre, ça je l’entends tout à fait. Maintenant, au lieu de dire : « Parce que je suis unique, parce que je m’appelle machin, et que personne d’autre s’appelle machin, je suis suffisamment unique pour dépenser de l’argent et faire quelque chose que je commande parce que je sais faire. » En fait, non, prenons la peine – alors je m’inclus dedans, évidemment – de regarder ce qui existe autour, de regarder les communautés qui existent. Il y a des gens qui travaillent au quotidien sur des projets open source qui sont utilisés partout et que personne ne connaît, et il y a des projets qui sont refaits, refaits, refaits, parce que juste certains ne regardent pas le paysage et ce qui existe déjà.
Walid: tout à fait. Refaire et refaire dans le logiciel libre, ça semblait être un truc assez commun.
Philippe: oui.
Walid: non, mais ce n’était pas comme ça que je voulais le faire. Alors, j’ai fait mon projet. Ok, très bien. C’est le mot de la fin. Merci Magali, merci Philippe de votre temps
Philippe : merci à toi Walid
Walid : et d’être venus nous présenter un peu ce que vous faites. J’ai trouvé ça très intéressant. Et à titre personnel, ça me fait très plaisir. Je suis heureux. Donc, j’espère avoir l’occasion à un autre moment de vous avoir dans quelques temps pour reparler un peu de où vous en êtes. En tout cas, pour les auditrices et les auditeurs, n’hésitez pas à faire des commentaires sur Mastodon et surtout à partager cet épisode, comme tous les autres d’ailleurs. Ça me ferait très plaisir et puis c’est important aussi pour le podcast.
Écoutez, Magali, Philippe, merci et puis bonne soirée et puis à une prochaine.
Magali: merci beaucoup. Merci à toi.
Philippe: bonne soirée.
Cet épisode a été enregistré le 7 janvier 2025
Licence
Ce podcast est publié sous la licence CC BY-SA 4.0 ou ultérieure.


