Nouvelles fonctionnalités sur la plateforme

Comme annoncé lors de notre intervention à la Convention de Clermont-Ferrand, de nouvelles fonctionnalités pour les groupes d’action arrivent aujourd’hui sur la plateforme.

Les événements organisés par des groupes

Il est maintenant possible d’indiquer le groupe d’action à l’origine de l’organisation d’un événement.

Jusqu’à présent, les événements pouvaient seulement être organisés par des individus. Maintenant, vous pouvez à la création d’un événement ou lors de son édition indiquer qu’un groupe dont vous êtes animateur⋅rice organise l’événement que vous créez. Si un événement est organisé par plusieurs groupes d’appui, il suffit à son créateur ou sa créatrice d’ajouter comme organisateur⋅rice de l’événement des animateur⋅rice⋅s d’autres groupes. Iels pourront à leur tour indiquer que leur groupe co-organise l’événement.

Savoir que les événements sont organisés par des groupes permet plusieurs choses :

  • mettre en valeur les événements organisés par du travail collectif, de manière à mieux orienter les insoumis⋅es sur la plateforme, qui souhaiteraient participer à une action
  • mettre en valeur les groupes actifs : les événements futurs et passés de chaque groupe sont affichés sur sa page, ce qui permet de se faire une idée de son activité
  • encourager les insoumis⋅es à participer à des actions locales : chaque insoumis⋅es dispose désormais d’un « tableau de bord » où lui sont notamment suggérés les événements organisés par ses groupes

Le tableau de bord

Un nouveau tableau de bord vous permet d’accéder en un coup d’œil à l’ensemble de votre activité sur la plateforme.

Une capture d'écran du nouveau tableau de bord

Il inclut notamment :

  • La liste des événements à venir et de ceux dont vous êtes l’organisateur
  • La liste des groupes dont vous êtes membres, ainsi que ceux pour lesquels vous êtes animateur⋅ice ou gestionnaire
  • Une liste d’événements suggérés. Pour le moment, seuls sont suggérés les événements des groupes dont vous êtes membres et auxquels vous ne participez pas encore. Mais on compte bien ajouter d’autres suggestions.
  • Et, nouveauté, la liste des événements passés que vous avez organisés ou auxquels vous avez participé.

L’intérêt de ce dernier point, c’est qu’il est maintenant possible d’ajouter des compte-rendus aux événements.

Les compte-rendus d’événements

Les organisateurs d’un événement peuvent maintenant, une fois celui-ci terminé, ajouter un compte-rendu de l’événement qui apparaîtra directement sur la page de l’événement.

Par ailleurs, n’importe quelle personne qui s’était inscrite à l’événement peut venir ajouter ses propres de photos de l’événement, qui seront ajoutées et mise à disposition sur cette même page de compte-rendu[1].

Par exemple, nous venons de mettre en ligne un événement correspondant à la séance de clôture de la Convention : si vous étiez présents le jour-dit, vous pouvez dès maintenant rajouter vos photos !

L’aide en ligne

Vous êtes un peu perdus avec tous ces changements ? On vous comprend !

On réfléchit beaucoup aux façons de rendre l’utilisation de notre application plus facile. Une solution sur laquelle on travaille en ce moment, c’est de rajouter de l’aide sur toutes les pages.

Si vous êtes perdus, vérifiez donc que la page où vous vous trouvez ne comporte pas déjà le bouton « Aide », dans la barre de menu, en haut à droite.

Une capture d'écran du bouton aide

Cliquer sur ce bouton vous donne accès à une mini-visite guidée de la page sur laquelle vous vous trouvez.

Une capture d'écran de la fonctionnalité d'aide

[1] : Les photos sont partagés sous licence libre Creative Commons 3.0 BY-NC-SA. Cette licence permet à n’importe quelle personne de réutiliser la photo, y compris dans un travail dérivé, tant que l’usage n’est pas commercial, que mention de l’auteur est faite, et que le travail est partagé sous la même licence.

Les logiciels libres que nous utilisons

Depuis la fin du mois de septembre dernier, les outils numériques de la France insoumise sont intégralement basés sur des logiciels libres, et l’intégralité des données personnelles est hébergée en France.

Un logiciel libre est un logiciel dont l’utilisation, l’étude, la modification et la duplication en vue de sa diffusion sont permises, techniquement et légalement, ceci afin de garantir certaines libertés induites, dont le contrôle du programme par l’utilisateur et la possibilité de partage entre individus.

Wikipedia (29 novembre 2017)

Le logiciel libre est un des éléments clés de l’histoire de l’informatique moderne. C’est un ensemble d’outils techniques (des logiciels libres eux-mêmes) et légaux (les licences qui fournissent l’assurance qu’un logiciel reste libre). Aujourd’hui, l’internet repose sur une infrastructure de serveurs qui tournent très majoritairement grâce au système GNU/Linux. WordPress est utilisé par environ 30% (les sources varient) des 10 millions plus gros sites du monde.

Mais le logiciel libre est aussi un mouvement social. Des individus et des entreprises y participent, parce qu’elles estiment que dans ce domaine, le partage et la collaboration sont plus efficaces que la propriété privée des productions intellectuelles.

