La mairie de Fontaine passe au Libre !

Aujourd’hui on vous propose une interview postée à l’origine sur le site des Libertés Numériques d’Europe Écologie les Verts, article qu’ils ont eut le bon goût de mettre sous CC-BY-SA. Ne vous inquiétez pas ça parle quand même de logiciel libre…

C’est même le sujet principal, puisqu’on a là un retour pratique du service informatique de la mairie d’une ville d’un peu plus de vingt mille habitant-e-s qui a la volonté politique de passer au Libre : services en ligne, systèmes d’opération, logiciels et applications mobiles… Tout en restant une association a-partisanne, nous y voyons là un retour d’expérience et un exemple qui fait chaud à nos petits cœurs de Libristes !

Espace-de-travail-1_002-1024x640

L’expérience du logiciel libre à la mairie de Fontaine

Nicolas Vivant est directeur du système d’information à la mairie de Fontaine, en Isère. Depuis quelques années, il s’attelle à la migration du parc informatique vers des solutions logicielles open source et libres.

Des logiciels libres d’abord, puis des distributions Linux entières, ont débarqué sur les ordinateurs des employés de la mairie. Comment s’est réalisée cette migration ? Quels retours des usagers ? Quels avantages ? Nicolas a accepté de répondre à nos questions.

Bonjour Nicolas, peux-tu d’abord nous présenter rapidement ta ville, combien y a-t-il d’employés dans la mairie et de postes informatiques ?

Fontaine est une ville d’un peu plus de 22 000 habitants. La mairie emploie 600 personnes et le parc de PC est également de 600 postes environ (dont 250 dans les écoles maternelles et élémentaires), répartis sur une quarantaine de sites.

Quel est ton rôle ?

Je suis DSI (directeur des systèmes d’information). Sept agents travaillent au service informatique. Le service gère l’informatique de la ville (postes clients, serveurs, logiciels, réseau), la téléphonie (fixe et mobile) et la vidéosurveillance.

Comment est venue l’idée de remplacer le système d’exploitation existant par une solution opensource ? Etait-ce une volonté politique au départ, ou plutôt une solution envisagée à cause de soucis techniques ?

La mise en place du logiciel libre est une décision ancienne. Elle remonte à 2001. C’est un choix politique porté depuis par les majorités successives. Les valeurs de l’opensource et du libre rejoignent dans une large mesure celles du service public communal : travail communautaire, service de l’intérêt général, transparence et juste prix. L’intérêt économique, avéré à Fontaine, est venu comme un bénéfice secondaire de ce choix.

Les « décideurs » ont-ils été difficiles à convaincre, quelles étaient leurs inquiétudes à l’idée de changer d’environnement de travail ? Et quels arguments les ont convaincus ?

Dans une commune, il y a deux types de décideurs : les élus et la direction générale. Le libre étant un choix politique, l’adhésion des élus était évidente puisqu’ils étaient moteurs. Pour ce qui concerne l’administration, et pour répondre à l’inquiétude légitime d’un certain nombre d’utilisateurs (décideurs ou non), une stratégie de migration « douce » a été mise en place. C’est par l’expérimentation et la démonstration que nous avons choisi d’agir, plutôt que par l’argumentation.

Dans un premier temps (avant 2009), le choix de logiciels d’infrastructure (messagerie, serveur de fichiers, annuaire informatique, etc.) libres a été fait. Ce changement a été transparent pour les utilisateurs, mais il a permis d’asseoir les bases du changement.

