Retour sur le Fédérathon, le hackathon de la fédération

L’objectif de cette rencontre durant ces quelques jours était de réfléchir ensemble à des problématiques propres aux réseaux fédérés : ces alternatives éthiques et distribuées aux médias sociaux centralisés.

Étaient présents des développeurs et des UX designers ainsi que des étudiants, tous intéressés par le principe de fédération :

  • Séba, développeur Python ;
  • Moutmout, étudiante en mathématiques (mais qui fait aussi du Python) ;
  • Agate, principale développeuse de Funkwhale (plateforme de musique fédérée) ;
  • Maiwann, UX-designeuse ;
  • tcit, développeur et adminsys chez Framasoft ;
  • Natouille, UX-designeuse ;
  • Narf, stagiaire au sein de Framasoft qui réalise un mémoire scientifique sur le principe de la fédération (surtout ActivityPub*) et un mémoire philosophique sur les formes d’organisation non centralisées;
  • Renon, également contributeur de Funkwhale ;
  • Bat, développeur de Plume (blogs fédérés) qui contribue aussi un peu sur Funkwhale ;
  • Nathanaël, hébergeur de ce séjour et aussi membre de Framasoft.

*ActivityPub est un langage utilisé par les services fédérés pour communiquer entre eux.

Petite introduction

Nous avons commencé par un petit tour de présentation, pendant lequel nous en avons profité pour faire part à tout le monde nos souhaits et les activités que l’on proposait pour ce séjour.

Vue d'ensemble de la table avec les participants autour

 

Cela a été facilité par le fait qu’un dépôt sur Framagit a été ouvert quelques semaines plus tôt, sur lequel chacun était invité à proposer des activités et repas (le séjour reposant sur le principe d’auto-gestion).

Capture d'écran de la gestion des tickets sur Framagit
Oui oui, on ouvre des tickets sur GitLab pour faire des cookies véganes et des pizzas, yolo.

 

Nous avons ainsi pu mieux les lister et définir (avec une méthode sponsorisée par 3M*).

Réflexion autour des fiches ateliers

*3M, c’est la marque des post-its (oui si on ne sait pas, on ne peut pas comprendre la référence).

On a donc rapidement plein de petites fiches d’activités, de quoi bien nous occuper pendant le séjour :

Multiples post-its

Ensuite, nous nous sommes inscrits dans chaque activité que nous souhaitions afin de les prioriser, avec des petits motifs que chacun s’est attribués.

Petite astuce donnée par les designeuses : pour retirer un post-it, il faut le faire par le coté et pas par en bas. Comme ça il collera plus longtemps, parce que la surface de collage sera moins pliée et donc davantage en contact avec le mur. 😉

Nous avons clos cette première journée par un petit cours d’astronomie à l’œil nu proposé par Moutmout.

Design et Ergonomie

Nous avons fait un fishbowl sur le thème de l’ergonomie des logiciels, notamment comment savoir si son interface est utilisable.

Personnes assises écoutant et participant au Fishbowl

Un fishbowl (ou bocal à poissons) est un processus de communication permettant d’échanger sur un sujet particulier. Au départ, nous plaçons 4 chaises au centre de la pièce et nous invitons 3 personnes maximum à s’asseoir sur celles-ci pour prendre la parole, les autres sont invités à écouter sans intervenir. Lorsqu’une personne qui s’est exprimée se rend compte qu’elle n’a plus rien à ajouter, elle libère une place et une autre personne peut s’asseoir et discuter à son tour. Si une personne en dehors du cercle veut prendre la parole, elle s’assied sur une chaise libre (il y en a toujours une, vu qu’il y a 4 chaises pour 3 orateurs max.), et invite de fait un orateur à libérer sa place. Ce fonctionnement permet d’améliorer la dynamique de la conversation et de faciliter la prise de parole pour tout le monde.

Plus tard, Maiwann nous a présenté sa conférence Designers et Logiciels libres: et si on collaborait ?, qu’elle avait faite à Mixit quelques mois plus tôt.

Conférence Maïwann à Mixit

C’est quoi la fédération ?

Agate (qui développe Funkwhale) nous a présenté la conférence qu’elle avait faite aux RMLL quelques jours plus tôt. Cela a permis à certains de comprendre ce qu’il se passe sous le capot d’un projet utilisant ActivityPub, et à d’autres, d’avoir des idées pour mieux expliquer.

Après différents échanges, un sketch-note en est ressorti :

sketchnote d'un réseau fédéré avec ActivityPub

Partant de là, nous avons réfléchi brièvement à comment expliquer la fédération à M. ou Mme Tout-le-monde.

Nous avons ensuite fait appel à la communauté, en demandant sur Mastodon comment expliquer le principe de fédération. De nombreuses suggestions ont été proposées :

Post-its fédération

Note post-fédérathon (Nathanaël) : 2 semaines plus tard, je suis revenu avec mes frères dans la même maison, les post-its étaient encore accrochés. Alors qu’ils ne connaissaient pas le principe de fédération, je leur ai fait deviné la question qu’on avait posé, sans donner plus d’indices. Sans se concerter ils se sont tous deux mis d’accord sur cette question : * »Comment se mettre d’accord quand on est différents ? »*. Je trouve que celle-ci est au final une des meilleure réponse (et ce concept de « brainstorming inversé » est assez amusant). Et c’est vrai, c’est un peu ça la fédération.

Schéma problèmes aux réseaux fédérés

Nous avons également noté que le terme instance pouvait faire un peu peur aux néophytes.

Post-its instances Nous avons donc, une fois de plus, fait appel à la communauté Mastodon pour trouver un terme équivalent. Une foule d’idées en est ressortie (certaines nous ont bien fait rire).

N’hésitez pas à piocher dans la liste pour vos prochaines explications. 😉

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Les identités nomades

Une des Fiches Activités qui a eu du succès concernait les identités nomades. Nous n’étions en fait pas tout à fait d’accord sur ce que ce terme signifiait et son intérêt principal.

C’est pourquoi nous avons fait un échange en groupe afin d’identifier les problématiques auxquelles peuvent être confronté·e·s les utilisateur·ice·s d’un système fédéré actuellement :

  • « J’ai un identifiant et mot de passe pour chaque service. »
  • « Comment interagir avec un contenu qui n’est pas sur mon instance ? »
  • « Si mon instance est hors-ligne je n’accède pas à mon compte. »
  • « Quand je déménage je ne veux pas perdre mes données. »
  • « Je veux qu’on me retrouve sur mes différents services. », également lié à :
  • « Je ne veux pas qu’on usurpe mon identité. »

Discussion sur les identités nomades

Nous avons ensuite listé les différentes solutions possibles à chaque problématique, en nous basant notamment sur celles déjà existantes sur certains projets comme Pleroma, KeyBase ou Diaspora.

Post-its identités nomades

Financement des créateurs

Comme proposé sur une autre Fiche Activité, nous avons discuté d’une plateforme pour faciliter le financement des créateurs présents sur le Fediverse. La problématique se rapproche de celle de l’identité évoquée plus haut.

Cette plateforme aurait pour but de trouver le contenu avec lequel l’utilisateur interagit (visualisation, like, écoute, …) afin de comptabiliser la somme à donner à chaque créateur, puis rediriger le donateur vers les plateformes choisies par le créateur (Tipeee, Liberapay, monnaie libre, …).

Il en est ressorti quelques schémas et illustrations représentant l’idée :

Schéma financement des créateurs

Ainsi que quelques sketch-notes…

sketchnote 1 financement

sketchnote 2 financement

Gouvernance

Nous avons réalisé un autre fishbowl, cette fois-ci sur le thème de la gouvernance au sein de la fédération : qu’elle se situe au niveau de la gestion des instances et de leur modération, ou bien au niveau du projet et de son développement.

Discussion gouvernance

Durant le fishbowl nous avons abordés de nombreux sujets.

Le fait par exemple que la manière de gérer un groupe dépend de sa taille : un état, un logiciel ou une entreprise ne peuvent pas s’organiser de la même manière. Il en serait donc de même pour les instances du Fediverse, où leur gouvernance pourrait être pensée vis à vis de leur taille.