On voulait du coup produire cette liste des logiciels libres que nous utilisons à la France insoumise. D’abord par pur intérêt technique, mais aussi pour remercier et faire découvrir des projets collaboratifs qui existent parfois depuis plusieurs dizaines d’années. Forcément, cela fait un peu catalogue, mais ça permet aussi de mieux comprendre comment sont articulées les briques de la plateforme de la FI.

Ubuntu

C’est probablement un de ceux dont le nom est le plus connu du grand public. C’est une version du système d’exploitation GNU/Linux. Elle fait tourner les ordinateurs personnels d’Arthur et Guillaume, ainsi que les serveurs sur lesquels sont hébergés nos sites internets.

Elle est basée sur une autre version, existante depuis bien plus longtemps : Debian. Debian est un projet démocratique et collaboratif créé en 1993, doté d’une constitution, réunissant plusieurs milliers de volontaires à travers le monde.

WordPress

WordPress est un Système de gestion de contenu. En gros, un logiciel qui sert à faire des sites internets où l’on peut publier des pages et des articles. Il fait tourner au43.fr, lafranceinsoumise.fr ainsi que des dizaines de millions de sites internet.

Nous en avons besoin, car il faut que la publication de contenu et d’articles ne soit pas accessible aux seuls développeurs. Or, créer une interface de gestion de contenu aussi riche que celle de WordPress demanderait des années de travail.

Lorsque vous êtes sur https://lafranceinsoumise.fr, sans sous domaine particulier, vous êtes donc sur un site qui fonctionne grâce à WordPress.

Adjoint à Woocommerce, il permet de créer des boutiques en ligne. C’est ce qui est utilisé pour le site materiel.lafranceinsoumise.fr et dons.lafranceinsoumise.fr.

Pour faciliter l’utilisation de WordPress et de Woocommerce, nous utilisons quelques outils qui nous facilitent la tâche :

  • la stack roots.io nous permet de bénéficier des avantages des méthodes de développement moderne avec WordPress, et en particulier du versioning
  • Le plugin Elementor permet aux personnes qui publient du contenu de construire des pages graphiquement complexes avec un simple éditeur visuel.

Django

NationBuilder a été remplacé par une application entièrement écrite pour les besoins de la France insoumise, développée au quotidien par les auteurs de ce blog, composée de plus de 10 000 lignes de code.

Cette application est libre, écrite dans le langage de programmation Python. Vous pouvez trouver son code source en ligne.

Cette application n’est pas basée sur rien. Elle utilise ce qu’on appelle un framework : une sorte de boîte à outils logiciels qui permettent d’effectuer des tâches courantes plus facilement lorsque l’on écrit du code. Ce framework s’appelle Django. Il a été développé initialement par des journalistes américains au début des années 2000, et s’est depuis fortement complexifié pour devenir une référence majeure dans le monde du développement web. Il est associé à Django Rest Framework pour la gestion des API REST.

C’est probablement sur cette application que nous passons l’essentiel de notre temps de développement 🙂

Git

On aurait tendance à l’oublier, mais sans Git, notre travail serait complètement différent. Sans rentrer dans les détails techniques, c’est un logiciel qui permet le travail collaboratif. Lorsque que chacun fait à son poste des modifications sur un projet, Git se charge automatiquement de fusionner ces modifications. C’est comme si vous pouviez modifier chacun de votre côté un document texte, et que les corrections de tout le monde étaient automatiquement prises en compte une fois qu’elles étaient terminées.

Mailtrain

C’est un logiciel d’envoi d’emails en masse. C’est avec cet outil que nous envoyons les emails à tout⋅e⋅s les insoumis⋅es.

Mosaico

C’est un éditeur visuel d’emails, qui sert à la rédaction des messages envoyés avec Mailtrain. Cela permet à des utilisateurs non techniques de créer facilement des jolis emails par glisser/déplacer.


à partir de là, ça devient vraiment très technique

Ansible

C’est un logiciel d’automatisation de gestion de serveurs. On décrit dans des fichiers texte la configuration souhaitée d’un serveur, et celle-ci est automatiquement déployée sur nos machines.

Il est utilisé aussi pour le déploiement des applications : lorsque nous écrivons du code, nous publions les nouvelles version sur des dépôts publics (sur le compte GitHub de la France insoumise). Puis nous utilisons Ansible pour mettre à jour les serveurs depuis ces dépôts.

Ansible est aussi responsable de la gestion de nos sauvegardes automatiques. En cas de destruction totale de nos serveurs (ce qui est déjà hautement improbable), il nous faudrait quelques minutes pour déployer de nouveaux serveurs avec une configuration identique, et rétablir les données à partir de nos sauvegardes.

Côté langages

Si agir.lafranceinsoumise.fr est écrit sous Python (ainsi que l’application de billets électroniques de la convention), la plupart de nos petits projets (l’application procurations, le module d’authentification) sont écrits sous Node et Express.

Côté base de données

Redis, PostGres, SQLite.

Bref, un key-value store généraliste, et deux bases de données relationnelles selon la taille des projets.

La crypto ça sert à tout

Cet article se veut vulgarisateur. On va vous expliquer comment on a utilisé des technologies de cryptographie pour envoyer des autocollants, tracts et affiches  gratuites aux groupes d’action certifiés de la France insoumise.