Dans une deuxième séquence (2008 à 2012), les logiciels tournant sur nos PC sous Windows ont été migrés sur du libre (Thunderbird pour les mails, Firefox pour le web, OpenOffice pour la suite bureautique). Le plus difficile a été de changer de suite bureautique. Une formation spécifique de deux jours a été mise en place. Plutôt que de former nos utilisateurs à l’utilisation de la bureautique (dont ils connaissaient, pour la plupart, les bases), le choix a été fait de les aider à migrer leurs connaissances et leurs données. Sur les deux jours de formation, un jour et demi ont donc été consacré à « Comment faire sur OpenOffice ce qu je sais fait sur MS Office ? » puis une demi-journée à la migration effective des documents utilisés au quotidien, avec l’aide du formateur. Cette formation était proposée à l’ensemble des employés qui souhaitaient s’y inscrire. Quand le cycle de formation a été terminé, nous n’avons pas systématiquement désinstallé Microsoft Office. Nous avons simplement cessé de livrer dans les services des PC comprenant la suite de Microsoft. Ainsi, au fil du temps, la suite propriétaire a disparu de notre parc. Il reste quelques exceptions, dues à des incompatibilités d’OpenOffice avec des logiciels « métier », mais elles représentent moins de 5% de notre parc.

La dernière étape de la migration vers le logiciel libre, toujours en cours, concerne le système d’exploitation. Notre parc est essentiellement composé de machines sous Windows Seven. La stratégie de migration comprend plusieurs phases et nous avons choisi de prêcher par l’exemple plutôt que d’utiliser une approche contraignante :

  • De janvier à septembre 2014, nous avons travaillé sur l’interface graphique, que nous voulions belle en plus d’être pratique, et sur l’intégration de postes sous Linux dans notre système d’information. Nous tenions à ce que le niveau de service soit au moins équivalent à celui que nous délivrions pour les postes sous Windows.
  • De septembre 2014 à décembre 2014 (3 mois), nous avons réalisé un test avec 20 utilisateurs. La direction générale et les élus (les décideurs, donc) ont été intégrés dans cette phase. Cela nous a permis de parfaire notre interface et de vérifier que tout fonctionnait correctement. Les résultats ont été très positifs, et nous n’avons pas eu de demande de retour en arrière.
  • De janvier à juin 2015, nous avons proposé un plan de volontariat. En plus des postes déjà installés, une trentaine d’agents se sont portés volontaires pour migrer sous Linux.

 

Nous sommes désormais dans la quatrième phase, qui est une phase d’incitation : nous proposons systématiquement Linux pour les postes neufs en déploiement. Si l’utilisateur refuse, Windows est conservé.

Parallèlement, l’adjoint à l’éducation nous a demandé d’entamer la migration sous Linux des PC des écoles maternelles et primaires. Sur les 17 écoles de la commune, plusieurs se sont portées volontaires pour un test. En décembre 2015, nous avons entamé le processus de migration d’une école pilote. La migration de toutes les écoles devrait prendre trois ans.

Si tout se passe selon les prévisions, 70% de notre parc informatique devrait utiliser Linux en 2018.

Y a-t-il eu « d’amicales pressions » d’éditeurs de logiciels propriétaires pour tenter de freiner cette démarche (si oui, avec quel discours) ?

Aucune, au contraire. Les éditeurs essaient de prendre en compte l’utilisation de PC sous Linux pour que tout se passe bien. L’augmentation significative de logiciels tournant sur des navigateurs web facilite grandement la migration.

Et les usagers de ces postes de travail, étaient-ils motivés ou plutôt dubitatifs ?

Aujourd’hui, aucun utilisateur n’a été contraint. Il n’y a donc pas de résistance forte. Certains, dubitatifs, ont été séduits par les avantages apportés par Linux (stabilité, rapidité) et qu’ils ont pu observer chez leurs collègues. D’autres ne sont pas convaincus et ont choisi de rester sous Windows. Nous respectons ce choix.

Espace-de-travail-1_005

Quelle distribution Linux a été choisie, s’agit-il d’une version ad-hoc, modifiée pour mieux convenir à vos besoins ?

Nous nous sommes basés sur Ubuntu 14.04 LTS. Des modifications importantes ont été nécessaires pour une intégration parfaite dans notre informatique existante. Comme sous Windows, un profil est automatiquement créé lorsqu’un utilisateur se connecte avec ses identifiants habituels (LDAP) et ses disques réseau partagés sont montés automatiquement. Nous avons également ajouté un « dock » (Cairo-Dock) pour faciliter la navigation sur l’interface et disposer d’un « bouton démarrer ». Nous évaluons actuellement une nouvelle interface basée sur ElementaryOS (cette distribution étant elle-même fondée sur une Ubuntu 14.04 LTS), encore plus simple et plus rapide. Les résultats sont prometteurs et elle devrait devenir en 2016 notre interface de référence.