sketchnote gouvernance

 

Nous avons également abordé des notions d’inclusivité et d’accessibilité, des différentes façon de gérer cela comme l’élaboration d’un code de conduite où la manière de modérer les instances.

Notre discussion s’est ensuite étendue à la gouvernance au sens large et comment celle-ci est gérée dans les groupes qui sont sensibles aux notions d’égalité (associations, squats, communautés, etc.). On note que même dans une volonté de gouvernance horizontale, une hiérarchie peut se mettre en place naturellement : simplement parce que bien souvent l’investissement des membres n’est pas le même, ce qui peut avoir un impact sur les décisions prises.

Tests utilisateurs

Si un jour vous vous retrouvez entre passionnés du libre, partants pour contribuer sans trop savoir comment et qu’un développeur de projet est avec vous, faites des tests utilisateurs.

Les tests utilisateurs sont à la contribution au libre ce que le houmous est aux repas en auberge espagnole : c’est simple à faire, c’est rapide, accessible à tous et surtout très efficace.

 

— Un fédérathoniste

Nous les avons expérimentés pendant le séjour sur plusieurs sessions, pour les logiciels Funkwhale et Plume par plusieurs personnes.

Première étape : on met quelqu’un devant un logiciel en lui donnant une mission (la moins guidée possible). En fonction de ce que l’on veut tester, ça peut être un utilisateur connaissant le logiciel ou ne l’ayant jamais vu. L’utilisateur commente tout ce qu’il fait et également ce qu’il ressent, les autres écoutent silencieusement.

Oui, pour une fois les utilisateurs peuvent ouvertement pester contre telle ou telle fonctionnalité qui n’est pas pratique, on peut se lâcher (bon, pas trop quand même hein, les développeurs sont aussi nos amis).

Deuxième étape : pendant ce temps, le ou les développeurs prennent plein de notes :
– les actions qu’ils n’avaient pas prévues dans la manière d’utiliser l’outil ;
– ce qui frustre l’utilisateur, ou au contraire le satisfait ;
– ce que les utilisateurs comprennent et ce qu’ils espéraient ;
– ce qui manque ;
– les bugs éventuels pouvant survenir.

Pour notre part, nous avons abattu environ l’équivalent d’un arbre en papier :

Diverses Notes Test utilisateurs

Troisième étape : un échange est fait avec les développeurs et UX-designeuses présentes ici, pour voir comment améliorer certains points. Si vous n’avez pas de star d’UX parmi vous, vous pouvez demander autour de vous (sur Mastodon par exemple).

Dernière étape : transformez ces notes en tickets* sur les dépôts des projets en question !

* Dans le développement logiciel, les tickets sont des propositions de modification du code. Cela peut être par exemple pour améliorer l’interface, signaler un bug ou suggérer des fonctionnalités.

Côté Funkwhale, près de 50 tickets ont été ouverts suite à ces tests.

Sur Plume, environ autant.

(c’est beaucoup).

Tous ces tickets sont quelque chose de très concret pour l’amélioration du logiciel, d’autant plus si c’est un des développeurs qui les ouvre : on passe d’une petite gêne remarquée dans l’utilisation en un truc noté sur la TODO-list du projet.

Du côté du futur projet Framameet (nom Framasoft d’un projet de site de partage d’événements fédéré), nous avons pu tester et prendre des notes sur les projets propriétaires concurrents, afin de mieux concevoir l’ergonomie du projet.

Initiations

 

Notes sur Rust

Certains d’entre nous ont proposé des initiations à des notions qu’ils maîtrisaient : tcit sur le langage Elixir, bat sur le langage Rust.

Plus brièvement, Docker et le déploiement ont aussi été abordés.

Ce n’était pas des cours mais plutôt un moyen de nous faire découvrir et aimer (ou pas) ces technos et se laisser le temps, plus tard, d’étudier plus profondément le sujet.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

La suite

 

Capture d'écran du botAvec le joyeux groupe que nous étions, le séjour était assez riche en blagues en tout genre… Notamment la phrase « C’est un peu ça la fédération », sortait assez régulièrement les derniers jours (en réponse à un phrase adaptée).

En revenant du séjour, Moutmout a donc mis les doigts au clavier pour coder un petit bot Mastodon C’est quoi la fédération, répondant à des pouets aléatoires.

L’élaboration de ce compte-rendu à plusieurs nous a également permis d’en garder une trace et de vous le partager.

Nous avons également ouvert un autre Framapad dédié à l’après-séjour. Sur ce dernier, chacun d’entre nous pouvait partager des remarques et suggestion, ou bien donner son avis sur ce qui était bien, ou ce qu’il faudrait améliorer pour une prochaine fois.

 

 

 

 

 

Burgers végéIl en ressort globalement que nous étions très satisfaits du séjour : notamment, les tests utilisateurs et les fishbowls en ont conquis plus d’un (mais pas autant que les burgers végé :P).

Il y a également quelques petites idées pour une prochaine fois, comme le fait d’ouvrir un framapad dédié au compte-rendu en début du séjour et de le compléter ensemble tous les jours.

On note également le fait que les ateliers plus « concrets » niveau contribution étaient moins présents que nous l’envisagions, dû au fait qu’ils se font en petits groupes, alors que nous avions tous envie de faire des choses ensemble et que les ateliers en grands groupes intéressaient tout le monde. Bref, il faut accepter qu’on ne puisse pas tout faire.

Nous essayons petit à petit de voir comment poursuivre nos discussions par des actions plus concrètes : par exemple nous sommes en train de monter un groupe de discussion ouvert concernant les identités nomades et son implémentation, en espérant que cela débouche sur des propositions de modification sur des logiciels fédérés. Les thème de la gouvernance et du financement des créateurs subiront sans doute le même sort. Si par ailleurs vous êtes intéressés par ces sujets, vous pouvez me contacter (sur Mastodon : roipoussiere(@)mastodon·tetaneutral·net ou par mail : nathanael(@)framasoft·org) pour prendre part aux groupes de discussion existants.

Ah, et on raconte que certain·e·s participant·e·s ont toujours la musique de Put a banana in your ear dans la tête. On ne sait pas pourquoi.

Ce séjour était en tout cas une expérience très enrichissante pour nous toutes et tous. Et toutes ces discussions pourraient bien un jour faire germer, dans nos petites têtes de libristes, de nouveaux projets.

 

Capture d'écran de la vidéo Charlie The Unicorn