Un peu de contexte :

Les groupes d’action certifiés ont droit chaque mois à une certaine quantité de tracts et d’affiches qui leurs sont livrés gratuitement dans toute la France par les volontaires du local. Ceci se fait au moyen d’un code utilisé au moment de la commande sur le site matériel.

Auparavant, ces codes était générés chaque mois et envoyés par e-mail aux groupes d’action. Cela occasionnait beaucoup de travail pour l’équipe opérationnelle, et de nombreux désagréments : ainsi un groupe qui était certifié au cours du mois devait attendre le mois suivant pour obtenir un code.

Dorénavant, les codes seront affichés directement sur la page de gestion de chacun des groupes d’action. Ils sont renouvelés chaque 1er du mois.

En gros, il s’agit d’afficher sur la page de chaque groupe un code, qui pourra être utilisé sur le site matériel pour ne pas payer les tracts et les affiches.

Les contraintes sont les suivantes :

  1. On ne veut pas avoir à créer les codes manuellement à chaque fois.
  2. Les animatrices et animateurs de groupes d’action doivent pouvoir trouver leur code sur leur page de gestion.
  3. Le site matériel fonctionne avec un système qui possède déjà une fonctionnalité de « codes promo » : autant s’y intégrer afin d’éviter du travail supplémentaire.
  4. Le site qui gère les groupes d’action et le site matériel sont deux systèmes différents, donc pas d’accès aux mêmes disques durs (donc pas de possibilité de partager une base de données).
  5. On veut éviter au maximum le « couplage », c’est à dire le fait que si un des deux sites (matériel ou groupe d’action) tombe en rade, l’autre soit entraîné avec lui.

La méthode qui vient le plus naturellement à l’esprit pour quelqu’un qui fait de l’informatique est la suivante. Elle consisterait à créer automatiquement des codes (1) pour chaque groupe d’action, et les enregistrer dans la base de données à côté des groupes. On peut ainsi les afficher (2) sur la page de chaque groupe. Ensuite, lors de l’achat sur le site matériel, si l’utilisateur rentre un code (3), on interroge le site de groupes d’action via une communication inter-serveurs (4). Problème, si le site de groupes d’action ne répond pas (à cause d’un problème réseau, parce qu’il est planté), alors le site matériel ne fonctionnera pas. Du coup, le point (5) n’est pas respecté.

C’est là que la cryptographie vient à la rescousse : elle va permettre que le site matériel puisse vérifier la validité d’un code sans contacter le système de groupe d’appui.

Voici comment est composé un code :

ThXRdZhJ9TzaI4

Th : les deux premiers caractères représentent la date de validité du code

XRdZhJ : les six caractères suivants identifient le groupe d’appui

9TzaI4 : ces six derniers caractères sont une signature

Tout le système repose dans cette signature. Lorsque le site de groupe d’action crée un code, il génère la partie rouge et la partie verte à partir de la date et d’un numéro unique associé à chaque groupe d’appui.

Puis, il utilise une clé secrète pour générer la partie bleue. Nous n’allons pas détailler l’algorithme ici, mais c’est comme si l’on multipliait la partie rouge et verte par la clé secrète pour obtenir la partie rouge. Si on ne connaît pas la clé secrète, impossible de générer cette signature.

Le site matériel connaît aussi la clé secrète. Lorsque que quelqu’un entre un code, l’opération est simple. Le site matériel commence par séparer le code en ses trois parties. Il reprend la partie de gauche, et recalcule la signature avec la clé.

Si la signature calculée par le site matériel correspond à la partie de droite du code fourni par l’utilisateur, c’est bon ! C’est forcément que le code provient bien du site de gestion des groupes d’action, puisque c’est le seul à connaître la clé secrète qui permet de générer cette signature.

En clair, si vous êtes un peu maligne ou malin (ou que vous allez directement voir comment ça marche) vous pouvez deviner les huit premiers caractères d’un code. Mais vous ne pourrez jamais deviner les suivants si vous n’avez pas la clé 😉

Deux aller-retours pour Athènes

Juste avant notre sortie de NationBuilder, en septembre, nous sommes allés en Grèce aider le mouvement Πλεύση Ελευθερίας (Plefsi Eleftherias) à créer sa plateforme numérique. C’est le mouvement fondé par Zoé Konstanpopoulou, ancienne présidente du parlement Grec.

Tout a commencé par une rencontre à Marseille entre Guillaume et Zoé, où ont été présentés les différents outils qu’avait mis en place la France insoumise au cours de la campagne, et comment étaient organisés les groupes d’appui sur la plateforme. Nous sommes tombés d’accord sur le fait que l’utilisation de NationBuilder était la solution la plus rapide – si ce n’est la seule accessible à ce stade – pour construire et animer une plateforme d’inspiration identique à la notre1.

Décision fut prise de se rendre en Grèce quelques jours pour travailler ensemble. Puis décision fut à nouveau prise que nous y allions séparément, à quelques jours d’intervalle, pour pouvoir être présents à deux points d’étapes du développement de la plateforme.

Nous avons été extrêmement bien accueillis. On a bien ri, bien mangé, bien dormi, et bien travaillé. L’équipe que nous avons rencontré était extrêmement sympathique.

