Un jeune libriste part à l’asso des mauvaises habitudes

Neil vient de finir un stage d’étudiant au terme duquel il a réussi à faire adopter des outils libres à une association. Il livre ici le récit de ses tribulations, c’est amusant et édifiant…

On aimerait bien qu’il y en ait beaucoup comme lui pour s’engager de façon aussi déterminée et efficace. Nous espérons entamer une série d’interviews de libristes qui comme lui sont particulièrement impliqué⋅e⋅s dans la diffusion des valeurs et des pratiques libristes.


avatar de Neil, un pigeon sur la tête
Avatar de Neil, image d’après Tunaniverse

Bonjour à tous,

N’ayant encore qu’assez peu d’expérience dans le domaine du libre et s’agissant de mon premier article sur Internet, je sollicite votre bienveillance et vous invite à me signaler toute éventuelle erreur ou mauvais usage des termes dans cet article.

Contexte

Les études

Avant de commencer, un peu de background. J’ai 20 ans et je suis en première année de BTS SIO (branche SLAM), formation post-bac orientée sur l’informatique de gestion et le développement d’applications.

Au bout d’un mois dans cette filière, j’ai senti qu’elle n’était pas pour moi en constatant notamment un retard assez grave dans les notions du référentiel. Mais pour des raisons financières (bourses, appartement, etc.) j’ai dû finir mon année, ce qui implique l’obligation de trouver un stage d’un mois en juin.

Le choix de l’association

J’ai donc choisi une association que je vais appeler Ciné-Asso, qui propose des tarifs réduits pour des séances au cinéma pour les établissements scolaires et ses adhérents. Ses responsables disaient avoir besoin de retravailler leur système d’information.