Fournisseurs d’emails, arrêtez de faire de la merde ! (#PasMonCaca)

Cet article fait écho à mon précédent article sur le pouvoir de nuisance des silos de mail.

Dans cet article, je pestais contre le pouvoir ahurissant que confère une grosse base d’utilisateurs à certains fournisseurs de mail (Gmail, Yahoo, etc).

En effet, il est quasiment impensable pour quiconque envoie des mails de passer outre leurs façons de faire, sous peine de se couper d’une grande partie des internautes.

Quand bien même on se conforme à leurs desiderata, quand bien même on met en place toutes les bonnes pratiques existantes, certains fournisseurs de mail ne font pas leur travail correctement…

Nota Bene : Framasoft n’est pas la seule structure à rencontrer les problèmes décrits ci-dessous. Des universités aux entreprises en passant par les google groups, on trouve des témoignages un peu partout sur le Web de mails qui n’arrivent pas à destination, et les administrateurs systèmes échangent souvent entre eux pour savoir si ça vient d’eux ou du serveur d’en face (vous aurez déjà deviné, d’après le titre de cet article, d’où vient généralement le problème).

“Postman.” par Alexander, William (1767-1816) licence CC0 1.0

Florilège

À tout seigneur, tout honneur, commençons par laposte.net.

laposte.net

La Poste avait tout pour fournir un service de mail propre et performant : son histoire dans les communications remonte à loin (on peut faire remonter sa généalogie au XVe siècle avec la première poste d’État de Louis XI) et si nous avons tous eu une lettre ou un colis qui s’est perdu dans les méandres des centres de tri, force est de constater que ça fonctionnait quand même très bien. En 2000, la Poste, encore entreprise publique, devait pouvoir fournir une adresse électronique à tous les Français⋅e⋅s.

Comment ne pas lui faire confiance ? Nous-mêmes, libristes avons, pendant longtemps, conseillé laposte.net à qui nous demandait un fournisseur de mail « propre », qui n’espionne pas les conversations, ne met pas de publicité…

Les choses ont bien changé.

Le prestataire de la Poste (ah bah oui, c’est un sous-traitant, vous n’imaginiez quand même pas que la Poste allait avoir des compétences en interne à l’heure des suppressions de postes de fonctionnaires ?) semble être, excusez le terme, un vrai branquignol : nous avons souvent des messages d’erreur comme 421 4.3.2 All server ports are busy (les serveurs ne sont pas correctement dimensionnés), 550 5.5.0 Service refuse. Veuillez essayer plus tard. service refused, please try later. LPN007_510 (« nope, on veut pas, revenez plus tard ») ou mon préféré, 451 4.7.1 Service unavailable – try again later (tout est vautré).

Ça fait des mois que les serveurs de laposte.net plantent régulièrement, avec en point d’orgue une panne qui a duré plusieurs jours en avril et une communication qui a mis plusieurs jours à arriver (un message pour dire qu’il y a un problème serait-il un aveu de faiblesse pour eux ?).

Résultat :

  • les mails s’accumulent sur nos serveurs, et comme on retente de les envoyer pendant quelques jours, eh bien ça ralentit le traitement des autres mails (bon, maintenant, j’ai mis en place des mailqueues séparées, mais ce n’est pas quelque chose que je devrais avoir à mettre en place !) ;
  • les utilisateurs ne reçoivent pas leurs mails de confirmation d’inscription à nos services ;
  • qui les utilisateurs contactent-ils ? Ah bah non, pas le support de la Poste, ce serait trop simple. Non, non, c’est nous. Et c’est usant. Non pas de vous répondre, mais le fait que ce soit 95 % du temps la faute à votre fournisseur de mail qui ne fait pas correctement son boulot.

Orange (wanadoo)

Ah, Orange. Tout un poème…

L’opérateur historique qui, lui aussi, a bénéficié de son aura d’ancien service public pour capter une grande majorité des internautes français lorsque vint l’heure de se choisir son premier FAI. Du coup, beaucoup de personnes ont encore une adresse wanadoo. Et comme Orange est le FAI majoritaire en France, encore plus de personnes ont une adresse orange.

J’avais déjà parlé dans mon précédent article de sa sale manie de ne pas accepter qu’on lui envoie trop de mails en une seule connexion. Imaginez un quidam qui refuse que son facteur lui apporte plus de trois lettres par tournée. Le facteur doit donc se représenter plusieurs fois s’il a plus de trois lettres à délivrer. C’est débile. Orange fait ça, mais pour le mail.

C’est le seul fournisseur que je connaisse qui impose ce genre de limite (qu’on ne vienne pas me dire que c’est pour lutter contre le spam : comment font les autres ? Hein ? Orange n’aurait pas les capacités financières et techniques de lutter plus proprement contre le spam ?).

Heureusement, ça se règle facilement, mais tout de même.

Et puis, de temps en temps, pouf, il rejette nos mails à coup de 550 5.2.0 Mail rejete. Mail rejected. ofr_506. Pourquoi ? Va savoir. Et ça se débloque tout seul au bout d’un temps.

Free

Après l’opérateur historique, voici celui qu’on surnomme le trublion du net. De temps en temps, celui-ci semble modifier les règles de son antispam, et nous voilà avec des mails 550 spam detected, quand bien même c’est le 300e mail quasi identique que nous envoyons de la journée. Et puis ça s’en va et ça revient.

Pareil avec 451 too many errors from your ip, ça bloque de temps en temps et ça repart comme c’est venu… alors qu’il s’agit majoritairement de mails de notification (framapiaf, framasphere, framagit…) et donc que les adresses ont été vérifiées ! Certes, il peut y avoir des erreurs, mais tellement peu dans le volume de mails que nous envoyons à Free… Ça arrive vraiment de façon aléatoire. Grmpf.

Facebook

On l’oublie, mais Facebook, en 2010, a proposé d’avoir une adresse mail @facebook.com (bon, ils ont arrêté les inscriptions en 2014, ce qui explique l’oubli). Et certaines personnes utilisent encore ces adresses.

Nos mails étaient bloqués de temps à autre avec un code 554 5.7.1 POL-P4 Connection refused, ce qui veut dire en gros « Revenez dans 24 ou 48 heures ». En soi, ce n’était pas forcément délirant, si jamais nous avions, pour une raison ou pour une autre, envoyé beaucoup de mails d’un coup à leurs serveurs. Mais depuis quelques semaines, il n’y a plus de déblocage : nos mails ne partent plus pour facebook.com, même en les faisant partir d’un autre serveur ou en diminuant la vitesse d’envoi.


Voilà pour les fournisseurs de mails qui font n’importe quoi avec leurs serveurs. Ils présentent tout de même l’avantage de nous permettre de comprendre pourquoi les destinataires n’ont pas reçu leurs mails, fût-ce pour de stupides raisons. Mais il y en a de plus vicieux…

Ceux qui n’amènent pas les mails à leurs destinataires (ou qui les cachent)

On ne les connaît pas bien, ce n’est que lorsque l’on nous contacte pour et que nous voyons que le mail est bien parti qu’on les repère : les fournisseurs de mails qui acceptent nos mails mais, pour une raison ou pour une autre, les envoient rejoindre le grand rien.

Eh oui, nos mails disparaissent parfois sur le serveur de votre fournisseur de messagerie. Vous ne les trouverez dans aucun dossier, pas même dans les spams.

Il s’agit le plus souvent de choix algorithmiques du fournisseur : l’antispam est vraiment sûr que ce message est frauduleux ? Bah, pas la peine d’embêter l’utilisateur, on le jette ! (ce qui est stupide car ne permettant pas la correction des faux positifs par les utilisateurs).

Encore mieux, Gmail. Comme expliqué dans notre FAQ, si vous recevez un mail identique à un que vous avez envoyé, comme un message à une framaliste à laquelle vous êtes inscrit, Gmail cachera le mail reçu de la liste. Vous l’avez envoyé, vous en connaissez le contenu, non ? Ah, vous vouliez voir quand le message arriverait, histoire d’être sûr qu’il a bien été traité par notre serveur de listes ? Pas de bol.

Ceux qui proposent une application pourrie

Les personnes qui utilisent l’application de mail Orange sur leur téléphone ont des soucis pour envoyer des messages à des framalistes. Après investigation, nous nous sommes rendus compte que l’application met l’adresse de la liste (enfin un dérivé, elle met l’adresse dédiée à la réexpédition des mails reçus par la liste) dans l’en-tête Sender.

Que cela veut-il dire et pourquoi est-ce un problème ? Cela fait croire que le mail provient du serveur des framalistes. Comme notre serveur n’est pas stupide, voyant un mail provenant soit-disant de lui-même mais passant par un serveur non-autorisé à envoyer des mails framalistes, celui-ci refuse le mail. Tout simplement. C’est une des techniques classiques de lutte contre le spam que d’agir ainsi.

“cow dung patties” par mary jane watson licence CC BY 2.0

Conclusion

Les problèmes face aux gros silos de mail sont nombreux, et sont loin d’être tous dus à une mauvaise configuration de votre serveur mail que vous chouchoutez vous-même (ou de ceux que nous configurons… Non vraiment, c’est pas nous qui pondons de telles bouses ! D’où ce joli hache-tague : c’est #PasMonCaca).

Je pense personnellement et sincèrement qu’il y a une part d’incompétence de la part de ces silos dans un certain nombre de cas. Si tout le monde jouait le jeu correctement, le mail ne serait pas aussi compliqué qu’aujourd’hui.

Que pouvez-vous faire ? Eh bien, à part changer de fournisseur de mail (connaissez-vous les CHATONS ?), vous pouvez contacter le support de votre fournisseur actuel, lui expliquer la situation et lui dire que ce n’est pas normal. Nous pouvons vous fournir, le cas échéant, les codes d’erreur retournés par son serveur pour les mails que nous vous envoyons. Peut-être qu’en étant suffisamment nombreux à râler, la situation évoluera.

Fun fact : combien des fournisseurs de mail évoqués dans cet article permettent de contacter leur serveur de mail en IPv6 ? Un seul — je vous laisse chercher lequel 😁

(Et si vous vous posez la question, oui, les serveurs de framasoft.org et framalistes.org sont accessibles en IPv6, comme toute l’infrastructure de Framasoft. Quand on veut, on peut.)

Image d’en-tête par barefootcollege, source.




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 :




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.




Mastodon, un an après le défi

Aujourd’hui 19 février nous célébrons un anniversaire symbolique : voici exactement un an qu’un certain Eugen Roschko a répondu publiquement à Mark Zuckerberg et mentionné le réseau social Mastodon qu’il avait créé quelques mois auparavant.

Cette lettre ouverte mérite d’être relue : Eugen y réfute les prétentions de Facebook à donner du pouvoir à la communauté, explique à quel point Facebook est par essence incapable de le faire et surtout propose une voie qui restitue aux utilisateurs leur maîtrise : la fédération, telle que mise en œuvre avec Mastodon.

Ce qui nous a séduits dans ce message, ce n’est pas seulement l’audace tranquille du jeune homme, le côté David contre Goliath, c’est aussi qu’il y mettait sur la table avec son interpellation du magnat Zuckerberg un logiciel fonctionnel. Eugen Roschko avait créé quelque chose qui démontrait qu’une autre voie est possible, y compris pour les réseaux sociaux.

Peu importe ensuite si le succès a été au rendez-vous. Certes, le cap du million d’utilisateurs inscrits a été franchi en décembre dernier, mais on est évidemment assez loin des milliards d’usagers captifs de Facebook et Twitter. L’important c’est plutôt que la multiplication des instances a été phénoménale, depuis celles qui appliquent une modération et des conditions d’utilisations strictes dans l’objectif de constituer des safe spaces, jusqu’aux instances victimes de leur succès et dont il a fallu limiter les inscriptions, en passant par notre modeste et convivial Framapiaf

Si vous découvrez tout cela et hésitez encore, rendez-vous sur cette excellente page informative qui vous aidera à choisir quelle instance pourrait vous convenir le mieux (mais rien ne vous interdira de changer d’instance ensuite à votre gré).

À relire aujourd’hui le message d’Eugen on mesure mieux qu’il s’inscrit dans un courant plus large et désormais toujours croissant de prise de conscience et de remise en question des Léviathans du Web. Une prise de conscience qui passe par la mise à disposition du public d’alternatives crédibles et respectueuses, une remise en cause qui passe par le refus de l’inféodation des utilisateurs, de l’arbitraire centralisateur et de l’espionnage étatique dans notre vie privée en ligne.

 

 

Le pouvoir de bâtir des communautés, une réponse à Mark Zuckerberg

par Eugen Roschko

parution originale le 19 février 2017 sur le site de Hackernooon.

Traduction Framalang : goofy, mo, audionuma, Bromind,moutmout

un des avatars d’Eugen Roschko alias Gargron

Le manifeste de Mark Zuckerberg est peut-être animé de bonnes intentions, mais comporte une chose fondamentalement fausse :

« Dans des moments comme ceux-ci, la chose la plus importante que nous puissions faire chez Facebook est de développer l’infrastructure du réseau social pour donner aux gens la possibilité de bâtir une communauté mondiale qui fonctionne pour nous tous. »

 

Facebook n’est pas et ne pourra jamais être une plateforme où les gens ont le pouvoir de construire quoi que ce soit. Facebook ne peut même pas  prétendre être un organisme à but non lucratif comme le sont Wikipédia ou Mozilla ; l’objectif principal de l’entreprise ne fait aucun doute : tirer profit de vous le plus possible en analysant vos données et en vous montrant des annonces publicitaires contre l’argent de l’annonceur. Un avenir où Facebook est l’infrastructure sociale mondiale, c’est un avenir sans aucun refuge contre la publicité et l’analyse des données.

Facebook ne peut tout simplement pas donner à quiconque le pouvoir de faire quoi que ce soit, parce que ce pouvoir résidera toujours, en fin de compte, dans Facebook lui-même, qui contrôle à la fois le logiciel, les serveurs et les politiques de modération.

Non, l’avenir des médias sociaux doit passer par la fédération. Le pouvoir ultime consiste à donner aux gens la capacité de créer leurs propres espaces, leurs propres communautés, de modifier le logiciel comme ils le jugent bon, mais sans sacrifier la capacité des personnes de différentes communautés à interagir les unes avec les autres. Bien sûr, tous les utilisateurs finaux n’ont pas forcément envie de gérer leur propre petit réseau social, de même que tous les citoyens ne sont pas tous intéressés par la gouvernance de leur propre petit pays. Mais je pense qu’il y a une bonne raison pour laquelle de nombreux pays se composent d’États séparés mais compatibles, et pour laquelle de nombreux pays distincts mais compatibles forment des alliances comme l’Union européenne ou l’OTAN. Un mélange entre souveraineté et union. Fédération.

Internet a connu beaucoup de hauts et de  bas du côté des réseaux sociaux. MySpace. Friendfeed. Google++. App. net. Et absolument à chaque fois différentes expériences utilisateurs, de nouveaux comptes, la nécessité de convaincre vos amis de changer, ou d’avoir plusieurs comptes pour parler à tous. Pensez-vous que ce cycle s’arrêtera avec Facebook ? Les dynamiques communautaires garantissent dans une certaine mesure un cycle ascendant et descendant, mais nous pourrions arrêter de rebondir d’un site à l’autre et nous en tenir à un protocole standardisé. Le courriel n’est peut-être pas sexy, car il a été créé à une époque où les choses étaient plus simples, mais on ne peut pas s’empêcher de trouver génial qu’il fonctionne toujours, quel que soit le fournisseur qu’on choisit.

Voulez-vous vraiment que le site web, qui affiche les photos de vos amis avec la légende « vous allez leur manquer » quand vous essayez de supprimer votre compte, soit aux commandes d’une communauté mondiale ?

Je crois qu’avec Mastodon, j’ai créé un logiciel qui est vraiment une alternative crédible à Twitter. C’est un serveur de microblogging fédéré dans le prolongement de GNU Social, mais qui contrairement à GNU Social est capable de plaire aux gens qui n’ont jamais marqué un intérêt particulier pour le logiciel en lui-même. Autrement dit, il est utilisable par des personnes non techniques. Je ne sais pas si le travail que je fais est assez bon pour servir l’avenir de l’humanité, mais je pense que c’est au moins un pas sérieux dans la bonne direction.

Eugen Rochko,
Développeur de Mastodon, administrateur de mastodon.social, l’instance d’exemple

 

 

 

Edit 19/02/2018 : Suite à la demande de mastonautes, nous avons modifié la locution désignant les instances safe spaces dans notre introduction. En effet, en les décrivant comme « fermées comme des huîtres » notre intention était de faire un mot d’humour, et certainement pas de dénigrer l’utilité de ces instances en particulier et des safes spaces en général. Clairement, cette tournure de phrase a totalement trahi nos intentions (un bug), donc merci aux mastonautes qui nous l’ont signalé (bug report) et à celleux qui ont suggéré une façon de le dire plus proche de ce que nous pensons (bug fix). La diversité est une force du Libre et des réseaux fédérés, tout comme le dialogue, le droit à l’expérimentation et à l’erreur ;).




Papiray fait du Komascript

Raymond Rochedieu est, depuis des années, un pilier de l’équipe bénévole qui relit et corrige les framabooks. Quand ce perfectionniste a annoncé vouloir s’attaquer à la traduction et l’adaptation d’un ouvrage kolossal, personne ne pouvait imaginer la masse de travail qui l’attendait. Surtout pas lui !
Personnage haut en couleur et riche d’une vie déjà bien remplie, ce papi du Libre nous offre aujourd’hui le fruit d’un travail acharné de plusieurs années. Framabook renoue ainsi le temps d’un précieux ouvrage avec sa tradition de manuels et guides.

Markus Kohm, Raymond Rochedieu (traduction et adaptation), KOMA-Script. Typographie universelle avec XƎLATEX, Framabook, octobre 2017.

KOMA-Script. Typographie universelle avec XƎLATEX

Bonjour Raymond, si tu aidais nos lecteurs à faire connaissance avec toi ?

Bonjour, je m’appelle Raymond Rochedieu et depuis une quinzaine d’année, lors de la naissance de mon premier petit fils, tout le monde m’appelle Papiray. Je suis âgé de 72 ans, marié depuis 51 ans, j’ai deux garçons et 6 petits-enfants.

Je suis à la retraite, après avoir exercé des métiers aussi variés que : journaliste sportif vacataire (1959-1963), agent SNCF titulaire (1963-1967), VRP en machines-outils bois Guilliet (1967-1968), éducateur spécialisé (1968-1970, école d’éducateur de Reims), artisan imprimeur en sérigraphie (1970-1979), VRP (Textiles Florimond Peugnet – Cambrai, Éditions Paris-Match, Robert Laffont et Quillet, Laboratoires Messegué, Électro-ménager Vorwerk et Electrolux, Matra-Horlogerie JAZ…), puis ingénieur conseil, directeur commercial, artisan menuisier aluminier, avant de reprendre des études à 52 ans et de passer en 10 mois un BTS d’informaticien de gestion. Malgré les apparences, je ne suis pas instable, seulement curieux, « jusqu’auboutiste » et surtout socialement et individuellement responsable mais (très) indépendant, ce que j’appelle mon « Anarchie Utopiste » (expression qui, comme chacun le sait, vaut de l’or) : je rêve d’un monde où tous seraient responsables et égaux… mais ce n’est qu’un rêve !

J’ai terminé ma carrière professionnelle comme intervenant en informatique, installateur, dépanneur, créateur de sites internet, formateur agréé éducation nationale, chambre de commerces et chambre des métiers et même jury BTS à l’IUT de Reims.

Ton projet de traduction et de Framabook a été une œuvre de longue haleine et aboutit à un ouvrage massif. Comment tout cela a-t-il commencé ? Pourquoi as-tu entamé seul ce gigantesque labeur ?

Je me suis tout d’abord intéressé à l’ouvrage de Vincent Lozano Tout ce que vous avez toujours voulu savoir sur LATEX sans jamais oser le demander (Ou comment utiliser LATEX quand on n’y connaît goutte) auquel j’ai participé, à l’époque, en qualité de correcteur. Mais 2008, c’est aussi, pour moi, une rupture d’anévrisme et 14 jours de coma dont je suis sorti indemne, bien que physiquement diminué.

Puis j’ai enchaîné opération du genou droit, infection nosocomiale, prothèse du genou gauche, phlébite, re-opération pour éviter l’amputation, bref vous comprenez pourquoi j’ai mis du temps pour poursuivre le travail !

J’ai cependant connu quelques moments de bonheur : deux stages de tourneur sur bois, à l’école Jean-François Escoulen d’Aiguines (83630) avec le « Maître » qui m’ont conduit à un premier projet : construire un tour à bois fonctionnant à l’ancienne sans électricité et raconter mon ouvrage, projet toujours d’actualité mais qui s’est fait croquer, l’âge aidant, par l’envie d’écrire mes souvenirs, moins de sport… car même la marche m’est devenue pénible… un refuge, mon bureau… l’ordi…et KOMA-Script…

En réalité, ce n’est pas tout à fait ça. Début 2014, je rencontre une amie  qui se plaint de l’utilisation du logiciel Word, inadapté à son besoin actuel : à 72 ans, elle a repris ses études et prépare un doctorat de théologie. Chapeau, Françoise… elle a aujourd’hui 75 ans et elle est, je crois, en dernière année…

Je cherche donc quels sont les outils utilisés par les « thésards » et les « doctorants », et je découvre LaTeX que l’on dit « créé par les Américains, pour les Américains » et mal adapté à la typographie du reste du monde. J’achète le livre de Maïeul Rouquette et découvre finalement cette perle qu’est KOMA-Script, à travers « Les fiches de Bébert » (voir liste de références plus bas).

Ce qu’il en écrit me donne envie d’aller plus loin dans la connaissance de l’ouvrage de Markus KOHM, mais pour moi, c’est l’horreur : l’original en langue allemande n’existe que dans une traduction en langue anglaise.

Et qu’est-ce qu’y fait, Papiray ? Hein ? Qu’est-ce qu’y fait ?

Ben y contacte Markus Kohm pour lui demander l’autorisation de passer l’ouvrage en langue française et y demande à ses « amis » de Framasoft ce qu’ils en pensent… ou l’inverse… toujours est-il que Markus m’y autorise en date du 19 juillet 2014 et que mes amis de Framasoft me disent « vas-y, fonce », le début d’une aventure commencée en réalité en mai de la même année.

Dans l’absolu, je n’ai pas l’impression d’avoir été réellement seul. La curiosité, la découverte des différents systèmes, les réponses – surtout par Christophe Masutti – aux questions posées, les lectures des multiples articles et ouvrages consacrés au sujet, les tests permanents des codes (dont les résultats n’étaient pas toujours ce que j‘en attendais), les erreurs de compilation non identifiées et dont il me fallait corriger la source…

Et puis, pour tout avouer, je ne savais pas réellement où je mettais les doigts… une fois la machine lancée, fallait bien assurer et assumer…

Tu as travaillé dur pendant longtemps et par-dessus le marché, les passes de révision des bénévoles de Framabook ont été nombreuses et t’ont souvent obligé à reprendre des détails, version après version. Comment tu as vécu ça, tu ne t’es jamais découragé ?

Vu dans l’instance Framapiaf du 26 juillet 2017 à propos de l’utilisation d’une varwidth dans une fbox :

Ce sont surtout les modifications de versions dues à Markus qui m’ont « obligé ».

Comme je l’ai indiqué ci-dessus, j’ai démarré ce travail, en mai 2014, sur la base de la version de l’époque qui a évolué le 16 avril, le 15 septembre, le 3 octobre 2015, avant de devenir la v3.20 en date du 10 mai 2016, la v3.21 le 14 juin puis la v3.22 le 2 janvier 2017, enfin la v3.23 le 13 avril 2017 et chaque fois, pour coller à la réalité, je me suis adapté en intégrant ces modifications.

De plus, Markus Kohm a multiplié des extensions et additifs publiés sur internet et j’ai décidé de les intégrer dans la version française de l’ouvrage. KOMA-Script est bien entendu le noyau, mais LaTeX, le système d’encodage abordé, m’était totalement inconnu. Je me suis inspiré, pour le découvrir à travers XƎLATEX, des ouvrages suivants qu’il m’a fallu ingérer, sinon comprendre :

Cette liste n’est pas exhaustive et ne mentionne que les quelques ouvrages et sites parcourus le plus fréquemment.

Quant au bon usage de la langue française, j’ai toujours, à portée de main,

que je consulte régulièrement. En cas de doute, il me reste trois références françaises solides :

Et j’ai navigué au hasard de mes hésitations (merci Mozilla), sur de nombreux sites que je n’ai pas cités dans mes références.

Que leurs auteurs et animateurs ne m’en tiennent pas rigueur.

Tu es donc passionné de LaTeX ? Pourquoi donc, quels avantages présente ce langage ?

LaTeX — prononcer « latèk » ou « latèr » comme avec le « j » espagnol de « rota » ou le « ch » allemand de « maren » (machen), selon votre goût — est un langage de description de document, permettant de créer des écrits de grande qualité : livres, articles, mémoires, thèses, présentations projetées…

On peut considérer LaTeX comme un collaborateur spécialisé dans la mise en forme du travail en typographie tandis que l’auteur se consacre au contenu. La fameuse séparation de la forme et du fond : chacun sa spécialité !

Et ce KOMA-Script c’est quoi au juste par rapport à LaTeX ?

LaTeX a été écrit par des Américains pour des Américains. Pour pouvoir l’utiliser convenablement il nous faut charger des paqs qui permettent de l’adapter à notre langue car les formats de papiers américains et européens sont très différents et les mises en page par défaut de LaTeX ne sont adaptées ni à notre format a4, ni à notre typographie.

L’utilisation de KOMA-Script, outil universel d’écriture, permet de gérer la mise en page d’un ensemble de classes et de paqs polyvalents adaptés, grâce au paq babel, à de multiples langues et pratiques d’écriture, dont le français. Le paq KOMA-Script fonctionne avec XƎLATEX, il fournit des remplacements pour les classes LaTeX et met l’accent sur la typographie.

Les classes KOMA-Script permettent la gestion des articles, livres, documents, lettres, rapports et intègrent de nombreux paqs faciles à identifier : toutes et tous commencent par les trois lettres scr : scrbook, scrartcl, scrextend, scrlayer

Tous ces paqs peuvent être utilisés non seulement avec les classes KOMA-Script, mais aussi avec les classes LaTeX standard et chaque paq a son propre numéro de version.

Donc ça peut être un ouvrage très utile, mais quel est le public visé particulièrement ?

j’ai envie de répondre tout le monde, même si, apparemment, ce système évolué s’adresse d’avantage aux étudiants investis dans des études supérieures en sciences dites « humaines » (Géographie, Histoire, Information et communication, Philosophie, Psychologie, Sciences du langage, Sociologie, Théologie…) et préparant un DUT, une licence, une thèse et même un doctorat plutôt qu’aux utilisateurs des sciences « exactes » qui peuvent être néanmoins traitées.

En réalité, je le pense aussi destiné aux utilisateurs basiques de MSWord, LibreOffice ou de logiciels équivalents de traitement de texte, amoureux de la belle écriture, respectueux des règles typographiques utilisées dans leur pays, désireux de se libérer des carcans plus ou moins imposés par la culture anglo-saxonne, même s’il n’est pas évident, au départ, d’abandonner son logiciel wysiwyg pour migrer vers d’autres habitudes liées à la séparation du fond et de la forme.

Est-ce que tu as d’autres projets pour faire partager des savoirs et savoir-faire à nos amis libristes ?

Oui, dans le même genre, j’ai sous le coude un ouvrage intitulé « Utiliser XƎLATEX c’est facile, même pour le 3e âge  » écrit avec la complicité de Paul Bartholdi et Denis Mégevand, tous deux retraités de l’université de Genève, l’Unige. Ces derniers sont les co-auteurs, en octobre 2005, d’un didacticiel destiné à leurs étudiants « Débuter avec LaTeX » simple, clair, plutôt bien écrit et dont je m’inspire, avec leurs autorisations, pour composer la trame de mon ouvrage qui sera enrichi (l’original compte 98 pages) et portera – comme son titre le laisse supposer – sur l’usage de XƎLATEX, incluant des développements et surtout des exemples de codes détaillés et commentés de diverses applications (mon objectif est de me limiter à 400 pages), mais ne le répétez pas…

 

 




Explorons le monde des services de Contributopia

L’aventure Contributopia a pour but de poursuivre et d’approfondir le travail entamé lors de la campagne « Dégooglisons Internet ». Pour la première année de cette campagne, nous comptons donc continuer à ouvrir des services web alternatifs… mais en nous y prenant un poil différemment.

Faire avec vous, pour faire mieux

Hors de question de reprendre le rythme effréné des années de campagne « Dégooglisons Internet » où nous avons sorti près de 10 services par an (vous pouvez vérifier, on a compté !). Durant cette première année de Contributopia, nous voulons prendre le temps dans l’élaboration et l’évolution de quatre services majeurs :

  • Framasite (et Framawiki), création de sites & pages web, blogs, wiki ;
  • Framameet, une alternative à MeetUp pour organiser des rencontres de groupes ;
  • Framapetitions, pour faire entendre ses opinions (alternative aux problèmes posés par Change.org) ;
  • Framatube, parce que YouTube est devenu incontournable, et qu’il faut trouver comment faire autrement.

Cliquez pour découvrir le monde des services de Contributopia.
Illustration de David Revoy – Licence : CC-By 4.0

Prendre le temps pour mettre en ligne ces services nous permettra de mieux nous impliquer. Sauf exceptions (Framadate, Framaestro, etc.), Framasoft ne développe pas les logiciels libres qui permettent d’ouvrir les services répertoriés par Dégooglisons Internet. La plupart du temps, nous y contribuons (développement de fonctionnalités, documentation, bidouilles esthétiques, traductions, etc.) puis nous les hébergeons, les tenons à jour et nous facilitons leur adoption.

Cette fois-ci, nous voulons investir encore plus de temps professionnel, et donc de l’argent qui provient de vos dons, dans la création et l’évolution de ces projets. Nous pourrons ainsi contribuer à une réflexion plus poussée autour d’outils numériques qui sont franchement sensibles. Nous pourrons aussi et surtout prendre le temps d’être à votre écoute, de vous exposer les points d’étapes et de vous impliquer dans l’évolution de ces logiciels… S’ils sont faits pour vous, autant les faire avec vous, non ?

Quatre services Contributopistes !

 

Entrons dans le vif du sujet, avec les quatre services sur lesquels nous vous proposons de contribuer cette année…

Framasite, créer des sites web aisément

 

Framasite, illustré par David Revoy – Licence : CC-By 4.0

Première action de cette Contributopia, Framasite est d’ores et déjà ouvert : il suffit d’aller sur Frama.site pour contribuer à la phase de test ! Vous pouvez donc vous y créer un compte afin de produire un (ou plusieurs !) sites internet, pages web, blog, et même des wiki (ces fameux outils pour partager des connaissances de manière collaborative).

Nous reviendrons dessus en détail cette semaine sur le Framablog, mais l’idée est simple : offrir à la fois un espace d’hébergement et des outils pour faciliter l’expression de chacun·e sur la toile. Nous nous engageons à un hébergement éthique : vos contenus publiés sur Framasite vous appartiennent et les données des personnes qui les visiteront ne seront ni épiées, ni transmises, ni monétisées (c’est dans nos conditions d’utilisation !)

Basé sur les logiciels libres Dokuwiki (pour les wiki) et Grav (pour les sites, pages web, blogs…) nous savons qu’à ce jour, Framasite n’atteint pas encore son but : permettre de créer un site web aisément, même quand on ne s’y connaît pas trop. C’est normal, il est en phase de test.

Durant les semaines qui arrivent, nous allons travailler à sa simplification, tout en produisant des tutoriels selon des exemples précis (CV en ligne, blog, etc.). Ensuite, nous souhaitons faciliter le choix des noms de domaine (l’adresse web de votre Framasite). Enfin, fort·e·s des retours et suggestions que vous nous ferez, un⋅e stagiaire nous aidera à contribuer au logiciel Grav afin qu’il soit encore plus facile et pratique d’utilisation.

Framameet, se regrouper sans se faire pister

Framameet, illustré par David Revoy – Licence : CC-By 4.0

Aujourd’hui, les personnes souhaitant se rencontrer de visu autour de ce qui les rassemble utilisent soit des produits Facebook (les groupes, les pages et les événements), soit MeetUp, dont la création de groupes est devenue payante. Cela signifie, au choix : forcer les gens à être sur Facebook et lui donner encore plus d’informations personnelles et collectives, ou confier à MeetUp toutes les données des personnes intéressées par une activité de groupe.

Il existe des projets dans le logiciel libre qui souhaitent se poser en alternative à MeetUp, mais nous n’en avons pas (encore) vu qui offrent toutes les fonctionnalités attendues et qui sont d’ores et déjà utilisables par le grand public. Qu’à cela ne tienne, c’est une grande devise libriste : « juste fais-le ! » Nous verrons donc qui veut nous suivre dans cette aventure pour créer ensemble une alternative libre à MeetUp qui n’exploite ni les données ni les vies numériques des personnes souhaitant se regrouper.

 

Framapetitions, s’exprimer en toute confiance

Framapetitions, illustré par David Revoy – Licence : CC-By 4.0

Ah ça fait un moment qu’on en rêve, de celui-là, hein ? Déjà pendant l’été 2016, nous traduisions l’article inquiétant d’une journaliste italienne, Stephania Maurizi, sur l’exploitation financière des signataires de pétitions faites sur Change.org. Nos opinions sur le monde qui nous entoure (qui sont donc, littéralement, politiques) représentent des données sensibles. Elles valent mieux qu’une exploitation financière ou qu’un code obscur dont on ignore ce qu’il fait, non ?

Lorsque nous avons créé le service de formulaires en ligne Framaforms, nous savions qu’en bidouillant et retravaillant ce code, nous pourrions proposer un service Framapetitions, une alternative à Avaaz ou Change.org. Sauf que la différence entre un formulaire en ligne et une pétition, c’est que cette dernière peut être rejointe par des millions de personnes !

Ayant vu sur plus d’un an comment les serveurs de Framaforms tenaient la charge que représentent vos questionnaires et leurs réponses, nous sommes désormais assez confiant·e·s pour nous lancer dans la production de Framapetitions… mais nous aurons grand besoin de votre aide pour tester massivement ce service ensemble avant de le publier !

Framatube, briser l’hégémonie de YouTube

Framatube, illustré par David Revoy – Licence : CC-By 4.0

C’est un gros morceau : comment faire pour que YouTube ne soit plus aussi incontournable ? Ce réseau social de vidéos bénéficie de toute la puissance de Google… et autant vous dire qu’il en faut, des sous, des fibres et des serveurs, pour centraliser des milliards de vidéos dont certaines sont vues par des milliers (millions ?) de personnes en même temps.

Et si la solution c’était de faire autrement…? De faire non pas un énième hébergement alternatif (un « Framatube » centralisateur) mais une fédération d’hébergements vidéos, où chacun peut communiquer avec les autres ? Mastodon (une alternative à Twitter libre et fédérée) nous a montré qu’un réseau fédéré peut permettre à chaque hébergeur de choisir ses propres règles du jeu (modération, monétisation, conditions générales) tout en offrant aux utilisateur·trice·s un accès à l’ensemble du réseau.

Peertube est un logiciel libre en cours de développement, qui permet de faire la même chose pour l’hébergement de vidéos. Et il offre un gros plus : la diffusion vidéo en pair à pair. Il fait en sorte que le navigateur web de chaque spectateur·trice d’une vidéo la partage avec les autres personnes qui sont en train de la regarder, soulageant ainsi et le réseau et les serveurs qui hébergent ces vidéos.

Nous prenons le pari de financer le salaire du développeur de ce logiciel, qui jusqu’à présent menait le projet sur son temps libre, afin qu’il parvienne à une version qu’on puisse déployer à grande échelle. C’est un pari fort car nous pensons sincèrement que, une fois cette brique logicielle construite, Peertube peut révolutionner notre monde numérique, et que d’autres pourront construire par dessus.

Ainsi, Framatube ne sera pas un endroit où déposer des vidéos, mais bien le petit maillon d’une grande chaîne que nous espérons composée d’artistes, associations, collectifs, organisations et médias qui hébergeront et diffuseront leurs vidéos.

Faire mieux que dégoogliser, oui, mais ensemble !

Alors oui : « seulement » quatre services en une année, nous vous avions habitué·e·s à plus. Mais, nous espérons que vous l’aurez compris, le but de cette année n’est pas de répondre à une urgence qui pousse vers la quantité de services, mais bien à une exigence de penser ensemble des services différemment. Sans compter qu’en parallèle, nous devons prendre le temps de poser les fondations qui nous permettront de consacrer les années suivantes à l’essaimage, puis à l’éducation populaire.

Cette année est aussi une année de transition, pour nous comme pour tou·te·s celles et ceux d’entre vous qui choisiront de nous suivre dans cette aventure. Cette transition veut tendre vers la contribution. Nous devons trouver ensemble comment commencer à ouvrir les espaces nous permettant de collaborer sur les actions présentes et à venir.

Contribuons ensemble vers cette Contributopia.
Illustration de David Revoy – Licence : CC-By 4.0

Quitte à avoir moins d’annonces-surprises fracassantes sur le Framablog, nous essaierons de vous tenir informé·e·s des points d’étapes de chaque projet. Cela pourra se passer ici, mais aussi sur nos réseaux sociaux (Diaspora*, Mastodon, Twitter et même Facebook -_-  !) ainsi que via notre lettre d’information, afin que vous ayez l’opportunité de prendre part à cette aventure.

Le maintien des projets existants et la naissance des actions à venir restent financés par les dons. Plus de deux mille personnes nous permettent de travailler. Nous tenons à vous remercier de cet engagement nécessaire à nos côtés, et de ce soutien qui fait chaud au cœur.

Vous désirez embarquer avec nous dans ce voyage en Contributopia ?

Ça tombe bien : la voie est libre !

Pour aller plus loin




Un cas de dopage : Gégé sous l’emprise du Dr Valvin

Quand un libriste s’amuse à reprendre et développer spectaculairement un petit Framaprojet, ça mérite bien une interview ! Voici Valvin, qui a dopé notre, – non, votre Geektionnerd Generator aux stéroïdes !

Gégé, le générateur de Geektionnerd, est un compagnon déjà ancien de nos illustrations plus ou moins humoristiques. Voilà 4 ans que nous l’avons mis à votre disposition, comme en témoigne cet article du Framablog qui vous invitait à vous en servir en toute occasion. Le rapide historique que nous mentionnions à l’époque, c’est un peu une chaîne des relais qui se sont succédé de William Carvalho jusqu’à Gee et ses toons en passant par l’intervention en coulisses de Cyrille et Quentin.

Vous le savez, hormis le frénétique Luc qu’on est obligés de piquer d’une flèche hypodermique pour l’empêcher de coder à toute heure, on développe peu à Framasoft. Aussi n’est-il guère surprenant que ce petit outil ludique soit resté en sommeil sans évolution particulière pendant ces dernières années où la priorité allait aux services de Dégooglisons.

Enfin Valvin vint, qui à l’occasion de l’ajout d’une tripotée de nouveaux personnages se mit à coder vite et bien, poursuivant avec la complicité de Framasky – ô Beauté du code libre ! – la chaîne amicale des contributeurs.

Mais faisons connaissance un peu avec celui qui vient d’ajouter généreusement des fonctionnalités sympathiques à Gégé.

Commençons par l’exercice rituel : peux-tu te présenter pour nos lecteurs et lectrices. Qui es-tu, Valvin ?

Salut Framasoft, je suis donc Valvin, originaire de Montélimar, j’habite maintenant dinch Nord avec ma petite famille. Je suis un peu touche-à-tout et il est vrai que j’ai une attirance particulière pour le Libre mais pas uniquement les logiciels.

 

Qu’est-ce qui t’a amené au Libre ? Tu es tombé dedans quand tu étais petit ou bien tu as eu droit à une potion magique ?

J’ai commencé en tant qu’ingénieur sur les technologies Microsoft (développement .NET, Active Directory, SQL Server…) J’avais bien commencé non ? Puis Pepper m’a concocté une potion et puis …. vous savez qu’elle ne réussit pas souvent ses potions ?

Plus sérieusement lors de mon parcours professionnel, j’ai travaillé dans une entreprise où Linux était largement déployé, ce qui m’a amené à rencontrer davidb2111, libriste convaincu depuis tout petit (il a dû tomber dans la marmite …). Et je pense que c’est lui qui m’a mis sur la voie du Libre…

Cependant ce qui m’a fait passer à l’action a été la 1re campagne « Dégooglisons Internet »… Elle a débuté juste après mon expérience de e-commerce, quand je gérais un petit site web de vente en ligne où j’ai découvert l’envers du décor : Google analytics, adwords, comparateurs de prix… et pendant que j’intégrais les premiers terminaux Android industriels.

Je suis maintenant un libriste convaincu mais surtout défenseur de la vie privée. Certains diront extrémiste mais je ne le pense pas.

Dans ta vie professionnelle, le Libre est-il présent ou bien est-ce compliqué de l’utiliser ou le faire utiliser ?
Aujourd’hui, je suis une sorte d’administrateur système mais pour les terminaux mobiles industriels (windows mobile/ce mais surtout Android). Pour ceux que ça intéresse, ça consiste à référencer du matériel, industrialiser les préparations, administrer le parc avec des outils MDM (Mobile Device Management), mais pas seulement !

Je suis en mission chez un grand compte (comme ils disent) où le Libre est présent mais pas majoritairement. On le retrouve principalement côté serveur avec Linux (CentOS), Puppet, Nagios/Centreon, PostgreSQL … (la liste est longue en fait). Après je travaille sur Android au quotidien mais j’ai un peu du mal à le catégoriser dans le Libre ne serait-ce qu’en raison de la présence des Google Play Services.

J’ai la chance d’avoir mon poste de travail sous Linux mais j’utilise beaucoup d’outils propriétaires au quotidien. (j’démarre même des fois une VM Windows … mais chuuuut !!).

Je suis assez content d’avoir mis en place une instance Kanboard (Framaboard) en passant par des chemins obscurs mais de nombreux utilisateurs ont pris en main l’outil ce qui en fait aujourd’hui un outil officiel.

On découvre des choses diverses sur ton blog, des articles sur le code et puis un Valvin fan de graphisme et surtout qui est prêt à contribuer dès qu’il y a passion ? Alors, tu as tellement de temps libre pour le Libre ?

Du temps quoi ?… Malheureusement, je n’ai pas beaucoup de temps libre entre le travail, les trajets quotidien (plus de 2 heures) et la famille. Du coup, une fois les enfants couchés, plutôt que regarder la télé, j’en profite (entre deux dessins).
Mes contributions dans le libre sont principalement autour du projet de David Revoy, Pepper & Carrot. J’ai la chance de pouvoir vivre l’aventure à ses côtés ainsi que de sa communauté. Et dans l’univers de la BD, c’est inédit ! D’ailleurs je te remercie, Framasoft, de me l’avoir fait découvrir 🙂
Si je peux filer un petit coup de main avec mes connaissances sur un projet qui me tient à cœur, je n’hésite pas. Et même si ce n’est pas grand-chose, ça fait plaisir d’apporter une pierre à l’édifice et c’est ça aussi la magie du Libre !
J’ai eu parfois l’ambition de lancer moi même des projets libres mais j’ai bien souvent sous-estimé le travail que ça représentait …

Et maintenant, tu t’attaques au geektionnerd, pourquoi tout à coup une envie d’améliorer un projet/outil qui vivotait un peu ?
Je dois avouer que c’est par hasard. J’ai vu un message sur Mastodon qui m’a fait découvrir le projet. Il n’y a pas si longtemps, je m’étais intéressé au projet Bird’s Dessinés et j’avais trouvé le concept sympa. Mais tout était un peu verrouillé, notamment les droits sur les réalisations. J’aime bien le dessin et la bande dessinée, le projet du générateur de Geektionnerd m’a paru très simple à prendre en main… du coup, je me suis lancé !

Tu peux parler des problèmes du côté code qui se sont posés, comment les as-tu surmontés  ?
Globalement, ça s’est bien passé jusqu’au moment où j’ai voulu ajouter des images distantes dans la bibliothèque. Le pire de l’histoire c’est que ça fonctionnait bien à première vue. On pouvait ajouter toutes les images que l’on voulait, les déplacer… Nickel ! Et puis j’ai cliqué sur « Enregistrer l’image » et là… j’ai découvert la magie de  CORS !

CORS signifie Cross Origin Ressource Sharing et intervient donc lorsque le site web tente d’accéder à une ressource qui ne se situe pas sur son nom de domaine.
Il est possible de créer une balise image html qui pointe vers un site extérieur du type :

<img src="https://www.peppercarrot.com/extras/html/2016_cat-generator/avatar.php?seed=valvin" alt="c'est mon avatar" />

En revanche, récupérer cette image pour l’utiliser dans son code JavaScript, c’est possible mais dans certaines conditions uniquement. Typiquement, si j’utilise jquery et que je fais :

$.get("https://www.peppercarrot.com/extras/html/2016_cat-generator/avatar.php?seed=Linux", function(data){
    $("#myImg").src = data;
});

On obtient :

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://www.peppercarrot.com/extras/html/2016_cat-generator/avatar.php?seed=Linux. (Reason: CORS header 'Access-Control-Allow-Origin' missing).

En revanche, si on utilise une image hébergée sur un serveur qui autorise les requêtes Cross-Origin, il n’y a pas de souci :

$.get("https://i.imgur.com/J2HZir3.jpg", function(data){
    $("#myImg").src = data;
});

Tout cela en raison de ce petit en-tête HTTP que l’on obtient du serveur distant :

Access-Control-Allow-Origin *

où `*` signifie tout le monde, mais il est possible de ne l’autoriser que pour certains domaines.
Avec les canvas, ça se passait bien jusqu’à la génération du fichier PNG car on arrivait au moment où l’on devait récupérer la donnée pour l’intégrer avec le reste de la réalisation. J’avais activé un petit paramètre dans la librairie JavaScript sur l’objet Image

image.crossOrigin = "Anonymous";

mais avec ce paramètre, seules les images dont le serveur autorisait le Cross-Origin s’affichaient dans le canvas et la génération du PNG fonctionnait. Mais c’était trop limitatif.

Bref, bien compliqué pour par grand-chose !

J’ai proposé de mettre en place un proxy CORS, un relais qui rajoute simplement les fameux en-têtes mais ça faisait un peu usine à gaz pour ce projet. Heureusement, framasky a eu une idée toute simple de téléchargement d’image qui a permis de proposer une alternative.
Tout cela a fini par aboutir, après plusieurs tentatives à ce Merge Request : https://framagit.org/framasoft/geektionnerd-generator/merge_requests/6

Et après tous ces efforts quelles sont les fonctionnalités que tu nous as apportées sur un plateau ?

Chaud devant !! Chaud !!!

  • Tout d’abord, j’ai ajouté le petit zoom sur les vignettes qui était trop petites à mon goût

  • Ensuite, j’ai agrandi la taille de la zone de dessin en fonction de la taille de l’écran. Mais tout en laissant la possibilité de choisir la dimension de la zone car dans certains cas, on ne souhaite qu’une petite vignette carrée et cela évite de ré-éditer l’image dans un second outil.

  • Et pour terminer, la possibilité d’ajouter un image depuis son ordinateur. Cela permet de compléter facilement la bibliothèque déjà bien remplie 🙂

Merci ! D’autres développements envisagés, d’autres projets, d’autres cartoons dans tes cartons ?

D’autres développements pour Geektionnerd ? Euh oui, j’ai plein d’idées … mais est ce que j’aurai le temps ?
– intégration Lutim pour faciliter le partage des réalisations
– recherche dans la librairie de toons à partir de tags (nécessite un référencement de méta-data par image)
– séparation des toons des bulles et dialogues : l’idée serait de revoir la partie gauche de l’application et trouver facilement les différents types d’images. Notamment en découpant par type d’image : bulles / personnages / autres.
– ajout de rectangles SVG pour faire des cases de BD
– amélioration de la saisie de texte (multi-ligne) et sélection de la fonte pour le texte
– …
Je vais peut-être arrêter là 🙂

Sinon dans les cartons, j’aimerais poursuivre mon projet Privamics dont l’objectif est de réaliser des mini-BD sur le sujet de la vie privée de façon humoristique. Mais j’ai vu avec le premier épisode que ce n’était pas une chose si facile. Du coup, je privilégie mon apprentissage du dessin 🙂

Bien entendu, Pepper & Carrot reste le projet auquel je souhaite consacrer le plus de temps car je trouve que le travail que fait David est tout simplement fantastique !

Le mot de la fin est pour toi…
Un grand merci à toi Framasoft, tu m’as déjà beaucoup apporté et ton projet me tient particulièrement à cœur.

Vive le Libre !!! 🙂