Arthur a travaillé sur la page d’inscription, et a présenté plus en détail la manière dont les groupes d’appui se constituaient sur notre plateforme. Pas de modération à priori, pas de validation des inscriptions. Qui veut participer participe. Guillaume a travaillé sur le code nécessaire au fonctionnement des groupes d’appui et des événements locaux.

Le résultat est là. Comme pour la France insoumise, la constitution d’un mouvement à partir de sa plateforme passera par l’inclusion dans les équipes de développeu⋅r⋅s⋅es dont ce sera la tâche principale, et qui n’en seront pas moins des militant⋅e⋅s politiques.

Bon, sinon, on a mangé de délicieuses Moussaka, le meilleur souflaki d’Athènes, et prolongé l’été en profitant d’une chaleur de 40°C pendant qu’il en faisait quinze à Paris. Avant d’aller travailler dans les locaux de Πλεύση Ελευθερίας, on a même eu le temps d’aller faire chacun une petite visite. (NdG : Arthur est bien plus doué que moi pour prendre des selfies, mais un œil averti pourra remarquer que j’avais clairement plus de soleil dans la face. NdA : photo prise deux semaines plus tard à la même heure, à une période où le jour se raccourcit, je vous laisse seuls juges de cette affirmation).

Selfie d’Arthur devant l’Érechthéion.
Selfie de Guillaume au Parthenon.
Selfie de Guillaume devant le même Érechthéion, une dizaine de jours plus tard.

[1]: Cela pourrait surprendre, compte tenu du fait que nous venons nous-mêmes de quitter NationBuilder. Mais pour cela, nous avons du peu à peu développer nos propres outils, et ça nous a pris presqu’un an au total. Nous n’aurions pas été en mesure de sortir la plateforme avec l’ensemble de ses fonctionnalités dès le début si nous ne nous étions pas reposés sur une solution comme NationBuilder.

Choisissez la musique !

Quand je ne travaille pas, il m’arrive de coder pour me détendre. C’est pas très malin, je devrais donc probablement faire des choses plus diverses, d’autant que l’écran empêche de dormir comme dit ma maman.

Bref, dimanche dernier j’ai commencé à coder cette application, qui utilise l’API de Spotify pour permettre à plusieurs personnes de choisir collectivement la musique qu’on écoute dans le bureau. Ça tient en à peine 500 lignes de code, autrement dit pas beaucoup. Du Node, du SQLite et du Redis.

Le dépôt est par ici.

Lecture de la boite à idées

Nous avons participé la semaine dernière à la synthèse de la boîte à idées sur les outils. Nous voulions publier cet article en même temps que la synthèse, mais les derniers travaux sur celle-ci ne nous en ont pas laissé le temps avant ce weekend.

Nous ne manquons pas d’idées quant aux fonctionnalités d’une plateforme idéale de la France insoumise, si les contraintes techniques, de temps et de ressources n’existaient pas. Mais il nous faut toujours mettre en rapport les bénéfices que le mouvement retirerait d’un projet avec le temps qu’il nous prendrait, et les ressources quotidiennes ou hebdomadaires que nous devons ensuite investir pour son maintien en fonctionnement. Il faut donc sélectionner ces idées, choisir les plus urgentes, les plus utiles et programmer leur mise en œuvre, avec les ressources limitées à notre disposition.

La plateforme de la France insoumise, c’est aujourd’hui plusieurs centaines de milliers de lignes de code informatique. Une grande partie n’a pas été écrite par nous : c’est la douzaine de projets de logiciels libres que nous avons utilisé pour construire la plateforme. Mais la partie que nous avons directement écrite est constituée de plus d’une dizaine de milliers de lignes. C’est parfois plusieurs centaines écrites en une journée, et constamment révisées, adaptées et déboguées.

Ce n’est d’ailleurs pas sans difficultés : un logiciel est comme un édifice. On ne peut modifier une partie sans prendre le risque d’en déséquilibrer une autre. Notre travail consiste aussi à tester, concevoir, administrer l’infrastructure matérielle (serveurs, stockage des données), mettre à jour les logiciels tiers que nous utilisons. Il comprend le support technique, c’est-à-dire répondre aux questions des Insoumis qui nous écrivent via le formulaire de contact. Toutes ces tâches nous prennent environ la moitié de notre temps de travail – ce qui explique la lenteur que peuvent prendre certains développements !

Nos journées ressemblent un peu trop souvent à ça

La synthèse a été faite à partir d’une lecture complète de l’ensemble des contributions. Nous l’avons voulu lisible et claire, nous avons donc essayé de faire ressortir au maximum les convergences des différentes contributions. La lecture de cette boîte à idée nous a confortés dans les choix que nous envisageons de faire dans les prochains mois.

Lorsque nous nous demandons par quelles fonctionnalités nous pourrions améliorer la plateforme, nous avons parfaitement conscience que notre point de vue est particulier. Il est à la fois celui de personnes ayant le nez dans le guidon, et celui nourri des centaines de discussions que nous avons dans notre vie militante avec les utilisatrices et les utilisateurs des outils. Il s’enrichit aussi des résultats de dispositifs de tests comme celui que nous avons mis en place à Marseille, et dernièrement de cette boîte à idée.

