a3nm's blog

La consultation République Numérique : mes réponses et mes scripts

Une consultation République numérique sur le projet de loi pour une République numérique a été lancée et se déroulera jusqu'au 18 octobre.

Je partage à cet égard les mêmes réserves que Stéphane Bortzmeyer ou La Quadrature Du Net : cette consultation arrive bien tard, et difficile de croire que l'expression des citoyens sera véritablement prise en compte. Ceci dit, je me dis qu'il vaut mieux donner son avis quand on le peut, plutôt que de se plaindre après coup de ne pas avoir été écouté...

J'encourage donc ceux qui le peuvent à voter. Si vous pensez que vous n'avez pas le temps, mais que vous avez quelques compétences techniques, j'ai fait un script Python pour vous permettre de voter rapidement de la même façon que moi, allez directement à la section correspondante.

Votes et soutiens

Vous pouvez voir mes votes sur le site de la consultation. Dans de nombreux cas, j'ai dû me résigner à voter pour des amendements dont la rédaction précise n'est pas satisfaisante, ou le champ d'application pas assez large, ou le rapport avec le texte assez peu clairement établi, faute de mieux et dans l'espoir de susciter un débat intéressant... J'ai aussi souvent lu en diagonale, car il y a beaucoup de matériel et je n'ai pas une quantité illimitée de temps...

C'est assez décourageant (mais pas si surprenant) de voir que la plupart des propositions sont de bien piètre qualité. En fait, quelque chose qui m'a davantage surpris, c'est que les propositions initiales du gouvernement (clairement identifiées), ou celles du Conseil national du numérique, sont parfois assez judicieuses, même si ça se limite trop souvent à de bonnes intentions, sans sanctions, sans garanties, sans recours, et sans conséquences réelles. J'ai tout de même voté pour certaines d'entre elles...