Avez-vous procédé à des recrutements pour gérer ce nouveau parc logiciel, ou bien avez-vous formé des personnes en interne ?

Nous n’avons pas procédé à des recrutements spécifiques. Certains agents du service informatique disposaient déjà des connaissances nécessaires. Les autres ont été formés en interne. Notre interface est simple d’utilisation, et une formation basique permet donc d’atteindre rapidement le niveau de service attendu par nos utilisateurs.

Dans les faits, quels soucis éventuels lors de l’installation de la distribution Linux ? (ordinateurs vétustes, périphériques non reconnus, …) ?

Aucun problème bloquant ne s’est posé, mais la migration a nécessité une cohérence globale pour être pleinement efficace. Lors de l’attribution du marché des systèmes d’impression et de copie de la ville, par exemple, une attention particulière a été portée sur la qualité des pilotes disponibles pour Linux. Nous avons fait le choix de matériel Kyocera, parfaitement compatible. HP aurait pu être un autre choix. D’autres constructeurs ont été écartés. L’installation sur les PC se fait avec FOG (Free Open Ghost) et nous n’avons rencontré aucun problème sur les machines, pourtant variées, que nous avons installées jusqu’à présent.

La courbe d’apprentissage du nouveau système a-t-elle constitué un problème ?

Pas véritablement, parce que le déploiement est très progressif, et qu’un gros travail a été fait au niveau de l’interface graphique pour les utilisateurs. Un retour quasiment systématique que nous avons eu est :

« finalement ce n’est pas très différent de Windows…»

Le fait que les utilisateurs retrouvent, sous Linux, les logiciels auxquels il étaient déjà habitués sous Windows (Thunderbird, Firefox, LibreOffice, …) a été déterminant.

Finalement, l’inquiétude la plus vive a été pour le service informatique lui-même. Nous sommes passés par une phase de doute quant à notre capacité d’apporter un même niveau de service sur un environnement aussi différent. Après un an de travail quotidien sur Linux, ce doute est levé.

Cela fait donc un an maintenant que les ordinateurs de la mairie tournent sous linux, au-delà du changement technique quel bilan en tires-tu, côté finances et usages au quotidien ?

Toute l’administration ne tourne pas sous Linux, loin de là. La migration prendra du temps. C’est la dernière étape de la migration vers le libre, et pas la plus simple. Chi va piano, va sano e va lontano !

D’un pur point de vue financier, acheter des PC sans système d’exploitation nous permet de faire de sérieuses économies (autour de 30% sur un PC portable acheté par l’UGAP, la centrale d’achat des collectivités). Les machines sous Linux génèrent moins d’appels à la hotline, l’installation d’images par FOG prend cinq minutes, et ce temps gagné représente également une économie certaine (il faut compter 45 minutes pour l’installation d’une image Windows).

Autre intérêt : Linux vieillit mieux que Windows et la performance met du temps à se dégrader. Le remplacement des machines peut donc être décalé dans le temps. Mon estimation est qu’une économie de 30% sur le matériel est envisageable à terme (mais nous n’en sommes pas encore là, le parc de machines sous Linux étant encore largement minoritaire).

Au quotidien, les retours des utilisateurs sont positifs et le support est facilité. La bonne nouvelle, c’est donc que tout se passe bien et sans souffrance ce qui, au regard d’expériences menées dans d’autres collectivités, n’était pas évident de prime abord. L’autre bonne nouvelle c’est que, conformément à l’esprit du logiciel libre, le travail mené à Fontaine est partagé avec d’autres collectivités. Notre espoir est que le mouvement prenne de l’ampleur, pour le bien de tous.

Est-ce que le fait d’utiliser des solutions opensource a permis de faire un minimum « d’évangélisation » à ce sujet parmi les équipes de la mairie, ou bien est-ce qu’ils ne voient pas la différence ?