C’est un point de vue riche enfin de notre propre expérience, en ce qui concerne la faisabilité technique de certaines propositions, mais aussi quant à la pertinence de certaines solutions. Un certain nombre de principes directeurs se sont ainsi dégagés très clairement au cours des années :

  • Il faut garder la plateforme unique : rassembler tous les secteurs de la France insoumise, les groupes d’action, l’action locale, la visibilité de chacun de ces éléments venant renforcer celle des autres dans un cercle vertueux 1.
  • Par conséquent, si la plateforme répond bien aux besoins, les “sites locaux”, qui ont généralement très peu de trafic, sont au mieux de l’énergie mal dépensée, au pire contre-productifs car ils dispersent le trafic 2. Par ailleurs, la plateforme nationale permet de mutualiser le travail, en faisant profiter l’intégralité du mouvement des nouvelles fonctionnalités.
  • A l’autre extrême, il vaut mieux éviter la création d’immenses espaces de discussions généralistes, conçu sans tenir compte du nombre de participant·e·s ni du temps variables qu’iels ont à y consacrer. Ça débouche systématiquement sur la tyrannie des plus actifs, au détriment de la participation du plus grand nombre 3. Nous privilégions le développement continu d’espaces de discussion spécifiques, structurés autour d’objectifs clairs, avec une grande autonomie dans la méthode de travail 4. Cela encourage une mentalité essentielle : ceux qui décident des contours de chaque idée, sont ceux qui la mettent en œuvre, pas ceux qui parlent le plus fort.

Nous allons continuer notre travail, pour fournir des outils aux différents espaces qui structurent la France insoumise, en gardant en tête ces principes. Récemment, nous avons ainsi fait apparaître sur le site les livrets thématiques comme des groupes spécifiques, sans assise géographique particulière. Tout le monde peut les rejoindre d’un clic.

Aujourd’hui, l’objectif qui nous paraît prioritaire, c’est de répondre aux nombreuses demandes liées à l’auto-organisation des groupes d’action. Elles sont diversement exprimées, mais on peut les résumer ainsi : rendre mieux visible l’activité des groupes d’action et les événements qu’ils organisent, et faciliter la communication entre les insoumis et entre les groupes proches ou moins proches pour l’organisation des événements. C’était la demande la plus souvent revenue dans la boîte à idées.

Nous sommes en bien meilleure posture qu’il y a quelques mois pour traiter cette question : lorsque nous étions encore sous NationBuilder, nous n’aurions pas été en mesure d’améliorer ces fonctionnalités. Mais maintenant qu’il s’agit d’une brique logicielle dont nous sommes les principaux auteurs, intervenir à ce niveau est devenu beaucoup plus facile.

A ce titre, nous comptons rapidement développer les éléments suivants :

  • Faire des pages de groupes un véritable outil de communication pour les groupes d’action. Permettre aux groupes d’indiquer qu’ils participent à l’organisation des événements, en tant que groupe (plutôt que seulement les individus, comme c’est le cas actuellement), rendrait leur activité visible directement sur leur page. Cela leur permettra d’y publier leurs compte-rendus d’action. Les nouveaux·elles insoumis·es pourront d’un coup d’œil visualiser le rythme d’action et le type d’actions organisés par les groupes qui les intéressent. On peut envisager une mise en avant des événements considérés les plus réussis par les insoumis⋅es.
  • Nous avons aussi quelques idées pour rendre visibles les événements organisés conjointement par plusieurs groupes. A ces fins, nous réfléchissons aussi à la façon dont nous pouvons intégrer des fonctionnalités de communication entre groupes d’appui directement sur les pages de gestion des groupes d’action.
  • Enfin, nous souhaitons mieux intégrer l’activité des groupes au reste de la plateforme. Nous travaillons par exemple sur l’affichage directement sur la page d’accueil les événements organisés par les groupes d’appui proches du lieu où se trouve la personne qui visite le site. A plus long terme (car c’est nettement plus compliqué), les mails d’actualités envoyés régulièrement pourraient comporter une partie personnalisée sur l’actualité des groupes voisins.

Les groupes d’action sont donc le chantier le plus imposant des mois à venir. Ce qui ne nous fait pas perdre de vue les autres points relevés par la boîte à idées.

Nous avons travaillé récemment sur un nouveau formulaire de contact sur le site. Il renvoie automatiquement les messages vers les personnes appropriées. C’est une première pierre dans le développement de meilleurs outils de contact en insoumis⋅es, membres de l’équipe opérationnelle, animatrices et animateurs de livrets ou d’autres espaces de la FI.

À propos des outils de formation et des ressources argumentaires, nous estimons que la tâche prioritaire doit être d’organiser le contenu déjà disponible. Le développement d’une partie du site fonctionnant comme portail vers ce contenu, avec des outils de recherche appropriés, fait partie de nos objectifs.

Notre dernier chantier concerne le financement des actions locales. La France insoumise est un mouvement, sans carte de parti. Participer à ses actions, c’est y appartenir. Il n’y a donc pas de comités, de trésoriers, ni de finances locales. C’est pourquoi n’importe qui peut se procurer du matériel, des tracts et des affiches, sur le site materiel.lafranceinsoumise.fr.

