A new application for Framaspace : OwnershipTransfer
Still more features on Framaspace? Yes! At the moment, we’re spoiling the users of this service, with the integration of quite a few features like the Forms and Tables applications, but also the ‘Intros’ app developed by Val, our summer intern. And because it’s Val, it’s festival (shameful rhyme!): just before leaving us for a well-deserved holiday and a final year of studies, he delivered a new ‘Ownership Transfer’ application that will make life easier for administrators of Framaspace spaces.
Hi Val, we’re not going to ask you to introduce yourself, as you already did in the previous interview. We’ll just remind you that you’re doing an internship at Framasoft from the beginning of May to the end of August 2024, with the aim of developing tools to support Framaspace, and therefore Nextcloud free software.
Hi! Check out my previous interview to find out more about me! I introduce Intros, a Nextcloud app to help users get to grips with Framaspace.
At the end of the interview, I mentioned I was working on another Nextcloud app, OwnershipTransfer. Back then things were only getting started, but I cooked, and now it’s ready.
OK, so let’s talk about the OwnershipTransfer App. What’s it for ? Who is the target audience ?
As mentioned in the previous article, OwnershipTransfer makes it possible to transfer data from one user to another in Nextcloud. For example, when someone leaves an association that uses Nextcloud (say, on Framaspace 😏), it can be useful to move their files to another user before deleting their account. You could avoid losing important archives, invoices… The same goes for calendars or address books.
Well worry no more, OwnershipTransfer (or « OT » from now on in this article) does all that. It allows Nextcloud admins to transfer data from whoever to whoever. Initially mostly designed for files, I extended it to calendars and contacts transfer.
OT allows a transfer of all the data, but also a more fine-grained choice. One can choose the calendar, address book or folder they want to transfer, so they don’t end up with someone’s holidays pictures in their files.
Screenshot of Ownership Transfer (also available in English)
Screenshot of Ownership Transfer (also available in English)
But… didn’t this feature already exist in Nextcloud ?
It did, but not the way we wanted it to.
Nextcloud already allows transferring your own files to another user, with a small graphical interface in the user settings section. You can only transfer your own files to another user, but not choose a source user: this isn’t suitable for an instance admin who would want to move files from one user to another.
An instance admin can also transfer files or calendars from one user to another, with an OCC command. OCC is Nexctloud’s CLI, via which admins can handle some server settings. You can only use it from the command line in a terminal, which to most human beings is… cryptical.
In short there are existing working solutions, but not with a simple graphical interface for admins. This is especially an issue in « Nextcloud farms » (an organization hosting Nextcloud instances for a lot of clients at once) like Framaspace, because admins don’t have access to the CLI in this case.
Technically, how does it work ?
Since it’s integrated with other Nextcloud apps, OT is heavily relying on existing Nextcloud APIs. The app also uses adapted parts of Nextcloud’s code. For example, I use the code from the existing files transfer feature, which I modified to fit with our requirements. The same goes for the calendar transfer.
However, I add to implement the contacts transfer, since it is not available in Nextcloud (not even through a cryptic CLI). It looks a lot like the calendar transfer, since both of them are based on the WebDAV protocol, so I had an example to work with.
The interface is built with Nextcloud’s Vue components, of course. They are pretty pleasant to use, and new ones are often released. It allowed me to build a complete graphical interface in no time, while staying consistent with the rest of Nextcloud’s UI.
Have you encountered any technical or organisational problems?
Since Nextcloud’s documentation hasn’t miraculously grown since last time, I had to wander around in Nextcloud’s source code to find the functions needed. I could almost make a hobby out of that. Almost.
At least the features exist in Nextcloud already, so adapting them wasn’t the most difficult thing ever. I could also rely on tcit’s advice, co-director of Framasoft and Nextcloud contributor. In short: I write code, he looks at it, says « cool thing, but not scalable », and I correct it.
Scalability was the most common problem. It always works on my small test environment with 5 accounts and 7 folders, but it should also (and most importantly) work on big Nextcloud instances with lots of files. For example, the files transfer can take a lot of time and resources: it has to move all the files from the source to the destination folder, which takes more or less time depending on the amount of files to move and the underlying storage type. Because of that, it is handled in the background: instead of launching it upon receiving the request, it is placed in a jobs queue that the server periodically handles.
Calendar and contacts transfers do not have this issue: they only consist of a simple SQL query to change the right property on the right element. This operation is fast, so it can be handled in the foreground.
Besides the actual transfer, building the interface was also challenging. The app allows the admin to choose which element will be transferred, so they need an interface to choose it. For calendars and contacts, it’s fairly simple: with Nextcloud’s components, I could easily build a list of calendars or address books. But for files, things are getting complicated: we need a whole tree-style view to show the subfolders’ content.
Luckily, I’ve got back up. Romain, former fellow INSA Lyon student (in Telecom, just like me!) and former Framasoft intern, worked on Sorts a few years ago. The goal was to make an app to enhance Nextcloud’s file search, mostly with filters. And Sorts has something I was really interested in: a tree-style files view. Exactly what I needed.
Interface adapted to OT for choosing the file to be transferred
After a few tweaks here and there in Sorts’ code, which wasn’t necessarily easy, its tree-style view perfectly integrated with OwnershipTransfer. It helped a lot and saved a lot of dev time, and I could even improve it a bit with some lines to better view the current folder and some sharing icons.
Now that your internship is coming to an end, and you’ve been « eating » some Nextcloud for the past 6 months, what are your potential takes on this software ?
It’s rant time!
Anyways, besides the rant and all the things I could blame on Nextcloud (like its lightweight documentation, its occasional slowness or its imperfect UI), its a very functional software, and it’s all that matters for pretty much everyone. It could be better (and it’s already happening!), but I find it to be working just fine for most typical usages. I’ve been using it for 2 years on a Raspberry PI to backup my files and photos, and I’ve never had any major issues with it.
However, its collaborative features can definitely get better (things like multiple people writing on the same text or calc document at the same time), especially since they are very popular among the people who use Nextcloud. These features exist, but they are typically hard to use, especially the first time, and poorly optimized. So when I see Nextcloud bragging about how they now have AI integrated (which I think most people don’t find that useful anyway), while opening a shared file sometimes still causes a mess… I think they could focus on more important things. But I guess you do need something to make it look shiny.
We’ve been very very pleased and satisfied to work with you over the last few months! Any final words?
I was delighted to work at Framasoft! I’ve learned a lot through this internship, and I want to thank the association again for its welcoming and comfortable working conditions.
Right now it’s time to relax, for me at least (before going to « class » again, but don’t mention it), and then to go back to work on my final internship at the beginning of next year! I’m just saying, of course 😉
Une nouvelle application pour Framaspace : OwnershipTransfer
Encore des nouveautés sur Framaspace ? Et oui ! En ce moment, on gâte les utilisateur⋅ices de ce service, avec l’intégration de pas mal de fonctionnalités comme les applications Forms et Tables, mais aussi l’app « Intros » qu’a développée Val, notre stagiaire estival (rime riche !). Et comme c’est Val, c’est festival (rime honteuse !) : juste avant de nous quitter pour des vacances bien méritées et une dernière année d’études, il nous a livré une nouvelle application « Ownership Transfer » qui facilitera la vie des administrateur⋅ices d’espaces Framaspace.
Bonjour Val, on ne va pas te proposer de te présenter, car tu l’as déjà fait dans la précédente interview. On rappellera juste que tu es en stage à Framasoft de début mai à fin août 2024, avec pour objectif de développer des outils d’accompagnement à Framaspace, et donc au logiciel libre Nextcloud.
Salut ! N’hésitez pas à aller lire ma précédente interview pour en savoir plus sur moi ! J’y parle d’Intros, une application pour faciliter la prise en main de Framaspace.
A la fin de l’interview, je parle d’une autre application Nextcloud sur laquelle je travaillais, OwnershipTransfer. À l’époque c’était encore en cours de préparation, mais depuis j’ai cuisiné, et maintenant c’est prêt.
OK, donc, parlons de l’App Ownership Transfer. À quoi sert-elle ? Quel est le public visé ?
Comme indiqué dans l’article précédent, OwnershipTransfer sert à transférer des données d’un⋅e utilisateurice à l’autre dans Nextcloud. Par exemple, lorsqu’une personne quitte une association qui utilise du Nextcloud (sur Framaspace, au hasard 😏), il peut être bien pratique de transférer ses fichiers avant de supprimer son compte. Cela permet d’éviter de perdre des archives importantes, des factures,… De même pour ses agendas, ou même ses carnets d’adresses.
Ça tombe bien, OwnershipTransfer (qu’on abrégera par la suite « OT ») fait tout ça. Elle permet aux administrateur⋅ices d’un espace Nextcloud de transférer les données de n’importe qui vers n’importe qui. À l’origine surtout destinée au transfert de fichiers, j’ai pu étendre l’application au transfert d’agendas et de contacts.
OT permet de transférer toutes les données d’une application, mais aussi de choisir plus finement ce qui devra être transféré. On peut ainsi choisir l’agenda, le carnet d’adresse ou un dossier à transférer, pour éviter de se retrouver avec les photos de vacances de quelqu’un d’autre dans ses fichiers.
Mais… cette possibilité n’existait pas déjà dans Nextcloud ?
Si, mais pas exactement comme on le voulait.
Nextcloud permet déjà de transférer ses propres fichiers à une autre personne, via une petite interface graphique dans les paramètres utilisateurs. On peut là uniquement transférer ses propres fichiers vers un autre utilisateur, mais pas choisir l’utilisateur source : ce n’est pas une solution pour les admins d’espace qui voudraient transférer des fichiers d’une personne à une autre.
Un⋅e administrateurice d’espace peut aussi transférer des fichiers ou des agendas d’un⋅e utilisateur⋅ice à un⋅e autre, via une commande « OCC ». OCC est la CLI de Nextcloud, via laquelle les admins peuvent lancer diverses opérations de maintenance ou de management. On y accède donc en ligne de commande via le terminal uniquement, ce qui a de quoi repousser la plupart des êtres vivants sur cette planète.
En bref cette solution fonctionne, mais ne propose pas d’interface graphique simple aux admins. Cela pose problème dans le cas de « fermes à Nextcloud » (une organisation qui héberge des instances Nextcloud pour beaucoup de clients d’un coup) comme Framaspace, dans lesquelles les administrateur⋅ices d’un espace n’ont pas accès à la ligne de commande.
Techniquement, comment ça marche ?
Comme elle s’intègre avec d’autres applications, OT se base essentiellement sur des APIs existantes de Nextcloud. L’application réutilise aussi des parties du code de Nextcloud que j’ai adaptées aux besoins de l’application. Par exemple, je réutilise le code de transfert de ses propres fichiers, en l’adaptant pour pouvoir choisir à la fois l’utilisateur⋅ice source et destinataire. De même pour le transfert d’agendas.
J’ai par contre dû implémenter le transfert de contacts, non disponible dans Nextcloud par défaut. Il est cependant très similaire au transfert d’agendas, dont je me suis inspiré, puisque les deux se basent sur le protocole WebDAV.
Pour l’affichage, j’utilise bien sûr les composants Vue proposés par Nextcloud. Leurs composants sont assez complets et agréables à utiliser, et ils en sortent de nouveaux régulièrement. Cela m’a permis de réaliser une interface graphique complète en peu de temps, et cohérente avec le reste du logiciel.
Tu as rencontré des soucis, qu’ils soient techniques, organisationnels, etc ?
La documentation de Nextcloud n’ayant pas miraculeusement centuplé en taille depuis la dernière fois, j’ai encore dû fouiller dans le code source de Nextcloud pour aller trouver les fonctions à utiliser. Ça commencerait presque à me plaire. Presque.
Au moins, comme les fonctionnalités existaient déjà en partie dans Nextcloud, les adapter n’a pas été d’une difficulté monstre. Surtout que j’ai pu beaucoup compter sur les conseils de Tcit, codirecteur de Framasoft et contributeur bénévole de Nextcloud. En gros : j’écris du code, il le regarde, il se dit « Cool, mais ça passe pas à l’échelle ton truc », et puis je corrige.
C’était le problème la plupart du temps, le passage à l’échelle. C’est bien beau quand ça fonctionne sur mon petit environnement de test à 5 comptes et 7 dossiers, mais dans l’idéal il faut aussi que ça fonctionne sur les grosses instances Nextcloud avec beaucoup de fichiers. Par exemple, le transfert de fichiers peut prendre beaucoup de temps et de ressources : il faut déplacer tous les fichiers du dossier source vers la destination, ce qui peut être plus ou moins long en fonction de la quantité de fichiers et du type de stockage. Celui-ci est donc géré en fond : au lieu de l’exécuter au premier plan dès la réception de la requête, il est placé dans une file de « jobs » que le serveur effectue périodiquement.
Les transferts de contacts et d’agendas n’ont pas le même problème : il s’agit dans leur cas d’une simple requête SQL qui vient modifier la propriété de l’élément en question. Cette opération est rapide, et peut donc être exécutée au premier plan.
Outre le transfert en soi, réaliser l’interface a aussi été un vrai défi. L’application doit permettre à l’administrateurice de choisir quel élément doit être transféré, et doit donc lui proposer une interface pour faire son choix. Pour les agendas et les contacts, c’est plutôt simple : avec les composants de Nextcloud, j’ai pu facilement faire une liste d’agendas ou de carnets d’adresses. Pour les fichiers, ça se complexifie : il faut récréer une arborescence complète de fichiers, capable d’afficher des sous-dossiers.
Heureusement, un « insalien » n’est jamais seul. Romain, ancien étudiant INSA Lyon (du département Télécom, comme moi !) et ancien stagiaire à Framasoft, a travaillé il y a quelques années sur l’application Sorts. Le but de Sorts est d’améliorer la recherche de fichiers de Nextcloud, en proposant une recherche avec des filtres notamment. Mais Sorts a surtout quelque chose qui m’intéressait : une arborescence de fichiers en arbre. Pile ce qu’il me fallait.
Sorts Interface adapted to OT for choosing the file to be transferred
Après avoir récupéré et adapté le code de Sorts, ce qui n’était pas forcément de tout repos, son arborescence s’intégrait parfaitement à OwnershipTransfer. Cela m’a permis de gagner beaucoup de temps de développement, et j’ai même pu apporter des améliorations, comme les lignes qui mettent mieux en évidence l’arborescence, ou les icônes de partage. Pas mal non ? C’est insalien 😎
Maintenant que ton stage s’achève, et après avoir « mangé » du Nextcloud pendant près de 6 mois, quels sont tes potentiels positionnements sur ce logiciel ?
Ah, c’est le moment où je râle !
Non blague à part, malgré toutes les critiques que je pourrais faire sur Nextcloud (notamment sa documentation légère, sa lenteur occasionnelle ou son interface qui laisse parfois à désirer), le logiciel est fonctionnel, et franchement c’est tout ce qui compte pour la plupart des gens. Des améliorations sont possibles (et sont en cours !), mais je le trouve déjà assez opérationnel pour la plupart des besoins que peuvent avoir ses utilisateur⋅ices. Je l’utilise personnellement depuis 2 ans sur ma Raspberry PI pour stocker mes fichiers, et je n’ai jamais eu de problème majeur avec.
Le logiciel peut par contre s’améliorer sur ses aspects collaboratifs, qui sont très demandés par les utilisateur⋅ices (écrire à plusieurs sur un fichier texte ou calc par exemple). Ces fonctionnalités existent, mais sont souvent encore difficiles à prendre en main et peu optimisées. Du coup, quand je les vois se vanter d’intégrer de l’IA au logiciel (alors que franchement, je pense que pour beaucoup ça n’a que très peu d’utilité) alors même que quand on ouvre un fichier texte en collaboratif c’est parfois encore le bordel… je me dis qu’ils pourraient mieux diriger leurs efforts. Mais bon, faut bien des annonces pour faire vendre.
Nous avons été très heureux⋅ses et satisfait⋅es de travailler avec toi pendant ces quelques mois ! Un dernier mot pour la fin ?
J’ai été très heureux de travailler à Framasoft ! Ce stage a été très enrichissant pour moi, et je remercie encore l’association pour son accueil et ses conditions de travail au top. Si les sujets que j’aborde dans cet article vous intéressent et que vous cherchez un stage dégooglisé, je vous encourage à venir à Framasoft (promis le dev Nextcloud c’est pas si terrible en vrai). Sinon, vous pouvez toujours faire un don !
Maintenant c’est l’heure des vacances pour moi (puis des « cours », mais ne le dites pas trop fort), puis de mon stage de fin d’études en début d’année prochaine. Je glisse ça là, au cas où 😉
Merci et bonne continuation, 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
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 🙏
Framapad, Framaforms, Framadate, Mobilizon.fr… le nouveau site Dégooglisons Internet présente sur une page tous nos services libres, gratuits et disponibles au plus grand nombre.
Déjà 8 ans qu’on dégooglise avec entrain
Avez-vous déjà pris des notes de vos réunions d’équipe en utilisant Framapad ? Êtes-vous déjà passé⋅e par Framadate pour trouver le bon moment pour l’anniversaire « surprise » de votre meilleur⋅e ami⋅e ? Avez-vous déjà répondu à un Framaforms en vous sentant soulagé⋅e de ne pas laisser vos infos à Google ? Notre campagne Dégooglisons Internet, lancée en 2014, nous a permis de montrer qu’il est possible d’utiliser des services en ligne éthiques au quotidien pour s’émanciper des géants du web. Entre 2014 et 2019, notre petite association a mis à disposition des internautes une quarantaine de services en ligne libres et de confiance.
Après ce succès — parce que vous êtes nombreux⋅ses à les utiliser, mais surtout nombreux⋅ses à avoir pris conscience qu’il était important de déconstruire ses habitudes numériques — nous nous sommes un peu épuisé⋅es (on vous l’a déjà dit qu’on était une petite association ?). En 2019, nous avons donc pris la décision de fermer certains de ces services (toutes les raisons ici !) et nous avons voulu montrer que Framasoft n’est pas la seule à proposer des alternatives. Cette période de fermetures est maintenant terminée: nos 16 services en ligne sont disponibles pour toute personne souhaitant utiliser des outils qui respectent nos libertés.
Afin de vous faciliter l’accès à ces services, d’uniformiser notre image et de rassurer nos utilisateur⋅ices (oui oui, les fermetures, c’est fini !), nous avons décidé de refondre le site internet degooglisons-internet.org. C’est parti pour la visite guidée des nouveautés !
Un site à notre image actuelle
Au fil des ans, Framasoft a évolué : nos valeurs de justice sociale et d’émancipation se sont renforcées, notre discours se veut non moralisateur et encourageant, les images que nous utilisons nous font voyager dans un monde qui nous anime. Appliquer ces cheminements internes à nos sites Internet nous a paru plutôt logique. La magnifique illustration « Quittons la planète GAFAM NATU BATX » de David Revoy nous suggère qu’un monde éthique existe et que l’on peut prendre plaisir à l’explorer ensemble !
Nos 16 services en accès super rapide
Vous nous l’avez clairement exprimé récemment : nos services en ligne, vous les aimez beaucoup beaucoup. On s’est donc dit que faciliter leur accès sur une seule page serait une bien bonne idée. Vous trouverez ces services directement sur la page d’accueil, classés par thématiques et accessibles en un clic. Et si vous préférez passer par la barre de recherche, c’est possible !
Des liens vers d’autres ressources
Expliquer pourquoi on fait tout ça, c’est essentiel, et de façon simple c’est encore mieux ! Soulever les problèmes que nous posent les géants du Web tout en proposant différentes solutions pour changer ses habitudes numériques, c’est une première étape. La seconde a été de rendre le site moins verbeux en listant des ressources externes pour creuser les sujets : conférence, cours en ligne, ressources libres, autres hébergeurs de confiance, médias sociaux du fédiverse… voilà de quoi intéresser les plus curieux⋅ses.
C’est qui qui fait tout ça ?
Parce que c’est souvent oublié : derrière des services en ligne il y a des femmes et des hommes qui font tourner la machine ! Nous avons donc voulu mettre en avant que dans l’envers du décor, c’est Framasoft (coucou !), petite association loi de 1901 de moins de 40 membres, dont 10 salarié⋅es. Et on aime toujours rappeler que si on peut continuer à faire tout ça, c’est bien grâce à vous, grâce à vos dons.
Dégooglisons Internet a été pensé pour vous être utile : n’hésitez pas à vous en emparer et à le partager librement autour de vous pour aider les personnes de votre entourage à se dégoogliser !
L’équipe de traduction des bénévoles de Framalang vous propose aujourd’hui le bref témoignage de Silvia, une designeuse indépendante1, qui avait atteint comme beaucoup un degré d’addiction élevé aux réseaux sociaux. Comme d’autres aussi, elle a renoncé progressivement à ces réseaux, et fait le bilan après six mois du nouvel état d’esprit dont elle a bénéficié, une sorte de sentiment de soulagement, celui d’avoir retrouvé un peu de liberté… Bien sûr chacun a une trajectoire différente et la démarche peut n’être pas aussi facile, mais pourquoi ne pas tenter ?
Article original sur le blog de l’autrice : Life off social media, six months in
Traduction Framalang : Bromind, Diane, Florence, goofy, Marius, ngfchristian, Penguin
Six mois hors réseaux sociaux, six mois dans ma vie
par Silvia Maggi
J’étais vraiment partout. Citez-moi un réseau social, et sans doute, j’y avais un compte… Internet a toujours été important pour moi, et un certain degré de présence en ligne était bon pour mon travail, mes hobbies et mes relations sociales.
Mes préférés étaient Twitter, Flickr et LinkedIn. J’ai été une utilisatrice plutôt précoce. Puis sont arrivés Facebook et Instagram, qui sont ensuite devenus les principales raisons pour lesquelles j’ai fermé la plupart de mes comptes. Dès l’origine, j’ai eu une relation d’amour-haine avec Facebook. La première fois que je m’y suis connectée, j’ai détesté l’interface, les couleurs, et j’avais du mal à voir l’intérêt. D’ailleurs, j’ai aussitôt fermé le compte que je venais d’ouvrir, et je n’y suis revenue que plus tard, poussée par des amis qui me disaient « on y est tous et c’est marrant ».
Avec Instagram, le ressentiment est monté progressivement. Mon amour pour la photographie aurait pu être satisfait par l’application mais c’était également une période où les filtres étaient utilisés à outrance – à l’époque, l’autre application en vogue pour la prise de photos était Hipstamatic – et je préférais de toute façon prendre des clichés plutôt avec un appareil photo.
À mesure que la popularité d’Instagram augmentait, associée à la qualité du contenu, je suis devenue accro. Je n’ai jamais effacé mon compte Flickr, mais je ne visitais que rarement la plateforme : à un moment, on a eu l’impression que tout le monde avait migré vers l’application aux photos carrées. Cependant, quand Facebook a acheté Instagram pour 1 milliard de dollars en 2012, son avenir est devenu malheureusement évident. Avance rapide jusqu’à janvier 2021 : j’ai désactivé ce que je considérais à une époque comme mon précieux compte Instagram, et j’ai également fermé mon compte WhatsApp. Avant cela, j’avais fermé mes comptes Twitter, Facebook et Pinterest. Six mois plus tard, je peux dire comment les choses se sont passées.
Le bruit de fond s’est tu
Au début, c’était une sensation étrange : quelque chose manquait. Dans ma vie, je m’étais habituée à un certain niveau de bruit, au point de ne plus m’en rendre compte. Une fois qu’il a disparu, cela est devenu si évident que je m’en suis sentie soulagée. J’ai désormais moins d’opportunités de distractions et ainsi, il m’est devenu progressivement, plus facile de rester concentrée plus longtemps. En conséquence, cela a considérablement amélioré ma productivité et désormais, je suis à même de commencer et terminer la lecture de livres.
Le monde a continué de tourner
Je ne prête plus l’oreille aux mèmes, scandales ni à tout ce qui devient viral ou tendance sur les réseaux sociaux. Au lieu d’avoir peur de rater quelque chose, j’y suis indifférente. Le temps que je passais à suivre ce qui arrivait en ligne, je le passe ailleurs. Et le mieux dans tout ça, c’est que je ne me sens pas obligée de donner mon avis. J’ai des opinions précises sur les choses qui me tiennent à cœur, mais je doute que le monde entier ait besoin de les connaître.
En ce moment historique, tout peut être source de division, et les réseaux sociaux sont un endroit où la plupart des gens choisissent un camp. C’est un triste spectacle à voir car les arguments clivants sont amplifiés mais jamais réellement apaisés.
Ma santé mentale s’est améliorée
Il y a quelques années, je pensais qu’avoir du succès sur Instagram pourrait devenir mon boulot d’appoint. C’est arrivé à beaucoup de gens, alors pourquoi pas moi ? J’avais acheté un cours en ligne, proposé par un influenceur célèbre, pour comprendre comment rendre mon compte Instagram digne d’intérêt, et faire monter mes photos tout en haut grâce à l’algorithme.
À partir de ce moment, je me suis retrouvée enfermée dans une boucle. Je sortais et prenais avec frénésie plein de photos, les publiais puis je vérifiais les statistiques pour voir comment elles évoluaient. J’ai eu de bons moments, rencontré des personnes géniales, mais ce n’était jamais assez. En tant que photographe, je n’en faisais jamais assez. Les statistiques sont devenues un problème : j’en étais obsédée. Je les vérifiais tout le temps, me demandant ce que je faisais mal. Quand tout cela est devenu trop, je suis passée à un compte personnel, espérant résoudre mon problème en cliquant sur un simple bouton. Ça ne s’est pas passé ainsi : les chiffres n’étaient pas le vrai problème.
À chaque fois que j’éprouvais comme une démangeaison de photographier, et que je ne pouvais pas prendre de photos, je me sentais coupable parce que je n’avais rien à poster. Ma passion pour la photographie est passée d’une activité qui ne m’a jamais déçue, à une source d’anxiété et de sentiment d’infériorité. Depuis que j’ai désactivé mon compte Instagram, je prends des photos quand j’en ai envie. Je les poste sur Flickr, ou bien je les garde pour moi. Ça ne compte plus vraiment, tant que c’est un exutoire créatif.
Finie l’immédiateté
Chaque fois que j’avais quelque chose à dire ou à montrer, je postais presque immédiatement sur un réseau social. C’était la chose normale à faire. Même si cela a diminué pendant les dernières années, je vois cela comme une attitude étrange de ma part. C’est peut-être une réflexion due au fait que je me connais un peu mieux désormais, mais il m’a toujours fallu du temps pour assimiler des concepts et me forger des opinions. C’est pour cela que je préfère écrire sur mon blog et que j’ai réduit récemment ma fréquence de publication : je donne davantage de détails sur mes apprentissages et mes réalisations récentes.
Conclusion
Quitter les réseaux sociaux a été une bonne décision pour moi. Je suis plus concentrée, moins anxieuse et j’ai à présent plus de temps libre. Cela, en plus des divers confinements, m’a permis de mieux me concentrer et réfléchir davantage à ce qui compte vraiment. Prendre cette décision ne conviendrait certainement pas à tout le monde, mais il est important de réaliser à quel point les réseaux sociaux influencent nos vies, et à quel point ils peuvent changer nos habitudes ainsi que notre manière de penser. Et ainsi, prendre des décisions à notre place.
Des très nombreux témoignages en français qui mettent souvent l’accent sur la difficulté à se « sevrer »…
Mise à jour
22 Novembre 2021. Il y a deux mois, je me suis connectée à Instagram et n’ai rien ressenti. J’ai vu une vidéo d’un ami, mais je n’ai nullement éprouvé le besoin de regarder plus loin.
Il n’y avait aucun intérêt à maintenir ce compte en mode inactif, alors j’ai demandé sa suppression.
Maintenant c’est fini.
Framasphère s’arrête, diaspora* continue
Nous sommes le futur de diaspora*
par Flaburgan
Le projet diaspora* est à un moment charnière et de notre engagement dépend son avenir. Il est temps de s’impliquer pour que le projet se développe, au niveau du code bien sûr, mais aussi en tant que communauté d’un logiciel décentralisé. Découvrons pourquoi à travers l’histoire de Framasphère.
La création
J’ai découvert diaspora* (page wikipédia) en 2011, et ça a été le coup de foudre. Pour une “people person” comme moi, les réseaux sociaux sont un outil magnifique, mais il était hors de question de participer à ce danger qu’est facebook. Le fait que chacun puisse installer son serveur diaspora* (appelé pod) et qu’ils puissent tous communiquer ensemble pour créer un réseau est une excellente réponse à ces problèmes de vie privée. En 2012, je prends donc mon courage à deux mains et j’installe le logiciel sur https://diaspora-fr.org avec mon ami Taratatach. Initialement, nous ne l’avions fait que pour nos amis, mais finalement nous ouvrons les inscriptions à tous, et quelques milliers de personnes rejoignent ainsi l’aventure diaspora* depuis notre pod.
En avril 2014, je retrouve Pyg de Framasoft aux Journées du Logiciel Libre à Lyon, et il me parle d’un projet qu’ils ont dans les cartons, “Dégoogliser Internet”. Il s’agirait de proposer des alternatives aux services fournis par les géants du Web. Diaspora* pourrait être l’alternative à Facebook. Ils me prêtent un serveur Framasoft sur lequel j’installe diaspora* et bingo, Framasphère est née. Nous prévoyons d’annoncer le service en octobre 2014, lors du lancement officiel de la campagne dégooglisons. Mais dans le même temps, l’État Islamique se crée et, vite banni des réseaux traditionnels, il débarque sur diaspora*. Évidemment, diaspora-fr n’est pas épargné, et je me retrouve en contact direct avec la police judiciaire, le serveur étant hébergé en mon nom propre.
Psychologiquement, cela devient dur à gérer, et c’est donc avec soulagement que Framasphère prend le relais de diaspora-fr comme pod principal de la communauté francophone. C’est maintenant une association qui porte légalement la responsabilité des contenus publiés. Plus d’inquiétude. Je ferme les inscriptions sur diaspora-fr, et je deviens officiellement membre de Framasoft. Une belle histoire commence.
La boucle est bouclée
Huit années plus tard, l’association a décidé la fermeture de Framasphère qui aura lieu le 7 octobre 2021 (toutes les infos sur ce post) et nous prenons le chemin inverse : les inscriptions sur Framasphère ferment, et comme il est hors de question pour moi de ne pas proposer un serveur de confiance comme alternative, je rouvre celles de diaspora-fr.
Je m’implique aujourd’hui énormément dans la fonctionnalité d’import d’un compte avec l’aide de Thorsten Claus (encore merci à lui) pour vous permettre de migrer de façon transparente de Framasphère vers diaspora-fr. Comme on vous l’a dit, diaspora* 0.8.0.0 permettant la migration ne sera pas prête avant la fermeture de Framasphère, mais je mettrai quand même le code (encore instable) en ligne sur diaspora-fr. C’est d’ailleurs un premier point où j’aurais besoin d’aide : si vous êtes prêts à faire les béta-testeurs de la migration avec votre compte Framasphère, merci de vous signaler dans les commentaires !
Nous revenons donc à la situation initiale : Framasphère n’est plus là, diaspora-fr est le principal pod francophone, et je suis seul derrière le projet. Cela implique de gérer la maintenance du serveur (assez faible), la modération (assez faible aussi), les mises à jour de diaspora* (je maîtrise), mais aussi potentiellement les requêtes légales (en pratique, je n’en ai plus eu depuis 2014). Cela ne représente très honnêtement pas beaucoup de travail (quelques heures par mois tout au plus), mais tout repose sur moi et si demain je me plante en vélo ou bien plus gentiment je décide de passer une semaine déconnectée à la montagne et qu’il y a un problème sur le serveur, le service sera indisponible.
Les solutions
Cela fait donc longtemps que j’aimerais que d’autres personnes techniques me rejoignent, pour éviter ce bus factor. Le problème, c’est qu’en tant qu’administrateur, nous avons accès à toutes les données des utilisateurs. Or, les gens se sont inscrits sur diaspora-fr parce qu’ils et elles me faisaient confiance. Difficile de donner accès à leurs données à quelqu’un que je ne connaîtrais pas, il me faut moi même trouver quelqu’un de confiance. N’hésitez pas à vous proposer, mais ne soyez pas vexé si je refuse.
L’autre solution, c’est tout simplement que l’on revienne à ce que diaspora* aurait toujours dû être : un réseau décentralisé. La charge est bien moins importante, le nombre d’utilisateurs impactés par une panne bien plus réduit, si au lieu d’un pod avec des dizaines de milliers de personnes, les utilisateurs sont répartis sur des dizaines de pods. Ami(e)s technicien(ne)s, vous êtes la solution ! Si vous croyez au projet, installez votre serveur, vraiment, ce n’est pas très compliqué et la maintenance est facile.