Nous avons eu quelques demandes d’installation sur du matériel personnel d’agents communaux et nous avons donné plusieurs coups de mains à d’autres collectivités de l’agglomération. Grenoble, qui a également entamé sa mutation, est dans le même esprit et il n’est pas impossible qu’une solution commune émerge de tout ce travail. Nos élus voient d’un bon œil cet essaimage, en cohérence avec la politique qu’ils ont choisie et qu’ils soutiennent. Plusieurs actions sont envisagées pour faire connaître plus largement notre travail et les bons résultats obtenus : conférences, démonstrations lors d’événements autour du libre, travail à destination de la population fontainoise, etc.

Récemment, le ministère de l’éducation nationale a signé un partenariat avec Microsoft pour des solutions pédagogiques via des produits de cette entreprise, quel est ton regard sur cette décision et penses-tu que des solutions libres auraient pu être envisagées à la place ?

Les choix des services de l’État manquent sérieusement de lisibilité. Les positionnements semblent varier selon les ministères. D’un côte le SILL (Socle Interministériel de Logiciels Libres) de Matignon, le choix du libre par la gendarmerie, etc. Et de l’autre cette initiative de l’éducation nationale ou d’autres ministères. Peu importe : il y a fort à parier que l’évolution, si évolution il y a, viendra d’initiatives locales multiples (et peut-être concertées) plutôt que de grandes décisions qui s’imposeraient à tous. Pensons global, et agissons local.

Pour info, la liste des logiciels libres que nous utilisons :

 

Interview réalisée par Grégory Gutierez, responsable de la commission Partage 2.0. à Europe Écologie les Verts et publiée le 15 janvier 2016 sur le site EELV.




D’un projet à l’autre, franchissez les frontières (Libres conseils 11/42)

Chaque jeudi à 21h, rendez-vous sur le framapad de traduction, le travail collaboratif sera ensuite publié ici même.

Traduction Framalang : ga3lig, lenod, peupleLa, LAuX, billouche, Goofy, jcr83, purplepsycho, Jej, KoS, Julius22, kalupa, tuki, lamessen, okram + Sinma

La collaboration entre projets

Henri Bergius

Henri Bergius est le fondateur de Midgard(1), un dépôt de contenu pour les logiciels libres. Il a aussi été longtemps impliqué dans la géolocalisation d’ordinateurs de bureaux sous Linux ainsi que dans les communautés Maemo et Meego. Il dirige un petit cabinet de conseil nommé Nemein, bidouille CoffeeScript et PHP et passe beaucoup de son temps à faire de la moto dans des régions reculées du continent Eurasien. Il vit dans la froide ville nordique d’Helsinki, en Finlande.

Il se peut qu’il existe un système complètement nouveau dans lequel vous pouvez être défini davantage par qui vous êtes plutôt que par ce que vous possédez, par ce que vous avez créé et partagé, parce que d’autres personnes ont ensuite construit sur cette base

– John Seely Brown, ancien directeur de Xerox PARC dans An Optimist’s Tour of the Future (Mark Stevenson, 2010)

Le monde du logiciel libre est pour l’essentiel divisé en tribus rassemblées autour de choses appelées projets. Il existe des projets majeurs tels que GNOME(2), KDE(3) ou Drupal(4) et il existe bien d’autres projets plus modestes tournant autour d’une seule application ou bibliothèque logicielle.

En fait, les qualifier de « projets » est un peu ridicule.

Selon moi, un projet est l’organisation d’un effort visant un but que l’on puisse atteindre et comprend un calendrier avec dates de début et de fin. Ainsi, GNOME 3.1 serait par exemple un projet tandis que GNOME, pris dans son ensemble, n’en est pas un. Il s’agit d’une communauté d’individus qui entretiennent et créent le corps d’un logiciel par de petits efforts variés ou des projets.

