Avec la récente actualité de l’application #StopCovid un des effets extraordinairement positifs de l’OpenSource se produit sous nos yeux : Le code des applications (et celui du serveur) a été ouvert sur la forge « GitLab » de l’INRIA. Et même les spécifications du fameux protocole ROBERT ont été publiées.
On se focalise beaucoup, et j’y reviendrai peut-être, sur tout ce que les hackers ont trouvé (et c’est sans doute seulement un début), les « loprem ipsum » à certains endroits, le paramétrage approximatif des repositories, l’injection de fichiers « .zip » dans les repositories, le manque de normalisation dans la gestion de ces sources, le manque de commentaires dans le code, les failles de sécurité, l’usage de « captchas Google™ », les choix d’architecture et le modèle de menace à propos duquel j’ai fait un précédent billet…
C’est vrai que ça fait beaucoup de bonnes pratiques « pas encore mises en place » pour tourner la chose positivement et c’est aussi bien possible qu’en termes d’image de marque, les différentes parties prenantes vivent assez mal le moment. D’autant plus que les gens impliqués ont sans doute mis beaucoup de bonne volonté et d’implication dans le projet!
Je préfère dans ce post mettre la lumière sur tout autre chose : le fait que cette ouverture permet justement, sur une application concernant potentiellement l’ensemble des français, l’apparition une critique « externe » avec en corollaire l’immense potentiel d’amélioration qu’apporte l’intelligence collective (dans son acceptation la plus ambitieuse) mobilisée.
Evidemment, pour tirer parti de ce potentiel, il faut ensuite que les retours soient pris en compte au lieu d’être balayés. Ce qui nécessite la capacité assez rare d’accueillir la critique, même, et surtout, lorsqu’elle est sévère (un défi pas si simple à relever en réalité) . On le saura je crois assez vite à l’usage.
Cette démarche, vue de ma fenêtre, véhicule les germes d’une façon de développer les logiciels publics totalement novatrice: comme pour l’urne dans le bureau de vote, totalement transparente, les repositories ouvertes permettent à tous de voir ce qui est fait en temps réel.
Ceci n’a rien de nouveau pour les gens qui développent sur des projets dits Opensource (pour eux c’est même la façon habituelle de faire) mais pour le développement de logiciels par des administrations publiques c’est une petite révolution: Imaginez cette logique généralisée pour le développement des logiciels de gestion des retraites, pour le développement des logiciels de gestion des cartes grises, des permis de conduire, des contraventions, des incidents de voirie, et même des logiciels de gestion des interactions entre le public et les agents…
Les bugs se corrigeraient tellement efficacement et les interfaces se moderniseraient tellement vite que c’est peut-être Google™ lui même qui serait à la traîne en termes d’innovation… de quoi donner le vertige!
Il se pourrait bien que cela démarre avec une crise… et un choc pour le modèle de la SSII (Pardon on dit ESN maintenant ^^) « mercenaire » (heureusement toutes les sociétés de service dans l’informatique ne relèvent pas de cette catégorie) qui développe en boite noire au minimum qualité de ce qui a été prévu dans le marché pour fournir à la fin un « truc » au mieux moche et au pire difficilement utilisable et encore plus difficilement maintenable dans le temps.
Quand le travail se fait derrière des repositories fermées ça peut hélas passer sans trop de bruit… l’Administration publique n’étant pas toujours à même de bien évaluer le degré de respect des bonnes pratiques (par manque de temps surtout, par manque de connaissances aussi, et puis parce que dans ce monde les bonnes pratiques évoluent à vitesse supersonique : le temps que quelque chose arrive dans des cahiers des charges les technologies et les « bonnes » façons de faire ont eu le temps de changer plusieurs fois). Et puis les prestataires qui répondent aux appels d’offres ne sont pas non plus pléthore et les black-lister longtemps peut aussi avoir des effets de bord négatifs pour les entités publiques « adjudicatrices » (mot compte triple, il fallait que je le place).
Alors on fait avec un mode de fonctionnement pas bien satisfaisant qu’on essaye d’améliorer en jouant sur les paramètres. C’est comme d’optimiser la chandelle: les résultats, même s’ils sont tangibles, n’ont rien de comparable avec la révolution apportée par la domestication de l’électricité bien évidemment.
Et justement, quand on y pense : peut être que ce mode de développement à source ouverte est justement l’étincelle qui annonce « l’arrivée de l’électricité » dans le développement d’applications pour l’Administration.
Il y aurait sans doute des impacts bien au delà de l’effet sur la qualité du code, sur l’ergonomie ou la mutualisation à grande échelle (entre villes, entre régions, entre ministères, entre chambres de commerce, entre chambres d’agriculture…).
La façon de faire de la sécurité s’en trouverait aussi profondément transformée, et, encore au delà, cette ouverture aurait forcément un effet majeur sur la confiance de l’ensemble des usagers/citoyens envers les organismes publics…
Et quelque chose me dit qu’il ne pourrait en sortir que du bien…