Heureusement, les Insoumis⋅es sont innovant⋅e⋅s. Les actions ne mettent pas en jeu que des tracts et des affiches. Il faut donc trouver un mode de fonctionnement en cohérence avec ce que nous avons fait jusqu’à présent. Comment financer des actions locales sans entrer dans des lourds processus administratifs de désignation de responsables, sélection et validation des dépenses ? Comment garder notre réactivité d’action ? On peut s’arranger localement : mais ce sont toujours les même, déjà les plus actifs, qui paient les photocopies ou achètent à manger pour les tables. C’est donc un élément très important pour permettre au mouvement de s’élargir.

Nous pensons que des outils numériques bien pensés peuvent apporter une réponse à cette question. Au cours du processus de la Convention, nous serons attentifs à toutes les idées émergeant sur le sujet. Nous formulerons aussi les nôtres.


Notes de bas de page (vous pouvez cliquer sur le numéro pour revenir au bon endroit dans le texte) :

1 : lorsque l’on crée un événement sur Facebook, on le crée sur Facebook pour bénéficier du trafic sur Facebook. Sur internet, il y a un effet boule de neige où la visibilité apporte la visibilité. Les sites locaux ont généralement une dimension trop restreinte, et disparaissent rapidement dans les tréfonds de Google.

2 : et en nous créant parfois du travail supplémentaire : nous recevons parfois des demandes d’aide de personnes qui n’arrivent pas à rejoindre ou quitter des groupes d’appui, et qui se révèlent n’être pas sur la plateforme nationale offrant ces fonctionnalités, mais sur des pages locales qui ne sont que des copier-coller de la plateforme

3 : Plaza podemos ou le Mouvement pour la 6ème République ont par exemple rencontré ces difficultés au cours de certaines expériences.

4 : C’est par exemple la méthode qu’avait adopté le Discord Insoumis : un regroupement par projet qui a été très efficace

La carte et la circonscription

Au début de la campagne législative, un camarade de l’arrondissement parisien où j’habite m’avait montré les cartes électorales qu’il réalisait. A chaque scrutin, il reprenait les résultats de l’arrondissement, et réalisait une série de cartes thématiques1. J’avais été très impressionné par son travail (salutations Raoul). Je m’étais donc décidé à produire une version explorable de ces cartes pour l’intégralité de Paris.

Les bureaux de vote et leurs secteurs

Dans les grandes villes, les électeurs sont répartis entre les bureaux de vote en fonction de petits secteurs qui regroupent chacun quelques pâtés de maisons (le bureau de vote d’attribution peut très bien ne pas se trouver exactement dans le secteur même). A Paris, il y a ainsi 896 bureaux de votes, et autant de secteurs associés.

Voici par exemple le découpage des secteurs autour du 43 rue de Dunkerque

Les résultats des élections sont toujours décomptés par bureau de vote. Pour les présenter sur une carte, la surface du secteur correspondant est alors colorée en fonction d’une échelle de couleur et de la grandeur à représenter, par exemple le pourcentage de votes exprimés pour Jean-Luc Mélenchon au premier tour de la Présidentielle. Cela permet d’obtenir une image très fine des variations électorales.

Et les résultats de Mélenchon  dans ces bureaux au 1er tour de la présidentielle

Pourquoi Paris seulement ?

Produire ces cartes nécessite deux jeux de données qui doivent intégralement concorder :

  • Les résultats électoraux à représenter, par bureau de vote
  • Le découpage géographique des secteurs des bureaux de vote

Sur le premier point, c’est facile : un fichier national des résultats est systématiquement disponible, et si les formats sont parfois un peu baroques2, ils sont au moins uniformes pour tout le territoire.

Mais pour le deuxième point ça se gâte. Déjà, il faut que ces secteurs soient à jour : il faut que la liste et le découpage correspondent bien à celle en vigueur au moment du vote précis. Ensuite, il n’y a pas de fichier national. Il est même parfois difficile de mettre la main sur les arrêtés préfectoraux qui les déterminent. Par ailleurs, ceux-ci ne proposent jamais de carte : ils donnent simplement en annexe une liste, rue par rue, des affectations aux différents bureaux de votes… Bon courage pour tracer ensuite, à l’aide de logiciels spécialisés, la carte des secteurs ! Je m’y étais un peu essayé, mais ça prend un temps infini.

Ça ressemble à ça pour Ivry-sur-Seine — 34 bureaux en tout !

Or, il se trouve que la Mairie de Paris met à disposition sur son site d’open data un fichier à jour des découpages des secteurs de bureaux de vote directement utilisable3 ! Il s’agit à ma connaissance de la seule grande ville à le faire.

Pour en faire quoi ?

J’envisageais deux utilisations principales :

  • Contribuer à un meilleur ciblage des actions de campagne
  • Servir à l’analyse des résultats après les élections

J’avais mis l’outil à la disposition de tous les candidats parisiens. Plusieurs d’entre eux l’ont ainsi utilisé pour le choix des lieux de distribution de tracts, ou pour l’organisation des séances de porte-à-porte. Je sais que l’équipe de Danièle Obono s’en est servi, par exemple. Dans le 13ème et le 14ème, avec Leïla Chaibi, on en a fait un usage immodéré pour cibler au mieux nos actions.