Assez de pédantisme. Le souci avec le concept de projet c’est qu’il finit par maintenir une séparation entre les personnes. Cela crée des communautés isolées souvent réticentes voire incapables de collaborer avec « la concurrence ». Mais en fin de compte, toutes ces communautés sont composées de personnes écrivant des logiciels libres. Et ce sont elles qui décident de l’utilisation possible ou non d’un logiciel dans différents environnements.

En fin de compte, nous voulons tous que le logiciel que nous avons créé soit utilisé par d’autres. Mieux encore : nous voulons que les autres joignent leurs efforts aux nôtres et créent des choses sympa à partir de ce que nous avons créé. Après tout, ceci constitue le cœur même des logiciels libres.

Alors pourquoi érigeons-nous ces murs autour de nous ? Garder une communauté isolée ne fait que favoriser une mentalité de type « nous contre eux ». Les incompatibilités des différents langages de programmation contribuent déjà fortement à notre division. Pourquoi en rajouter ?

La leçon de Midgard

Il est une chose que j’aurais voulu savoir quand j’ai démarré, dans cette période optimiste des « .com » de la fin des années 90 : c’est qu’en réalité le développement de logiciels ne gagne rien à s’isoler. Avec un peu d’efforts nous pouvons partager nos logiciels et nos idées par le biais de communautés, ce qui renforce et améliore à la fois les logiciels et les communautés.

Quand j’ai démarré ma carrière dans le logiciel libre, c’était l’époque des grands projets. Netscape ouvrait son code source, la fondation Apache prenait forme et des sociétés de capital-risque venaient de partout. Tenter de bâtir sa communauté devenait la norme. C’était le chemin assuré vers la gloire, la fortune et la réalisation de choses extraordinaires.

Alors nous avons construit nos propres infrastructures web. À ce moment-là il n’y en avait pas tant que cela, en particulier pour le tout jeune langage PHP. Le PHP n’était même pas notre premier choix. Nous l’avions seulement choisi au terme d’un long débat sur l’utilisation de Scheme(5) que notre développeur principal préférait. Mais le PHP gagnait alors en popularité, devenant le langage de programmation de la Toile. Et nous voulions construire la Toile.

Au début, les choses semblaient prometteuses. Beaucoup de développeurs rejoignaient notre communauté et commençaient à y contribuer. Il y a même eu des entreprises fondées autour de Midgard. Notre infrastructure gagnait en fonctionnalités et devenait de plus en plus liée à Midgard.

Avec le recul, c’est là que nous avons fait une erreur. Nous avons positionné Midgard pour être distinct du PHP lui-même. Quelque chose que vous installeriez séparément, et utiliseriez comme base pour y construire des sites entiers. Il fallait soit suivre notre voie, soit suivre celle de tout le monde.

Avec Midgard, vous deviez utiliser notre interface de dépôt de contenus pour tout, aussi bien pour notre gestion des utilisateurs que pour le modèle de permissions. Vous deviez utiliser notre système de modèles et stocker beaucoup de votre code dans le dépôt au lieu d’utiliser un système de fichiers.

Ceci ne passait évidemment pas très bien auprès de l’ensemble de la communauté PHP. Nos idées leur semblaient étranges, et Midgard, à ce moment-là, était même distribué en tant que gigantesque correctif à la base de code puisqu’on ne pouvait pas charger de modules avec PHP3.

Les années ont passé et la popularité de PHP a connu des hauts et des bas. Pendant ce temps, la communauté Midgard est restée relativement constante : un petit groupe soudé faisant des progrès sur le long terme mais séparé du monde plus large de PHP.

Nous nous sommes toujours demandé pourquoi il était si difficile d’interagir avec le monde PHP. Même d’autres communautés faisant des choses complètement différentes, comme l’environnement de bureau GNOME, semblaient plus faciles à approcher. Ce n’est que récemment, après des années d’isolement, que nous avons pris conscience du problème. En résumé : les infrastructures nous séparent alors que les bibliothèques nous permettent de partager notre code et nos expériences.

À propos des bibliothèques et des infrastructures

