Intros, a Nextcloud app to help you get to grips with Framaspace
The Framaspace project currently hosts a cloud environment (files, calendars, contacts, wiki, kanban, etc.) for more than 1,200 associations and groups. That’s as many instances of the Nextcloud free software. Unfortunately, it’s not always easy to get to grips with Nextcloud, despite the documentation, forums and so on. So Framasoft decided to get an intern, Val, to work on the subject of supporting people using Nextcloud for the first time. Here’s his story.
Hi! I’m Val, and I’m 22. I was raised in Paris’ suburbs, and I have been studying at INSA Lyon, an engineering school in Villeurbanne for 4 years now. I am parisian, lyonnais, suburbanite, or even Swedish, depending on the mood.
If everything goes as expected, I’ll graduate next year as an Telecommunication Engineer.
I like singing and playing music, climbing plastic walls, solving Rubik’s cubes and playing video games, when I’m not busy tweaking some lines of code. Over the last few years, I have also been active in multiple associations, including some at INSA or the Red Cross.
You chose Framasoft for your internship. Why?
I had to search for an internship while being in Sweden, and it wasn’t really easy. Searching from another country didn’t help of course, and I also wanted an internship matching my personal values. Basically, being cheap labour to help big business get richer isn’t really my thing.
The year before, I participated in organising an event with the Exit Lyon association, at which a Framasoft employee gave a conference on queer emancipation through digital technology. Being engaged in associations, I already knew Framasoft from their web services, as many do. I still had her email, so I sent an application, and there I am!
It was kind of an ideal case: an internship in a non-profit, breaking with capitalism, and contributing to build more social justice in our society.
Let’s talk about your internship. What was the general objective?
Framasoft’s collaborative cloud platform for associations and activist groups, Framaspace, has been active for 2 years now, and is based on Nextcloud. Even though it is a good solution, this open source software is far from perfect, and in particular is more difficult to use than other existing solutions (closed-source and maintained by GAFAMs, such as Google Drive or Microsoft 365).
Please note that Framaspace is a service reserved for French-speaking audiences. The Framasoft association, which provides this product free of charge only to associations and militant collectives, relies solely on donations. Consequently, it is our association that bears the technical support and financial costs of hosting and we cannot afford to host a worldwide audience.
My internship tries to solve part of this problem: how to make sure that first time someone logs into Nextcloud they don’t run away. My aim is to make the first use of Nextcloud easier, by supporting users and helping them using the software. It would encourage people to stay on a free solution that respects their privacy, and not run towards GAFAM solutions, considered easier to use.
Luckily, Nextcloud allows the community to create apps that integrate with the software to enhance it. Hence my first contribution to this mission is a Nextcloud app, « Intros ».
OK, so let’s talk about the Intros App. What’s it for? Who is the target audience?
Intros answers an user’s most simple question when meeting Nextcloud: « Where is the button to [insert a random action]? ».
To answer it, Intros highlight elements, buttons or even parts of Nextcloud’s interface to explain what they do. For example, the app will highlight the small sharing icon and display a text explaining how to share a file to someone else. This applies to several Nextcloud apps, including files, contacts or calendar.
Video demonstration of how the ‘Intros’ app works
Technically, how does it work?
The app uses the intro.js library, which helps creating step-by-step tutorials that highlight a web page’s elements. The library simply integrates to Nextcloud as any other javascript library would, and we can customise tutorials for the users.
That’s it? No! The library handles most of the visual aspects for us, but it had to be adapted to integrate to Nextcloud properly. For example, remembering when a tutorial has already been seen to not display it again, and making a menu to re-enable it if needed. Or even handling multiple languages, displaying buttons in Nextcloud’s style, highlighting elements nested in menus… Lots of small enhancements that allow a smooth integration of the library to Nextcloud.
Have you encountered any technical or organisational problems?
Of course, otherwise where would the fun be? As always when I’m coding something, sometimes it works and I think, « wow, I’m a genius », and sometimes (often) it doesn’t work and I think, « wow, I’m an intern ».
For example, during development I realised that the application sometimes had trouble finding some elements on the page. One of the problems with intro.js is that the library is designed to be deployed on a site that has been designed by the person who writes the tutorials. This person would have a good knowledge of the site’s structure, and would know which elements need to be selected for it to work every time… Except this person isn’t me. I’m integrating it into Nextcloud, which I obviously didn’t design, so I have to adapt to the structure of the existing pages. As if that wasn’t simple enough, the way the pages are built changes depending on the application (Files, Calendar, Contacts…) or even the version of Nextcloud. So I had to reverse-engineer the HTML DOM on a case-by-case basis, to find out which elements it was possible to select and avoid selecting elements that could change name, class or even completely disappear.
But even being careful, it sometimes didn’t work. The application couldn’t find certain elements, and displayed an explanation over empty space. Not ideal. In intro.js, by default, you give a list of elements to highlight and the explanations that go with them, and the library takes care of detecting them in the DOM when the page loads. This was the critical point in this case: when the page loads. The elements are all loaded at once, so they can’t change along the way. I had problems with this specifically in two cases:
first, elements nested in menus. We sometimes want to highlight an element that isn’t visible on page load, and would be after a user click
then, elements that aren’t loaded immediately on page load. Some Nextcloud apps take a bit more time to load their elements, so the library can’t detect them on load.
So what? Well, press the keys on the keyboard, in the right order if possible, and after a while it makes code that solves the problem. Here, instead of detecting all the elements at once, I’ve made sure to detect them just before they’re needed. Each time the user presses ‘next’, the application detects the next element to be highlighted and replaces the default element with this element before launching the next step. This way, we don’t have to worry about page load times or the fact that the button is in a menu. All that’s left to do is simulate a user click with javascript for buttons in menus and tada! It works.
Now that the app has been published, what’s next?
What’s next? It’s not really about me anymore! I hope the app will be used by Nextcloud’s users, and it’s already in use in Framaspace.
We have also discussed with Nextcloud for a possible integration of the app to the software core (and not as a third-party app). That would make it easier to add new tutorial to the apps for developers, but Nextcloud had some remarks regarding this. One of them was that the app explains the interface, while they could simply improve it so it wouldn’t need an explanation.
And of course, the app can still be perfected (I’m only a humble intern, after all) to make it more efficient, easier to maintain,… It’s also very important since we want it to be maintained over the (frequent!) Nextcloud updates.
A little birdie tells me that you’re working on another Nextcloud application, can you tell us more about that?
A new app is indeed on the road (#WIP). The OwnershipTransfer app will allow admins to transfer the ownership of files (or even other types of data?) from one user to another. This would be especially useful for when someone is leaving an association that uses Nextcloud, and forgot to transfer their important files to someone else! It will prevent them from losing a very important budget file, forever. However, it still doesn’t make coffee… sorry.
We’ve come to the end of this interview. Would you like to share a feeling about the work you’ve done during this internship?
OwnerShipTransfer : Transférer des données/fichiers d’un utilisateur à l’autre
Sélection de fichier dans l’app « OwnershipTransfer » (travail en cours)
I’m really satisfied with what I accomplished. Over and above the fact that I designed and developed a Nextcloud application for the first time from A to Z, I’ve learnt a lot of new skills. Whether it’s PHP, a language I’d only just got to grips with before my internship, or software development in general, managing releases, issues and merge requests, and so on. I’m very happy to be able to have learnt a lot during this internship.
By the way, huge thanks to Framasoft’s employee team who’s always been eager to help me and answer my questions when needed!
Last question, a recurring one in our interviews: what question would you like to have been asked, and what would your answer be?
« Tell me, what do you think of Nextcloud’s documentation? »
It’s time to rant (after all, I’m French!). It’s… lightweight, to say the least. But you can see it from a good perspective: I guess browsing the source code to understand how the APIs work is a great learning experience!
Intros, une app Nextcloud pour faciliter la prise en main de Framaspace
Le projet Framaspace propose, à ce jour, un espace cloud (fichiers, agendas, contacts, wiki, kanban, etc) à plus de 1 200 associations et collectifs. C’est autant d’instances du logiciel libre Nextcloud. Malheureusement, ce dernier n’est pas toujours très facile à prendre en main, malgré les documentations, les forums, etc. Framasoft a donc décidé de faire plancher un stagiaire, Val, sur le sujet de l’accompagnement des personnes utilisant Nextcloud pour la première fois. Voici son histoire.
Salut ! Je m’appelle Val, j’ai 22 ans. J’ai grandi en banlieue parisienne, et depuis 4 ans maintenant je fais mes études à l’INSA Lyon, école d’ingénieur qui se trouve à… Villeurbanne (c’est comme Lyon, mais avec les endroits jolis en moins). Je suis Parisien, Lyonnais, banlieusard, parfois même Suédois, selon l’humeur.
Si tout se passe bien, je serai diplômé l’an prochain comme Ingénieur en Télécommunications.
J’aime chanter et faire de la musique, aller grimper des murs en plastique, résoudre des Rubik’s cube et jouer aux jeux vidéos, quand je suis pas occupé à bidouiller du code. Ces dernières années, j’ai aussi participé à plusieurs projets associatifs, notamment dans des associations de l’INSA, ou encore avec la Croix-Rouge.
Concernant ton stage, tu as choisi Framasoft. Pourquoi ?
J’étais en Suède au moment de chercher un stage, et c’était un peu galère. Chercher à distance c’est forcément plus compliqué, surtout que je voulais si possible faire un stage qui corresponde à mes valeurs. Si vous vous posez la question, en gros, être de la main d’œuvre pas chère pour renflouer le capital de grandes entreprises c’est pas trop mon truc.
L’année précédente, j’avais participé à organiser un évènement avec l’association Exit Lyon, dans lequel une salariée de Framasoft était venue faire une conférence sur l’émancipation queer par le numérique. Étant engagé dans le milieu associatif, je connaissais déjà un peu Framasoft, je pense comme beaucoup à travers les services numériques que l’asso propose. J’avais encore son mail, donc j’ai envoyé une candidature, et voilà où j’en suis quelques mois plus tard.
C’est un peu le cas idéal pour moi : un stage dans une organisation à but non-lucratif, en rupture avec le capitalisme, et qui contribue à construire plus de justice sociale dans notre société.
Venons-en au sujet de ton stage. Quel était l’objectif général ?
Depuis 2 ans Framasoft propose Framaspace, une solution de collaboration et de stockage de fichier en ligne à destination d’associations et de collectifs militants, basée sur le logiciel libre Nextcloud. Bien qu’il réponde à la problématique posée, celui-ci est loin d’être parfait, et est notamment plus difficile d’utilisation que d’autres solutions existantes (non-libres et administrées par des GAFAM, par exemple Google Drive ou Microsoft 365).
Mon sujet de stage vient s’inscrire dans cette problématique : comment faire pour que la première fois qu’une personne se connecte à Nextcloud elle ne fuit pas en courant. Mon but est de faciliter la première utilisation de Nextcloud, en accompagnant les utilisateurices et en les aidant à s’approprier le logiciel. Si tout se passe bien, cela encourage les gens à rester sur cette solution libre et respectueuse de leur vie privée, à défaut de les voir courir vers des solutions jugées plus simples d’utilisation chez les GAFAM.
Fort heureusement, Nextcloud permet à la communauté de créer des applications qui s’intègrent au logiciel pour venir l’améliorer. La première incarnation de cette mission prend donc la forme d’une Application Nextcloud, « Intros ».
OK, donc, parlons de l’App Intros. À quoi sert-elle ? Quel est le public visé ?
Intros répond à la question la plus simple qu’une personne a en arrivant sur Nextcloud : « Il est où le bouton pour [insérer une action quelconque] ? ».
Pour y répondre, Intros met en lumière des éléments, des boutons ou même des parties de l’interface de Nextcloud et explique à quoi elles servent. Par exemple, l’application va surligner la petite icône de partage d’un fichier et afficher un texte qui explique comment partager un fichier à une autre personne. C’est valable pour plusieurs des applications de Nextcloud, des fichiers aux contacts, en passant par le calendrier.
Techniquement, comment ça marche ?
L’application est basée sur la bibliothèque intro.js, qui permet justement de réaliser des tutoriels pas à pas en surlignant les éléments d’une page web. La bibliothèque s’intègre simplement à Nextcloud comme une bibliothèque javascript classique, et on peut personnaliser des visites pour les utilisateurices.
C’est tout ? Non ! La bibliothèque gère certes la plupart des aspects de l’affichage pour nous, mais il a fallu l’adapter pour qu’elle s’intègre à Nextcloud. Par exemple, gérer quand la visite d’une application a déjà été suivie, pour ne pas la proposer une nouvelle fois à l’utilisateurice, et faire un menu pour réactiver les visites en cas de besoin. Ou encore gérer différentes langues, afficher des boutons cohérents avec le reste de Nextcloud, surligner des éléments dans des menus… Bref, de nombreuses petites améliorations qui permettent à la bibliothèque de bien s’intégrer à Nextcloud, sans que les utilisateurices ne se doutent de rien.
Tu as rencontré des soucis, qu’ils soient techniques, organisationnels, etc ?
Bien sûr, sinon c’est moins marrant. Comme toujours quand je développe quelque chose, parfois ça fonctionne et je me dis que, quand même, je suis vraiment génial, et parfois (souvent) ça fonctionne pas et je me dis que, quand même, je suis stagiaire.
Par exemple, au cours du développement je me suis rendu compte que l’application avait parfois du mal à trouver certains éléments de la page. L’un des soucis d’intro.js, c’est que la bibliothèque est prévue pour être déployée sur un site qui a été conçu par la personne qui écrit les visites guidées. Cette personne aurait donc une bonne connaissance de la structure du site, et saurait quels éléments doivent être sélectionnés pour que ça fonctionne à tous les coups… Sauf que cette personne, c’est pas moi. Je l’intègre à Nextcloud, que je n’ai évidemment pas conçu, et je dois donc m’adapter à la structure des pages existantes. Comme si c’était pas assez simple, la façon dont les pages sont construites change en fonction de l’application (Fichiers, Agenda, Contacts…) ou même de la version de Nextcloud. Bref, il a fallu rétro-ingénierer le DOM HTML au cas par cas, pour trouver quels éléments il était possible de sélectionner et éviter de sélectionner des éléments qui peuvent changer de nom, de classe, ou même disparaître totalement.
Mais même en faisant attention, parfois ça ne passait pas. L’application n’arrivait pas à trouver certains éléments, et affichait une explication sur du vide. Pas idéal. Dans intro.js, par défaut, on donne une liste d’éléments à surligner et les explications qui vont avec, et la bibliothèque se charge de les détecter dans le DOM au chargement de la page. C’est ce point qui était bloquant dans ce cas : au chargement de la page. Les éléments sont tous chargés d’un coup, et ne peuvent donc pas changer en cours de route. Ça m’a posé problème spécifiquement dans deux cas :
d’abord, les éléments dans des menus. Parfois on veut mettre en évidence un élément qui n’est pas visible par défaut, et qui le deviendrait après un clic de l’utilisateurice sur un bouton ;
ensuite, les éléments qui ne sont pas chargés immédiatement au chargement de la page. Certaines applications de Nextcloud mettent un peu plus de temps à charger leurs éléments, et la bibliothèque ne peut donc pas les détecter dès le chargement.
Alors comment on fait ? Ben on appuie sur les touches du clavier, dans le bon ordre si possible, et au bout d’un moment ça fait du code qui règle le problème. Ici, au lieu de détecter tous les éléments d’un coup, j’ai fait en sorte de les détecter juste avant qu’on ait besoin d’eux. A chaque fois que l’utilisateurice appuie sur « suivant », l’application détecte l’élément suivant qui doit être surligné et remplace l’élément par défaut par cet élément avant de lancer l’étape suivante. Comme ça, on n’a pas à se soucier du temps de chargement de la page, ou du fait que le bouton soit dans un menu. Reste plus qu’à simuler un clic utilisateur avec javascript pour les boutons dans les menus et paf! ça fait des chocap… bref ça fonctionne.
Maintenant que l’app est publiée, quelle est la suite des événements ?
La suite, j’allais dire que ça ne dépend presque plus de moi ! J’espère que l’application sera utilisée par les utilisateurices de Nextcloud, elle est en tout cas déjà utilisée au sein de Framaspace.
Par ailleurs, on a discuté avec Nextcloud d’une possible intégration de l’application au cœur du logiciel (non plus en tant qu’application tierce, mais directement dans Nextcloud). Cela faciliterait l’ajout de nouveaux tutoriels pour les applications tierces, mais Nextcloud émet des réserves quant à la pertinence de son intégration. Une des remarques faites est que l’appli vient expliquer l’interface, alors qu’on peut directement adapter l’interface pour la rendre plus facile d’utilisation (elle se passerait alors d’explications).
Et puis l’application peut encore être améliorée (après tout je ne suis qu’un modeste stagiaire) pour la rendre plus performante, plus facile à maintenir, etc. C’est également important puisqu’on souhaite qu’elle soit maintenue au fur et à mesure des mises à jour (fréquentes !) de Nextcloud.
Mon petit doigt me dit que tu travailles sur une autre application Nextcloud, tu peux nous en dire plus ?
Ton petit doigt m’a l’air très bien renseigné 😉
Une nouvelle application est effectivement en cours de construction (#WIP). L’application OwnershipTransfer de son petit nom permettra à l’admin d’un Nextcloud de transférer la propriété des fichiers (ou même d’autres types de données) d’un-e utilisateurice vers un-e autre. Bien pratique par exemple quand une personne quitte une association qui utilisait Nextcloud sans penser à transférer ses fichiers importants à un-e autre membre : cela évite de perdre à tout jamais le budget prévisionnel de l’asso. Par contre, ça fait toujours pas le café… désolé.
OwnerShipTransfer : Transférer des données/fichiers d’un utilisateur à l’autre
Sélection de fichier dans l’app « OwnershipTransfer » (travail en cours)
On arrive à la fin de cette interview. Souhaites-tu nous partager un sentiment sur le travail effectué pendant ce stage ?
Je suis pleinement satisfait du travail que j’ai effectué. Au delà du fait d’avoir conçu et développé une application Nextcloud pour la première fois de A à Z, c’est surtout d’en tirer énormément de nouvelles compétences et apprentissages. Que ça soit en PHP, langage que je n’avais que peu apprivoisé avant mon stage, en développement logiciel de manière générale, gérer des releases, des issues et des merge request… Je suis très heureux de pouvoir sortir de ce stage en ayant beaucoup appris.
J’en profite pour remercier l’équipe salariée de Framasoft, qui a toujours su m’aider et répondre à mes questions quand j’en avais besoin !
Dernière question, récurrente dans nos interviews : quelle est la question que tu aurais aimé qu’on te pose, et quelle serait ta réponse ?
« Mais dis moi Val, tu la trouves comment la documentation de Nextcloud ? »
C’est un peu mon instant râleur (après tout je suis Français). Elle est… peu fournie, pour profiter d’une occasion d’utiliser une figure de style que j’aime beaucoup. Ça présente ses avantages d’un côté, si on veut y voir du positif : aller fouiller dans le code source pour comprendre comment utiliser les API c’est très formateur !
Merci beaucoup, Val !
Pour information, si vous êtes étudiant⋅e, que vous aimez Nextcloud, et que ce genre de sujet de stage vous intéresse (de préférence à Lyon pour faciliter l’encadrement, mais télétravail possible), n’hésitez pas à nous envoyer rapidement une candidature spontanée sur stages @ framasoft.org !
Candidater et proposer votre CV à Framasoft : envoyez un mail à stages @ framasoft.org
Dégooglisons Internet fête ses 10 ans : mises à jour et nouveaux services
Pétitions, Tableau blanc, Tricount-like, etc… De nouveaux services Framasoft sont en préparation, et des services existants sont en rénovation. On vous dit tout, et notamment pourquoi nous avons besoin de vous.
Cet article étant particulièrement long, on vous en propose ici un court résumé.
Il y a dix ans, nous annoncions notre campagne Dégooglisons Internet, qui fut un succès relativement retentissant : en couplant le plaidoyer (c’est à dire le fait de dénoncer la « triple domination » des GAFAM et leur toxicité) avec la mise en place de solutions concrètes, cette campagne de Framasoft a marqué les esprits, et nous pensons même en toute humilité qu’elle a été parfois un socle pour apporter une réponse structurée à l’envahissement des Big Tech dans nos vies.
Dans la foulée (en 2016), nous impulsions le collectif CHATONS, qui compte aujourd’hui plus de 80 structures.
Puis, quelques années plus tard, nous fermions une partie des services Dégooglisons. Les raisons étaient nombreuses (au moins 10 !) mais il y avait l’envie d’arrêter la course à l’échalote de la sortie de services, puisque nous en avions publié quasiment un par mois pendant trois ans. Notre épuisement (surtout post COVID) était alors à la hauteur de la pression du public.
Des CHATONS autonomisés pour des GAFAM atomisés ?
En parallèle le collectif CHATONS continuait sa montée en puissance. Coordonné par Framasoft, qui finançait son animation, nous estimons que fin 2023, l’association Framasoft a investi environ 100 000€ (essentiellement en temps de travail salarié) dans la mise en place de ce collectif.
Alors, certes, comme tout projet collectif, celui-ci comporte des faiblesses et des failles. Mais cette association de fait est réellement un succès à de nombreux points de vue :
la marque « CHATONS » est connue et reconnue par de très nombreux utilisateur⋅ices, qui peinaient à retenir les identités de nombreuses structures locales ;
le fait d’avoir un projet structurant a encouragé de nombreuses personnes à créer leur propre organisation. Ces personnes se sont senties légitimes à créer ou rejoindre des associations locales. Avoir réussi à faciliter ce « faire ensemble » est une véritable fierté pour nous ;
Le collectif est maintenant autonome et auto-géré depuis plusieurs mois, Framasoft étant depuis redevenu un « simple membre ».
Ne pas regarder le train du numérique passer
Cependant, en 10 ans, le numérique a bien évolué, et les GAFAM, les NATU, et autres BATX ne sont pas gentiment restées à attendre de se faire démanteler par des CHATONS ou la commission européenne.
Le cloud s’est généralisé, l’usage du mobile s’est imposé que ce soit pour payer son parcmètre ou ses impôts, l’intelligence artificielle participe certes d’une certaine hype, mais elle bouscule et percute aujourd’hui déjà de nombreux usages (et ce n’est qu’un début).
Dépenses des utilisateur⋅ices dans le cloud public entre 2017 et 2024
Estimation de dépenses liées à l’IA par secteur d’activité
Bref, le numérique est toujours plus présent, et pour le dire clairement, nous, militant⋅es du libre, des communs culturels et d’un numérique émancipateur n’avons gagné quasiment aucune bataille dans la lutte contre un adversaire gigantesque et tentaculaire. Cependant, le simple fait de critiquer, de se réunir, de manifester, de s’opposer, de proposer… est déjà une victoire en soi !
Il convient donc, aujourd’hui de « mettre à jour notre logiciel ». L’expression peut évidemment être entendue dans les deux sens. Mettre à jour notre façon d’agir, mettre à jour l’objet de nos luttes, relever la tête du guidon numérique libriste pour regarder comment le TGV du numérique capitaliste a évolué cette dernière décennie.
Cela s’est traduit par des prises de conscience pour Framasoft ces dernières années :
le libre est un moyen nécessaire (mais non suffisant) pour aller vers une société libre, mais il n’est pas une fin en soi. Savoir que du logiciel libre équipe des drones larguant des bombes en Palestine ou en Ukraine ne nous réjouit pas (litote) ;
la centralisation est une source de puissance pour les BigTech, la décentralisation est donc l’équivalent d’un caillou dans leur chaussure. Et dans ce cadre, la fédération (par exemple via ActivityPub) est une réponse pertinente, a minima pour explorer les interstices dans lesquels ces entreprises n’arrivent pas encore à se glisser ;
il y a une forme de « paradoxe de la tolérance » dans le libre : d’un côté une espèce de « pureté militante » à vouloir du 100% libre sans reconnaître que le libre est un chemin sur lequel chaque individu ou communauté se situe à une étape qui lui est propre ; et à l’inverse, une réelle difficulté du monde libre à reconnaître que l’autorisation explicite de réutiliser le travail produit par les communautés profite aussi largement aux géants du numériques qui, eux, n’ont ensuite aucun scrupule à mettre des bâtons dans les roues des projets de ces mêmes communautés ;
nous comprenons et adhérons à l’adage « Tout seul on va plus vite, ensemble on va plus loin. ». Nous croyons fortement dans l’intérêt des processus collectifs. Mais… en vingt ans d’existence, force nous a été de constater que « Ensemble, on va moins vite. » (sauf à être très bien organisé, ce qui n’est que rarement le cas des communautés libristes). Il y a souvent une énergie folle dépensée dans la structuration de nos luttes, souvent due à un impensé : l’animation/coordination est un métier, qui réclame des compétences souvent ignorées ou peu valorisées. Or comme on l’a vu, le numérique « avance » vite. ChatGPT 4 est sorti depuis ~18 mois, et quelle a été, à quelques exceptions près, la réaction du monde libriste ? Un silence plutôt assourdissant au mieux, des moqueries en mode « ça ne marchera jamais » au pire.
Ce sont ces raisons qui nous ont poussé⋅es ces dernières années à développer avec nos petits bras associatifs un logiciel comme PeerTube, ou à proposer des projets comme Emancip’Asso ou Framaspace, qui nous permettent de mettre nos compétences aux services de communautés la plupart du temps non-libristes, mais qui partagent nos valeurs.
Ainsi, dans le contexte social et politique actuel, il nous paraît essentiel de renforcer notre offre de services en ligne à dispositions des collectifs et militant⋅es.
Mais « mettre à jour notre logiciel » peut aussi être entendu d’un point de vue beaucoup plus littéral : il s’agit en effet de mettre à jour les logiciels qui motorisent notre campagne « Dégooglisons Internet », voire d’en proposer de nouveaux au public.
Framasoft ouvre et va rouvrir de nouveaux services
« Hein ? Quoi ? Mais vous n’aviez pas dit que vous vouliez « déframasoftiser internet » ? »
Mais 4 à 5 ans ont passé depuis. Et il faut bien se rendre à l’évidence, la situation est moins propice au libre aujourd’hui qu’à l’époque. Pour les raisons évoquées ci-dessus, et bien d’autres encore.
L’année précédente, c’était l’ouverture de Framaspace, espace cloud destiné aux petites associations et collectifs militants. Nous hébergeons à ce jour plus de 1 130 Framaspaces, soit autant d’instances du logiciel Nextcloud, le tout gratuitement.
Cette année encore, Framasoft souhaite proposer de nouveaux services. Toujours gratuitement (enfin, pas tout à fait, puisque ce sont vos dons qui financent), toujours respectueux de votre vie privée, toujours sur la base de logiciels libres, toujours sans aucune exploitation commerciale de vos données. Car les usages numériques évoluent, et nous devons évoluer avec eux. Ou plutôt nous devons évoluer avec vous, car ce sont avant tout le cheminement de vos pratiques qui guide nos actions.
En conséquence, cette seconde campagne « Dorlotons Dégooglisons » nous permet de faire le point sur ce que nous avons fait depuis un an, mais aussi ce sur quoi nous travaillons en ce moment, ainsi que ce que nous envisageons pour les mois à venir.
Passez à l’action ! Framasoft souhaite ouvrir de nouveaux services libres, éthiques, décentralisés et solidaires. Pour cela, nous nous sommes fixés un objectif de collecte de 60 000€ pour nous permettre de financer les machines, mais surtout le temps de travail pour leur mise en place. Si vous le pouvez : soutenez-nous !
Nous avons publié le service Framagroupes. Pour information, aujourd’hui, ce service expédie plus de 50 000 mails par jour (!) et accueille déjà 7 900 listes de discussions, ce qui, avec les 59 000 listes de Framalistes, fait probablement de Framasoft l’organisation à but non lucratif hébergeant le plus gros serveurs de listes au… monde (si on compare par exemple à RiseUp (15,225 listes 389,871 utilisateur⋅ices) ou Renater/Universalistes (1 600 listes).
À cause d’utilisations (très) malveillantes de Framatalk, nous avons développé un logiciel (libre, bien entendu) qui permet d’imposer l’authentification des personnes qui souhaitent ouvrir un salon de visioconférence. Si on peut entendre que cela représente une contrainte pour vous, au vu des usages (on le répète, très) malveillants qui étaient faits de ce service, nous n’avions tout simplement pas le choix.
Nous avons migré plus de 1 000 instances Framaspace en version 28. Nous avons fait développer un logiciel de supervision spécifique, Argos Panoptès, pour gérer autant d’instances.
Notre infrastructure email, malgré plus de 8 millions de mails envoyés par mois (oui oui, 271 000 mails en moyenne par jour !) continue d’être régulièrement boudée par certains acteurs (oui, c’est vous qu’on regarde Orange, La Poste et SFR !). À tel point qu’après une lutte de plusieurs mois qui nous aura demandé autant d’énergie que de paracétamol, nous avons dû nous résoudre, à contrecœur, à utiliser les services d’un prestataire externe, pour les envois de nos newsletters (431 129 abonné⋅es en double opt-in).
Du côté de Framaforms, nous avons amélioré la gestion du spam, cette chienlit qui n’en finit pas de revenir dégrader un service pourtant parmi les plus utilisés de Framasoft.
Pour faciliter les recherches de vidéos sur l’ensemble du réseau PeerTube (notre alternative à YouTube), nous avons changé le logiciel qui motorise Sepiasearch, notre moteur de recherche du « vidiverse». Ce dernier utilise maintenant la brique logicielle Meilisearch, et non plus Elasticsearch, dont la licence a pris un chemin bien moins libre.
Framacarte a aussi fait l’objet d’une mise à jour majeure, qui fait suite au travail de la communauté uMap, avec laquelle nous restons très en lien.
Concernant MyPads, le plugin qui permet de gérer et d’organiser vos Framapad, les changements ont été subtils, mais nombreux. Ainsi, grâce au travail de Pierre, stagiaire à Framasoft pour (seulement) 6 semaines, de nombreuses petites améliorations ont été faites.
Parmi les améliorations d’ores et déjà disponibles :
ajout d’un logo pour revenir à l’accueil (oui, c’est bête, mais il n’y en avait pas et beaucoup d’utilisateur⋅ices peinaient à retourner sur la page d’accueil)
meilleure identification des dossiers restreints ou publics
les dossiers archivés sont maintenant repliés par défaut pour une meilleure lisibilité
les propriétés du dossiers sont maintenant repliées par défaut pour une meilleure lisibilité
la recherche, en page d’accueil, permet maintenant de rechercher sur les noms de pads (en plus des dossiers)
possibilité de trier les dossiers ou les pads par noms ou par dates de création
Quelques améliorations de MyPads apportées par Pierre, stagiaire Framasoft
Quelques améliorations de MyPads apportées par Pierre, stagiaire Framasoft
Enfin, Mobilizon, notre logiciel libre et fédéré alternatif aux groupes et pages Facebook, a été transmis à la communauté (aujourd’hui coordonnée par la communauté Kaihuri/Keskonfai). Nous annoncions en effet il y a quelques mois que nous estimions notre engagement initial concernant Mobilizon rempli. Nous souhaitions pouvoir rediriger une partie de notre capacité de développement logiciel vers les projets les plus prioritaires (contrairement à ce que beaucoup de personnes pensent, en dehors de PeerTube, nous ne disposons « que » d’un mi-temps de développeur salarié).
Passez à l’action ! Framasoft accueille plus de 2 millions de personnes par mois, et améliore et maintient de très nombreux services tout au long de l’année. Cela implique énormément de travail humain (développement, support, administration système, etc), ainsi qu’une infrastructure technique conséquente. Si vous le pouvez : soutenez-nous !
Il existe de nombreuses plateformes de pétitions, mais ces dernières ne sont que rarement basées sur du code libre. Par ailleurs, ces plateformes sont aussi largement soupçonnées d’utiliser vos données personnelles (nom, email, cause soutenue) à d’autres fins que d’ajouter votre signature à une pétition.
Framapétitions est donc un service en test (on répète : il n’est PAS finalisé) qui permet de créer ou signer des pétitions citoyennes. Le service peut d’ores et déjà être utilisé, mais reconnaissons-le, il mérite encore d’être amélioré. Ça tombe bien, nous allons travailler dessus dans les mois qui viennent.
Dans les coulisses
Un projet de plateforme de pétitions qui n’exploiterait pas vos données était donc dans nos cartons depuis plus de 10 ans. Mais… faute de temps et d’énergies, nous repoussions sans cesse le sujet. Une autre raison était plus politique : à quoi servent vraiment les pétitions ? Parfois uniquement à se donner bonne conscience en se disant « J’ai agi », nous dédouanant alors d’un passage à l’action plus directe. Cependant, vos demandes régulières à ce que nous avancions sur le sujet nous ont motivés à remettre ce projet au goût du jour.
Voilà plusieurs années que nous soutenons un projet libre nommé « Pytition« . Fonctionnel, mais nécessitant encore pas mal de travail sur les aspects visuels. Nous soutenir financièrement, c’est nous permettre d’allouer du temps de travail pour améliorer Pytition, en lien avec le développeur originel et permettre, à moyen terme, d’ouvrir une plateforme de pétitions réellement libre, ouverte, et avec une garantie de non-exploitation commerciale de vos données.
Framalab, pour expérimenter des logiciels avant qu’ils ne deviennent (potentiellement) des services
Mettre en place un logiciel utilisable en ligne est assez simple, surtout quand, comme nous, vous disposez d’un administrateur système très compétent. Cependant, entre installer un service en ligne et être capable d’y accueillir plusieurs centaines de milliers de personnes par mois, il y a tout un monde. Il faut tester les fonctionnalités du logiciel, évaluer sa maintenance, savoir jauger le temps et l’énergie qu’il nous prendra en support et en modération, créer une page d’accueil, parfois corriger quelques bugs gênants, constituer une Foire Aux Questions, communiquer dessus, etc.
Afin de faciliter ce processus, nous avons décidé de rendre public le site Framalab. Sur ce site vous trouverez quelques unes de nos applications en test.
Notez bien que les applications qui suivent sont en test. Elles peuvent disparaître à tout moment, ce qui signifie que vous pouvez perdre vos données du jour au lendemain. Par ailleurs, elles ne feront l’objet d’aucun support de notre équipe salariée : si vous avez des questions ou rencontrez des difficultés, vous pouvez les remonter sur notre forum, où l’entraide sera communautaire (comprendre : peut-être que quelqu’un vous répondra, peut-être pas).
Tricount est une application (non libre) de gestion des dépenses de groupes (familles, ami⋅es, colocataires, etc).
Elle compte plus de 5 millions d’utilisateur⋅ices dans le monde.
L’application fonctionnait auparavant très bien sur le web, qui s’affichait dans une version mobile tout à fait correcte. Mais depuis peu la version web n’est plus disponible, et vous êtes obligé⋅es de télécharger et installer une application web sur votre smartphone. Nos ami⋅es d’ Exodus Privacy détectent, sur cette application, pas moins de 12 pisteurs et 16 permissions. D’où l’idée de vous proposer des alternatives libres, garanties sans pisteurs.
I Hate Money
Un « petit » projet libre comme on les aime : il fait une chose, mais la fait bien, et sans fioriture. Par exemple pour un voyage entre ami⋅es, une première personne créée un projet (pas besoin de créer un compte : il suffit de choisir un nom, de définir un code d’accès, et de laisser un email). Les autres personnes pourront alors s’y connecter, et ajouter chacune leurs dépenses. Au final, un clic sur « remboursement » permettra de savoir très facilement « Qui doit combien à qui ? ». Simple, rapide, efficace, on vous dit !
Cette application, née en 2011, n’a peut-être pas le « look and feel » le plus moderne. Cependant, nous l’avons testé en conditions réelles, et… elle fonctionne très très bien et nous l’avons trouvée simple et efficace sur mobile. Elle a principalement été développée par Alexis Métaireau (oui, le même qui a développé pour nous Argos Panoptes, que nous évoquions plus haut dans la partie « Framaspace »).
Encore une fois, un petit projet très simple, mais avec un look résolument moderne : pas besoin de s’authentifier, quelqu’un créé un groupe, puis ensuite ajoute des participant·es, et enfin leur partage l’URL. Tout le monde peut rentrer des dépenses simplement, et l’application calcule ensuite automatiquement qui doit quoi à qui. Il est possible d’utiliser des modes de partage plus avancés : par nombre de portions ou encore par pourcentage. Seul hic, le projet est à l’heure actuelle uniquement anglophone, donc il vous faudra comprendre a minima la langue de Shakespeare pour pouvoir l’utiliser. Sans pour autant le garantir, si cela devait devenir un service Framasoft, peut-être que notre communauté pourrait aider à le rendre traductible puis à le traduire pour un public francophone !
Vous connaissez peut-être Cospend, l’application Nextcloud qui propose des fonctionnalités similaires. Nous avons choisi de ne pas expérimenter avec cette dernière, pour plusieurs raisons. La première, c’est qu’elle nécessite une instance de Nextcloud (bravo Sherlock !), et que cela signifierait de mettre en place une instance de Nextcloud uniquement dédiée à ce service. La deuxième, c’est qu’il faudrait également rajouter des modifications au logiciel, pour que les utilisateur·ices de l’instance ne puissent pas ajouter n’importe qui d’autre utilisant le service à un groupe de dépense. La troisième, c’est que la version Web mobile nous a semblé peu utilisable (avec des écrans qui se recouvrent les uns les autres), et bien qu’une application mobile Android MoneyBuster propose en théorie de se lier à un Cospend, en pratique il n’est plus possible de rejoindre un groupe de dépense Cospend avec cette dernière, et ce depuis quelques mois, sans visiblement de résolution apparente de ce bug critique). Alors on sait ce que c’est qu’être bénévole sur un logiciel libre, donc on ne jettera la pierre à personne, et au contraire on encouragera le développement, depuis les gradins. Mais en l’état actuel, cela nous semble plutôt une alternative dont l’évolution est à surveiller, ou viable à utiliser sur des instances Nextcloud (coucou les Framaspaces !), plutôt qu’un service que nous voudrions proposer à grande échelle. Affaire à suivre…
Draw.io permet de créer des diagrammes professionnels. Ce service est plutôt adapté si vous souhaitez réaliser un organigramme ou un diagramme UML.
Dans les coulisses
La version de Draw.io que nous proposons actuellement est une version offline dans le sens où elle ne permet que l’enregistrement local, et ne permet pas la modification collaborative.
Il faut donc considérer notre version de draw.io comme un logiciel « à l’ancienne » où vous allez créer votre diagramme (dans votre navigateur), puis l’enregistrer. Il est cependant possible de partager votre diagramme publiquement (en lecture seule) en utilisant la commande « Fichier → Publier → Lien ».
Nous avons tout de même ajouté la possibilité d’enregistrer vos données sur Framagit (il faudra vous y créer un compte).
Les fonctions collaboratives en temps réel imposent, elles, de passer par les serveurs de la société Jgraph qui édite le logiciel, elles ne sont donc pour le moment pas supportées.
Nous choisissons cependant de tester draw.io car nous le trouvons très intéressant de par ses fonctionnalités avancées. Peut-être le proposerons nous, à terme, comme plugin au sein de Framaspace.
Là où Draw.io permet d’organiser des diagrammes, voyez plutôt Excalidraw comme un outil de « tableau blanc » (qui permet, aussi, de réaliser des diagrammes simples).
Cette simplicité rend Excalidraw, selon nous, plus accessible au grand public.
Dans les coulisses
Contrairement à Draw.io, notre version d’Excalidraw permet de travailler de façon collaborative. Nous expérimentons cette fonctionnalité, mais nous pourrions la retirer si nous ne la trouvons pas suffisamment stable et sécurisée. Cependant, Excalidraw utilisant à ce jour la plateforme Firebase de Google pour enregistrer les images en ligne, nous avons pour l’instant désactivé la possibilité d’ajouter des images dans notre version d’Excalidraw.
Notez que nous avons aussi évalué le logiciel tldraw, qui nous a paru une initiative intéressante, mais sa licence n’est pas libre car interdisant les usages commerciaux (ce qui n’aurait pas été le cas de Framasoft, mais ne répond pas pour autant aux exigences d’une licence libre).
Ahhhh, les PDF ! Un format ouvert certes, pratique pour l’impression, mais clairement pas adapté à la modification. Si vous devez réorganiser des pages, en supprimer, en ajouter, les faire pivoter, ou les signer, c’est assez rapidement la croix et la bannière. Par ailleurs, il faut parfois pouvoir réduire leur poids avant de l’envoyer par email. Ça tombe bien, les deux outils que nous proposons sont là pour ça !
Signature PDF
Créé par la société coopérative « La 24eme », ce logiciel permet, au travers de quelques entrées simples, de manipuler vos PDF :
« Signer » : permet de signer, parapher, tamponner un pdf, mais aussi de partager le PDF signé, pour qu’il puisse être signé par d’autres personnes ;
« Organiser » : permet de tourner les pages d’un PDF (rotation), de déplacer des pages, d’en supprimer, d’en ajouter (depuis un autre PDF, par exemple pour faire un seul PDF à partir de plusieurs fichiers), etc.
« Métadonnées » : permet d’afficher les métadonnées d’un fichier PDF (par exemple la date de création ou le logiciel utilisé pour sa création), mais aussi d’éditer ces métadonnées ou d’en supprimer ;
« Compresser » : pour réduire la taille d’un PDF. Si le PDF original a déjà été compressé, cela n’aura aucun effet évidemment. Mais nos tests ont démontré qu’un PDF constitué de pages scannées de 38Mo au départ n’en faisait plus que 6 au final, ce qui est un gain conséquent.
Là, on sort la grosse artillerie. Stirling PDF propose pas moins de 71 outils différents !
Depuis des outils « simples » (fusion, rotation, etc) à ceux bien plus complexes (extraire les tableaux d’un PDF pour un faire un fichier .csv exploitable par un tableur, ajuster les couleurs, transformer une URL de page web en PDF, etc), en passant par des fonctions bien utiles (protéger par mot de passe, numéroter automatiquement les pages, etc.). Il existe même un outil « pipeline » qui permet d’enchaîner différentes actions (par exemple : rotation 90°, puis suppression des pages 1 et 14, puis ajout de numéros de pages, puis compression).
Framaforms est basé sur le logiciel Yakforms, logiciel qui arrive en fin de vie. Pour différentes raisons (cf. « coulisses »), nous avons dû faire le choix de lui trouver un successeur, qui permettra de continuer à fournir un service proche de celui que vous utilisez actuellement.
Après moult essais-recherches (et quelques déceptions), notre choix s’est arrêté sur Liberaforms, un logiciel libre de formulaires créé et développé par une petite équipe espagnole.
Le « périmètre fonctionnel », c’est à dire l’ensemble de ce que vous pouvez faire avec ce logiciel, est sensiblement le même que celui que propose Yakforms, en dehors de certaines fonctions avancées (gestion de conditions, ou emails de validation, par exemple). Nous vous proposons de le tester sur notre plateforme https://beta.framaforms.org pendant plusieurs mois. Au terme de cette phase de tests, pendant laquelle nous pensons (si vous nous en donnez les moyens) améliorer quelque peu l’interface, nous pourrons alors commencer une bascule entre Yakforms et Liberaforms qui, rassurez-vous, s’étalera elle aussi sur plusieurs mois (vous ne perdrez donc pas vos formulaires en cours).
L’histoire de Framaforms/Yakforms s’étale sur près de 10 ans et est racontée sur le Framablog. Yakforms est donc basé sur Drupal 7, publié en 2011, qui aura donc eu une durée de vie de 14 ans, ce qui en fait une longévité relativement exceptionnelle pour une application web. La « fin de vie » de Drupal 7, plusieurs fois repoussée, s’achève finalement le 5 janvier 2025. À compter de cette date, il n’y aura donc plus de mise à jour de sécurité : si une faille était découverte, elle ne serait plus couverte (annoncée, réparée, suivie, etc) par la communauté, et donc Yakforms serait touché par ricochet.
Notre première idée a donc été, évidemment, de migrer Yakforms vers Drupal 8, 9, ou même maintenant Drupal 10. Cependant, c’était plus facile à dire qu’à faire, car Yakforms est composé de nombreux modules compatibles avec Drupal 7 mais pas avec les versions suivantes. C’est notamment le cas du module « form_builder » qui n’a jamais été porté dans les versions suivantes.
Il y a eu différentes tentatives de migration de Yakforms, la dernière en date par le Centre d’Expressions Musicales, au Havre, qui utilise massivement Framaforms (et bien d’autres logiciels libres, d’ailleurs). Mais le sujet étant complexe, le projet n’a pas abouti.
Début 2024, nous nous sommes donc lancés à la recherche de logiciels libres de formulaires alternatifs. Bonne nouvelle : le paysage avait bien évolué depuis la sortie de Framaforms en 2016, et de nombreuses alternatives existent aujourd’hui. Voici quelques unes des solutions testées :
https://www.limesurvey.org/fr : la référence en matière de logiciel libre d’enquête. Cependant, « enquête » ≠ « formulaire » ! LimeSurvey est un logiciel idéal si vous voulez réaliser une enquête de plusieurs dizaines ou centaines de questions, avec des embranchements, etc. Mais notre objectif avec Framaforms est de proposer une alternative à Google Forms, à savoir un logiciel simple à prendre en main, qui permet de publier son premier formulaire en 5mn chrono. Ce qui est très, très loin d’être le cas de LimeSurvey ;
https://apps.nextcloud.com/apps/forms : une app pour Nextcloud (logiciel que l’on connaît bien à Framasoft) pour créer des formulaires. Ce choix est arrivé en second dans notre évaluation. D’autant que nos ami⋅es du chaton La Contre-Voie ont apporté un développement spécifique permettant un accès simplifié. Mais nous avons estimé que le code de Nextcloud Forms n’était pas encore suffisamment stable pour nos besoins, ni capable d’accueillir des dizaines de milliers de visiteurs quotidien ;
https://cryptpad.fr/form/ : issu de l’excellente suite bureautique chiffrée Cryptpad. L’interface n’est pas très jolie, mais plutôt fonctionnelle. Cependant, le côté 100% chiffré du logiciel était, paradoxalement, rédhibitoire pour nous : nous gérons plusieurs centaines de milliers de formulaires par an, et un chiffrement de bout en bout aurait largement limité notre capacité de support, et donc multiplié les personnes qui se seraient plaintes auprès de nous ;
https://formbricks.com/ : ce logiciel nous a semblé tout à fait correct. Par contre, il est pensé pour faire de « l’enquête pas à pas » et non des formulaires. Par ailleurs, il nous aurait fallu adapter de nombreuses fonctionnalités (souvent marquées comme « pro » ;
https://getinput.co : comme SurveyJS, il s’agit plus d’une alternative à Typeform qu’à GoogleForms, avec « une question = un écran ». Le travail de traduction aurait été conséquent, mais nous l’avons éliminé aussi parce que bien que le code soit libre, l’entreprise qui édite ce logiciel semble avoir une politique commerciale relativement agressive et n’aurait probablement pas bien accepté de voir Framasoft proposer son logiciel gratuitement, devenant un concurrent de poids qui aurait « récupéré » leur travail ;
https://ec.europa.eu/eusurvey/ : Développé par l’Union Européenne depuis 2016. Le rythme de développement est relativement lent. Ça aurait pu être un candidat intéressant, mais le code nous a semblé une véritable usine à gaz, puisque conçu pour gérer des formulaires au sein d’institutions publiques de grandes tailles, avec l’obligation de gérer plusieurs langues, etc ;
https://ohmyform.com/ : là encore, plutôt une alternative à Typeform qu’à Google Forms. Notez qu’en l’absence de plateforme pour tester ce logiciel, il vous faudra donc l’installer. Par ailleurs, le développement, bien que toujours en cours, semble relativement ralenti ;
https://tripetto.app/ a clairement le concepteur de formulaire le plus avancé. Malheureusement le logiciel est uniquement en anglais (et non facilement traduisible). Mais surtout, si le « builder » (l’interface de création de formulaire) est libre, d’autres parties essentielles du logiciel ne le sont pas, ce qui était évidemment rédhibitoire pour nous ;
Nous avons aussi évalué plusieurs outils « no-code » (comme NocoDB ou Baserow) qui sont aussi très pertinents pour créer des formulaires. Cependant, nous avons estimé que nous n’étions pas sur des outils simples à prendre en main alors que c’était un critère essentiel pour nous. Nous n’excluons pas de proposer ces outils à termes, mais cela nous paraissait prématuré pour le moment.
https://gitlab.com/liberaforms/liberaforms – ce n’est ni la plus belle, ni la plus moderne des alternatives testées. Cependant, elle fait correctement le travail, et semble bien pouvoir passer à l’échelle en gérant plusieurs dizaines ou centaines de milliers de formulaires. Par conséquent, nous avons contacté les développeurs de Liberaforms, qui semblaient enchantés que Framasoft propose leur logiciel à l’évaluation (merci à eux !).
Le logiciel n’était pas traduit en français, alors… nous l’avons fait ! Un grand merci à Framalang, spf et Booteille pour leur aide !
Dans les mois qui viennent, grâce à vos dons, nous nous appliquerons donc à finaliser la traduction, à améliorer l’interface (notre code sera bien évidemment reversé auprès de la communauté Liberaforms), et évaluerons vos retours pour déterminer si, oui ou non, Liberaforms remplacera à terme Yakforms comme moteur de Framaforms.
Framaspace, de l’accompagnement pour une plus grande autonomisation
Framaspace accueille plus de 1 100 associations et collectifs. Nous envisageons de doubler ce chiffre, au moins, d’ici la fin de l’année. Ce qui positionne Framasoft comme un des plus gros hébergeurs Nextcloud (le logiciel qui motorise Framaspace) de France, hors opérateurs type OVH.
Mais il nous reste un problème majeur auquel il faut répondre : comment accompagner les personnes qui découvrent Nextcloud ? En effet, comme nos enquêtes le démontraient, et comme nous l’indiquions dans notre conférence de lancement, Nextcloud reste relativement peu connu, et pas aussi simple à prendre en main qu’un Google Drive, par exemple. Il nous faut donc trouver des façons qui permettent à une personne qui n’a jamais utilisé le logiciel de s’y retrouver : qu’elle puisse importer ses fichiers ou calendriers, qu’elle sache comment partager publiquement un fichier, qu’elle comprenne comment utiliser le tableur ou le traitement de texte intégré, etc.
Nos actions en cours sont nombreuses sur le sujets : nous soutenons par exemple l’initiative d’ateliers Nextcloud (en juin 2024) organisé par L‘Établi Numérique et La Dérivation. Nous avons aussi un stagiaire, Val, qui travaille sur deux sujets : faciliter la migration depuis un espace cloud externe (Google Drive, Dropbox, ou même un autre Nextcloud) vers Framaspace ; proposer un tutoriel aux nouvelles et nouveaux arrivants sur Framaspace, en utilisant la bibliothèque IntroJS.
Vidéo de démonstration de l’application IntroJs, développée par Val, pour faciliter la prise en main de Framaspace.
Là encore, vos dons nous permettent de faire, et surtout de faire sans trop attendre.
Passez à l’action ! Pour pouvoir répondre à vos besoins et vos envies en termes de services libres émancipateurs, nous nous sommes fixés un objectif de collecte de 60 000€ qui nous permettront de mettre l’énergie nécessaire à la mise en place de ces services. Si vous le pouvez : soutenez-nous !
D’autres projets sont en cours, mais sont, eux, plus incertains.
Leur mise en place dépendra évidemment du succès de cette collecte (oui, on manque peut-être un peu de subtilité 😉), mais aussi des résultats des études de faisabilité technique qui sont en cours.
Nous pouvons cependant les évoquer ici, en insistant sur le fait qu’en parler maintenant n’est pas pour autant un engagement de mise en place de notre part.
Aktivisda : décliner des visuels rapidement
Un des besoins récurrents repérés parmi les associations que Framasoft côtoie est celui de pouvoir rapidement créer ou décliner des visuels. Par exemple, pour une chorale qui ferait 5 représentations en fin d’année, il s’agit surtout, sur la base d’un affiche commune, de changer les dates, les heures, et les lieux. C’est un besoin simple, qui doit prendre quelques minutes maximum, afin de consacrer l’essentiel du temps et de l’énergie à imprimer et diffuser les affiches.
C’est aussi le même besoin qui revient avec les réseaux sociaux, où le besoin est d’avoir un visuel commun identifiable (par exemple avec le logo de l’association), puis de pouvoir ajouter un texte dessus pour inviter à une action ou un événement.
Par ailleurs, mettre à disposition ce type d’outil permettant en quelques clics de partager un visuel (une affiche, par exemple), de l’imprimer, ou de créer un code QR personnalisé, nous semble utile dans le contexte social et politique actuel.
Ce sont justement à ces besoins que répond le logiciel Aktivisda.
Éditer un visuel dans Aktivisda (un message subliminal s’est glissé dans cette capture, saurez-vous le retrouver ?)
Pour l’instant, aucune version « diffusée par Framasoft » n’est disponible, mais nous travaillons avec le développeur originel, ainsi que la société qui l’emploie (Telescoop) afin de faciliter son déploiement pour de multiples organisations, ainsi que l’ajout de nouveaux visuels (il faut actuellement passer par Framagit, ce qui peut être fastidieux).
Nous espérons donc, d’ici la fin de l’année, revenir avec de bonnes nouvelles du côté de Aktivisda 🙂
C’est un peu par hasard, lors des JDLL 2023 que nous avons découvert Aktivisda. En décembre 2023, nous rencontrions alors son développeur, Marc-Antoine, avec qui nous avons discuté de ses projets pour Aktivida, mais aussi de nos envies et de nos besoins d’un logiciel plus simple à déployer. Les échanges se sont poursuivis ponctuellement, mais régulièrement, avec l’objectif de rendre le logiciel multi-tenant, c’est à dire facilement utilisable par de multiples individus ou organisations. Marc-Antoine et ses collègues sont actuellement en train d’explorer le sujet (de façon bénévole, précisons-le), et nous y verrons donc plus clair d’ici quelques semaines.
Framaspace : gestion des adhérent⋅es, de la comptabilité, nouvelles applications
Comme évoqué plus haut, l’année 2024 sera largement dédiée à améliorer la prise en main et l’accompagnement des utilisateur⋅ices qui découvrent Framaspace.
Cependant, cela ne signifie pas que nous n’allons pas avoir de missions plus techniques. Ainsi, nous comptons passer tous les espaces en version 29 (vous pouvez en lire une description en français chez nos ami⋅es d’Arawa. En parallèle, nous allons évaluer l’ajout de quelques applications, comme par exemple Tables qui permet de construire et partager une petite base de données, ou Impersonate pour permettre à l’admin d’un espace de dépanner un utilisateur. Suivant vos retours sur Excalidraw (évoqué plus haut), nous pourrons aussi le proposer comme application complémentaire.
Tables dans Framaspace : créer des tableaux pour différents usages
Tables dans Framaspace : des formulaires pour que vos utilisateur⋅ices puissent saisir leurs données
Tables dans Framaspace : visualisez et manipulez vos données
Cependant, le plus gros du travail, qui commencera au second semestre 2024, sera de voir jusqu’où nous pouvons aller dans l’intégration de Paheko dans Framaspace. Paheko est un logiciel libre de gestion d’associations complet et qui bénéficie aujourd’hui d’une belle réputation. De plus son développeur est français, et impliqué dans différentes communautés libristes depuis longtemps. Lors du dernier camp CHATONS, nous avons commencé à discuter de la possibilité d’intégrer des parties de Paheko à Framaspace. Notamment, nous savons que pouvoir gérer les adhérent⋅es (dates d’entrée et sortie de l’association, gestion des cotisations, etc.), mais aussi la comptabilité (suivant le Plan Comptable Associatif) seraient de gros avantages pour Framaspace. Pour l’instant, nous sommes toujours dans une démarche exploratoire, mais l’idée nous paraît suffisamment importante pour que nous y consacrions du temps et de l’énergie.
Nous ne sommes pas climato-sceptiques. Nous considérons que le réchauffement climatique est la mère de toutes les batailles. Nous pensons que la réponse au dérèglement climatique est avant tout politique, et nous sommes irrité⋅es de voir à quel point les politiques publiques sont avant tout orientées, parfois de façon très culpabilisantes, sur les gestes individuels. Cependant, pour pouvoir correctement faire face à un problème et y répondre de façon pertinente, il peut être utile de bien comprendre les enjeux, mais aussi les leviers sur lesquels agir. C’est dans cette optique que Framasoft, en partenariat avec le groupement de recherche Labos 1point5 souhaite proposer, à moyen terme, une application en ligne permettant d’évaluer l’empreinte carbone de son association (ainsi qu’un simulateur permettant de voir l’impact de chaque levier activable).
Possibilité de jouer sur des leviers impactant l’empreinte carbone
Évaluation de l’empreinte carbone
Saisie de données dans l’application 1point5
Dans les coulisses
Il n’y a pas, et il n’y aura jamais de numérique « vert ». Le numérique est intrinsèquement écocidaire. Cependant, nous vivons dans un monde où le numérique existe, et a aussi des apports (pour calculer, pour communiquer, pour être en lien, pour faire ensemble, etc.). Et ni vous, ni nous, ni personne, ne peut faire disparaître le numérique d’un claquement de doigts. C’est ce qu’on appelle une problématique complexe, face à laquelle aucune solution n’est triviale. Les solutions aux problèmes complexes reposent souvent sur des décisions politiques à grande échelle. Et le plus souvent, ces décisions font face à une grande réactance au début, ce qui est assez naturel.
Concernant le réchauffement climatique, nous ne croyons pas aux « petits pas », et nous condamnons les politiques publiques qui pointent beaucoup plus facilement les gestes individuels (le fameux « pipi sous la douche ») plutôt que les actions à grande échelle.
Cependant, pour bien comprendre un problème complexe, il faut pouvoir prendre conscience des « sous-problèmes » qui le composent. Et là, ça tombe bien, Framasoft peut avoir un (petit) rôle à jouer.
Ainsi, nous avons été contacté·es il y a quelques mois par le Groupement de Recherche Labos 1point5 qui propose, pour les labos de recherche (Universités, CNRS, etc.) des outils pour évaluer et comprendre l’empreinte carbone liée au laboratoire. Ils et elles nous ont annoncé travailler sur un outil équivalent, mais destiné aux associations et nous ont demandé si nous serions d’accord pour « porter » ces outils auprès du monde associatif.
Pour être franc⋅hes, nous avons d’abord hésité, car ce genre d’outils fait souvent l’objet de gros biais de calcul, et « oublie » le scope 3 (et même parfois le scope 1). Mais nous avons testé l’outil, et l’avons trouvé très complet. Par ailleurs, le fait que ces outils soient produits par des chercheuses et chercheurs pointu⋅es sur ce sujet permet de sortir des nombreuses démarches marketing de « greenwashing » que l’on peut observer ces derniers temps.
Nous avons donc entamé un dialogue qui nous semble fort constructif. Pour l’instant, nous laissons l’équipe de recherche avancer sur le sujet, et nous vous tiendrons informé⋅es des avancées d’ici quelques mois.
D’ici là, si votre association est intéressée à tester lesdites avancées ou à participer aux échanges avec les chercheuses et chercheurs, vous pouvez vous inscrire au panel d’associations testeuses.
Ah… Framadate sur mobile… Si on avait touché 1€ à chaque fois que l’on avait reçu une plainte concernant l’usage de Framadate sur smartphone, nous n’aurions probablement pas besoin de faire de collecte 😅.
Cependant, le code de Framadate est tellement daté (certaines parties du code datent de 2008) qu’il paraît aujourd’hui bien plus simple de repartir de zéro.
Bref, ça ne sera pas pour tout de suite, et surtout, on ne sait pas encore quelle sera la voie (longue, mais libre) suivie par Framasoft, mais les choses avancent 🙂
Nous étudions aussi de près la possibilité de mettre à votre disposition des outils « No Code » comme Baserow ou NoCoDB, car ils nous semblent répondre à des besoins courants. Cependant d’un point de vue technique, ce n’est pas simple (ces logiciels sont gourmands et coûtent donc cher à héberger), et il s’agit de logiciels un peu complexes à prendre en main, donc il faudrait aussi travailler à leur accompagnement.
Pour tout cela, nous avons (encore) besoin de votre aide
Félicitations si vous nous avez lu jusqu’ici, car nous avions beaucoup à dire !
Vous l’aurez compris, de nombreux chantiers sont en cours, et il nous faudra des semaines, voire des mois, pour les faire avancer.
Cependant, comme toujours, nous ne pourrons nous atteler à ces projets que si vous nous donnez les moyens de le faire.
Nous pensons sincèrement que nous avons la possibilité de faire bouger les lignes, comme nous l’avons fait avec Framadate, Framalistes, Framapad, ou maintenant Framaspace. Le contexte politique et social actuel nous presse à « outiller la société de contribution », c’est à dire à équiper numériquement celles et ceux qui souhaitent changer le monde vers plus de collectif, plus de diversité, plus de communs. Notre boussole reste notre volonté de vous proposer des outils libres et éthiques, un peu comme si nous fournissions des planches, des marteaux et des clous numériques pour que vous puissiez concrétiser les projets qui vous ressemblent, et non ceux qui sont téléguidés par les géants du numérique.
Nous pensons avoir prouvé lors de ces dix dernières années de « dégooglisation » que votre confiance n’était pas mal placée, et que chaque euro perçu avait été bien dépensé.
Aujourd’hui, au regard de nos ambitions à vous proposer de nouveaux services (mais aussi à maintenir ceux qui sont en place !), nous faisons donc de nouveau appel à votre générosité, en vous rappelant que l’association Framasoft ne vit que de vos dons, et en vous invitant donc, si vous en avez l’envie et les moyens, à nous soutenir pour cette nouvelle campagne. Merci 🙏
Pour Framaspace, Framasoft a fait développer un outil de supervision de sites web nommé Argos Panoptès (ou juste Argos pour aller plus vite).
Développé par Alexis Métaireau, développeur entre autres du générateur de site statique Pelican, et de l’outil de gestion de dépenses à plusieurs « I Hate money » (repris dans l’app cospend sur Nextcloud), le besoin a été défini par Luc Didry, l’administrateur système de Framasoft.
Luc et Alexis répondent à nos questions dans cet interview, pour plus d’information concernant Argos vous pouvez consulter l’article dédié.
Bonjour à tous les deux 🙂 Ici on connaît déjà Luc puisque c’est notre admin sys préféré, mais Alexis, peux-tu nous dire qui tu es pour le framablog ?
Alexis : Bonjour, Framasoft, et merci pour la discussion ! Et bien, c’est parti pour l’exercice de la présentation alors.
Je suis un développeur de bientôt 40 ans, intéressé par les dynamiques collectives, le logiciel libre et la protection des données personnelles, depuis quelques années maintenant. Par le passé j’ai pu publier et maintenir quelques outils comme Pelican, un générateur de sites statiques et I hate money, pour gérer les dépenses partagées. J’ai travaillé quelques années pour Mozilla sur la partie synchronisation et chiffrement des données (Firefox Sync, Kinto) et sur quelques autres outils.
J’ai quitté le développement « pro » entre 2018 et 2023. Durant ces années j’ai eu la chance / le privilège de pouvoir monter une brasserie sur Rennes avec un ami. Nous avons essayé de faire vivre les valeurs de la collaboration (plutôt que celles de la compétition). Cela est resté très proche des valeurs du logiciel libre, nos recettes et les plans de nos machines étant par exemple publiés sur notre site web.
À l’été 2023 j’ai décidé de quitter la brasserie pour à la fois refaire du développement et travailler sur les outils de la prise de décision collective, et la gestion des conflits dans les collectifs. C’est à ce moment que nous sommes rentrés en contact avec Luc pour travailler sur Argos.
Pouvez-vous nous présenter l’outil Argos sur lequel vous avez travaillé ? À quel besoin répond-il pour Framaspace ?
Alexis : Argos est un outil de supervision de sites web. L’idée est assez simple: surveiller que les sites vont bien, et générer des alertes quand c’est utile, en envoyant des notifications par email ou autre.
La spécificité d’Argos est de pouvoir gérer un nombre de sites important. Framaspace, en grossissant, expose pas loin de 900 domaines au public, qui parfois tombent en panne. Je crois que le réel besoin derrière Argos était de simplifier la vie de Luc (vous saviez qu’il n’y avait qu’un seul adminsys chez Framasoft ?!!) et de lui permettre d’avoir une meilleure vision globale de l’état du service.
Les vérifications concernent les statuts du site web, mais aussi l’état des certificats SSL, par exemple, et quelques vérifications spécifiques.
Luc : On surveillait déjà plus de 200 sites via notre outil de supervision (Shinken), mais celui-ci, avec toutes les autres sondes de supervision de notre infrastructure, avait bien de la peine à repasser toutes les 5 minutes sur les sites. Ce qui faisait qu’on pouvait se rendre compte qu’un site était tombé au bout de trop de temps.
Avec Framaspace, je savais que j’aurai des centaines (et à terme des milliers) de sites à surveiller en plus, sachant qu’un site est la cible de plusieurs vérifications, comme dit par Alexis. Il fallait donc un outil dédié.
Les outils existants comme statping-ng ou Uptime Kuma présentent un défaut rédhibitoire : vouloir afficher l’état de chaque site en même temps sur l’interface web. Ça va bien quand on a quelques sites, pas quand on en a des centaines (l’outil peine à envoyer les données de centaines de sites).
C’est de là qu’est née l’idée d’Argos, qui a le bon goût de n’afficher qu’un résumé de l’état des sites par défaut.
Si on regarde de plus près les coutures, on voit que c’est développé en langage Python avec une base de données en PostgreSQL. Laissez-moi deviner : Alexis a choisi Python et Luc a choisi PostgreSQL ?
Alexis : Ah, je vois que tu nous connais un peu, mais figure toi que même pas ! J’aurais aimé plaider coupable pour le coup, mais Luc cherchait spécifiquement quelqu’un qui savait faire du Python, et c’est comme ça qu’on s’est rencontré. J’ai proposé d’utiliser le framework FastAPI à la place de Flask parce que ça nous permettait de faire de l’asynchrone de manière plus simple, et d’utiliser les fonctionnalités de typage de Python.
Luc : Pour Framaspace, j’ai été plus ou moins obligé de faire du Python car Salt, l’orchestrateur utilisé pour déployer les espaces est en Python : je pouvais, en utilisant ce langage, l’utiliser comme une bibliothèque, sans utiliser de bidouilles sales.
Comme Argos a été créé dans le cadre de Framaspace, j’ai voulu garder le même langage de programmation, pour avoir un tout cohérent.
Python n’est pas un langage si pire que ça. Il n’est pas amusant, mais ça fait le job. Peut-être aussi que je vieillis : j’utilise de plus en plus Python pour des scripts. Peut-être qu’écrire des scripts ne m’amuse plus, et que je veux les écrire vite pour passer à autre chose.
La question habituelle de libriste : pourquoi avez-vous choisi de développer un outil dédié, il n’existait pas d’outils libres pour de la supervision ? Quelles sont ses spécificités ?
Alexis : Je te laisse répondre Luc, c’est toi qui a affiné le besoin 🙂
Luc : Ah bah zut, j’ai déjà répondu au-dessus 😅
L’avantage d’avoir notre propre outil nous permet aussi de le tordre pour nos besoins spécifiques. Ainsi Argos envoie-t-il des notifications à notre serveur Gotify. Intégrer un tel canal de communication dans un outil existant aurait pu prendre du temps (comprendre le code, faire une PR, attendre une release…).
En lisant la doc, ça a l’air tout simple à utiliser par rapport à d’autres outils !! Comme administrateur⋅ice système du dimanche après-midi, si je veux surveiller l’état de mes sites, est-ce qu’il y a des pièges ou des choses à savoir ?
Alexis : Je pense que ça pourrait tout à fait permettre de surveiller l’état de quelques sites, bien que peut-être surdimensionné. Argos a besoin de lancer un serveur, une base de données et des agents. Est-ce bien utile pour un⋅e adminSys du dimanche ? Peut-être !
Luc : Franchement, je pense qu’il peut être utilisé aussi bien par une grosse organisation que par un·e adminSys du dimanche. La configuration est simple, l’installation pas très compliquée, et il n’a pas l’air de consommer beaucoup de ressources.
Alexis tu étais en mode prestation pour développer, comment s’est passée la relation avec Framasoft ?
Alexis : Franchement, c’était une surprise totale, et un plaisir du début à la fin. On a d’abord pu se faire quelques appels avec Luc pour clarifier les besoins, je me suis retrouvé avec une liste de fonctionnalités de base, et j’ai avancé comme ça.
Quand j’avais besoin j’ai pu échanger avec Luc qui était toujours assez réactif, et j’ai pu lever quelques blocages. J’ai beaucoup apprécié répondre à un besoin concret, en ayant l’utilisateur final au bout du fil pour clarifier les choses.
Par la suite, on a pu se faire quelques sessions ensemble, à la fois de présentation de l’outil, puis de pair-programming pour accompagner Luc sur certains aspects quand c’était utile, l’idée étant que ce soit lui qui prenne la main sur le projet.
C’était en fait ma première mission en tant que « prestataire », je crois que je suis très bien tombé !
Luc : Pareil de mon côté, c’était très agréable de bosser avec toi !
Est-ce que vous pensez que ça peut être utilisé dans d’autres contextes que Framaspace ?
Alexis : je pense que ça peut être utilisé dans d’autres contextes bien sûr. Je pense aux « fermes de sites », comme par exemple ce que peut faire NoBlogs en Allemagne, mais de manière générale c’est utile d’avoir un outil simple d’accès pour faire de la supervision. Bosser là-dessus m’a donné envie de permettre de faire de la supervision « en tant que service », pour des collectifs pour qui ce serait utile, mais… j’imagine que c’est une autre histoire.
Luc : Carrément ! Pas seulement pour des fermes de sites mais partout où on a besoin d’une supervision qui passe très régulièrement. On peut avoir des vérifications effectuées toutes les minutes, ce qui peut être utile sur des sites qui ne doivent pas tomber. Et un grand nombre de sites ne devrait pas faire peur à Argos : on peut multiplier le nombre d’agents (le logiciel qui s’occupe d’effectuer les vérifications et d’en remonter le résultat au serveur), et le choix de PostgreSQL comme base de données a (aussi) été fait parce que c’est un SGBD robuste qui peut encaisser de la charge de travail.
Et est-ce que vous imaginez une suite, avec une feuille de route ou des invitations à contribuer ?
Luc : Il y a déjà des idées de développements futurs pour améliorer Argos, mais ça n’est pas urgent : la première version est déjà tout à fait fonctionnelle.
Alexis : J’aime bien l’idée de ne pas avoir de feuille de route trop précise pour le futur, ce qui nous permet de se concentrer sur des besoins réels et de ne pas en faire une usine à gaz. Si vous l’utilisez et que vous avez des retours à faire, ou bien si vous souhaitez contribuer, n’hésitez pas. C’est pensé pour être simple à étendre, donc n’hésitez pas à jeter un œil et à proposer des changements.
Si vous avez encore des choses à dire 🙂
Alexis : Coucou Numahell, chouette de te recroiser par ici après ces quelques années 🙂
Luc : Merci à toi, Alexis, pour le temps bénévole que tu as consacré à Argos après ta prestation !
Argos Panoptès : la supervision de sites web simple et efficace
Un nouvel outil de supervision de sites web vient de sortir de la forge de Framasoft, tout beau, tout neuf, tout simple. Mais pourquoi ? On vous explique tout !
Le problème
Chez Framasoft, nous avons beaucoup de sites web. Vous connaissez les adresses de nos services, https://framacarte.org pour Framacarte, https://framapad.org pour les pads, etc.
Mais il y en a bien plus sous le manteau : nos outils associatifs (un Nextcloud, un Odoo, des wikis…), les versions de test des services (soit pour tester un nouvel outil, soit pour vérifier que la mise à jour se passera bien…), les sites des amis qu’on héberge (coucou Grisebouille, Affordance et les autres 👋), etc.
Comme je (nda : Luc) suis quelqu’un de plutôt méticuleux, tous nos sites sont supervisés, c’est-à-dire que nous avons un système qui vérifie périodiquement qu’ils fonctionnent bien, de façon à détecter rapidement un souci et le résoudre au plus vite.
Jusque là, nous utilisions Shinken pour toute notre supervision : aussi bien celle des sites web que celle des serveurs. Mais nous commencions à nous heurter à différents problèmes :
Shinken est en Python 2, une version totalement obsolète de Python, ce qui n’augure pas bien de la pérennité de l’outil (il est question d’une version en Python 3, mais qui se fait largement attendre)
nous avons trop de sondes (c-à-d de choses à superviser) pour que la vérification des sites se fasse suffisamment régulièrement à mon goût (je veux des tests toutes les 5 minutes, pas tous les quarts d’heure)
Nous devons migrer vers une autre solution de supervision, mais pour ça, il faut du temps que nous n’avons pas. Et Shinken fonctionne toujours, donc ce n’est pas une chose que je juge urgente.
Cependant, avec l’ouverture de Framaspace, le nombre de sites à surveiller allait nécessairement exploser (plus de 1 000 espaces à l’heure actuelle).
Il nous fallait donc une solution de supervision pour les sites pour éviter d’augmenter les problèmes de délai entre chaque vérification de site.
Une devise du monde Unix est « Un outil qui fait une chose et qui le fait bien ». Suivant cela, j’ai cherché des outils de supervision de sites web et de rien d’autre. J’ai trouvé statping-ng et Uptime Kuma.
Malgré leurs qualités, ces solutions souffrent du même problème : l’affichage sur la page d’accueil des résultats de toutes les sondes, avec l’historique des résultats sous forme d’une petite frise chronologique. Avec quelques sites à superviser, pas de souci. Avec plus de 100 sites, soit c’est l’affichage qui ne fonctionne plus, soit c’est le service lui-même qui peine… très fort !
Il nous fallait donc créer nous-même notre outil de supervision !
La solution
Comme la plupart des développeurs, j’ai commencé par le plus important : trouver un nom à notre logiciel ! 😅
Pour rester dans la thématique de la mythologie grecque des développements faits pour Framaspace, j’ai cherché sur le web et suis tombé sur Argos Panoptès, géant aux cent yeux, dont l’épithète Panoptès signifie « celui qui voit tout » (on se contentera de l’appeler « Argos » dans cet article)
La deuxième chose la plus importante dans le développement est… le temps disponible. Et nous n’en disposions pas. C’est pourquoi nous avons pris un prestataire, Alexis Métaireau, développeur entre autres du générateur de site statique Pelican, et de l’outil de gestion de dépenses à plusieurs I Hate money (repris dans l’app cospend sur Nextcloud), pour poser les bases d’Argos, en suivant notre cahier des charges.
Argos devait être simple pour être efficace. L’écran d’accueil est donc dépouillé du superflu et n’indique que le nombre de sites surveillés regroupés par état (inconnu, OK, attention, critique).
Les mêmes informations sont aussi disponibles en JSON via un point d’API. À vous d’en faire ce que vous voulez, comme par exemple afficher une notification sur votre bureau si tout n’est pas au vert, déclencher un son… voire intégrer le résultat d’Argos dans votre solution de supervision pour tout avoir au même endroit ! L’API est auto-documentée sur le logiciel (la documentation est accessible depuis l’interface d’Argos).
La simplicité d’Argos réside aussi dans son mode d’installation : un simple pip install argos-monitoring aussi bien pour le serveur central que pour l’agent, une création d’une base de données PostgreSQL, un fichier de configuration en YAML et c’est tout. Avec ça, on a tout ce qu’il faut pour faire tourner le service.
La robustesse
Un mot : PostgreSQL. J’ai toute confiance en PostgreSQL pour encaisser une forte charge comme pourrait lui envoyer Argos.
Plus concrètement, nous sommes passés de ±300 vérifications avant Framaspace à près de 2 000 en surveillant les espaces créés et Argos ne bronche pas.
Cela fait plusieurs mois maintenant que nous utilisons Argos en conditions réelles et passé la phase de débogage, ça se passe parfaitement bien 🥰
L’évolutivité
Vous ajoutez plein de sites et l’agent qui s’occupe de faire les vérifications et de les envoyer au serveur central ne suffit plus ? On peut ajouter autant d’agents supplémentaires que nécessaire en quelques minutes.
Vous voulez créer une nouvelle manière de vérifier que votre site fonctionne bien ? Le site de documentation est riche d’informations pour les développeur·euses et vous tend les bras 🙂
Les moyens de notifications actuels (mail et Gotify à l’heure de l’écriture de cet article) ne vous conviennent pas ? Le code, en Python, est très propre et il est très simple d’ajouter… à peu près n’importe quel moyen de communication, d’un webhookMattermost à un SMS via une plate-forme quelconque.
Conclusion
Nous avons maintenant une solution de supervision spécialisée simple et efficace, flexible de par la simplicité de son code et qui nous donne déjà entière satisfaction.
Si Argos est déjà pleinement fonctionnel, il ne tient qu’à nous (et à la communauté !) de l’améliorer. Il y a déjà quelques tickets, majoritairement pour améliorer la documentation, mais pas que.
Est-ce qu’Argos Panoptès sera adopté par les administrateurices systèmes, du dimanche ou pas ? On verra bien !
Pour celleux qui se demandent pourquoi une queue de paon en image d’illustration de cet article : la déesse Héra a préservé, sur une queue de paon, les cent yeux d’Argos Panoptès après sa mort.
Framasoft in cifre, edizione 2023
Qual è l’impatto concreto delle azioni della nostra associazione? È questa la domanda a cui ci piace rispondere alla fine dell’anno (vedi dati 2022): prendersi il tempo per quantificare le nostre azioni è essenziale per rendersi conto del servizio che possiamo fornire agli altri. Iniziamo con le Framastatistiche 2023!
Più di 1,8 milioni di persone visitano i nostri siti web ogni mese: è il doppio delle visite che Disneyland Paris riceve ogni mese! Questa cifra è aumentata del 16% rispetto all’anno scorso, quindi è pazzesco (e molto motivante) pensare che ciò che facciamo sia utile a così tante persone. E cosa significa questo, per ogni singolo servizio?
Framadate
Framadate consente di creare dei mini-sondaggi, in particolare per trovare la fascia oraria giusta per gli appuntamenti. E in cifre, Framadate significa:
33.785.780 visite nel 2023
1,2 milioni di sondaggi ospitati nel 2023
80.000 sondaggi creati in più rispetto al 2022
Framapad
Framapad consente a più persone di scrivere sullo stesso documento. Framapad è senza dubbio uno dei più grandi servizi Etherpad al mondo, con:
510.900 pad ospitati attualmente
Diversi milioni di pad ospitati dal lancio del servizio
309.000 account su MyPads (+ 60.000 rispetto al 2022)
Oltre 5 milioni di visite nel 2023
Framalistes e Framagroupes
Framalistes e Framagroupes consentono di creare liste di discussione via e-mail. Poiché il server di Framalistes ha raggiunto la sua capacità massima, nel giugno 2023 abbiamo aperto Framagroupes per continuare a offrire questo servizio, che riteniamo indispensabile. Framalistes e Framagroupes sono senza dubbio i più grandi server di liste di discussione (esclusi i giganti del Web) esistenti, con:
Più di 1,1 milioni di utenti
63.900 liste aperte
Circa 280.000 e-mail inviate in media ogni giorno lavorativo
Framaforms
Framaforms semplifica la creazione di questionari online. Framaforms in cifre:
867.000 visite al mese
418.628 moduli attualmente ospitati
172.289 moduli creati quest’anno
Framacalc
Framacalc consente di creare fogli di calcolo collaborativi. È forse il più grande istanza Ethercalc del mondo, con:
4.235.879 visite nel 2023
218.000 calcoli ospitati
Framateam
Framateam è un servizio di chat che consente di organizzare dei team suddivisi per canale. È probabilmente una delle più grandi istanze pubbliche di Mattermost al mondo, con:
148.870 utenti del servizio (di cui 5.582 si collegano ogni giorno)
29.665 team
168.102 canali di discussione
Più di 43 milioni di messaggi scambiati dal lancio del servizio
Framagit
Framagit è una fucina di software dove gli sviluppatori possono pubblicare il proprio codice e contribuire a quello degli altri. Framagit è probabilmente uno dei più grandi server Gitlab pubblici in Francia, con:
70 679 progetti ospitati
49 642 utenti
8 966 fork
149 789 issues
91 623 Merge requests
1 764 909 note
Framacarte
Framacarte consente di creare mappe online. E in cifre, è:
2 770 510 visite nel 2023
6 690 utenti (+ 1 246 in un anno)
170 845 mappe ospitate (+ 33.476 in un anno)
Framatalk
Framatalk consente di creare o di unirsi a una sala di videoconferenza. E in cifre, questo è:
656 765 visite nel 2023 (+ 45 % rispetto all’anno scorso)
Una media di 75 conferenze attive per 200 partecipanti per giorno lavorativo
Framindmap
Framindmap consente di creare mappe mentali. In cifre, Framindmap è:
295 379 visite nel 2023
1,13 milioni di mappe mentali ospitate
489 690 utenti
Framavox
Framavox consente a un gruppo di persone di incontrarsi, discutere e prendere decisioni in un unico luogo. Framavox è probabilmente una delle più grandi istanze esistenti dell’eccellente software Loomio, con:
119 633 utenti
124 566 visite nel 2023
12 265 comunità
Framagenda
Framagenda consente di creare calendari online. In cifre, si tratta di:
260 000 calendari
122 919 utenti
Framaspace
Framaspace è un ambiente di lavoro collaborativo per piccole associazioni e gruppi. In cifre, si tratta di:
850 associazioni e piccoli gruppi non organizzati da Google
750 nuovi spazi aperti entro il 2023
16 server (dedicati e macchine virtuali) per 640 TB di spazio su disco
Più di 800.000 file ospitati su Framaspace
PeerTube
PeerTube è un’alternativa alle piattaforme video. E in cifre è:
300 000 utenti
893 000 video
1 151 istanze pubbliche
287 000 commenti ai video
231 milioni di visualizzazioni (una visualizzazione viene conteggiata a partire da 30 secondi)
434 To di file
413 issues risolti nel 2023 (su un totale di 4.360 issues trattate)
2 sviluppatori stipendiati (il secondo si è unito al team a settembre!)
Mobilizon
Mobilizon è la nostra alternativa ai gruppi e agli eventi di Facebook. In cifre, è:
313 554 eventi
29 789 utenti
86 istanze
3 438 gruppi
1 sviluppatore (nemmeno a tempo pieno!)
Framadrive
Framadrive, il servizio di archiviazione di documenti, non è più aperto alle iscrizioni, ma funziona ancora! In cifre, si tratta di:
10,8 milioni di file
4 794 utenti
2,6 TB di spazio su disco utilizzato
Framapiaf
Framapiaf, un’istanza del software di micro-blogging Mastodon, non è più aperta a nuove registrazioni ma rimane molto attiva. In cifre, si tratta di:
1 500 utenti che si sono collegati negli ultimi 30 giorni
850 utenti che hanno postato almeno un messaggio negli ultimi 30 giorni
Infrastruttura tecnica
Per quanto ne sappiamo, Framasoft è il più grande fornitore associativo di servizi online al mondo. E a priori, questo modello di funzionamento associativo non esiste da nessun’altra parte! In cifre:
58 server e 60 macchine virtuali che ospitano i nostri servizi online
0,6 tonnellate di CO2 equivalenti per il consumo annuale di elettricità della nostra infrastruttura tecnica (il nostro host, Hetzner, utilizza energia idroelettrica ed eolica rinnovabile)
1 amministratore di sistema a tempo pieno e 2 addetti al supporto tecnico
I servizi online che forniamo al pubblico non sono le uniche cose che ci tengono occupati. Ecco qualche dato su alcune delle altre attività che abbiamo svolto quest’anno.
Attività interna
Framasoft conta 28 membri volontari e 11 dipendenti.
45 presentazioni nel 2023, in presenza e/o online, sulle tecnologie digitali, i beni culturali comuni e le questioni in gioco.
Più di 130 articoli pubblicati sul Framablog nel 2023
Un corso di formazione e un MOOC creato per chi ospita servizi etici
21 operatori in grado di supportare le associazioni nella loro emancipazione digitale elencati sul sito emancipasso.org
5 visite di studio in 5 Paesi europei per il progetto ECHO Network
8 anni di coordinamento del collettivo CHATONS, che attualmente comprende 91 fornitori di hosting alternativi
Abbiamo bisogno del vostro aiuto!
È grazie alle vostre donazioni che possiamo garantire la totale indipendenza finanziaria dell’associazione: la libertà di sperimentare, di continuare, di fallire, di fermarci, di portare avanti i nostri progetti, dai più seri ai più strampalati, sempre in linea con il nostro progetto associativo di educazione popolare ai temi del digitale e dei beni culturali comuni. E in cifre:
Il 93% del nostro bilancio è finanziato dalle donazioni
5 463 donatori finanziano iniziative di cui beneficiano più di 1,8 milioni di persone ogni mese
Il70 % del bilancio è destinato al pagamento degli stipendi.
Framasoft è un’associazione di interesse generale: tutte le donazioni fatte a noi sono deducibili fino al 66% per i contribuenti francesi. Quindi una donazione di 100 euro vi costerà in realtà solo 34 euro dopo gli sgravi fiscali.
Se vogliamo raggiungere il nostro budget per il 2024, abbiamo solo 3 giorni per raccogliere 48 000 € : non possiamo farlo senza il vostro aiuto!
What is the concrete impact of our association’s actions? That’s the question we like to answer at the end of the year: taking the time to quantify our actions is essential if we are to realise the service we can provide to others. Let’s get ready for Framastats 2023!
🦆 VS 😈: Let’s take back some ground from the tech giants!
More than 1.8 million people visit our websites every month: that’s twice as many people as visit Disneyland Paris every month! This figure is up 16% on last year, so it’s pretty crazy (and very motivating) to think that what we do is useful to so many people. And what about service by service?
Framadate
Framadate allows you to create mini-surveys, for example to find the right appointment time. And in figures, Framadate is:
33,785,780 visits in 2023
1.2 million hosted surveys in 2023
80,000 more surveys created than in 2022
Framapad
Framapad allows several people to write on the same document. Framapad is undoubtedly one of the largest Etherpad services in the world, with:
510,900 pads currently hosted
Several million pads hosted since the launch of the service
309,000 accounts on MyPads (+ 60,000 compared to 2022)
More than 5 million visits in 2023
Framalistes and Framagroupes
Framalistes and Framagroupes allow you to create email discussion lists. As the Framalistes server had reached its maximum capacity, we opened Framagroupes in June 2023 to continue offering this service, which we consider essential. Framalistes and Framagroupes are undoubtedly the largest discussion list servers in existence (excluding the web giants), with:
more than 1.1 million users
63,900 open lists
An average of 280,000 messages sent per working day
Framaforms
Framaforms makes it easy to create online forms. Framaforms in figures:
867,000 visits per month
418,628 forms currently hosted
172.289 forms created this year
Framacalc
Framacalc allows you to create collaborative spreadsheets. It may also be the largest Ethercalc database in the world, with:
4,235,879 visits in 2023
218,000 hosted spreadsheets
Framateam
Framateam is a chat service that allows teams to be organised by channel. It is probably one of the largest public Mattermost instances in the world, with:
148,870 users of the service (5,582 of which log on daily)
29,665 teams
168,102 discussion channels
More than 43 million messages exchanged since the launch of the service
Framagit
Framagit is a software forge where developers can publish their code and contribute to the code of others. Framagit is probably one of the largest public Gitlab servers in France, with:
70,679 hosted projects
49,642 users
8,966 forks
149,789 issues
91,623 merge requests
1,764,909 commit notes
Framacarte
Framacarte allows you to create maps online. And in figures, it’s:
2,770,510 visits in 2023
6,690 users (+ 1,246 in one year)
170,845 hosted maps (+ 33,476 in one year)
Framatalk
Framatalk allows you to create or join a video conference room. And in numbers, that’s
656,765 visits in 2023 (+45% compared to last year)
An average of 75 active conferences with 200 participants per working day
Framindmap
Framindmap allows you to create mind maps. In numbers, Framindmap is:
295,379 visits in 2023
1.13 million hosted mind maps
489,690 users
Framavox
Framavox allows a group of people to meet, discuss and make decisions in one place. Framavox is probably one of the largest existing instances of the excellent Loomio software, with:
119,633 users
124.566 visits in 2023
12.265 communities
Framagenda
Framagenda allows you to create online calendars. In numbers, that’s:
260,000 calendars
122.919 users
Framaspace
Framaspace is a collaborative working environment for small associations and groups. In numbers, that’s:
850 associations and small groups not organised by Google
750 new spaces to be opened by 2023
16 servers (dedicated and virtual machines) providing 640 TB of storage
More than 800,000 hosted files
PeerTube
PeerTube is the alternative to video platforms. And in numbers, it’s:
300,000 users
893,000 videos
1,151 public entities
287,000 comments on videos
231 million views (a view is counted from 30 seconds)
434 TB of files
413 issues resolved in 2023 (out of a total of 4,360 issues handled)
363,591 visits to JoinPeerTube.org
2 employees (the 2nd joined the team in September!)
Mobilizon
Mobilizon is our alternative to Facebook Groups and Events. In numbers, it’s:
313,554 events
29,789 users
86 instances
3,438 groups
1 developer (not even full-time!)
Framadrive
Framadrive, the document storage service, is no longer open for registration, but it’s still working! And in numbers, that’s:
10.8 million files
4,794 users
2.6 TB of storage used
Framapiaf
Framapiaf, an installation of the microblogging software Mastodon, is no longer open to new registrations, but remains very active. In figures, there are:
1,500 users who have registered in the last 30 days
850 users who have posted at least one message in the last 30 days
Technical infrastructure
To the best of our knowledge, Framasoft is the world’s largest web host for online services. And a priori, this associative operating model doesn’t exist anywhere else! In figures:
58 servers and 60 virtual machines hosting our online services
0.6 tonnes of CO2 equivalent for the annual electricity consumption of our technical infrastructure (our host, Hetzner, uses renewable hydro and wind energy)
1 full-time sysadmin and 2 technical support staff
The online services we provide to the public are not the only things that keep us busy. Here are some figures on some of the other things we’ve been up to this year.
Internally
Framasoft has 28 volunteers and 11 paid employees
45 presentations in 2023, face-to-face and/or online, on digital technology, the cultural commons and related issues
over 130 articles published on the Framablog in 2023
It’s thanks to your donations that we can guarantee the total financial independence of the association: the freedom to experiment, to continue, to fail, to stop, to continue our projects, from the most serious to the most mad, always in line with our associative project of popular education on digital issues and the cultural commons. And in figures:
93% of our budget comes from donations
5,463 donors finance initiatives that benefit more than 1.8 million people every month
70% of the budget is spent on salaries
Once again this year, we need you, your support, your sharing to help us regain ground on the toxic GAFAM web and multiply the number of ethical digital spaces.
If we want to balance our budget for 2024, we only have 3 days left to raise €48 000: we can’t do it without your help!
Quel est l’impact concret des actions de notre association ? C’est la question à laquelle nous aimons répondre en fin d’année (cf. chiffres 2022) : prendre le temps de chiffrer nos actions est essentiel pour réaliser le service que l’on peut rendre aux autres. En route pour les Framastats 2023 !
Plus de 1,8 million de personnes naviguent sur nos sites internet chaque mois : c’est deux fois plus de visites que n’en reçoit Disneyland Paris par mois ! Ce chiffre a augmenté de 16 % par rapport à l’année dernière, c’est assez fou (et très motivant) d’imaginer que ce que nous faisons est utile à tant de monde. Et service par service, ça donne quoi ?
Framadate
Framadate permet de créer des mini-sondages, notamment pour trouver le bon créneau de rendez-vous. Et en chiffres, Framadate c’est :
33 785 780 visites en 2023
1,2 million de sondages hébergés en 2023
80 000 sondages créés de plus par rapport à l’année 2022
Framapad
Framapad permet de rédiger à plusieurs sur un même document. Framapad est sans doute l’un des plus gros services Etherpad au monde avec :
510 900 pads hébergés actuellement
Plusieurs millions de pads hébergés depuis le lancement du service
309 000 comptes sur MyPads (+ 60 000 par rapport à 2022)
Plus de 5 millions de visites en 2023
Framalistes et Framagroupes
Framalistes et Framagroupes permettent de créer des listes de discussion par email. Le serveur de Framalistes étant arrivé au maximum de ses capacités, nous avons ouvert Framagroupes en juin 2023, pour continuer à proposer ce service que nous trouvons indispensable. Framalistes et Framagroupes sont certainement les plus gros serveurs de listes de discussion (hors géants du Web) qui existent, avec :
Plus d’1,1 million d’utilisateurs et utilisatrices
63 900 listes ouvertes
Environ 280 000 mails envoyés en moyenne par jour ouvré
Framaforms
Framaforms permet de créer simplement des questionnaires en ligne. Framaforms en chiffres c’est :
867 000 visites par mois
418 628 formulaires actuellement hébergés
172 289 formulaires créés cette année
Framacalc
Framacalc permet de créer des tableurs collaboratifs. C’est peut-être là encore la plus grosse base Ethercalc au monde avec :
4 235 879 visites en 2023
218 000 calcs hébergés
Framateam
Framateam est un service de tchat, et permet une organisation d’équipe par canaux. C’est probablement l’une des plus grosses instances Mattermost publique au monde avec :
148 870 utilisateurs et utilisatrices sur le service (dont 5 582 se connectent tous les jours)
29 665 équipes qui s’organisent
168 102 canaux de discussions
Plus de 43 millions de messages échangés depuis le lancement du service
Framagit
Framagit est une forge logicielle, où développeurs et développeuses peuvent publier leur code et contribuer à celui des autres. Framagit est probablement un des plus gros serveurs Gitlab publics de France avec :
70 679 projets hébergés
49 642 utilisateurs et utilisatrices
8 966 forks
149 789 issues
91 623 Merge requests
1 764 909 notes
Framacarte
Framacarte permet de créer des cartes géographiques en ligne. Et en chiffres, c’est :
2 770 510 visites en 2023
6 690 utilisateurs et utilisatrices (+ 1 246 en un an)
170 845 cartes hébergées (+ 33 476 en un an)
Framatalk
Framatalk permet de créer ou rejoindre un salon de vidéoconférence. Et en chiffres, c’est :
656 765 visites en 2023 (+ 45 % par rapport à l’an passé)
En moyenne 75 conférences actives pour 200 participant⋅es par jour ouvré
Framindmap
Framindmap permet de créer des cartes mentales. En chiffres, Framindmap c’est :
295 379 visites en 2023
1,13 million de cartes mentales hébergées
489 690 utilisateurs et utilisatrices
Framavox
Framavox permet à un collectif de se réunir, débattre et prendre des décisions, dans un seul endroit. Framavox est probablement une des plus grosses instances existantes de l’excellent logiciel Loomio, avec :
119 633 utilisateurs et utilisatrices
124 566 visites en 2023
12 265 communautés
Framagenda
Framagenda permet de créer des calendriers en ligne. Et en chiffres, c’est :
260 000 calendriers
122 919 utilisateurices
Framaspace
Framaspace est un environnement de travail collaboratif pour les petites associations et collectifs. En chiffres, c’est :
850 associations et petits collectifs qui ne s’organisent pas chez Google
750 nouveaux espaces ouverts en 2023
16 serveurs (dédiés et machines virtuelles) pour 640 To d’espace disque provisionné
Plus de 800 000 fichiers hébergés
PeerTube
PeerTube est une alternative aux plateformes vidéo. Et en chiffres c’est :
300 000 utilisateurs et utilisatrices
893 000 vidéos
1 151 instances publiques
287 000 commentaires sur les vidéos
231 millions de vues (on compte une vue à partir de 30 secondes sur la vidéo)
434 To de fichiers
413 issues résolues en 2023 (sur 4 360 issues traitées au total)
2 développeurs salariés (le 2e a rejoint l’équipe en septembre !)
Mobilizon
Mobilizon est l’alternative que nous proposons aux groupes et événements Facebook. En chiffres, c’est :
313 554 événements
29 789 utilisateurs et utilisatrices
86 instances
3 438 groupes
1 seul développeur (même pas à temps plein !)
Framadrive
Framadrive, service de stockage de documents, n’est plus ouvert aux inscriptions, mais fonctionne toujours ! Et en chiffres, c’est :
10,8 millions de fichiers
4 794 utilisateurs et utilisatrices
2,6 To d’espace disque utilisé
Framapiaf
Framapiaf, installation du logiciel de micro-bloging Mastodon, n’est plus ouvert aux nouvelles inscriptions mais reste bien actif. En chiffres, c’est :
1 500 utilisateurs et utilisatrices s’étant connecté·es dans les 30 derniers jours
850 utilisateurs et utilisatrices ayant posté au moins un message dans les 30 derniers jours
Infrastructure technique
Framasoft est, à notre connaissance, le plus gros hébergeur associatif de services en ligne au monde. Et a priori, ce modèle de fonctionnement associatif n’existe nulle part ailleurs ! En chiffres :
58 serveurs et 60 machines virtuelles qui hébergent nos services en ligne
0,6 tonne équivalent CO2 pour la consommation électrique annuelle de notre infrastructure technique (notre hébergeur Hetzner utilisant des énergies renouvelables hydroélectriques et éoliennes)
1 admin sys à temps plein et 2 personnes tech en soutien
Les services en ligne que nous mettons à disposition du public ne sont pas les seuls à occuper nos journées. Voilà quelques chiffres concernant d’autres actions que nous avons menées à bien cette année.
En interne
Framasoft c’est 28 membres bénévoles et 11 salarié⋅es
45 interventions en 2023, en présentiel et/ou en ligne sur le numérique, les communs culturels et leurs enjeux
Plus de 130 articles publiés sur le Framablog en 2023
C’est grâce à vos dons que nous pouvons garantir une totale indépendance financière de l’association : liberté d’expérimenter, de poursuivre, de rater, d’arrêter, de continuer nos projets, des plus sérieux aux plus loufoques, toujours en gardant le cap de notre projet associatif d’éducation populaire aux enjeux du numérique et des communs culturels. Et en chiffres :
93 % de notre budget est financé par des dons
5 463 donateur⋅ices financent des actions utiles à plus de 1,8 million de personnes chaque mois
70 % du budget est consacré à la masse salariale
Framasoft est une association d’intérêt général : tous les dons qui nous sont faits sont défiscalisables à hauteur de 66 % pour les contribuables français⋅es. Ainsi un don de 100 € ne vous coûtera en réalité que 34 € après défiscalisation.
Si nous voulons boucler notre budget pour 2024, il ne nous reste que 3 jours pour récolter 48 000 € : nous n’y arriverons pas sans votre aide !