Pour la partie analyse, je n’ai tout bêtement trouvé ni le temps, ni le courage de retravailler dessus après les élections. J’espère que cette note sera de nature à motiver quelques insoumis·es 🙂

Le résultat

Le résultat est trouvable ici :

N’hésitez pas à jouer avec les différents scrutins et indicateurs (en haut à droite). Vous pouvez aussi choisir d’afficher les bureaux de vote eux-mêmes (en haut à gauche, juste sous les boutons de zoom). Cliquez sur un des secteurs, et vous obtiendrez le détail des votes pour ce bureau en bas à droite.

Regardez par exemple la forme que prennent les répartitions de vote pour les différents candidats. C’est assez parlant pour plusieurs d’entre eux !

Sous mobile, cette carte est un peu trop grosse : des versions limitées à chaque arrondissement et circonscription sont disponibles.

J’avais aussi réalisé une carte nationale présentant ces mêmes résultats par circonscription électorale. C’est très joli, mais je ne suis pas certain que ce soit véritablement utile, ni pour l’action, ni pour l’analyse : trop imprécis. Elle permet quand même de se faire une idée de la répartition des votes pour les uns et les autres sur le territoire français.

En tout cas, ces cartes sont en libre usage, et tout le code utilisé pour produire ces cartes est disponible sous licence libre sur mon dépôt github4. N’hésitez pas à me le faire savoir sur Twitter (@aktiur) si vous en faites quelque chose ou si vous avez des questions !

 

1: En utilisant le logiciel PhilCarto, gratuitement disponible sur le site de son créateur

2: Pour ceux qui veulent jouer un peu avec les données électorales sans se faire chier avec ces histoires de formats, j’ai mis en ligne les résultats de 2017 sous une forme directement exploitable.

3: Au format GeoJSON par exemple, trouvable à cette adresse.

4: Carte de Paris par bureau et carte de France.

La plateforme nouvelle est arrivée

Si vous êtes membre d’un groupe d’appui de la France insoumise, vous avez peut-être constaté quelques changements ce matin.

Travolta, confus par son environnement
Rare image d’un·e insoumis·e découvrant la nouvelle plateforme ce matin

Nous venons de mettre en ligne des changements qui sont le résultat de plusieurs mois de travail. Nous allons vous présenter ces nouvelles fonctionnalités et celles à venir. Mais avant, accrochez-vous pour un petit retour sur l’histoire de la plateforme de la France insoumise.

Au commencement était la plateforme.

La plateforme a été lancée le jour de l’annonce de la candidature de Jean-Luc Mélenchon, le 10 février 2016. Elle offrait alors les fonctionnalités suivantes :

  • Le système d’appui à la proposition de candidature
  • La possibilité de faire un don en ligne
  • La création et recherche de groupes d’appui
  • La création et recherche d’événements locaux
  • Les divers formulaires d’informations
  • Les outils de contribution à l’élaboration du programme

L‘outil de commande de matériel a été mis en ligne dans les jours qui ont suivi.

Pour la France insoumise, la plateforme a toujours été bien plus qu’une simple présence du mouvement sur internet. Au contraire, c’est l’outil qui a permis au mouvement de se constituer à partir de rien. La France insoumise, ce sont avant tout les groupes d’appui qui la constituent, et les événements que ceux-ci organisent, à l’aide des outils numériques à leur disposition.

Si vous avez lu la presse à ce sujet, vous savez peut-être que cette plateforme était basée sur l’outil NationBuilder. Début 2016, étant donné les forces en présence [NDG: un développeur sur son temps libre et pas beaucoup d’argent dans les caisses de la FI], c’était le meilleur choix pour obtenir toutes les fonctionnalités nécessaires à la création du mouvement.

Très rapidement, on a su qu’à long terme, l’objectif serait de remplacer une à une les fonctionnalités de NationBuilder par des fonctionnalités que nous aurions développées nous-même. Déjà, parce que l’ampleur qu’a pris le mouvement nous a vite amenés aux limites de l’outil. Ensuite, parce qu’il était clair que nous souhaitions nous orienter à terme vers du logiciel libre, en conformité avec l’Avenir en commun.

Le tumulte de la campagne

Mais améliorer une plateforme, pendant une campagne présidentielle, c’est compliqué. Entre l’orga des événements nationaux et les sites thématiques à mettre en ligne à la dernière minute, cela nous laissait pas beaucoup de temps, alors même que nous étions plus nombreux qu’aujourd’hui (coucou Florian et Alexis 👋👋)

Kermit la grenouille tapant frénétiquement sur sa machine à écrire
Rare image d’un·e développeur·se tentant d’avancer un peu entre deux événements nationaux