En définitive, les logiciels ont pour objectif l’automatisation, la construction d’outils que les autres peuvent utiliser pour résoudre des problèmes ou se connecter entre eux. Avec les logiciels, ces outils comportent plusieurs couches. Il existe des services de bas niveau comme les systèmes d’exploitation, puis les bibliothèques, les infrastructures, les boîtes à outils et enfin les applications elles-mêmes.

Les applications sont toujours écrites pour des usages spécifiques, donc entre elles il existe peu de possibilités de partage de code.

Les possibilités les plus séduisantes se situent au niveau des bibliothèques et infrastructures. Une infrastructure, si elle est suffisamment générique, peut généralement être utilisée pour construire différentes sortes de logiciels. Une bibliothèque, quant à elle, peut être utilisée pour apporter un élément particulier de logique ou de connectivité là où le besoin s’en fait sentir. De mon point de vue, c’est dans cette couche que le plus gros de la programmation devrait être fait, avec des applications spécifiques qui ne sont que des connexions entre diverses bibliothèques au sein d’une infrastructure qui s’occupe alors de faire tourner l’application en question.

Qu’est-ce qu’une bibliothèque et qu’est-ce qu’une infrastructure ? Les gens utilisent souvent ces termes indifféremment bien qu’il existe une règle grossière qui permet de les différencier : une bibliothèque est une ressource à laquelle votre code fait appel, alors qu’une infrastructure est une ressource qui fait appel à votre code.

Si vous voulez que votre code soit utilisé et amélioré, le meilleur moyen est de maximiser le nombre de ses utilisateurs et contributeurs potentiels. Avec le logiciel libre, cela fonctionne en s’assurant que votre code peut être adapté à de multiples situations et environnements.

En définitive, ce que vous voulez développer c’est une bibliothèque. Les bibliothèques c’est cool.

Comment faire en sorte que la collaboration fonctionne

Le plus difficile est de franchir la barrière du « eux-contre-nous ». Les développeurs de l’autre communauté sont des bidouilleurs concevant du logiciel libre, tout comme vous. Il suffit donc de franchir le pas et de commencer à leur parler.

Une fois le débat engagé, voici quelques points que j’ai trouvés importants quant à l’application effective des idées communes ou des bibliothèques au-delà des frontières du projet

  • Utilisez des licences permissives et essayez d’éviter les cessions de droits d’auteurs et autres exigences que les utilisateurs potentiels trouveraient onéreuses. Hébergez le projet en terrain neutre. Pour les projets web, Apache est un assez bon havre. Pour les projets bureautiques, Freedesktop est probablement le meilleur choix. Utilisez des technologies qui n’imposent pas trop de contraintes. Les bibliothèques doivent être de bas niveau, ou fournir des API (interfaces de programmation) D-Bus utilisables avec n’importe quel système.
  • Évitez les dépendances spécifiques à une infrastructure. KDE a, par exemple, trouvé GeoClue difficile à adopter parce qu’il utilise des paramètres spécifiques à l’interface GNOME. Rencontrez les autres. Si vous venez du projet GNOME, allez à l’aKademy et donnez-y une conférence. Si vous êtes développeur KDE, allez parler au GUADEC. Après avoir partagé une bière ou deux, la collaboration par IRC vient beaucoup plus naturellement.
  • Enfin, vous devez accepter que votre implémentation ne soit pas utilisée par tout le monde. Mais si, au moins, d’autres mettent en œuvre les mêmes idées, alors une collaboration reste possible.

Bonne chance pour abattre les frontières du projet ! Dans la plupart des cas, cela fonctionne si vos idées sont bonnes et présentées avec un esprit ouvert. Mais même si vous ne trouvez pas de terrain d’entente, tant que votre application remplit sa fonction pour vous, ça n’a pas été fait en vain. Après tout, ce qui compte c’est de proposer des logiciels et d’offrir la meilleure expérience utilisateur possible.

(1) http://midgard-project.org/

(2) gnomefr.org

(3) fr.kde.org

(4) drupalfr.org

(5) http://fr.wikipedia.org/wiki/Scheme

Crédit photo : mommy peace – (CC BY-NC-SA 2.0)