C’était pour moi une chance que de pouvoir mettre mes connaissances à disposition d’une association, ce qui m’attirait bien plus que les stages choisis par mes camarades de classe (stage en banque, en dépannage/réparation informatique, au supermarché, en startup French Tech qui développe sous WinDev1. Choix judicieux que de choisir un stage WinDev en BTS SIO : WinDev fait partie des logiciels étudiés et utilisés tout comme WordPress, Microsoft Visio, Win’Design, PC Wizard 2015 et plein d’autres. (Vous comprenez pourquoi je n’aime pas cette filière ?)

Et je préférais travailler pour une asso en rapport avec l’art et la culture. Le choix était donc déjà fait.

Un peu de technique

En ce qui concerne les outils utilisés, mon ordinateur tourne sous Debian Buster (prerelease) depuis Janvier 2018. Je code exclusivement sous Vim, mon éditeur préféré. Pour le développement web, j’utilise Apache et MariaDB côté serveur (en local, donc sur mon propre poste). J’utilise souvent MySQL Workbench (la version sous licence GPL par Oracle) pour éditer la BDD, sinon en CLI. Je travaille tout le temps avec draw.io (licence Apache), un logiciel vraiment pratique pour réaliser des schémas en tous genres, des cartes mentales aux modèles relationnels. Je m’estime par ailleurs libriste et refuse, lorsque la situation le permet, de travailler avec des logiciels propriétaires. Vous allez voir que défendre ses valeurs n’est pas facile…

Tâches assignées

Principalement deux tâches me seront confiées durant ce stage d’un mois :

  • Retravailler le site web de Ciné-Asso Leur site web tournait sous une très ancienne version de Joomla ! et franchement, ce n’était pas beau à voir. Bref, un site des années 2006. Ma mission sera de développer un site vitrine pour le remplacer, avec une gestion d’évènements planifiés (de séances de films, en l’occurrence) pour l’association. Cela inclut évidemment la formation des bénévoles à l’outil ;
  • Retravailler la base de données, reconstruire la base de données utilisée pour enregistrer les adhérents et les donateurs de l’asso. La base de données actuelle a été créée il y a 10 ans sous Access 2003 (si ce n’est 98…) et elle est encore utilisée jusqu’à présent. La base n’est pas relationnelle alors qu’elle devrait l’être. Résultat : 35 champs dans une table avec les adhérents et donateurs mélangés, des doublons, des couples sur un seul enregistrement et de sérieuses limites. Je vais donc devoir créer une nouvelle base, migrer toutes les données et former les bénévoles.

Le tout, donc, en un mois, avec la contrainte personnelle de n’utiliser que des logiciels libres.

capture de la liste des entrées de la base de données ancienne
La base d’adhérents au départ…

Présentation de Ciné-Asso

Je vais donc vous présenter brièvement l’équipe de Ciné-Asso. De faux noms leur seront attribués afin de préserver leur anonymat.

M. Touron est le président de l’association. Un esprit juste et logique.

Mme Nougat est la trésorière et celle que je dois convaincre. Elle est très réticente à l’intégration de mon travail au sein de l’asso. Elle sera aussi l’une des principales utilisatrices du logiciel de gestion de base de données. J’ai donc intérêt à faire du bon travail afin de satisfaire ses attentes.

M. Réglisse s’occupe de la communication auprès des adhérents. Il utilise tout le temps l’outil informatique dans son travail, pas toujours comme il le faudrait.

Mme Caramel est une jeune bénévole qui soutient mes idées. Elle s’occupe principalement du site web.

M. Calisson est un bénévole octogénaire et maintient la base de données Access. C’est un autodidacte de l’informatique. Il racontait fièrement qu’il avait programmé en COBOL pour le gouvernement à une époque désormais révolue.

M. Prunelle est un prestataire de services extérieur à l’association et jouera un rôle crucial.

Une réunion est organisée entre deux ou trois bénévoles et moi deux fois par semaine afin de présenter l’avancée de mon travail et de m’ajuster à la demande. En dehors des réunions, je travaille en autonomie.

Un détail important à relever : aucun membre de Ciné-Asso n’est assez compétent en informatique pour s’occuper du côté technique du site après mon départ.

Le site web

J’ai consacré les 15 premiers jours à la réalisation du site web. Et parmi tous les CMS possibles, j’ai choisi… Allez, devinez… WordPress.
Vous avez le droit de jeter vos tomates pourries ; mais je n’avais aucune expérience, ni avec Drupal, ni avec Joomla! et je n’avais clairement pas le temps de tester les solutions (rappelons que j’ai seulement 15 jours pour finaliser le site, formations incluses). De plus, je connaissais déjà bien WordPress pour l’avoir utilisé par le passé. Et croyez-moi, j’ai regretté de ne pas avoir été assez curieux, car ces 15 jours mêlèrent ennuis et souffrance.

Le décor

On commence par le design. J’ai choisi la version gratuite d’un thème qui leur plaisait bien. Je leur conçois une jolie bannière d’en-tête (avec GIMP, bien évidemment). Au final, j’ai dû la refaire 16 fois dans une réunion de 4 heures pour satisfaire aux demandes de M. Touron, président. Mais passons. J’ai dû bidouiller le CSS afin de convenir à leurs attentes, au risque de tout casser à la prochaine mise à jour. En guise de solution, je leur ai demandé de tout mettre à jour, sauf le thème.
C’est sale, ça contourne le problème, mais je ne vois pas d’autre option dans le temps imparti ; de plus, les thèmes souffrent rarement d’une faille de sécurité. J’ai donc jugé le pari suffisamment sûr.
Travailler sur WordPress n’est pas jouissif. Ça me servira de leçon pour mes stages futurs.

Les plugins

Je choisis le plugin WP Theater pour programmer les séances de cinéma.
Évidemment, les fonctions les plus intéressantes sont payantes. Je me contente des fonctions de base et réussis à convenir à leurs demandes. M. Touron m’a proposé d’acheter la version payante du plugin, mais j’ai insisté en disant que n’était pas nécessaire et que pour le prix de la fonctionnalité, ça relevait plutôt de l’escroquerie.

Les deux semaines s’écoulèrent (trop) paisiblement avec quelques ajustements par-ci par-là. La formation fut terminée en une après-midi. L’intéressée, Mme Caramel, appréciait l’interface conviviale du logiciel.

Choses vues

En un mois, j’ai appris à connaître les membres de l’association : leur personnalité, leur empathie et surtout, leur usage de l’outil informatique. J’ai tout de même quelques anecdotes qui font peur.

M. Réglisse et Micro$oft Office

J’apprends que l’un des membres de l’association, M. Réglisse, utilise MS Office 2003 pour travailler sur les documents de l’asso. Malheureusement, ce logiciel de Micro$oft n’arrive plus à exporter en PDF sur son poste, pour une raison inconnue (tout autant à lui qu’à moi). Sans compter que Office 2003 ne lit pas les nouveaux formats MS Office (depuis 2007 : xlsx, docx, etc.) ni les formats libres (odt…). Et ainsi, à chaque fois que M. Réglisse souhaite lire ou éditer un fichier incompatible, il envoie ce fichier par mail à sa collègue qui le convertit en PDF (à l’aide d’Apache OpenOffice) et qui lui renvoie par mail, et ce depuis longtemps.
Il fallait quand même que je me retienne de sourire en écoutant ça.
On me demande conseil.
En bon libriste, j’explique que le logiciel est trop vieux et qu’il faut passer à LibreOffice gratuitement ou acheter le pack Office tous les 3 ans, en insistant bien sur la première option.
« Oui, mais j’ai déjà essayé, ça marche pas, y’a des bugs et c’est pas toujours compatible… » Finalement, j’ai réussi à le convaincre. Ça a changé un peu la mise en forme de ses fichiers et il ne s’est pas gêné de me faire remarquer qu’un pixel dépassait par-ci par-là, mais il devrait s’en satisfaire pour le moment.

Vive le libre !

M. Réglisse et le mailing

Dans les aventures de M. Réglisse, j’ai aussi celle où il souhaite envoyer une newsletter à tous les adhérents de l’association. Il ouvre sa base Access 2003, et demande au logiciel de lui donner tous les mails des membres de l’asso. Il ouvre Thunderbird en parallèle, crée un nouveau groupe… et ajoute tous les mails en les réécrivant un par un à la main ! On m’explique que c’était parce que certains mails peuvent avoir été entrés dans la base de données avec des erreurs (une virgule au lieu d’un point, par exemple…) et que copier coller pose alors des problèmes… Car la base de données ne détecte pas les erreurs de saisie…

Je promets à M. Réglisse que le mailing sera beaucoup plus facile avec ma solution.

La réunion à mi-chemin

Les réunions furent assez régulières avec moi au sein de l’asso, mais celle-ci fut de très loin la plus importante. Je rencontre M. Prunelle, expert en informatique, retraité. Il s’agit d’un prestataire de services extérieur à l’association, contacté par Mme Nougat dans l’idée de contrôler mon travail et de m’aiguiller. Pour la première fois, M. Calisson, mainteneur de la base de données, est présent. M. Prunelle commence donc par parler de son parcours ; il a fondé une entreprise d’informatique pendant sa jeunesse et a déjà programmé en COBOL et en assembleur, raconte-t-il avec nostalgie.

M. Prunelle joue un rôle crucial : il s’engage à maintenir mon travail à mon départ en tant que bénévole si le projet correspond à ses attentes. Il s’agit donc d’une personne avec laquelle je devrais collaborer.

Les deux premières heures

On parle beaucoup du site web. Je l’ai présenté, il était déjà globalement fini, prêt à être basculé en production. M. Prunelle approuve mon choix du CMS WordPress et raconte qu’il a de l’expérience avec. On discute des quelques bidouillages sur le CSS (peu nombreux mais hélas impératifs conformément aux demandes).
Mon code étant commenté et mes modifications légères et peu nombreuses, il les approuve et se propose même de les maintenir si ça casse après une mise à jour. Super, ça m’arrache une épine du pied !

Les deux dernières heures

J’aborde le sujet de la base de données. Il faut savoir que la trésorière, Mme Nougat, s’oppose assez fortement au fait que je travaille sur la BDD. Elle souhaite que je me consacre pleinement au site et veut plutôt confier la base à un intervenant extérieur aux frais de l’association. C’est d’ailleurs pour cela qu’elle a fait appel à M. Prunelle…

J’explique mon projet. Un intranet maison, développé from scratch, une BDD relationnelle. Le tout fait à la main. J’avais déjà préparé un schéma relationnel que je lui montre.

« Ta base m’a l’air bien, relationnelle, tout bien comme il faut, c’est du bon travail. Par contre, je ne suis pas trop d’accord avec ta solution pour l’hébergement de la base de données, Maria DB… Je connais de nom mais ce n’est pas très utilisé dans le domaine professionnel… »

Il sort son cahier. Puis son stylo. Je le remarque alors… Un stylo rose fluo, avec le fameux logo de WINDEV dessus. Gulp. Je sais ce qui m’attend.

M. Prunelle me demande alors d’aller voir sur une page cachée d’un site web sur lequel il avait récemment travaillé. Il m’épelle l’adresse, quelque chose du genre « xalex-xpert.com/xalex_expert ».
S’affiche alors une vieille interface de connexion sans TLS, et je reconnais rapidement WEBDEV, de la même boîte. Je fais la moue. J’explique alors que je ne souhaite travailler qu’avec des logiciels libres, par éthique. Un sourire en coin s’affiche sur le visage de M. Prunelle :

« Ha ha ha, moi aussi, quand j’avais ton âge, j’étais un rebelle et je votais à gauche ! Mais aujourd’hui sur le marché du travail, dans un contexte professionnel de l’industrie informatique, jamais je ne me permettrais de présenter une verrue de Linux chez un client ! »

Hein ? L’industrie professionnelle de l’informatique ? Le marché du travail ? Qui a parlé de Linux ? Une verrue ?
La rébellion gauchiste ? Ce n’est pas un #MercrediFiction ni une exagération. C’est mot pour mot ce qu’il m’a dit. Je suis resté bouche bée pendant quelques secondes avant de passer à l’offensive en défendant mes arguments.

Et là, tout de suite, la grosse condescendance. En puissance. Limite, s’il m’avait versé un coulis de caca sur la tête, ça aurait été plus respectueux.

« Non mais de toute façon voilà, c’est comme ça qu’on débute, on fait tous des erreurs, on progresse ensuite, moi j’en ai vu, c’est pas le premier, je sais comment ça se passe »

Et alors évidemment Mme Nougat s’incruste et en rajoute une couche…

« Moi je pense qu’on a la chance d’avoir un professionnel parmi nous, M. Prunelle sait ce qu’il faut faire. Quand on est jeune, on ne connaît pas le marché du travail, on ne sait pas comment bien faire les choses pour répondre aux demandes du client, c’est normal »

(Allez-y, pissez-moi dessus encore, j’aime ça.) Mais avant que je ne me fasse totalement recaler, M. Touron et Mme Caramel interviennent au moment opportun et insistent pour me laisser une chance. Ouf, c’est sauvé. Par contre, du coup, inutile de compter sur lui pour maintenir ma « verrue de Linux ». Plus qu’à me débrouiller tout seul.

Résultat, les deux solutions seront proposées au conseil d’administration et c’est le conseil qui tranchera. J’ai intérêt à bien faire le boulot.

La veille technologique, ou comment j’ai changé d’avis

Ok, j’ai donc 15 jours pour réaliser une solution convaincante à partir de rien, migrer la solution actuelle vers la mienne et enfin former les nouveaux utilisateurs… Bon, j’ai des bouts de code de prêts pour ça, je suis assez expérimenté en PHP pour me débrouiller comme un grand. Mais 15 jours…

État des lieux

Tout d’abord, le lendemain de la réunion, M. Calisson (mainteneur octogénaire de la BDD) s’est présenté à moi. Il a fait l’effort de se déplacer dans les locaux pour me proposer personnellement son aide.
Face à une telle bienveillance, je ne pouvais refuser. Il m’a donné une documentation utilisateur d’une vingtaine de pages (datant de quelques années), très détaillée, qui m’a beaucoup appris. Il a ensuite pris le temps de m’expliquer chaque détail flou de la base actuelle et décrit les attentes particulières de Mme Nougat, qui attend d’être convaincue par ma solution.

Il n’était pas obligé de faire tout ça et je lui en suis grandement reconnaissant. Avant de le rencontrer, je pensais que ça allait être un esprit conservateur qui considère que sa solution (une table, 35 champs, rappelons-le) est la meilleure de toutes… et je me suis bien trompé. Comme quoi, le code ne fait pas le développeur…

À l’aide, Mastodon !

Dans le doute, je fais appel au réseau des réseaux. Et dans la panade, je fais appel au Fediverse.

Appel à l’aide sur Mastodon…Voyez tous les conseils reçus suite à ma demande !

 

Amis, camarades, connaissances, merci à vous. Vous avez été d’un précieux soutien dans cette situation difficile, vous m’avez aiguillé quand M. Prunelle m’avait lâché. Je savais que je pouvais compter sur vous ! Et j’ai attentivement écouté vos conseils.

Alors que choisir ?

Je peux dire beaucoup de mal (à tort et à raison) de mes professeurs de BTS SIO, mais c’est l’un d’eux qui m’a conseillé Galette en premier (en l’occurrence, ce professeur revendique des valeurs libristes mais enseigne WinDev et Win’Design aux élèves, ironiquement. Il enseigne Merise aussi, en 2018. Mais passons !)

Galette est un CMS libre de gestion d’adhérents pour les associations, inscrit sur Framalibre, l’annuaire contributif où j’aurais dû chercher en premier. Le logiciel a été créé en 2004 et est toujours maintenu à l’heure actuelle via des mises à jour régulières. Il est utilisé par des dizaines d’associations et reste un choix à considérer pour un déploiement rapide et efficace.

La Fediverse m’ayant conseillé (entre autres) Galette, j’ai décidé de m’y intéresser de plus près. Je connaissais déjà Galette (de nom seulement) avant que mon professeur m’en parle, mais tout écrire de soi-même avait l’air tellement plus amusant…

Et la solution avait l’air vraiment sympa. Il m’a fallu quelques jours pour m’assurer qu’elle collait bien au cahier des charges de Mme Nougat, mais tout avait l’air d’aller comme il faut. Et comme je n’ai plus le temps, il vaut mieux choisir cette option plutôt que de partir de zéro et rendre un travail insatisfaisant ou incomplet.

Partons donc pour Galette !

Galette

Abordons un peu l’aspect technique. La formation WordPress et quelques autres tâches ayant un peu débordé sur le planning, il me reste 10 jours pour déployer la solution et former les utilisateurs.

Le cahier des charges

Je rencontre un problème. Le cahier des charges n’est pas respecté sur un point : les statistiques. L’asso a besoin de stats assez précises pour la comptabilité et Galette ne fournit que deux ou trois pauvres camemberts. Galette tournant sous PHP, je prends la décision d’écrire un plugin.

Le plugin

C’est ce qui va prendre le plus de temps. Je travaille dans un environnement avec lequel je ne suis pas familier du tout, même si c’est du PHP, car je n’ai jamais touché à des frameworks PHP ni utilisé une API conçue pour des plugins. Ma première rencontre avec Zend Framework se passe… mal. Très mal, au point où j’interroge directement la base de données avec des requêtes en dur pour faire le boulot.
J’aurais aimé apprendre comment m’en servir, mais « je n’ai pas le temps ». Bon, j’ai moins d’excuses pour le switch à 90 cases avec des requêtes SQL et les 80 lignes de HTML dans un string… Mais chut…

Blague à part, je commence à être vraiment à la bourre. Plus que quelques jours de stage déjà, et c’est fini. Je me débrouille comme je peux pour coder quelque chose qui fonctionne. Qui a parlé de maintenabilité ?
Le prochain qui passera derrière moi sera probablement un stagiaire de BTS SIO, ça lui fera les pieds 🙂 (Il va me retrouver et me tuer pour avoir écrit ça, et je ferai moins le malin quand je tomberai sur un cas similaire. Bon au moins, j’ai mis plein de commentaires)

La demande de dernière minute

J’ai présenté le plugin de stats à Mme Nougat et il a fallu s’adapter à une demande de dernière minute. Totalement justifiée cela dit, ça faciliterait grandement la comptabilité. Il s’agit encore de stats.
J’applique des quickfixes sur le code dégueulasse que j’ai pondu juste avant. Il me reste trois jours. (Comment ça, ce n’est pas une excuse ? Au moins ça fonctionne !)

Bon allez, on plie ça vite fait et on passe à l’importation, qui n’est même pas commencée !

Préparation pour la migration

Un peu plus de technique.
La base de données est sous forme de fichier. MDB (Access), format propriétaire. Elle pèse 8.5 Mo. J’ai des frissons dans le dos. J’utilise le paquet mdb-tools pour convertir la structure et les données en requêtes SQL et je crée une nouvelle DB en local (MariaDB) et j’importe le tout.
Vive le libre.

Voilà la table à 35 champs… Ma première tâche va être de séparer les entrées des couples (M. et Mme) qui ont été enregistrés en une seule entrée.
Sur le coup, LibreOffice Calc est mon ami. J’importe tous les enregistrements où Sexe=« M. et Mme » et je les sépare à coups de Chercher/Remplacer. Une fois le boulot fini, j’importe tous les autres adhérents enregistrés dans la base jusque là sur le tableur, c’est plus facile que sur Workbench. Et nous y voilà, un total de 1275 lignes.

La grande migration

Allez, c’est parti. Je saisis 1275 adhérents à la main, depuis l’interface de Galette.

Bien sûr que non. Vous croyez vraiment que j’allais faire ça manuellement ?
Je me remémore ce que disait l’un de mes professeurs de BTS SIO :

« Un développeur, c’est un branleur. Une quiche molle. Alors à un m’eng donné, il faut savoir optimiser son traitemeng ou on va se retrouver avec une KYRIELLE de travail à faire. »

Il reste 2 jours. Comptant un jour de formation et d’installation du logiciel, j’ai 24 heures pour réaliser la migration. Admettons que je prenne trois minutes par entrée (adhérent + contribution). (1275 x 3) / 60= 63h45 de travail. C’est hors limites !

La seule solution est donc d’automatiser le tout. Mais il ne s’agit pas d’un simple INSERT INTO dans une table, hélas. Galette utilise un système de champs dynamiques qui permet d’avoir des champs personnalisés par l’association. Il les gère d’ailleurs assez mal : lorsqu’on supprime un adhérent ou une contribution, les champs dynamiques associés ne se suppriment pas avec. Encore un bug à signaler, tiens. Mais passons.

Formatage des données

Je commence par ajouter un adhérent et une cotisation annuelle pour ce dernier et j’identifie dans la BDD les tables mises à jour. Il y en a trois : galette_adherents, galette_cotisations et galette_dynamic_fields.

Ensuite, ça reste quand même assez trivial. J’identifie à quoi correspondent les champs dans les tables et je prépare mes inputs selon mes besoins. Je n’oublie pas de m’adapter au logiciel. Exemple, Galette interdit les adresses mail dupliquées dans la BDD. Je supprime tous les duplicatas depuis LibreOffice avant de commencer quoi que ce soit. Puis vient le plus
pénible. Le formatage des inputs. LibreOffice est pratique pour ça, mais je préfère tellement Vim qui s’avère bien plus efficace quand on a l’habitude du logiciel.

Vérification des données

Je vérifie encore mes inputs. Les erreurs les plus courantes :
– Doubles espaces (un coup de regex et c’est fini)
– Accents dans les adresses mail
– Virgules à la place de points un peu partout
– Formatage pas toujours standardisé du numéro de téléphone… J’étale le champ adresse, unique jusque là, sur deux lignes. C’est long et pénible, un bon travail de stagiaire. Par superstition, j’enlève les guillemets placés inutilement dans les adresses physiques.
– Au passage, je découvre des adresses Yahoo, AOL, Cegetel, Alice, Wanadoo, Neuf et même quelques .gouv.*.
Ça fait un peu peur.

– Le champ galette_adherents.login_adh contient des caractères aléatoires servant d’identifiant pour l’adhérent. L’asso n’utilise pas cette fonctionnalité, mais pour ne pas contrarier Galette, je vais insérer des caractères aléatoires dedans : SUBSTRING(MD5(RAND()) FROM 1 FOR 15)
Ce n’est pas censé être un identifiant hexadécimal, mais ce n’est pas grave.

Enfin, je prends soin de distinguer les champs vides des champs NULL. On peut maudire SQL pour ça, je suppose.

Je termine la migration le 28 juin au soir, soit 24 heures avant la fin du stage. La journée de demain commencera à 09h00.

Déploiement de la solution

Ah oui, à ne pas oublier. Avant de former les utilisateurs, il faut d’abord déployer Galette sur leur réseau (en intranet). Je choisis l’utilisation de XAMPP sur l’un de leurs postes Windows.
Je configure le serveur DHCP de leur box pour que l’IP du poste en question soit fixe. Ma méthode est probablement discutable mais je ne vois pas d’autre option possible, surtout qu’héberger Galette sur le “cloud” ne leur aurait pas servi car ils ne travaillent sur la BDD qu’en local. Enfin, je déploie Galette, j’exporte la BDD depuis mon poste et je l’importe sur le leur. Je transfère aussi les fichiers de mon plugin. Évidemment, l’opération ne s’est pas déroulée sans accroc – surtout sur des postes Windows. J’ai perdu une à deux heures dans la migration.

L’imprévu fatidique

En formant l’une des deux bénévoles, on s’aperçoit ensemble que de nombreuses données de l’ancienne base sont erronées depuis quelques mois (suite à une maintenance de M. Calisson) et que ces erreurs ont été (évidemment) reportées sur la nouvelle base. Nous arrivons à une conclusion terrifiante : il faut repasser manuellement derrière chacune des 1275 adhésions à partir des bordereaux d’adhésion, conservés par précaution. Cette opération nous a coûté 4 à 5 heures. La bénévole a eu la gentillesse de m’apporter une pizza pour que je puisse finir mon travail d’esclave le plus vite possible sans sortir du bureau.

fig.1 Travailler en équipe pour résoudre un problème. La théorie.

fig.2 Travailler en équipe pour résoudre un problème. La réalité.

La formation

Vous imaginez qu’il ne me reste plus beaucoup de temps pour former les utilisateurs. La première bénévole était assez familière avec l’informatique, mais la deuxième ne l’était pas du tout – au contraire, elle détestait l’informatique. J’ai dû abréger beaucoup de points que je préciserai dans une documentation utilisateur à rédiger après mon départ. Ce fut très laborieux, mais l’essentiel a été vu. Il est 18h00, mon stage se termine et ma mission avec. Je remercie M. Touron qui m’offre une gratification de stage de 150 euros.

Le suivi

Le libre, c’est bien, mais quand il est encadré et suivi, c’est mieux. Le site web de l’association est hébergé par la Ligue de l’Enseignement, ce qui leur permet de profiter de tarifs très préférentiels. J’ai pu rencontrer l’un de leurs membres avec M. Touron dans le cadre de la migration du site de Joomla ! vers WordPress.
Ce monsieur, aux antipodes de M. Prunelle, était clairement fâché de mon choix de WordPress, en disant que les webmasters oublient souvent de mettre à jour le CMS et qu’il est généralement considéré comme une usine à gaz trouée par des failles de sécurité. Je ne peux qu’être d’accord avec lui sur ces points-là, malheureusement.
M. Touron aborde finalement la question de la gestion de la base de données (Galette, donc) et ce monsieur semble non seulement connaître le CMS, mais exprime sa satisfaction quant au choix d’un logiciel libre. Quand je lui ai dit que ce choix était par éthique, nous sommes rapidement partis dans une discussion libriste mentionnant La Quadrature du Net, l’April, Framasoft, les RMLL 2018 qui approchent à grands pas…

C’était ma première discussion avec un libriste dans la vraie vie et elle ne pouvait pas tomber à un meilleur timing. La personne idéale pour reprendre le projet était déjà trouvée, je peux dormir sur mes deux oreilles !

Ressenti personnel

Cet article est déjà beaucoup trop long, mais je tiens à exprimer mon ressenti sur ce stage. La rencontre avec M. Prunelle fut très parlante pour moi : j’ai réalisé à quel point les esprits peuvent être conservateurs dans le domaine de l’informatique.

Être libriste, c’est avant tout avoir des convictions que l’on défend au quotidien. Je ne m’attendais pas à entrer en conflit d’éthique avec qui que ce soit pendant ce stage, tout comme je ne m’attendais pas à rencontrer des personnes défendant les mêmes valeurs que moi. C’est aussi inciter les utilisateurs moins familiers vis-à-vis de l’outil informatique à découvrir les outils libres, faire face à leurs réticences dues à la peur de l’inconnu, à leur habitude d’utiliser des outils propriétaires et parfois, à leur manque de confiance en votre personne au prétexte de votre jeune âge et de votre supposé manque d’expérience.

Ce stage fut un véritable combat au nom de l’éthique et de mes propres convictions, mais il fut aussi porteur d’espoir : les libristes sont plus nombreux que je ne le pensais, et mon déplacement à mon tout premier meeting (les RMLL 2018) va probablement m’aider à mieux connaître (et sympathiser !) avec les différentes communautés et me permettre de définir plus précisément mon parcours professionnel en vue, dans l’idéal, d’un métier dans ce domaine.

Vive le libre !

@Neil@shelter.moe




Comment réparer les médias sociaux (et faire encore mieux)

Le récent scandale Cambridge Analytica semble avoir brièvement remis au goût du jour la question du siphonnage de données par les médias sociaux. Il est bon de se rappeler que la collecte de données n’est pas une simple pratique de Facebook, mais bien leur modèle économique : que cette entreprise – parmi les plus cotées en bourse au monde – n’existe qu’en se nourrissant de nos Likes, photos et autres interactions sociales.

Vol de données privées, manipulation de masse, matraquage publicitaire, exploitation de nos faiblesses psychologiques, … il y a beaucoup à dire sur les pratiques néfastes des médias sociaux centralisés. Mais aujourd’hui tournons-nous vers une solution et découvrons ensemble un moyen de lutter contre ces derniers avec des alternatives plus éthiques. Non, mieux : une fédération d’alternatives plus éthiques.

Nos ancêtres les Gaulois ?

L’an dernier, nous annoncions vouloir tourner la page de Dégooglisons Internet, avec laquelle se tourne aussi la métaphore des camps gaulois libres qui luttent contre l’invasion romaine propriétaire.

Ce que nous avons omis de préciser, c’est que n’en déplaise à Goscinny, l’histoire ne s’est pas réellement passée comme nous avons l’habitude de la lire dans ses albums. Ce que nous appelons les gaulois est en réalité un terme un peu générique inventé par les romains pour désigner les nombreux petits peuples qui vivaient en Gaule.

carte ancienne représentant les gaules à l'époque gallo-romaine : Gaules belge et celtique, province romaine et aquitaine.

Même s’il pouvait y avoir quelques alliances entre plusieurs peuples, en aucun cas tous ces villages gaulois étaient unis pour former un seul grand peuple gaulois. Ces derniers étaient bien indépendants : ils se faisaient beaucoup la guerre entre eux et parlaient leurs propres patois locaux.

Maintenant imaginez que vous êtes un peuple gaulois vivant à cette époque : vous voyez débarquer la grande armée romaine, qui envahit un à un d’autres villages gaulois. Bon, vous n’avez pas spécialement beaucoup d’affinités, mais on peut quand même vous trouver une petite larme à l’œil, ne serait-ce que parce que les Romains ne respectent pas vos principes.

Comment faire, donc, pour que ces braves Gaulois continuent paisiblement leurs bagarres de poissonniers et leurs concours de moustache ? Peut-être essayer d’améliorer l’entente entre ces différents peuples. Hmm, mais ce n’est pas si évident, les peuples gaulois parlent chacun leur propre patois, la barrière de la langue pose rapidement un gros frein à tout arrangement.

Les libristes, ces grands relous

Vous l’aurez compris, les logiciels libres sont comparables à un ensemble de villages gaulois : bien sûr, beaucoup souhaitent lutter contre l’invasion de Google, Apple et autres GAFAM, mais ils veulent toutefois garder une certaine indépendance : il n’y a qu’à regarder le nombre de distributions Linux pour se rendre compte de la diversité qu’apporte la possibilité de modifier à loisir un système.

Extrait de l'arbre des distributions Linux : il y a plein d'alternatives.

 

On pourrait penser que c’est bien dommage, que tous ces libristes feraient mieux d’unir leurs forces pour lutter ensemble contre leurs ennemis communs au lieu de se diviser ainsi. Mais ce serait mettre fin à ce qui motive justement cette soif de créer des projets libres : la possibilité de pouvoir les modifier et les partager librement.

Au contraire, on se contente d’être fiers de voir autant de diversité dans les logiciels libres, comme on peut aujourd’hui être amusé à l’idée de savoir que nous sommes les descendants d’une grande diversité de peuples de la Gaule et non pas d’un seul grand peuple gaulois.

L’effet de réseau

En somme, le meilleur moyen de lutter contre la centralisation d’Internet dans d’immenses silos à données que sont les GAFAM, serait de faire des silos plus petits. On a en tête le projet Chatons : ce collectif d’hébergeurs indépendants, qui proposent des services – les mêmes qu’on trouve chez Framasoft, pour la plupart – alternatifs à ceux fournis gracieusement par Google et consorts (dans ce dernier cas, c’est en échange de quelques informations personnelles et d’un peu de temps de cerveau disponible, hein, rien de méchant).

Pour certains logiciels comme Framadate ou Framapad, qui remplacent rapidement leurs équivalents propriétaires, c’est plutôt facile : on peut même choisir encore d’autres alternatives selon nos préférences. C’est surtout de nouvelles habitudes à prendre, mais rien de vraiment bloquant.

En revanche, pour les logiciels qui permettent aux gens de communiquer ensemble, notamment les médias sociaux (qu’on appelle à tort les réseaux sociaux – parce que oui, le réseau, c’est vos amis 😉 ), c’est plus compliqué.

Par exemple il est bien difficile de remplacer Facebook par son équivalent libre, car la plupart des gens sont sur Facebook : il faudra donc les convaincre de franchir le pas, ce qu’ils hésiteront à faire car… il n’y a pas assez de monde, et qu’il faudrait aussi convaincre les amis de vos amis et ainsi de suite. Ah, et avant que vous ne posiez la question : oui, c’est compliqué de dire à 2 milliards d’utilisateurs : « allez à trois on s’en va tous pour aller sur telle autre plateforme, vous êtes prêts ? ».

Ce problème s’appelle l’effet de réseau. C’est le principal problème des alternatives libres aux sites impliquant des interactions sociales et il n’est pas spécifique aux médias sociaux : par exemple le projet Covoiturage Libre, malgré ses valeurs éthiques, peine à se développer face au monopôle de son équivalent propriétaire.

Dans le monde du libre, l’effet de réseau est empiré par le fait qu’il y a souvent plusieurs alternatives et que, comme nous l’avons vu, les logiciels libres sont des villages gaulois : un peu divisés, ils aiment leur indépendance et leurs spécificités.

Cela ne facilite pas la tâche à un éventuel romain qui voudrait tout plaquer pour élever des chèvres en Gaule : quel village choisir ?

Et si on parlait la même langue, ça n’irait pas mieux ?

la Tour de Babel, tableau de Brueghel l'Ancien

 

La communication est la clé d’une bonne entente entre peuples : une solution pour assurer la pérennité de nos villages gaulois serait de les aider à mieux communiquer entre eux. Autrement dit, de se mettre d’accord sur une langue qui serait comprise par tous les peuples gaulois, une sorte d’Espéranto visant à améliorer la communication. Ce qui bien sur, ne les empêche pas de parler leur patois quand ils sont entre eux.

Le fait de définir un langage commun permet donc aux petits villages d’échanger ensemble tout en gardant leur indépendance. Ils deviennent une sorte de fédération de peuples indépendants : ils ont chacun leurs us et coutumes, mais se comprennent bien, ce qui par exemple peut faire avancer le commerce et créer une sorte de synergie gauloise qui les rend d’une certaine manière plus unis pour repousser l’invasion romaine.

Bon, on ne va pas vous mentir, l’idée d’une langue fédératrice pour les médias sociaux ne date pas d’hier. Il y en avait déjà plusieurs depuis de nombreuses années, on peut donc relativiser sur le fait qu’une nouvelle venue arrive pour tout arranger.

Strip de Comics XKCD - image 1 situation initiale avec 14 standards en concurrence - image 2 coversation : un personnage dit à l'autre qu'il faut développer un standard universel qui remplacera tous les autres - Image 3 : résultat final, 15 standards en concurrence

 

Un langage pour les fédérer tous …

Le nouvel Espéranto des logiciels libres se nomme ActivityPub : c’est une nouvelle langue pour mettre d’accord les médias sociaux alternatifs.

La très bonne nouvelle c’est qu’il y a quelques mois, ActivityPub a été validé par le W3C. Le W3C, c’est l’équivalent de l’Académie Française pour le web : à l’instar de celle-ci, dont le but est d’uniformiser la langue de Molière en établissant certaines normes, le W3C valide quels sont les mots que les langages d’Internet devraient utiliser.

Rien ne nous oblige bien sûr à respecter cette convention si l’on préfère notre patois local, mais le fait de valider un langage permet aux villages – notamment les nouveaux venus – de moins se poser de questions sur le choix de la langue à utiliser pour se comprendre.

Par exemple, le logiciel Mastodon est une alternative à Twitter basée sur ActivityPub. Comme nous aimons décentraliser Internet, il y a plusieurs villages Mastodon un peu partout, qui communiquent entre eux. L’utilisateur du village Framapiaf peut échanger avec son cousin vivant dans le village Mamot, sans que ce dernier ne s’aperçoive qu’il est en train de parler à un lointain voisin.

Logo d'ActivityPub

… et dans les internets les lier.

Là où cela devient intéressant, c’est que Mastodon est un logiciel libre et donc que chaque village Mastodon peut l’adapter à ses besoins :

– chaque village a son propre jeu d’emojis personnalisés ;
– le village Framapiaf a donné un coup de peinture sur l’interface ;
– d’autres villages ont fait leur petite cuisine interne en repoussant par exemple la limite des 500 caractères par message, car ils la trouvaient trop contraignante.

Aucun problème : quelles que soient ces personnalisations, tout le monde continuera de communiquer à travers les villages, car ils parlent toujours la même langue, ActivityPub.

Le fait d’utiliser un média social basé sur le principe de fédération vous rend libre. Si le village Mastodon sur lequel vous vous trouvez change un jour ses conditions d’utilisation, vous être libre de déménager dans un autre village qui vous correspond mieux.

Mieux : si un jour le logiciel Mastodon ne respecte plus du tout les utilisateurs, il y a fort à parier que des défenseurs du libre reprendront le logiciel et en feront une autre version (cela s’appelle un fork) et que petit à petit, les villages migrent vers cette nouvelle version plus respectueuse, sans que les utilisateurs soient fortement impactés. Cela nous permet de revenir aux valeurs essentielles du libre : c’est l’utilisateur qui a contrôle sur le logiciel, et non l’inverse.

D’ailleurs, quelqu’un pourrait se dire un jour que l’interface de Mastodon est trop compliquée et décide d’en faire une totalement différente, plus proche de celle de Twitter. Ce n’est pas grave. Il n’y a pas tout à refaire, toute une base d’utilisateurs à reprendre. C’est juste des villages un peu différents qui apparaissent et avec qui on continuera de communiquer. Cela peut même faciliter l’adoption d’ActivityPub par le grand public : si une personne n’aime pas Mastodon, on peut lui présenter un tout autre logiciel qui lui convient mieux et permettra de communiquer avec les mêmes personnes.

Là où cela devient très, très intéressant, c’est qu’en fait les villages peuvent être complètement différents et avoir leurs propres spécialités. Revenons à nos Gaulois : on peut supposer que les villages proches des côtes vivent de la pêche et fassent du commerce de poisson entre eux, tandis que ceux vivant dans les montagnes soient davantage occupés par l’élevage de chèvres et le commerce de fromages.

Notre Espéranto permet à notre village de pêcheurs de Bordeaux de se fédérer à un village savoyard pour récupérer du Beaufort en échange de poissons, pour le transmettre à d’autres pêcheurs Bretons, tandis qu’ils profitent du vin venant d’un autre village voisin.

De la même manière, Mastodon peut communiquer avec d’autres logiciels fédérés mais complètement différents : par exemple FramaTube, l’alternative à Youtube. Il vous est alors possible d’être notifié des nouvelles vidéos qui sortiront sur cette plateforme et même de répondre aux commentaires d’une vidéo depuis Mastodon et inversement. Idem si vous mettez une vidéo en favori sur Mastodon, cela apparaîtra sur PeerTube (vous pouvez retrouver cet exemple sur cette démonstration).

La genèse d’une diversité numérique

ActivityPub va probablement faire beaucoup de bien à Internet. De nombreuses alternatives fédérées vont sortir prochainement. En tendant un peu l’oreille, on peut déjà entendre parler de blogs fédérés ou d’alternatives à Instagram ou Deezer, basées sur ActivityPub.

Cela va amener un peu de diversité dans notre paysage numérique : diversité qui ne peut pas, par essence, se retrouver dans les services centralisés, car ces derniers parlent leurs propres langues. Vous ne pourrez jamais lire et partager des Tweets depuis Facebook, ou bien répondre à un commentaire Youtube depuis Instagram. Avec la fédération, cela devient possible et cela donne à ActivityPub un avantage compétitif face aux médias sociaux propriétaires.

Ce qui est bien, c’est que cela ne concerne pas seulement les personnes soucieuses de l’usage qui est fait de leurs données personnelles : les moldus du libre pourront trouver en ActivityPub un outil avant tout pratique. Les technophiles apprécieront la possibilité d’interconnecter toutes leurs plateformes numériques entre elles. Ceux qui trouvent que leurs médias sociaux sont monotones aimeront amener un peu de diversité à leurs fils d’actualité. Les blogueurs trouveraient intéressant le fait de permettre à leurs lecteurs de recevoir et commenter un article très facilement via leurs média social favoris.

Alternatives aux médias sociaux basées sur ActivityPub. Respectivment : Funkwhale (musique fédérée), PeerTube (vidéos), Mastodon (micro-blogging) et PixelFed (images).

C’est également le cas du côté des développeurs d’application, qui trouveront en ActivityPub un moyen d’atteindre très rapidement un grand nombre d’utilisateurs. En effet la fédération est un formidable terrain d’expérimentation : si quelqu’un a une bonne idée, il peut la développer en la connectant à la fédération.

Supposons par exemple que vous vous lanciez dans le développement d’un site de partage de recettes de cuisine fédéré. Vous en parlez à vos amis, dont certains sont déjà sur Mastodon. Comme tous aiment bien l’idée, ils s’abonnent à votre site depuis Mastodon pour être notifiés de vos meilleures recettes. Lorsqu’ils recevront votre dernier clafoutis aux fraises, ils pourront le partager directement à tous leurs abonnés, lesquels seront intrigués par ce nouveau village récemment apparu dans la fédération, et pourront s’abonner à leur tour. 😉

En utilisant ActivityPub, nous participons à cette prise de conscience globale dans laquelle nous découvrons tous le point faible de ces silos à données : étant centralisés, ils sont vulnérables face à la fédération. Si nous arrivons à promouvoir suffisamment ces alternatives au grand public, nous pouvons amener ces plateformes centralisées à se confronter à un combat qui leur est perdu d’avance.

En utilisant ActivityPub, vous faites un pied-de-nez à tous ces soi-disant réseaux sociaux proclamant vouloir réunir les gens… mais dans un système cloisonné. Vous les laissez au profit d’alternatives qui ont pu voir le jour parce qu’elles ont réussi, elles, à se réunir, à se fédérer les unes aux autres.

Pour résumer

1. ActivityPub est un Espéranto qui permet aux médias sociaux alternatifs de se comprendre entre eux (se fédérer) ;
2. cela permet à deux utilisateurs de se suivre l’un et l’autre, même s’ils habitent dans des villages différents (qu’on appelle instances) ;
3. ça fonctionne bien même s’ils sont totalement différents : le village de pêcheurs peut échanger avec le village de fromagers (comme si depuis Facebook on pouvait liker un tweet) ;
4. tous ces échanges entre villages s’appellent la fédération et de nouveaux logiciels peuvent la rejoindre n’importe quand (et ça va être très cool).

Envie d’essayer maintenant ?

Vous voulez être les pionniers de cette nouvelle ère numérique qu’est la fédération ? Libre à vous de choisir votre village. Pour commencer, nous vous conseillons ceux sous la bannière Mastodon (qui a fêté son 1er anniversaire il y a quelques mois), car le logiciel est bien abouti.

Vous trouverez sur le site Join Mastodon d’autres explications sur son fonctionnement, ainsi que la liste des villages disponibles (et nous laissons bien sûr la porte de notre propre village ouverte aux nouveaux venus). 😉

En graphisme BD, la mascotte de Mastodon : un éléphanteau assis sur son derrière, trompe vers le ciel.

Crédits images :




Ce qui nous pousse au Libre

Si certains logiciels libres sont réputés à la fois pour leur efficacité et leur esthétique fonctionnelle (qu’on nommera design, parce que c’est ainsi), il faut reconnaître qu’ils ne font pas la majorité.

Certains designers aimeraient apporter leur pierre à l’édifice libriste, et rendre plus attractifs et fonctionnels les logiciels libres, mais la route semble encore bien longue comme l’a récemment constaté Maiwann. Le dialogue entre développeurs de logiciels libre et designers semble cependant s’amorcer sous les meilleurs augures, d’abord en identifiant clairement les besoins mais aussi en proposant des solutions d’interactions. Dans ce billet, Marien Fressinaud apporte une réponse de développeur et identifie, à son tour, un espace de convergence. Cet article a été initialement publié sur son blog sous licence « CC BY ».

Marien, développeur et membre de Framasoft.

Il y a quelques jours, Maiwann proposait dans un article de réconcilier designers et logiciels libres. L’article ne manque pas d’intérêt, ne serait-ce que parce qu’il identifie les freins à la collaboration des designers au libre et suggère des actions concrètes pour y remédier.

Bien que je partage bon nombre des constats, je souhaitais le « compléter », cette fois en adoptant le point de vue du développeur que je suis. En effet, il est un sujet que Maiwann n’aborde quasiment pas : pourquoi faire du logiciel libre ? Pour ma part, j’aurais en effet aimé mieux comprendre ce qui motive des designers à vouloir contribuer au Libre. En guise d’effet miroir, j’essaie donc dans cet article d’envisager les raisons qui peuvent inciter un développeur à le faire, sans prétendre être exhaustif. Cette mise en perspective repose sur mes expériences personnelles concernant FreshRSS, Lessy, les actions menées au nom de Framasoft ou encore à travers les écrits que j’ai pu lire à droite à gauche.

Apprentissage

Dans l’article de Maiwann, la seule référence à une potentielle motivation se trouve au détour d’un paragraphe :

Lors de nos études, […] alors que nous cherchons à nous entraîner, sur notre temps libre ou pour des projets de fin d’année, nous nous plaignons de ne connaître aucun développeur avec qui co-créer des sites ou logiciels.

Voilà une raison qui devrait parler à bon nombre d’étudiants et d’étudiantes ! Appliquer ce que l’on a pu apprendre en cours et donc, par extension, apprendre par la pratique est souvent moteur chez les développeurs. J’ai moi-même développé un certain nombre de programmes avec cette simple motivation. Par exemple, Minz fut ma tentative de comprendre le fonctionnement interne des frameworks web. FreshRSS a été l’occasion de travailler véritablement en communauté, et donc en équipe collaborant à distance et de façon asynchrone. Sur Lessy, j’ai pu consolider tout un paquet de connaissances que j’ai ensuite pu proposer et appliquer au boulot. Le logiciel libre est une formidable source d’apprentissage que je recommande fortement à toutes et tous.

Cela étant dit, considérer l’apprentissage comme seul moteur dans le développement d’un logiciel libre est bien entendu extrêmement réducteur et j’aurais tendance à dire que ce n’est pas la raison majeure (bien qu’il s’agisse probablement de la porte d’entrée principale pour bon nombre d’entre nous). Cherchons donc ailleurs d’autres raisons qui nous poussent, nous développeurs et développeuses, à produire du logiciel libre.

Plaisir, apprentissage et logiciel libre : le Serious Gaming (et Framinetest) en sont un bon exemple.

Plaisir

Dans le prologue du bouquin L’Éthique hacker, Linus Torvalds explique les motivations des hackers derrière le système d’exploitation Linux :

La raison pour laquelle les hackers derrière Linux se lancent dans quelque chose, c’est qu’ils trouvent ça très intéressant et qu’ils veulent le partager avec d’autres. Tout d’un coup, vous avez le plaisir parce que vous faites quelque chose d’intéressant et vous avez aussi le pendant social.

Il nous dit plusieurs choses ici. Tout d’abord, le développement d’un tel système relève avant tout du plaisir. Et il est vrai qu’on peut se demander ce qui pousse des milliers de développeurs à partager leurs savoirs et leur temps, généralement de façon gratuite, si ce n’est le plaisir de le faire ? D’ailleurs Pekka Himanen (l’auteur du bouquin) cite un peu plus loin Éric Raymond, à l’origine de la popularisation du terme « open source » (j’aurai l’occasion de revenir sur ce terme plus tard) :

La conception de logiciel et sa mise en œuvre devraient être un art jubilatoire, et une sorte de jeu haut de gamme. Si cette attitude te paraît absurde ou quelque peu embarrassante, arrête et réfléchis un peu. Demande-toi ce que tu as pu oublier. Pourquoi développes-tu un logiciel au lieu de faire autre chose pour gagner de l’argent ou passer le temps ?

On y retrouve la notion de plaisir à travers le « jeu haut de gamme ». Je prends souvent l’exemple du Sudoku ou de la grille de mots-croisés : il n’y a, à priori, aucune raison de remplir ces cases de chiffres ou de lettres, si ce n’est le plaisir de résoudre un problème, parfois complexe. Je trouve personnellement que le développement de logiciel peut amener à un état de satisfaction similaire lorsqu’on se trouve face à un problème et qu’on arrive finalement à le résoudre après plusieurs heures jours semaines de recherche.

D’un point de vue personnel, j’ai toujours été attiré par les domaines de « création ». J’ai immédiatement accroché au développement lorsque j’ai découvert que créer un site web était aussi simple que créer un fichier texte avec quelques mots dedans. Les balises HTML ? – Un simple jeu de Lego®. Les CSS ? – Quelques directives de base à connaître et on arrive rapidement à quelque chose de totalement différent. Un serveur web ? – Un ordinateur avec un logiciel spécifique qui tourne dessus. Un bug ? – Une « chasse » durant laquelle on déroule le programme qui nous semblait si logique au moment de l’écrire (mais qui l’est maintenant beaucoup moins !). Pour moi, la beauté de l’informatique réside dans sa simplicité et sa logique : il y a un véritable plaisir à comprendre comment toutes ces petites boîtes s’agencent entre elles et que tout devient plus clair.

L’espace Logiciels Libres, Hackers, Fablab de la fête de l’Huma 2016.

Partage

Si l’on s’en tient aux notions d’apprentissage et de plaisir, il n’y a rien qui distingue le logiciel libre du logiciel propriétaire. Vous pouvez très bien apprendre et éprouver du plaisir en développant du code fermé. Il nous faut revenir à la citation de Torvalds pour commencer à percevoir ce qui les différencie :

[…] ils veulent le partager avec d’autres.

Le partage : on a là une valeur fondamentale du logiciel libre qui ne trouve pas véritablement son pendant du côté du logiciel propriétaire. Bien que j’aie plus de mal à identifier clairement ce qui peut motiver l’être humain à partager ses savoirs, c’est quelque chose que je ressens effectivement. Cet aspect coopératif — Torvalds parle d’un « pendant social » — peut créer ou renforcer des liens avec d’autres personnes ce qui rend cette activité profondément humaine.

Partager, c’est donc transmettre. Transmettre à une communauté, donner les clés pour que celle-ci soit indépendante. Partager ses savoirs qui permettront peut-être à d’autres de bâtir autre chose par-dessus. Cela permet aussi de créer du lien humain, rencontrer des personnes et ouvrir ses perspectives en créant son propre réseau. C’est aussi s’offrir un coin de canapé quand on voyage. Je me suis rendu compte assez récemment de ce que m’offrait aujourd’hui cette décision en IUT de partager les petits programmes que je pouvais développer sur mon temps libre. La liberté n’est pas que celle du code.

Il y a certainement une forme de fierté à avoir exploré un domaine le premier, ou développé une application que d’autres vont utiliser (« Quoi ? Ce que j’ai fabriqué de mes propres mains t’est aussi utile ? »). Si cette fierté est par essence un peu narcissique (je suis toujours un peu pénible lorsque je suis cité chez NextInpact ou chez Korben 😇), elle est aussi bénéfique car elle encourage à rendre son travail public et donc… partager encore.

Loin du cliché des hackers à capuche, l’édition 2018 du Toulouse HackerSpace Factory utilise Langue des Signes et police Open-Dyslexie dans son imagerie.

Éthique

On retrouve aussi cette notion de partage dans les écrits de Richard Stallman lorsqu’il nous parle des quatre libertés du logiciel :

Elles sont essentielles, pas uniquement pour les enjeux individuels des utilisateurs, mais parce qu’elles favorisent le partage et la coopération qui fondent la solidarité sociale.

Ces mots, pris du point de vue de Stallman, sont bien évidemment à interpréter sous la dimension éthique (et donc politique) du logiciel libre, ce qui n’est pas forcément le cas de Torvalds (je ne saurais néanmoins l’affirmer). Puisque Stallman est à l’origine du mouvement du logiciel libre, on ne peut évidemment pas enlever l’éthique de son équation ou alors vous obtenez de l’open source (comme il l’explique dans l’article cité plus haut). On peut toutefois raisonnablement penser que les partisans du logiciel libre sont moins nombreux que ceux de l’open source, ce que j’explique par une peur ou un désintérêt envers cet objet politisé.

Je trouve toutefois dommage de ne pas plus s’y intéresser. En effet, la dimension éthique aide à répondre à une question que beaucoup de personnes peuvent se poser : « ce que je fais au quotidien a-t-il du sens ? ». Stallman y répond par la défense et le respect des utilisateurs et utilisatrices :

Le mouvement du logiciel libre fait campagne pour la liberté des utilisateurs de l’informatique depuis 1983.

Ou encore :

Pour qu’on puisse dire d’un logiciel qu’il sert ses utilisateurs, il doit respecter leur liberté. Que dire s’il est conçu pour les enchaîner ?

Si je souhaitais conclure par cet argument, c’est parce qu’il aide à boucler la boucle avec l’article de Maiwann. En effet, en tant qu’UX designer, elle va avoir à cœur de répondre aux besoins de ses utilisateurs et donc d’imaginer des mécanismes pour rendre l’outil le plus utilisable et accessible possible. Aujourd’hui il me semble percevoir dans cette communauté un mouvement de prise de conscience que ces mécanismes doivent respecter (on y revient !) les personnes utilisant le logiciel. Cela est superbement bien illustré par la vidéo « Temps de cerveau disponible » (de la série « (Tr)oppressé » que je recommande vivement) dans laquelle un ancien employé de Google, expert en éthique, témoigne :

Le but est de capter et d’exploiter au maximum l’attention.

Il l’illustre ensuite par le lancement automatique de l’épisode suivant sur Netflix et par le défilement infini sur Facebook ou Twitter (incitant de ce fait à parcourir son fil d’actualité dans son ensemble) ; ces petits riens qui font que nous revenons sans cesse à ces applications et que nous en devenons dépendant⋅e⋅s alors qu’elles n’ont d’intérêt que de nous divertir.

L’un des problèmes que j’identifie aujourd’hui est que le logiciel libre copie beaucoup (trop) ce qui se fait dans le propriétaire, et en particulier chez GAFAM et consorts… jusque dans leurs mécanismes nocifs. On peut ici reprendre l’exemple du mécanisme de défilement infini que l’on retrouve chez Mastodon ou Diaspora (et même sur FreshRSS !). Une certaine forme de dépendance peut donc s’installer au sein même de logiciels libres.

Convergence des buts ?

Les designers peuvent aujourd’hui nous aider, développeurs et développeuses, à repenser l’éthique de nos logiciels en replaçant les usages au centre de nos préoccupations et en imaginant et proposant des mécanismes permettant « d’endiguer » ce flux permanent d’informations qu’il nous faut ingurgiter.

Elles et ils peuvent aussi nous aider à atteindre véritablement nos utilisateurs et utilisatrices en rendant nos outils utilisables et… utilisés. Car un logiciel non utilisable peut-il véritablement être considéré comme Libre ? Je ne peux m’empêcher de faire ici le parallèle avec l’association Liberté 0 qui a pour objet de « sensibiliser et de promouvoir le numérique libre et accessible à toutes et tous ». Dans leur charte, il est explicité :

Les membres du groupe « Liberté 0 » considèrent que la liberté d’exécuter un programme n’a de sens que si celui-ci est utilisable effectivement.

L’association est donc dans cette même démarche de promouvoir l’« utilisabilité » des logiciels, au même titre que les UX designers (mais sous le prisme de l’accessibilité).

N’y aurait-il pas ici une convergence des buts ? N’existe-t-il pas un lieu où nous pourrions nous regrouper tous ensemble pour imaginer des outils autres que ceux issus du « capitalisme de surveillance » ?


Merci à Maiwann pour sa relecture attentive !




LibreOffice, c’est stylé ! — un nouveau manuel Framabook

C’est une réalité pour beaucoup d’utilisateurs au travail ou chez soi : pour rédiger une lettre ou un devis, pour un roman ou un essai, les logiciels de traitement de texte ont quelque chose d’incontournable. Christophe Masutti nous propose aujourd’hui, dans la collection Framabook, une adaptation du livre de Bruce Byfield : Designing with Libreoffice, une référence (sous licence libre) !

LibreOffice partout, Savoir nulle part…?

« Mais moi je préfère LaTeX, et d’ailleurs je compile mes documents bien plus vite en ligne de commande… » : oui, oui, on sait. Et d’ailleurs, dans la maison d’édition Framabook, on n’utilise pas vraiment les outils les plus communs. Chacun a ses propres préférences en matière de logiciels, et à condition d’être suffisamment expert, les productions sont à la hauteur des connaissances et des savoir-faire. Il manquait cependant à la collection Framabook un ouvrage à la fois compréhensible et synthétique sur l’un des logiciels-phare de la bureautique : LibreOffice.

À travers ses multiples versions (depuis Apache OpenOffice jusqu’à la version en ligne LibreOffice Online, en passant par des versions propres éditées par des opérateurs spécialisés) l’histoire de cette suite bureautique est à bien des égards exemplaire de ce qu’une communauté mondiale de développeurs, en particulier The Document Foundation, peut produire en termes de performance et surtout de standard (on pense notamment au format Open Document).

Si on peut se réjouir de l’adoption (controversée ou pas) de LibreOffice dans des administrations ou des entreprises à travers le monde, qu’en est-il exactement pour les utilisateurs individuels ? Quel que soit le choix du logiciel, on conçoit mal un usage de l’informatique domestique sans une suite bureautique, mais comment appréhender cet outil ?

« Chez les Dupuis-Morizeau, on utilise le logiciel de traitement de texte comme une machine à écrire façon Remington, et à la moindre difficulté, l’outil devient l’ennemi et source de stress. »

Pourquoi ? parce qu’on ne connaît qu’un minuscule fragment de ses fonctionnalités : il devient une boîte noire, avec ses secrets et parfois même une volonté propre ! C’est toujours la même tragédie : l’équipement logiciel est de plus en plus performant mais l’utilisateur reste éternellement démuni. En réalité, si LibreOffice dispose d’un excellent Wiki dédié à l’aide aux utilisateurs , il n’en demeure pas moins que l’utilisateur doit d’abord avoir une vision claire de son besoin et de la méthode pour comprendre et opérer les procédures qui lui sont proposées. Le livre de Bruce Byfield est construit pour cette raison : collectionner les procédures est une chose mais maîtriser les concepts en est une autre. Le tout est de rester compréhensible et adapter le discours aux débutants.

Un manuel pratique et stylé chez Framabook !

C’est en ces termes que Christophe Masutti a proposé à Framabook une traduction et surtout une adaptation de Designing with LibreOffice, le manuel de Bruce Byfield (voir le site web). Christophe n’en est pas à son coup d’essai avec les Dupuis-Morizeau : il y a pile un an, il publiait un ouvrage pédagogique pour accompagner les utilisateurs dans la jungle numérique et libérer leurs pratiques de l’informatique domestique. Dans la même veine, il poursuit le même objectif en s’attaquant cette fois à ce qui, selon lui, manque cruellement aux pratiques quotidiennes de la bureautique : prendre le temps de comprendre les concepts-clés de LibreOffice et libérer la production de documents. C’est une approche qui est autant destinée à l’utilisateur individuel qu’aux formateurs désirant aborder LibreOffice sous un angle plus analytique.

« Comme l’a montré Bruce Byfield, maîtriser la production de documents avec LibreOffice, c’est d’abord savoir se servir des fonctions de styles ».

Alors que l’auteur de la version originale a choisi de brosser l’ensemble des logiciels composant la suite LibreOffice, Christophe a préféré adapter l’ouvrage en se concentrant sur LibreOffice Writer et les styles. LibreOffice Writer, c’est stylé ! est donc à la fois une traduction et une adaptation. Outre le choix des sections, il a fallu en effet adapter l’ouvrage aux concepts de la typographie française, aux mises à jour récentes de LibreOffice (l’édition originale datait de 2016) tout en assurant une pérennité du contenu afin de le prémunir contre une obsolescence précoce (car on sait à Framabook qu’un manuel ne se met pas à jour si facilement).

Il en résulte alors un ouvrage de près de 400 pages. Mais que les lecteurs se rassurent : toutes ces pages ne sont pas dédiées à une suite épuisante de procédures à appliquer. Au contraire. Par exemple, une grande partie du premier chapitre est dédiée à la confrontation entre les deux manières d’appréhender un logiciel de traitement de texte : formater manuellement ou utiliser les styles. Si les deux méthodes ne sont pas exclusives, l’utilisation des styles suppose un recul nécessaire et une analyse des besoins et des pratiques. C’est le principal atout de l’ouvrage : nous aider à faire le point.

Un autre exemple : beaucoup de questions liées à la typographie sont abordées au fil des chapitres, procurant ainsi, en pratique, une excellente vulgarisation de concepts trop souvent ignorés et qui, pourtant, sont essentiels pour composer des documents et assurer leur bonne lisibilité.

LibreOffice partout, Microsoft WordTM nulle part !

Pour qui compose-t-on des documents ? Quels types de documents et à quelle fréquence ? Bruce Byfield, en tant que journaliste professionnel (spécialisé dans les logiciels libres) a publié Designing with LibreOffice parce que justement il ressentait le besoin de rationaliser ses pratiques bureautiques.

La composition avec les styles, c’est sans doute le principal atout de LibreOffice, grâce auquel la très grande majorité des fonctionnalités avancées deviennent compréhensibles. Pour donner un élément de comparaison, lorsqu’on compose des documents pour le Web en HTML ou destinés à l’impression comme avec LaTeX, les premières opérations concernent la configuration des fichiers de styles. LibreOffice (et la plupart des logiciels de traitement de texte) ne déroge pas à cette règle qui permet d’automatiser la mise en page et se concentrer le plus possible sur le contenu lors de la rédaction.

Comme Bruce Byfield le dit dans une interview de 2016, à bien des égards, et depuis longtemps, le logiciel libre ne joue plus la carte du rattrapage par rapport aux logiciels propriétaires. C’est le cas de LibreOffice Writer qui n’est plus seulement une simple alternative à Microsoft Word car il présente, en particulier dans l’usage des styles, une approche très différente de la composition de document. La comparaison n’est plus une affaire de préférences personnelles, mais une question de stratégie, qu’il s’agisse d’un usage domestique ou professionnel.

Avec LibreOffice Writer, c’est stylé ! les lecteurs trouveront bien plus qu’un manuel. C’est d’un compagnon qu’il s’agit, et on sait que le temps consacré à un compagnon n’est jamais perdu.

Liens utiles




La réforme européenne du droit d’auteur ? – une menace pour le logiciel libre selon Glyn Moody

Comme vous l’avez peut-être lu dans l’appel de Julia Reda que nous avons publié hier, l’heure est à la mobilisation contre une proposition de directive européenne qui pourrait avoir des effets dévastateurs.

Non, les GAFAM ne seraient pas les premiers impactés, mais plutôt des entreprises moins bien armées et aussi des sites comme Wikipédia, ainsi que des plateformes de dépôt et partage de code qui constituent des ressources précieuses pour la communauté du logiciel libre.

De tels sites risquent d’être contraints à des dispositifs coûteux et difficiles à mettre en œuvre pour filtrer les contenus sous droits. C’est ce que détaille aujourd’hui Glyn Moody à propos des effets de l’article 13 de cette proposition de directive, contre laquelle a déjà alerté l’April depuis septembre dernier.

Aujourd’hui, la mobilisation de plus de 80 organisations et la mise en place du site https://savethememe.net/en constituent des formes d’action militante auxquelles le plus grand nombre doit contribuer. Diffusons largement la traduction des articles de Julia Reda et de Glyn Moody. Signons la lettre ouverte Save Code Share! Opposons le groupe de pression de la communauté du libre au lobby du droit d’auteur qui est sans cesse à la manœuvre dans les institutions européennes.


Ce texte est une traduction d’un article rédigé par le journaliste Glyn Moody et publié sur le site Linux Journal le 3 avril 2018. Il a également été publié sur le site de l’April. Nous souhaitons contribuer à lui donner davantage encore de visibilité.

Traduction : etienne, goofy, mo, Lumi, wyatt, Alby, glyn moody, Fred, April.


Le logiciel libre subit l’offensive des nouvelles lois européennes sur le droit d’auteur

petite photo de Glyn Moody
Glyn Moody, photo Zaizi Ltd (CC BY-SA 2.0)

Le logiciel libre et le droit d’auteur sont étroitement liés. C’est grâce au détournement (hack) habile de la loi sur le droit d’auteur par Richard Stallman qu’a pu être créée la General Public License (GPL) et, par conséquent, le logiciel libre. La GPL requiert de la part des personnes copiant ou modifiant un logiciel publié sous cette licence qu’elles préservent les quatre libertés. Si cela n’est pas le cas, elles enfreignent alors les clauses de la GPL et perdent ainsi toute protection juridique de leurs copies et modifications. En d’autres termes, la sévérité des sanctions pour une violation du droit d’auteur est ce qui permet d’assurer la liberté de partage.

Malgré l’utilisation du droit d’auteur pour faire respecter la GPL et toutes les autres licences du logiciel libre ou open source, le droit d’auteur n’est généralement pas si inoffensif. Ce n’est pas étonnant : le droit d’auteur est un monopole intellectuel. En règle générale, il cherche à empêcher le partage — pas à le promouvoir. Ainsi, les ambitions de l’industrie du droit d’auteur vont généralement à l’encontre des aspirations du monde du logiciel libre.

C’est en Europe que l’on retrouve l’une des preuves les plus évidentes du désintérêt du monde du droit d’auteur envers les préoccupations de la communauté du logiciel libre. Les propositions actuelles de réforme du droit d’auteur au niveau de l’Union européenne contiennent un élément qui aurait des effets dévastateurs pour le codage du logiciel libre. L’article 13 de la pompeusement titrée « Directive du Parlement européen et du Conseil sur le droit d’auteur dans le marché unique numérique » contient la disposition clef suivante :

Les prestataires de services de la société de l’information qui stockent un grand nombre d’œuvres ou d’autres objets protégés chargés par leurs utilisateurs et qui donnent accès à ces œuvres et autres objets prennent, en coopération avec les titulaires de droits, des mesures destinées à assurer le bon fonctionnement des accords conclus avec les titulaires de droits en ce qui concerne l’utilisation de leurs œuvres ou autres objets protégés ou destinées à empêcher la mise à disposition, par leurs services, d’œuvres ou d’autres objets protégés identifiés par les titulaires de droits en coopération avec les prestataires de services. Ces mesures, telles que le recours à des techniques efficaces de reconnaissance des contenus, doivent être appropriées et proportionnées.

Cela signifie concrètement que les sites détenant une (très) importante base de fichiers téléversés par les utilisateurs et utilisatrices seront forcés de filtrer tous les fichiers avant de les publier. Les problèmes posés par cette proposition sont clairs. Une surveillance constante de l’activité des internautes sur lesdits sites, avec tout ce que cela induit en termes de perte de vie privée. Les faux-positifs sont inévitables, particulièrement parce que les complexités du droit d’auteur ne peuvent pas se voir réduites à de simples algorithmes qui pourront être appliqués automatiquement. Ajouté à l’effet dissuasif que cela aura sur la volonté des internautes de publier des contenus, cela impactera négativement la liberté d’expression et affaiblira le domaine public (article en anglais).

Le coût élevé de la mise en place des filtres de contenus — le système ContentID de Google a nécessité 50 000 heures de codage (page en anglais) et coûté 60 millions de dollars — signifie qu’un nombre restreint de sociétés finiront par contrôler le marché des systèmes de censure. Leur pouvoir d’oligopole leur donne la possibilité de faire payer très cher leurs services, ce qui imposerait de lourdes charges aux entreprises de l’Union européenne et conduirait à une diminution des startups dans la région. Un autre problème, parmi d’autres, avec cette idée : le fait non-négligeable que cela pourrait être contraire au droit de l’UE en vigueur (en anglais).

L’article 13 a été spécifiquement rédigé pour satisfaire le désir à peine déguisé de l’industrie européenne du droit d’auteur d’attaquer des entreprises états-uniennes prospères comme Google ou Facebook. Mais le filtrage des contenus mis en ligne est une arme grossière et va en affecter beaucoup d’autres qui, ironiquement, vont être moins capables que les géants d’Internet de se conformer aux onéreuses exigences de la censure. Par exemple, il est fort probable que Wikipédia rentrera dans le périmètre de la nouvelle règle. Après tout, le projet héberge un grand nombre d’ « objets protégés » chargés par des utilisateurs et utilisatrices. Comme le montre un billet sur le blog de Wikimedia (en anglais), « il serait absurde de demander à la Fondation Wikimedia de mettre en place des systèmes automatisés coûteux et technologiquement défaillants pour détecter des violations de droit d’auteur. »

Le point de l’article 13 qui est peut être le plus inquiétant pour les lecteurs du Linux Journal concerne les conséquences pour le logiciel libre. Une autre catégorie de sites web qui donnent accès « à des œuvres ou d’autres objets protégés chargés par leurs utilisateurs » : les plateformes de développement collaboratif et les dépôts de code [informatique]. Comme l’explique le site Savecodeshare.eu (Note de traduction : en anglais, voir l’article de l’April qui soutient cette campagne), créé par la Free Software Foundation Europe et OpenForum Europe (note de transparence : je suis un membre bénévole de OpenForum Academy) :


Si cette réforme du droit d’auteur devait être votée, chaque utilisateur ou utilisatrice d’une plateforme de partage de code, qu’il ou elle soit une personne physique, une entreprise ou une administration publique, serait traité comme un potentiel contrevenant au droit d’auteur : tous ses contenus, incluant des dépôts entiers de code, seraient contrôlés et empêchés d’être partagés en ligne à n’importe quel moment. Cela restreindrait la liberté des développeurs et développeuses d’utiliser des composants et outils logiciels spécifiques, ce qui, en retour, conduirait à moins de compétition et d’innovation. Finalement, cela pourrait conduire à des logiciels moins fiables et à une infrastructure logicielle moins résiliente pour tout le monde.

Comme l’explique en détail un livre blanc (PDF en anglais) de la même organisation, des sites web majeurs tels que Software Heritage, GitHub, GitLab, GNU Savannah et SourceForge sont menacés. Il met en exergue le fait que si cette proposition de loi venait à être adoptée, ces sites seraient directement responsables d’un grand nombre d’actions de leurs utilisateurs et utilisatrices, ce qui inclut le téléversement de copies non autorisées de logiciels et l’utilisation de code contraire à la licence initiale. Du fait de la difficulté, voire de l’impossibilité pour la plupart de ces sites d’éviter que cela se produise, il est fort probable que certains d’entre eux bloquent l’accès à leur site aux utilisateurs et utilisatrices européen⋅nes et arrêtent leur activité au sein de l’UE. Les projets de logiciels libres pourraient alors être forcés de faire la même chose. Dans le livre blanc, Thomas Pfeiffer, membre du conseil d’administration de KDE, est cité ainsi :

Pour savoir à quel point KDE est directement touché par le règlement proposé, il faut se demander si la configuration ci-dessus ferait de nous des « fournisseurs de services de la société de l’information stockant et distribuant de grandes quantités d’œuvres ou d’autres objets téléchargés par leurs utilisateurs ». Si c’est le cas, nous devrions probablement déplacer la majeure partie de notre infrastructure et de notre organisation en dehors de l’UE.

Figure 1 : Les sociétés et services concernés par l’Article 13 (Image fournie par EDiMA : http://edima-eu.org/wp-content/uploads/2018/01/Services-affected-by-Article-13-Infographic.jpg )

 

Le potentiel impact de l’Article 13 de la directive sur le droit d’auteur sur la façon dont le logiciel libre est créé tout autour du globe est clairement considérable. La bonne nouvelle est que cette loi européenne n’a pas encore été finalisée et est toujours amenée à évoluer ; la mauvaise est qu’elle n’évolue actuellement pas dans le bon sens.

Par exemple, le responsable politique supervisant l’adoption de cette nouvelle loi par le Parlement européen a récemment proposé un amendement qui exonérerait les grands sites de filtrer les contenus mis en ligne à condition que ceux-ci signent des accords avec l’ensemble des titulaires de droits d’auteur sur les contenus qu’ils hébergent. Ce qui est impossible pour les dépôts de code [informatique], étant donné le volume de fichiers téléversés — il n’existe pas de sociétés de perception pour les développeurs et développeuses, comme on peut en trouver chez les musicien⋅nes ou auteur⋅es, pouvant par exemple accorder une licence globale sur l’ensemble du contenu hébergé. L’article 13, qu’il s’agisse de filtre automatisé ou d’accord de licence obligatoire, est inconciliable avec la manière de fonctionner des principaux sites dans le domaine du logiciel libre.

Ses défauts fondamentaux impliquent que l’article 13 doit être retiré de la directive sur le droit d’auteur. Un site multilingue baptisé Savethememe.net (en anglais) a été mis en place pour faciliter la prise de contact direct avec les membres du Parlement européen, qui auront un vote décisif sur les propositions. Un autre moyen d’action est de faire connaître la nocivité de l’article 13 pour l’ensemble de l’écosystème du logiciel libre, et sur les effets secondaires négatifs que cela aurait pour l’innovation en général et pour la société.
Plus les programmeurs et programmeuses sont conscient⋅es du problème et le font savoir partout, plus les dépôts de code les plus affectés se joignent à la vague globale d’inquiétude grandissante sur les conséquences des filtres de contenus, plus grand sera l’impact de leur appel à complètement abandonner l’article 13.

À propos de l’auteur

Glyn Moody écrit au sujet d’Internet depuis 1994, et au sujet des logiciels libres depuis 1995. En 1997, il a écrit le premier article grand public sur GNU/Linux et le logiciel libre, paru dans Wired (en anglais). En 2001, son livre Rebel Code: Linux And The Open Source Revolution a été publié. Depuis, il a très souvent écrit sur le logiciel libre et les libertés informatiques. Il a un blog et il est actif sur des réseaux sociaux : @glynmoody sur Twitter ou identi.ca, et +glynmoody sur Google+.

 




Julia Reda, eurodéputée du Parti Pirate, lance un appel

Le projet de réforme du droit d’auteur provoque une forte inquiétude au sein des communautés de développeurs et développeuses de logiciels libres. Que restera-t-il de leur liberté de partager et modifier si obligation est faite aux forges logicielles de mettre en place des filtres de contenus ? L’eurodéputée Julia Reda nous indique les façons dont nous pouvons tous agir, dès maintenant.

 

« Les machines à censurer arrivent : il est temps que la communauté du logiciel libre prenne conscience de son impact politique »

 

Source : article rédigé par l’eurodéputée Julia Reda et publié sur son site le 6 avril 2018

Traduction initialement publiée par l’April : Guestr, Alain Mille, etienne, mmu_man, tierce, Vanecx, mo, MicroCheapFx, freepoet, yannicka, Fred.

Le développement du logiciel libre tel que nous le connaissons est menacé par les projets de réforme du droit d’auteur de l’Union européenne.

La bataille continue autour de la proposition de réforme du droit d’auteur dans l’UE, se concentrant autour du projet de filtrer les contenus au moment de leur téléversement (en anglais). En résumé, on demanderait aux plateformes en ligne de contrôler les contenus chargés par leurs utilisateurs et utilisatrices afin de tenter de prévenir les violations du droit d’auteur par des filtres automatiques. Puisque la plupart des communications en ligne consistent en un dépôt de fichiers sur différentes plateformes, de telles « machines à censurer » auraient de larges conséquences, y compris pour les dépôts de logiciels libres et open source.

Sur ces plateformes, des développeurs et développeuses du monde entier travaillent de concert sur des projets de logiciels que quiconque peut librement utiliser et adapter. À coup sûr, ces filtres automatiques feraient état de nombreux faux-positifs. La suppression automatique de contenus signifierait que les personnes ayant contribué seraient présumées coupables jusqu’à prouver leur innocence : des contributions légitimes se verraient bloquées.

Les récentes levées de boucliers à ce sujet au sein de la communauté du logiciel libre/open-source commencent à porter leurs fruits : nos préoccupations sont en train d’attirer l’attention des porteurs de lois. Malheureusement cependant, la plupart comprennent mal les enjeux et tirent de mauvaises conclusions. Maintenant que nous savons quelle est la force de la voix de la communauté, il est d’autant plus important de continuer à la faire entendre !

Pourquoi cela ?

Le point de départ de cette législation a été une bataille entre de grosses entreprises, l’industrie musicale et YouTube, à propos d’argent. L’industrie musicale s’est plainte de moins percevoir chaque fois qu’un morceau de leur catalogue est joué sur une plateforme vidéo comme YouTube que lorsqu’il est diffusé sur des services d’abonnement comme Spotify, qualifiant la différence de « manque-à-gagner ». Elle s’est alors lancée, avec succès, dans une campagne de lobbying : la loi sur le filtrage des contenus vise principalement à lui donner un atout afin de demander plus d’argent à Google au moment des négociations. Pendant ce temps, toutes les autres plateformes se retrouvent au milieu de cette bagarre, y compris les communautés de partage de code.

Le lobbying a ancré dans l’esprit de nombreux législateurs la fausse idée que les plateformes d’hébergement à but lucratif exploitent nécessairement les créateurs et créatrices.

Partage de code

Il y a cependant beaucoup d’exemples où il existe une relation symbiotique entre la plateforme et les créateurs et créatrices. Les développeurs et développeuses utilisent et versent volontairement dans les dépôts logiciels parce que les plateformes ajoutent de la valeur. GitHub est une société à but lucratif qui soutient des projets sans but lucratif – elle finance l’hébergement gratuit de projets libres et open source en facturant l’utilisation commerciale des services du site. Ainsi, des travaux libres et open source seront affectés par une loi destinée à réguler un différend entre quelques grandes sociétés.

Dans un récent billet (en anglais), GitHub a tiré la sonnette d’alarme, indiquant trois raisons pour lesquelles le filtrage automatique des contenus constitue une terrible attaque contre les forges logicielles :

  1. la loi impose que le code soit filtré parce qu’il est soumis au droit d’auteur – mais de nombreux développeurs et développeuses souhaitent que leur code source soit partagé sous une licence libre et open source ;
  2. le risque de faux positifs est très élevé parce que les différentes parties d’un logiciel peuvent être soumises à des licences différentes, ce qui est très difficile à traiter de manière automatisée ;
  3. le fait de supprimer automatiquement un code suspecté de porter atteinte au droit d’auteur peut avoir des conséquences désastreuses pour les développeurs et développeuses de logiciels qui s’appuient sur des ressources communes risquant de disparaître à tout moment.

Les inquiétudes commencent à être entendues

Dans sa dernière proposition, le Conseil de l’Union européenne cherche à exclure « les plateformes de développement open source à but non lucratif » de l’obligation de filtrer les contenus chargés par les utilisateurs et utilisatrices. Cet amendement est la conséquence directe de la levée de boucliers par la communauté FLOSS. Cependant, cette exception ne couvre pas les plateformes à but lucratif comme GitHub et bien d’autres, même si une partie seulement de leur activité est à but lucratif.

Plutôt que de remettre en cause le principe de base de la loi, les politiciens essayent d’étouffer les critiques en proposant de plus en plus d’exceptions à celles et ceux qui peuvent démontrer de façon crédible que la loi va les affecter négativement. Créer une telle liste d’exceptions est une tâche titanesque vouée à rester inachevée. Le filtrage des contenus devrait être rejeté dans son ensemble car c’est une mesure disproportionnée mettant en danger le droit fondamental de la liberté d’expression en ligne.

Nous pouvons y arriver !

Pour y parvenir, nous avons besoin de votre aide. La communauté FLOSS ne peut pas résoudre ces problèmes simplement avec du code : elle a un impact politique, la force du nombre et des allié⋅e⋅s au Parlement (européen). Nous avons déjà provoqué certains changements. Voici comment vous pouvez agir dès maintenant :

  1. signez la lettre ouverte sur SaveCodeShare (Note de traduction : en anglais, voir l’article de l’April qui soutient cette campagne) ;
  2. utilisez l’outil gratuit de Mozilla pour appeler les membres du Parlement européen ;
  3. tweetez aux principaux acteurs de la Commission des affaires légales du Parlement européen via FixCopyright (en anglais).

Note technique :

Trois acteurs sont impliqués dans le processus législatif. La Commission émet une première proposition de loi, à laquelle le Parlement européen et le Conseil de l’Union européenne peuvent proposer des amendements. Au sein du Parlement, la loi est d’abord discutée en Commission des affaires légales dans laquelle chaque groupe politique nomme un négociateur. Une fois que la Commission aura voté le compromis élaboré par les négociateurs, le texte sera soumis au vote en séance plénière du Parlement, avant que les négociations ne commencent avec les autres institutions. Le parcours législatif exact est disponible ici (en anglais).

Dans la mesure du possible et conformément à la loi, l’auteur [Julia Reda] renonce à tous les droits d’auteur et droits voisins sur ce texte.




Framaclic, un nouveau service qui compte

Vous avez besoin de compter les visites sur vos sites sans fliquer vos visiteureuses ? On a un framachin pour vous !

Prenons un exemple rapide. Fred aime bien pondre des textes et il les sème un peu partout sur le vaste Ouèbe.

Cela lui pose deux problèmes.

Ses textes sont sur des sites différents avec parfois des adresses web (ou « URL ») longues comme un jour sans pain. Mais pour ça il a trouvé la parade, c’est frama.link, le raccourcisseur d’URL de Framasoft. Il a créé une adresse courte pour chacun de ses textes, et quand on lui demande où on peut lire sa prose, il donne cette URL plutôt qu’une adresse de 256 caractères biscornus. Pour avoir des adresses web encore plus courtes, il pourrait utiliser https://huit.re/.

L’autre souci de Fred, c’est qu’il est affreusement cabotin. Il écrit pour le plaisir, il publie sous licence libre, il a compris qu’il ne bouclerait pas ses fins de mois grâce à sa plume, mais il ne peut pas s’empêcher de se demander si quelqu’un⋅e lit réellement ce qu’il commet.

Fred est donc tout content quand Framasoft sort Framaclic (bon, il ne fait pas des triples saltos, mais il a un moment de jubilation).

C’est quoi ?

Zag, l’adorable mascotte de Dolomon

Framaclic est un raccourcisseur d’URL qui compte les clics. Voilà. Dit comme ça, on dirait que c’est drôlement simple, non ?

Eh bien, bonne nouvelle : c’est simple !

Bon, soyons justes, Frama.link avait déjà un compteur, rudimentaire. Il reconnaît l’auteur de l’URL courte via un petit cookie et est capable de lui fournir un comptage des clics. Seulement, ça ne marche que depuis l’ordinateur et le navigateur sur lesquels l’adresse courte a été créée (à cause du cookie).

« Framaclic est un frama.link dopé aux stéroïdes », nous dit Luc, l’auteur de l’application (qui développe aussi parfois des petites applis complètement inutiles donc parfaitement indispensables).

Comment ça marche ?

Framaclic est basé sur Dolomon, comme DOwnLOad MONitor. Pas besoin d’avoir fait anglais première langue pour piger ça.

Fred se rend sur framaclic.org. Il crée un compte avec un mot de passe, histoire d’être seul à pouvoir accéder à ses statistiques (des fois qu’elles soient mauvaises).

Il fait une liste des adresses de toutes les ressources vers lesquelles il veut créer un lien : ses textes, son blog, son CV, ses galeries de photos, une BD de Simon qu’il adore partager avec ses collègues… Si la liste n’est pas exhaustive, ce n’est pas grave, il pourra en ajouter par la suite.

Comme il aime bien que les choses soient correctement rangées (rappel : cet exemple est une fiction), il crée des catégories et des étiquettes pour s’y retrouver. Surtout qu’il se dit que ce truc-là va drôlement lui rendre service et qu’il va finir par y mettre beaucoup d’adresses.

Ensuite, pour chaque adresse longue il en génère une courte (un « dolo »). Pas besoin de la conserver, Framaclic s’en charge.

 


Les dolos sont créés au fur et à mesure.

Pour suivre les visites sur une page précise, Fred peut créer un dolo pointant sur une petite image transparente (Dolomon vous en propose une) et insérer l’URL générée, comme on insère une image, dans sa page.

Fred aime surtout créer des dolos qui pointent sur un document, au lieu de la page web. Par exemple, un dolo pour le pdf de son roman (http://framabook.org/docs/vieuxflic/FredUrbain_VFVV_cczero20151108.pdf au lieu de la page générique https://framabook.org/vieux-flic-et-vieux-voyou/), un autre pour la version e-pub, et encore un pour le code source en Latex. De cette façon, Fred saura quelle version est la plus téléchargée.

Mais il ne saura rien de plus : Framaclic n’enregistre que des statistiques anonymes, pas les adresses IP des visiteureuses.

Par contre, cela fait de beaux graphiques :

Et comme vos données vous appartiennent, vous pouvez les télécharger dans un fichier CSV, ce qui vous permettra de les manipuler à votre guise, de faire des camemberts colorés…

Ah, un dernier truc cool à savoir : Luc a fait un plugin Dolomon pour WordPress. Si vous avez un blog, vous pourrez créer vos dolos directement depuis votre article.

Contribuez

Comme tout logiciel qui n’a pas encore subi l’épreuve du feu (enfin, l’épreuve de l’utilisation massive), Dolomon comporte certainement quelques bugs ou nécessite un petit coup de polish pour en améliorer l’ergonomie : n’hésitez pas à contribuer en ouvrant des tickets !

Nous tenons au passage à lever notre chapeau à Luc, alias Framasky notre infatigable admin-sys, qui a codé Dolomon pour nos besoins internes, et l’a amélioré afin que l’on puisse l’ouvrir au public ;).

Pour aller plus loin




Robin, stagiaire chez Framasoft et porteur de projet

Vous ne connaissez pas Robin ? C’est le stagiaire qui a conçu les pages Framasites dont nous parlions ici, ou plus exactement le logiciel libre qui les fait tourner, à savoir PrettyNoémieCMS

Si son stage est terminé, nous ne pouvions pas le laisser partir sans parler avec lui de sa démarche, ses projets, etc.

Pour le plaisir, nous avons décidé d’illustrer ce long échange de captures d’écrans de pages Framasite qui ont retenu notre attention.

Cliquez pour découvrir cette page Framasite qui explique comment faire une page Framasite. Hyper-méta, tavu.

Portrait de Robin

Bonjour Robin, peux-tu te présenter en quelques phrases

J’ai bientôt 30 ans et j’ai un parcours avec plein de virages qui m’ont fait passer par les cases école d’ingé, CAP cuisine, travail social… le tout avec des fortes valeurs éthiques et un intérêt particulier et assez central pour l’abolition du capitalisme (lectures, engagement militant, syndical, squat…). le dernier virage m’a amené à l’envie de créer un outil numérique d’émancipation sociale dont l’idée a pointé pendant le mouvement contre la loi travail, j’ai donc dû passer à l’apprentissage du code pour pouvoir le réaliser.

Comment on se retrouve stagiaire pour Framasoft avec ce parcours ?

Framasoft me permettait plusieurs choses intéressantes : découvrir de l’intérieur le monde du libre et de la production collaborative de services web, me faire une expérience intéressante en développant pour eux, et peut-être de faire de ce stage un tremplin pour mon projet… d’éviter enfin de me retrouver à bosser gratuitement pour une entreprise dont la finalité est le profit. J’ai fait une candidature spontanée en parlant de mon parcours de mon projet et de mes valeurs, et ça a très vite collé.

Comment as-tu été accueilli ?

J’ai rien à redire sur mon accueil, à la fois carré et sans laisser de faux espoirs et de fausses promesses et en même temps très chaleureux, rémunéré en plus ce qui est rare… Je suis quelqu’un d’autonome et je m’y suis bien retrouvé, les impératifs de la campagne de financement de fin d’année ne permettaient pas forcément à l’équipe de me tenir par la main, mais j’aime bien la liberté que ça m’a permis. et puis j’ai pu ressentir tout au long de mon stage une grande confiance dans les choix que je faisais et ça a été très encourageant.

Quelle était ta mission / ton cahier des charges ?

J’étais censé réaliser des améliorations de l’interface utilisateur du dernier service proposé par Framasoft : Framasite. L’idée était d’offrir une expérience utilisateur assez proche de la simplicité d’un WIX pour que n’importe qui, sans aucune compétences spécifique en informatique, puisse mettre en ligne un joli site web en quelques clics dans une interface très intuitive. La voie que je devais explorer pour y parvenir consistait à améliorer le CMS sur lequel était basé Framasite, en lui ajoutant tout plein d’améliorations le rendant plus simple à utiliser.

cliquez sur l’image pour découvrir ce fan-site consacré à Pepper and Carrot

 

…et finalement, tu as plongé dans le code et qu’est-ce que tu as découvert ?

Framasite est basé sur GRAV, un CMS au code élégant, qui permet de générer des pages assez rapidement avec relativement peu de compétence en PHP puisque il utilise un mélange de markdown, de fichier de configuration en YML et de templates en TWIG. beaucoup d’aspects sont très automatisés, et cela amène une grande élégance du CMS, comme par exemple la génération automatique des formulaires du panneau administrateur… Pourtant cette automatisation rend très difficile d’adapter l’interface afin d’offrir des parcours utilisateurs simplifiés pour la construction des pages, comme de regrouper certains champs d’un formulaire, n’en faire s’afficher que certains, ou de manière progressive… Il est très difficile de partir de l’expérience utilisateur souhaitée pour réaliser le code correspondant, et l’on se retrouve toujours avec des solutions de « bricolage ».

L’image que j’ai en tête pour des personnes pas très familières avec le code : c’est un peu comme essayer de construire une belle armoire normande à partir d’une armoire IKEA, vu de loin ça a l’air pratique parce qu’on est pas très loin du résultat attendu, mais peu à peu on se rend compte que le design initial est très limitant, et oblige finalement à réaliser un travail bien plus laborieux et complexe que de partir d’un bon tas de planches et d’outils performants… d’autant plus que l’on me demandait que mes modifications restent compatibles avec les mises a jour de GRAV, et donc, pour filer la métaphore, que l’armoire IKEA ne soit pas cassée dans l’opération.

Bref : Un vrai casse-tête.

Donc tu n’as pas rempli ta mission ? C’est un terrrrrrible échec qui te tourmente jour et nuit (debout) ? Comment a réagi la personne qui assurait l’encadrement de ton stage ?

J’ai assez rapidement été découragé de suivre l’option d’une modification de Grav pour obtenir l’effet attendu, et je suis revenu des fêtes de fin d’année en me disant que même si mon stage durait 6 mois, je ne crois pas que j’arriverais a faire mieux pour simplifier la création de site par mon utilisateur que de l’orienter vers un hébergeur solidaire offrant une installation de wordpress à la volée… donc j’en ai parlé à l’équipe et à la personne qui m’encadrait sans trop savoir ce qui allait advenir, j’étais prêt à peut-être partir sur un autre stage… c’est pas facile de remettre en question totalement les choix fait par une équipe, je sais qu’en cuisine ou ailleurs, ça aurait signifié une fin de contrat plus ou moins houleuse…

Mais bon, mes arguments ont été plutôt convaincants, et on est assez vite arrivé a une solution qui m’est venue assez tôt dans le stage, créer un outil simple depuis le début en utilisant un framework PHP nettement plus bas niveau qu’un CMS, et surtout en partant d’une idée de ce que je souhaitais offrir à l’utilisateur plutôt que de partir de quelque chose d’inadapté pour le bidouiller.
Ça a été très motivant et en une quinzaine de jours j’ai pu réaliser une version limitée de cet outil, et j’ai eu de très bons retours, à la fois de mes amis non-codeurs qui étaient très intéressés par la simplicité avec laquelle ils pouvaient réaliser un site web mais aussi par les membres de l’équipe qui étaient très enthousiastes.

Une question de détail par un gars sur Mastodon (Llaq @lelibreauquotidien) : Hé, @Framasoft, pourquoi vous avez appelé le CMS des pages Framasite « PrettyNoemieCms » ?

Oh ben je suis amoureux d’une fille qui s’appelle Noëmie, donc le nom est venu comme ça… le premier nom c’était Easy ShowcaseSite CMS… c’est quand même mieux Noemie CMS, non ? Enfin moi je trouve. Il y a un proverbe dans le libre qui dit que c’est ceux qui font qui ont raison, et vu que c’est moi qui l’ai fait, c’est moi qui ai raison.

Comment a été accueilli ton travail, par Framasoft et par le public ?

À la fin de mon stage, l’outil a été mis en ligne et j’ai tout de suite eu pas mal de bons retours, celui qui m’a fait le plus plaisir c’était quelqu’un qui m’a dit : « c’est le plus simple des CMS ». je sais pas si on peut être aussi catégorique, mais si j’ai réussi à créer un outil auquel on pourrait mettre juste une demi-étoile sur 5 de difficulté, j’aurai vraiment réussi mon pari… En tout cas j’ai fait tout mon possible pour aller dans cette direction. Ce qui me plaît bien aussi c’est des amis non codeurs qui partagent le plaisir créatif qu’ils ressentent en utilisant l’outil, ils me disent qu’ils se sont « amusés » avec Noëmie, ce qui me ravit.

J’ai eu aussi quelques retours de bugs, rapidement corrigés, et aussi plein de personnes qui s’y sont intéressé de près en voyant le potentiel de l’outil et qui m’ont fait part d’idées d’amélioration.
Les membres de l’association m’ont fait part non seulement de leur satisfaction quant à mon travail, mais ils m’ont aussi exprimé qu’ils avaient été impressionnés par ma capacité à sortir quelque-chose d’aussi abouti et de fonctionnel en si peu de temps. Ça me fait chaud au cœur, car je débute dans la programmation, il y a un an et demi je n’avais pas encore écrit une seule ligne de code, et je ne participe à une formation que depuis moins d’un an. Je tiens au passage à remercier chaleureusement Simplon (mon organisme de formation) et son formateur Patrick qui m’ont aidé à prendre peu à peu confiance dans mes capacités de développement, et m’ont guidé dans cet apprentissage.

La page des « Framasoft fan art » de JCFrog nous a fait hurler de rire.

 

Quelle suite pour Noemie CMS ?

Aujourd’hui je pense que ce CMS trouve sa place à côté de ceux déjà existants, grâce a sa simplicité. il ne sera jamais aussi complexe et personnalisable qu’un WordPress ou un Grav, mais il peut trouver sa niche en étant « le plus simple des CMS».

Les contributions sur le Repository vont bon train : déjà 66 issues postées, dont 52 réalisées, 17 merge request, on peut dire que je me sens pas seul sur le projet. Plein de pistes d’amélioration se dégagent, et d’autres que moi se saisissent avec plaisir du projet. Quant à moi je suis partagé entre un projet perso qui me tient vraiment à cœur : HUmanBeing (on en reparlera en fin d’article), ma formation qui s’arrête et le besoin de trouver un moyen pour vivre qui risque de bouffer beaucoup de disponibilités et l’envie de poursuivre le travail entamé sur ce CMS. Ça fait beaucoup d’envies et malheureusement pas suffisamment de temps pour tout faire à 100%.

Dans l’idéal je reprendrais Noemie CMS depuis le début avec un framework JS frontend (Vue-React- angular) afin de rendre l’expérience utilisateur encore plus fluide (pas de rechargement de pages à chaque sauvegarde, possibilité d’aller plus loin dans la complexité du code pour proposer une expérience utilisateur toujours plus simple, et peut-être ajouter la possibilité de créer un site de plusieurs pages… enfin bon, si j’avais plus de temps et pas la nécessité de devoir faire un truc débile, plus ou moins néfaste pour les gens qui m’entourent et dans le seul but d’enrichir un patron pour pouvoir payer mon loyer ces prochains mois c’est ce que je ferais… mais bon… je crois pas que j’en aurai l’opportunité.

En attendant, je vais quand même continuer de faire avancer tout doucement les fonctionnalités, résoudre des bugs, et surtout passer du temps à transmettre aux autres contributeurs « les clefs » de mon code pour qu’ils puissent aussi se l’approprier et le faire évoluer.

Pendant ta période de stage, on t’a aussi obligé à assister à l’assemblée générale de Framasoft, tu peux nous raconter un peu comment ça s’est passé ? Ils t’ont fait quelle impression les membres de l’association ? et le fonctionnement de l’asso, qu’est-ce que tu en penses ?

Ce fut très intéressant, j’ai rencontré plein de chouettes personnes, avec un beau projet en commun. les discussions étaient très riches. je me suis parfois demandé s’ils ne manquaient pas un peu d’ambitions : en effet le bilan financier leur permettrait à mes yeux de s’engager sur plus de projets, en termes de développement direct ou de soutien financier à des projets ; en même temps je comprends tout a fait que la « sérénité financière » de Framasoft est très récente, et je n’ai pas vraiment suffisamment de compétences en gestion pour pouvoir donner un avis là dessus.

Peut-être aussi que ça m’a permis de prendre conscience d’un décalage entre la vision que j’avais de Framasoft et son projet associatif : avant mon stage j’envisageais Framasoft un peu comme une équipe associative de développeurs qui cherchaient à produire des outils libres et gratuits et de la meilleure qualité pour le plus grand nombre, pour le plaisir de pouvoir offrir des services libres et gratuits à leurs utilisateurs… peu à peu j’ai pris conscience que ce qui animait cette association était aussi très militant et axé sur des enjeux « idéologiques » dans le sens de réaliser des actions visant à faire évoluer les consciences, promouvoir le logiciel libre, lutter contre les GAFAM.

Et j’avoue que je me suis moins reconnu dans ces enjeux, Ça peut paraître paradoxal par rapport à mon engagement sur les #NuitDebout, mais en vrai même sur les Nuit debout ça n’a jamais été le côté tribune et réflexion et changements des mentalités qui m’attiraient, mais plutôt le fait de trouver un espace où l’on pouvait participer et collaborer librement avec plein de gens pour produire au mieux toutes sortes de choses sans que viennent se mêler des questions d’argent ni de hiérarchie (cuisine collaborative, organisation de la vie sur la place, résistance contre les flics…). Je crois que je suis pas très militant dans l’âme, dans le sens que j’ai pas la volonté de faire changer les consciences, ce qui m’intéresse c’est plus de partager des expériences de rapports sociaux désaliénés, et d’inviter un max de gens à me rejoindre dans le plaisir que représente le fait de cesser collectivement de se soumettre au fric et à l’état.
Je pense aussi que j’ai pu ressentir un décalage car je suis partagé quant à leur rigueur sur les moyens à employer. J’utilise quotidiennement Google, Chrome, etc. et dans mon travail c’est pareil je vise surtout à utiliser les meilleurs outils dans l’objectif d’offrir des services agréables et gratuits aux personnes qui utiliseront mes travaux sans me préoccuper de leur caractère libre ou non. J’ai tendance à privilégier les outils qui m’offrent pratiquement plus de pouvoir d’agir plutôt que des outils « libres ». Cela ne veut pas dire que je ne reste pas attentif aux effets secondaires de l’utilisation de certains trucs propriétaires, mais je ne les exclus pas d’emblée, et les préfère parfois.

Cliquez pour voir une très, très belle page Framasite : celle du groupe musical Volivent.

 

Tu as eu aussi l’occasion d’intervenir pour présenter ton projet personnel, de quoi s’agit-il au juste ?

C’est ce projet qui m’a amené à l’informatique, guidé dans mon apprentissage des technos du développement web : durant les Nuits debout j’ai pris tristement conscience que 80% des projets ne se font pas car les personnes avec des initiatives se rencontrent trop difficilement. Du coup j’ai essayé de remédier à cela en faisant du lien, d’abord en notant sur un carnet, puis sous forme de fiches papier et de panneau d’affichage où chacun pouvait partager son projet pour potentiellement trouver des personnes pour le rejoindre. Ça avait plutôt bien marché, même si c’était pas du tout scalable pour parler en termes dev : en effet, en trois jours, il y avait 70 fiches de projets et d’initiatives sur le tableau d’affichage et cela devenait très complexe pour quelqu’un venant sur la place pour la première fois de trouver rapidement un projet sur lequel s’investir.

J’ai donc commencé à créer un outil, en réfléchissant à la manière de répondre au mieux à ce besoin de mise en relation dans le monde non-marchand. En effet, le monde marchand dispose des Pôle emploi et des agences d’intérim pour mettre en lien les gens sur la base de leurs compétences et des projets, alors que le non-marchand n’a pratiquement rien de plus que le bouche-à-oreille, et c’est très frustrant de voir que 80% des projets non marchands sont morts-nés faute de participants alors que très souvent les personnes potentiellement intéressées existent, mais ne sont pas dans le même réseau, le même cercle élargi de connaissance. Et on a la même problématique en ce qui concerne le partage, dans une grande majorité de cas, on se résout à aller au supermarché acheter un truc dont on a besoin alors qu’il y a probablement dix personnes dans le quartier, ou une asso qui produit cette ressource qui pourrait le donner ou le prêter gratuitement.

La troisième problématique à laquelle j’aimerais pouvoir apporter une solution avec cette plate-forme, c’est celle de la multiplication exponentielle des outils collaboratifs lorsqu’on est investi sur plusieurs projets. je reçois par exemple en ce moment les mails de 5 listes de mails bavardes, je suis inscrit sur trois systèmes de chat différents, 2 pads, github et gitlab, et un kanban, tous avec leurs adresses différentes que je perds une fois sur deux… Bref : l’enfer, alors que pourtant je crois être plutôt à l’aise avec l’outil informatique. Je rêve de quelque chose qui pourrait les centraliser sur une plate-forme, avec tous mes projets, et pour chacun des projets son agenda, sa liste de tâches, etc. — et ne plus me perdre dans un dédale d’outils collaboratifs dispersés.

L’idée de HUmanBeing c’est de répondre à ce besoin, en proposant :

  • une plate-forme de mise en relations des utilisateurs sur la base des projets qu’ils créent, de leurs centres d’intérêt, de leur localisation, et de leurs compétences
  • une suite d’outil collaboratifs pour tous les projets créés grâce à la plate-forme : agenda, forum-chat de discussion, liste des tâches.
  • une plate-forme de partage pour que les projets et les utilisateurs puissent partager les ressources dont ils disposent, qu’ils créent et dont ils ont besoin.
  • une plate-forme sans modérateur, dont la modération se fait de manière autonome par des votes de la communauté d’utilisateurs venant réguler les conflits et poser les base de ce qu’elle trouve acceptable ou non, une communauté créant ainsi sa propre légitimité autonome des lois étatiques.

L’objectif et l’ambition de cette plate-forme serait dans un premier temps d’apporter un sacré plus à tous les projets collaboratifs et non-marchands en leurs permettant de scaler et de prendre de l’ampleur au-delà des cercles de connaissances de chacun et donner du coup plus de possibilités d’agir sur le monde à tous ceux qui ont déjà cette éthique de vouloir donner du sens à leurs activités au quotidien.
L’espoir qui m’anime au-delà d’apporter ces possibilités à ces personnes, est lié à ma façon pessimiste de penser l’avenir de la société marchande et de l’état dans leur capacité à répondre aux besoins des personnes. Je m’imagine la prochaine crise économique, lorsque par exemple le ramassage des ordures s’arrêtera en raison de la faillite de ma communauté de communes et que l’accès aux soins sera devenu aussi difficile qu’en Grèce… et je me dis, si à ce moment on a un outil qui me permet de trouver 2 médecins, 4 infirmiers pour faire un centre de soins autogéré, ou alors faire une recherche de 5 chauffeurs poids lourds et 10 autres personnes pour créer une équipe de ramassage des ordures en moins d’une journée… Je me dis que cet outil pourrait être un formidable vecteur par lequel la collaboration, le partage et la gratuité pourraient s’imposer face au capitalisme sur le plan de la production matérielle de l’existence des hommes.

Et je me suis mis à le réaliser.

J’avais commencé en symphony (un framework PHP), mais c’était vraiment inadapté, donc je suis parti sur le framework METEOR JS très à l’aise pour gérer le temps réel : bien pratique lorsqu’il s’agit de collaborer. Pour l’instant j’ai une messagerie en temps réel fonctionnelle (chiffrée end to end), on peut créer un projet, inviter d’autres membres, le rechercher en fonction des compétences, localité qu’ils ont renseignée, chaque projet et chaque utilisateur peut s’exprimer publiquement grâce a un blog tout simple. je dirais que j’ai fait 80 % du travail de réflexion et 40 % de l’écriture du code avant de pouvoir en sortir une version Bêta…

Ça fonctionne pas trop mal en local, c’est même plutôt joli, mais j’ai encore des soucis à le mettre en prod sur une version de démo et pas mal de bugs, dont certains pour lesquels je n’ai aucune piste de solution… mais bon, ça viendra, et je suis hyper motivé, j’ai appris à coder pour pouvoir créer cette plateforme, ce projet me tient à cœur depuis 2 ans maintenant, je suis pas prêt de baisser les bras !

J’ai récemment réalisé une vidéo pour présenter l’avancement du travail que vous pouvez regarder ici :

Cliquez sur l’image pour regarder la vidéo (YouTube)

 

Tu as demandé des retours, ils te les ont donnés, ça ne t’a pas paru trop violent ?

Ben d’une certaine manière les retours étaient très bons, ils ont été impressionnés par la quantité et la qualité du travail que j’avais réussi à réaliser en si peu de temps ainsi que par ma courbe d’apprentissage très rapide. D’autre part, l’objectif émancipateur visé par le projet à fait écho au projet associatif de Framasoft, on pourrait même dire que le projet HUmanBeing vise à inscrire la force de la création collaborative de contenus immatériels du libre (Wikipédia, Linux, etc..) dans la réalité matérielle concrète de la production des besoins des hommes.

Néanmoins à mes yeux trois points font que ce projet n’avait pas les prérequis nécessaires pour pouvoir bénéficier du soutien matériel que j’ai demandé à Framasoft (même si cette interview me permet de le faire connaître assez largement et constitue un soutien qui est toujours bon à prendre).

  • Ce projet pose un rapport radical vis-à-vis de l’État et de l’économie ( « nous n’avons rien à attendre d’eux, créons un outil d’organisation qui nous permet de nous en émanciper »). Je pense que ça s’éloigne de la ligne directrice framasoftienne qui aurait plutôt tendance à vouloir créer des outils favorisant l’économie sociale et solidaire, des outils permettant plus d’interactions citoyennes (framapetition, etc.), avec des valeurs de gauche moins radicales, basées, comme une grande partie de la gauche actuelle sur les valeurs du conseil national de la résistance : un état fort et démocratique gérant la répartition des richesses et le soutien au plus démuni. Il me semble que ce temps-là est dépassé, il appartient a une époque où les hausses de productivité annuelles permettaient au capitalisme ce genre de concessions aux travailleurs, et que l’état et l’économie marchande nous démontrent jour après jour, et année après année que nous n’avons rien à attendre d’eux, si ce n’est l’intensification de l’exploitation de l’homme par l’homme et la destruction de l’écosystème permettant la vie des hommes.
  • D’autre part il me semble aussi que la façon d’envisager ce projet s’écarte de l’idéal de décentralisation poursuivi par Framasoft, dans la mesure ou il se propose de rassembler sur une seule et même plateforme beaucoup de services. dans l’idéal je rêverais que HUmanBeing soit décentralisé, avec plusieurs instances communiquant entre elles sur un réseau commun, mais bon, il me semble que ça ne pourra venir qu’après avoir fait la proof of concept de cette plateforme, un début de comm dessus. Il faut bien se rendre compte que développer une application décentralisée double ou triple le temps de développement.
  • enfin la façon de penser la modération de cette plateforme : autogérée et potentiellement porteuse de projets en-dehors du cadre légal (celui qui fait que les riches sont de plus en plus riches et les pauvres de plus en plus pauvres ou jetés en prison), a pu être perçue à juste titre par Framasoft comme quelque chose mettant potentiellement en danger le reste de ses activités.

Enfin bon, je reste plein d’enthousiasme pour la suite, et sais que quand je suis motivé je suis capable de déplacer des montagnes et de résoudre tout un tas de problèmes. Toujours est-il que le soutien matériel de Framasoft aurait permis de solutionner le problème majeur de savoir comment je vais payer mon loyer si je passe 10 heures par jour à développer une plate-forme non marchande…

On voit qu’il reste du boulot pour mener à bien ton projet, c’est peut-être le moment de réunir une petite équipe de gens intéressés pour contribuer ?
Tu as mis les sources quelque part en ligne ? C’est codé en quoi ? Comment on peut contribuer ?

Ben ouais, carrément ! Le projet est dès le départ très très ouvert à toutes les contributions, le « cahier des charges » s’est fait avec les contributions de plusieurs dizaines de personnes durant les Nuits debout, et au fil du temps je fais des rencontres et j’ai quelques petites contributions extérieures, plus tous mes amis qui me font des retours au fur et a mesure que j’avance dans les fonctionnalités. J’ai bien conscience que c’est un énorme projet et qu’il faudra qu’on soit nombreux à y participer pour que ça puisse exister durablement.

Le projet est donc codé en JavaScript, HTML, CSS, mongoDB autour du framework METEOR JS (et matérialize css pour le front end), qui est un outil assez facile à prendre en mains avec de très bons cours en français et en anglais et énormément de ressources. Il faudrait aussi des personnes avec des compétences en comm’ et aussi des personnes sans compétences particulières, avec juste l’envie de participer à l’aventure, et qui apporteront sans aucun doute au projet toute leur richesse.

Comme dirait un enfant du paradis : A vot’ bon cœur M’sieurs dames !

L’asso te remercie de ton implication et de ton travail et te souhaite une pleine réussite dans tes projets. On te laisse le mot de la fin comme d’habitude.

Je vous remercie de m’avoir fait confiance dans la création de Noemie CMS, et de m’avoir permis de faire ce qui me plaît le plus : contribuer, par mon travail, au bien-être des personnes qui m’entourent.
Je profite aussi de cette interview pour renvoyer vers mon CV (créé grâce aux pages Framasite et donc grâce a NoemieCMS), et informer les lecteurs qui auraient des pistes que je suis actuellement à la recherche d’un emploi.

Merci beaucoup de m’avoir offert cet espace d’expression, ce fut un plaisir de répondre à cette interview.