Une bonne façon de trouver des propositions que l'on a envie de soutenir, c'est de regarder celles d'associations ou d'individus qui font du bon travail. En particulier, j'ai voté pour toutes les propositions de La Quadrature Du Net, de l'April, de Wikimédia France (pour l'importante question de la liberté de panorama). Pour les questions de libre accès des travaux de recherche (voir ici pour une excellente introduction documentée sur ce problème), j'ai soutenu le CNRS, INRIA, le Consortium Couperin, Roberto di Cosmo et SavoirsCom1, entre autres.

Autres idées

Il y a trois points que j'aurais bien ajoutés à la consultation, mais je ne le fais pas faute de temps, et parce que je n'ai guère espoir que ce soit utile :

  • Personne ne s'est spécifiquement plaint de la pénibilité, dans les textes législatifs, des modifications qui sont décrites en langue naturelle, du genre « à l'alinéa (ii.) de l'article L-42, au point (b.), le mot "est" est remplacé par "n'est pas" ». En termes d'open data, ce serait bien de faire quelque chose pour que le jeu de données de Légifrance et autres sources soit plus utile, en demandant que des diffs exploitables par un ordinateur soient fournis en plus de (ou à la place de) la version actuelle (qui est illisible pour les ordinateurs, plus encore que pour les humains).

  • Une proposition de l'April indique que le code source des logiciels publics sont susceptibles de faire l'objet d'une communication aux citoyens. Ceci fait suite à un avis de la CADA commenté par exemple par Next INpact. Je suis tout à fait d'accord, mais j'irais même plus loin. En effet, l'avis en question indique que des "droits de propriété intellectuelle détenus par des tiers à l’administration" seraient susceptibles, s'il y en avait, de limiter le droit du demandeur (Monsieur X) à réutiliser le code concerné. Je pense qu'en pratique cette restriction pourrait être très problématique, vu que les administrations ont tendance à faire appel à des prestataires pour développer leurs logiciels. À mon avis, il devrait être entendu que tout prestataire développant ou hébergeant du logiciel pour l'administration doit être prêt à le fournir, sous licence libre, sur demande des citoyens, sans pouvoir s'opposer à sa réutilisation ultérieure.

  • Ce serait utile d'avoir un portail pour demander l'ouverture d'un jeu de données dont on estime qu'une administration (sans devoir chercher laquelle) doit bien le détenir. En particulier, j'avais un jour cherché à trouver la base de données des valeurs locatives cadastrales utilisées pour le calcul de la taxe d'habitation, sans rien trouver, et j'aurais bien aimé pouvoir demander quelque part ce jeu de données (apparemment fixe depuis 40 ans).

Scripts

Je partage l'insatisfaction de Bortzmeyer sur la plateforme elle-même, et l'absence de moyen de remonter des problèmes avec celles-ci. En particulier, le diff mot par mot est parfois fautif, souvent illisible. Cependant, à mon avis, le plus grave problème est de ne pas pouvoir simplement déléguer son vote à d'autres institutions. Suivant le principe de la démocratie liquide, je voudrais pouvoir confier ma voix à ceux en qui j'ai confiance, sans avoir besoin de me documenter sur le détail de chacune de leurs propositions. Cependant, la plateforme ne propose rien de mieux que d'aller voir leurs propositions et voter pour elles une par une. Cette délégation manuelle ne sera pas mise à jour si le mandataire change ses votes, et, même si on oublie cet inconvénient, elle est évidemment beaucoup trop pénible à faire en pratique.

C'est pour cette raison que j'ai écrit un jeu de scripts pour pouvoir facilement voter en soutien à un autre utilisateur, de façon automatique. L'objectif n'est pas de faire du bourrage d'urnes, simplement de permettre à qui le souhaite de voter de la même manière que quelqu'un en qui il a confiance, ou de voter pour toutes les propositions d'autres utilisateurs, sans devoir le faire vote par vote.

S'il vous plaît, utilisez ces scripts de façon raisonnable, et en particulier ne créez pas d'utilisateurs factices. Je n'ai écrit ce code que parce que la plateforme de consultation ne permet pas facilement de soutenir toutes les propositions d'un utilisateur, ou de reprendre à son compte tous les votes d'un autre utilisateur. J'estime que ces fonctionnalités devraient en principe être proposées par le site lui-même. À ma connaissance, l'utilisation de tels scripts à de telles fins n'est pas contraire à la charte. Cependant, je n'accepte aucune responsabilité pour ce que vous en ferez.

TL;DR: comment voter

Commencez par créer un créer un compte (n'utilisez pas Facebook ou Google+, c'est mal, et ça ne fonctionnera pas). Renseignez les informations, recevez le mail de vérification, et validez votre compte. Mettons que votre email soit toto@example.com et votre mot de passe "4242".

Ensuite, installez mes scripts (j'indique les prérequis pour Debian, mais vous pouvez adapter pour votre distribution) :

sudo apt-get install git python3-lxml python3-bs4 python3-requests
git clone https://a3nm.net/git/republique
cd republique

Pour voter pour les propositions des associations que je soutiens en utilisant le compte que vous avez créé :

./get_propositions.py april laquadraturedunet wikimediafrance inria \
    cnrsdistrenaudfabre consortiumcouperin robertodicosmo savoircom1 \
    > propositions
./vote.py toto@example.com "4242" < propositions

C'est normal que ces commandes prennent quelques minutes, vu qu'elles doivent faire deux requêtes par proposition. En cas d'échec, assurez-vous bien d'avoir créé et validé le compte au préalable.

Pour reprendre à votre compte tous les votes que j'ai faits :

./get_votes.py antoineamarilli > votes
./vote.py toto@example.com "4242" < votes

Si vous vous appelez Jean Dupond et que vous n'avez pas d'homonymes, vous pouvez vérifier que vos votes sont bien en ligne à l'URL https://www.republique-numerique.fr/profile/user/jeandupond.

N'hésitez pas à utiliser mes scripts puis à réajuster vos votes, car vous pouvez toujours les modifier ou les effacer individuellement sur le site de la consultation. Si vous votez plusieurs fois (avec l'outil ou en ligne) sur un sujet, seul le vote le plus récent est pris en compte. En particulier, si plusieurs de vos sources de propositions ou de votes sont en désaccord, c'est la dernière mentionnée qui prévaut.

J'ai corrigé un bug qui faisait que des votes favorables à un argument portant sur une proposition ou une modification pouvaient être interprétés à tort comme un vote sur la proposition ou modification elle-même. Si vous avez utilisé la vieille version de get_votes.py, vous avez peut-être voté à tort pour certaines propositions ou modifications. Si vous avez utilisé les commandes que je suggérais, vérifiez en particulier votre vote sur l'article 9, la modification du CNRS, et la commercialisation des données publiques.

Pendant la consultation, je produisais des tables (moches et faites très rapidement) pour pouvoir suivre de façon commode les propositions, modifications et arguments ayant reçu le plus de votes favorables et le plus de votes au total. Le code qui les génère est dans le dépôt git.

comments welcome at a3nm<REMOVETHIS>@a3nm.net