Malgré tout, au cours de la campagne, nous avons ajouté à notre système :

  • une nouvelle plateforme de dons (celle de NationBuilder ne répondait pas aux exigences de la loi électorale française passée la date d’ouverture des comptes de campagne)
  • une nouvelle carte des groupes d’appui et des événements locaux (avec les petits points bleus qui bougent quand on zoom) : cela devenait indispensable étant donné le nombre de groupes d’appui
  • les systèmes de consultations des insoumis pour la Convention de Lille et le second tour de l’élection présidentielle
  • un site d’actus plus joli que celui de NationBuilder
  • un outil de rédaction de mail pour les newsletters (nos mails étaient beaucoup plus beaux à la fin qu’au début)
  • la bascule de l’essentiel de la partie « contenu » du site (page d’accueil comprise) sur le même système que le site d’actus. Cela permettait une prise en main plus facile de la publication par chacun membre de l’équipe. C’était un gros chantier, mais cela nous a soulagé de beaucoup de travail de mise en ligne que nous effectuions nous même auparavant.
  • le site du programme avenirencommun.fr
  • le site des caravanes
  • un site de mise en relation des insoumis⋅es pour les procurations
  • la vente de places de cars pour les meetings, et de tickets pour les amphis sur le site de matériel
  • on est devenu potes avec le Discord insoumis et on a bossé (enfin ielles ont surtout bossé, merci à elleux 👏👏) ensemble sur le Mélenphone (maintenant Fiphone)
  • et plein d’autres petites améliorations de jour en jour
  • une API
  • un système Oauth2 d’authentification unique qui a servi pour le Mélenphone

Ce qui est fou, c’est qu’on a même pas eu de gros soucis techniques durant ces longs mois (bon une fois, on a allumé un firewall avant d’ouvrir le port SSH, et on a passé une mauvaise nuit.)

À l’issue des campagnes présidentielles et législatives, nous n’utilisions plus NationBuilder pour la plupart des fonctionnalités, à part l’essentiel : les groupes d’appui et les événements. Afin d’achever le travail, nous avons donc mis les bouchées doubles cet été.

Les nouveautés

Nous sommes aujourd’hui très fiers de vous présenter cette plateforme toute neuve, mise en ligne au cours de la nuit. En voici les principaux changements :

  • plus de NationBuilder. Tout tourne sur des outils maison ou libres, tout est maintenant hébergé en France !
  • de nouvelles sections pour visualiser rapidement les groupes dont vous êtes membres et les événements auxquels vous souhaitez participer
  • des nouveaux écrans de contrôle pour les groupes et événements. Il est maintenant facile d’afficher la liste des membres, de nous indiquer le nom des animateur⋅ice⋅s, ou de désigner d’autres membres
  • une rénovation de la gestion des groupes d’appui et des événements : vous pouvez modifier les informations de votre groupe ou événement, sans avoir besoin d’utiliser le formulaire de contact
  • les pages sont beaucoup plus rapides à se charger
  • un nouveau système de connexion : plus de mot de passe nécessaire, la connexion se fait via un message reçu dans la boîte mail (et on va encore simplifier ça bientôt)
  • tous nos sites sont enfin en https:// (merci letsencrypt)

La suite

Cette étape importante derrière nous, nous avons la voie libre pour mettre en œuvre plein de nouvelles fonctionnalités.

Au cours des amphis d’été, nous avions tiré au sort une trentaine de participant⋅e⋅s pour réaliser ce qu’on appelle des tests d’utilisabilité : faire réaliser par ces personnes, sans intervention de notre part, un certain nombre de tâches habituelles (chercher un groupe d’appui, créer un événement, réaliser un don…). Ces tests nous ont beaucoup appris, et nous ont permis de mieux comprendre les difficultés que certain⋅e⋅s d’entre vous rencontrent avec la plateforme.

Par ailleurs, vous avez été nombreux⋅ses, par message, par courrier, par téléphone, dans nos groupes d’appui, au moment des événements, à nous faire part de vos idées, critiques, suggestions, agacements, félicitations et difficultés avec la plateforme.

Tout ceci a rempli de nombreuses pages de petits carnets que nous avons organisé au fil du temps. Nous avons maintenant une idée plus claire des besoins du mouvement. Voici les trois directions prioritaires que nous avons identifiées :

  • rendre la plateforme plus facile à utiliser
  • rendre les groupes d’appui autonomes pour un maximum d’opérations
  • faciliter la communication dans les groupes et entre les groupes

Vous pouvez donc vous attendre à voir apparaître peu à peu des nouvelles fonctionnalités ! On reviendra ici vous les annoncer 😉

Arthur & Guillaume, co-responsables de la plateforme

«Comment le numérique est-il devenu le cœur d’une élection nationale ?»

(il n’y a pas de son au début, c’est normal)

Durant les amphis d’été de la FI, j’ai participé le samedi matin à une conférence intitulée «Comment le numérique est-il devenu le cœur d’une élection nationale ?». Je n’avais pas eu l’occasion depuis longtemps de prendre la parole en public pour expliquer les liens entre notre stratégie de campagne et les outils numériques. C’était super intéressant pour plusieurs raisons :

  • Déjà parce que les autres intervenant⋅e⋅s, Louise et Johan, étaient super intéressant⋅e⋅s (Johan a présenté le contexte des outils dits de «civictech» et a présenté des solutions pour les groupes d’appui, et Louise a parlé du numérique comme object de débat durant la campagne présidentielle).
  • On a pu aborder la question de la place de la plateforme dans le mouvement de manière approfondie : nous utilisons le numérique d’une manière très différentes des autres forces politiques.
  • Les questions de la fin ont été très utiles pour compléter le travail que nous avions fait la veille avec Arthur au cours de notre atelier pour évaluer les besoins en fonctionnalités des groupes d’appui.