L’Union Européenne doit poursuivre le financement des logiciels libres
Le programme de financement européen NGI est en danger, alors qu’il s’agit probablement d’une des meilleures choses qui soit arrivée au logiciel libre durant ces dernières années. En effet, cette initiative permet de soutenir financièrement des centaines de projets libres communautaires, dont certaines briques fondamentales pour notre vie numérique quotidienne. Framasoft bénéficie depuis plusieurs années de ce type de fonds, notamment sur les projets PeerTube et Mobilizon.
Pour nous et pour d’autres, il s’agit d’un véritable accélérateur pour tous les logiciels libres, et le fait que ce programme soit en danger met en péril tout l’écosystème qu’il consolide et fortifie.
Nous vous invitons à contacter vos élu·es pour les alerter des enjeux et faire perdurer ce programme.
Cette lettre a été publiée initialement par les petites singularités. Si vous souhaitez la signer, merci de la publier sur votre site et de compléter le tableau ici.
Lettre ouverte à la Commission Européenne
Depuis 2020, les programmes Next Generation Internet (NGI), sous-branche du programme Horizon Europe de la Commission Européenne financent en cascade (via les appels de NLnet) le logiciel libre en Europe. Cette année, à la lecture du brouillon du Programme de Travail de Horizon Europe détaillant les programmes de financement de la commission européenne pour 2025, nous nous apercevons que les programmes Next Generation Internet ne sont plus mentionnés dans le Cluster 4.
Les programmes NGI ont démontré leur force et leur importance dans le soutien à l’infrastructure logicielle européenne, formant un instrument générique de financement des communs numériques qui doivent être rendus accessibles dans la durée. Nous sommes dans l’incompréhension face à cette transformation, d’autant plus que le fonctionnement de NGI est efficace et économique puisqu’il soutient l’ensemble des projets de logiciel libre des plus petites initiatives aux mieux assises. La diversité de cet écosystème fait la grande force de l’innovation technologique européenne et le maintien de l’initiative NGI pour former un soutien structurel à ces projets logiciels, qui sont au cœur de l’innovation mondiale, permet de garantir la souveraineté d’une infrastructure européenne. Contrairement à la perception courante, les innovations techniques sont issues des communautés de programmeurs européens plutôt que nord-américains, et le plus souvent issues de structures de taille réduite.
Le Cluster 4 allouait 27 millions d’euros au service de :
« Human centric Internet aligned with values and principles commonly shared in Europe » ;
« A flourishing internet, based on common building blocks created within NGI, that enables better control of our digital life » ;
« A structured eco-system of talented contributors driving the creation of new internet commons and the evolution of existing internet common« .
Au nom de ces enjeux, ce sont plus de 500 projets qui ont reçu un financement NGI0 dans les 5 premières années d’exercice, ainsi que plus de 18 organisations collaborant à faire vivre ces consortia européens.
NGI contribue à un vaste écosystème puisque la plupart du budget est dévolue au financement de tierces parties par le biais des appels ouverts (open calls). Ils structurent des communs qui recouvrent l’ensemble de l’Internet, du matériel aux applications d’intégration verticale en passant par la virtualisation, les protocoles, les systèmes d’exploitation, les identités électroniques ou la supervision du trafic de données. Ce financement des tierces parties n’est pas renouvelé dans le programme actuel, ce qui laissera de nombreux projets sans ressources adéquates pour la recherche et l’innovation en Europe.
Par ailleurs, NGI permet des échanges et des collaborations à travers tous les pays de la zone euro et aussi avec ceux des widening countries¹, ce qui est actuellement une réussite tout autant qu’un progrès en cours, comme le fut le programme Erasmus avant nous. NGI0 est aussi une initiative qui participe à l’ouverture et à l’entretien de relation sur un temps plus long que les financements de projets. NGI encourage également à l’implémentation des projets financés par le biais de pilotes, et soutient la collaboration au sein des initiatives, ainsi que l’identification et la réutilisation d’éléments communs au travers des projets, l’interopérabilité notamment des systèmes d’identification, et la mise en place de modèles de développement intégrant les autres sources de financements aux différentes échelles en Europe.
Alors que les États-Unis d’Amérique, la Chine ou la Russie déploient des moyens publics et privés colossaux pour développer des logiciels et infrastructures captant massivement les données des consommateurs, l’Union Européenne ne peut pas se permettre ce renoncement. Les logiciels libres et open source tels que soutenus par les projets NGI depuis 2020 sont, par construction, à l’opposée des potentiels vecteurs d’ingérence étrangère. Ils permettent de conserver localement les données et de favoriser une économie et des savoirs-faire à l’échelle communautaire, tout en permettant à la fois une collaboration internationale. Ceci est d’autant plus indispensable dans le contexte géopolitique que nous connaissons actuellement. L’enjeu de la souveraineté technologique y est prépondérant et le logiciel libre permet d’y répondre sans renier la nécessité d’œuvrer pour la paix et la citoyenneté dans l’ensemble du monde numérique.
Dans ces perspectives, nous vous demandons urgemment de réclamer la préservation du programme NGI dans le programme de financement 2025.
¹ Tels que définis par Horizon Europe, les États Membres élargis sont la Bulgarie, la Croatie, Chypre, la République Tchèque, l’Estonie, la Grèce, la Hongrie, la Lettonie, la Lituanie, Malte, la Pologne, le Portugal, la Roumanie, la Slovaquie et la Slovénie. Les pays associés élargies (sous conditions d’un accord d’association) l’Albanie, l’Arménie, la Bosnie Herzégovine, les Iles Féroé, la Géorgie, le Kosovo, la Moldavie, le Monténégro, le Maroc, la Macédoine du Nord, la Serbie, la Tunisie, la Turquie et l’Ukraine. Les régions élargies d’outre-mer sont: la Guadeloupe, la Guyane Française, la Martinique, La Réunion, Mayotte, Saint-Martin, Les Açores, Madère, les Iles Canaries.
Mobilizon V4 : the maturity stage
5 years after its announcement, Mobilizon, our free, federated alternative to Facebook groups and events, is reaching maturity. We take this opportunity to look back on its history and future.
🦆 VS 😈: Let’s take back some ground from the tech giants!
As this is the last major version of Mobilizon to be ported by Framasoft (yes, we’re teasing you a bit 😅 ), we’d like to start with a reminder of the various stages that led us to this v4.
2018: an intention and attentions
Remember: in December 2018 (5 years ago already!), we announced (in French) our intention to develop Mobilizon. Our aim was to offer an alternative to Facebook groups and events, which had become the de facto dominant tool as a platform for mobilisation, whether it was organising a birthday party, a free software conference or a climate protest.
To do this, we decided to do things in the right order, starting by asking different audiences about their real needs and expectations (not those we assumed). The aim was to create a tool that was not only practical and welcoming, but also empowering. For example, we decided to reject any form of social gamification (in Mobilizon you follow groups rather than individuals, we banned infinite scrolling in favour of simple pagination, etc.).
2019: Crowdfunding and first beta version
In May 2019, we launched an appeal for donations to fund the development of a first version. Thanks to the mobilisation and generosity of over 1,000 donors, it was a success, with almost €60,000 raised. Less than 6 months later, we announced a beta version of the software.
This version provided a good foundation for creating and publishing events. However, it still lacked « core » functionalities, such as the ability to register anonymously for an event, or federation (i.e. the ability of a Mobilizon instance (in French) to easily exchange data with other Mobilizon instances, or even Mastodon instances).
This v1 already offered what was to become the core of the software: groups (the central element of Mobilizon), articles, resources linked to a group, the possibility of having several profiles for the same account, the possibility of participating in an event without registering, and… the federation.
2021: notifications and an app
At the end of 2021, we announced version 2 of Mobilizon. One of the main new features was the eagerly awaited integration of a notification system. But also on the menu: time zone management, « RTL » management (for languages written from right to left, such as Arabic or Hebrew), provision of RSS feeds, the addition of sorting filters, the ability to define an event as « online » (without geographical location), public group tracking, etc. There was even the release of a smartphone application developed by Tom79 (thanks again to him!).
Its main focus was search. It introduced the possibility of federated searches: a search from the « SOMETHING » instance could return results from events hosted on the Mobilizon « ELSE » instance. As with PeerTube’s SepiaSearch metasearch engine, we designed and implemented a Mobilizon-specific engine that allows searches across multiple instances: https://search.joinmobilizon.org
With this release, we have also redesigned the front page of the software. Our aim is to give you more opportunities to discover events and groups you may not have known existed, and to make the diversity of content published on Mobilizon more visible.
2023: waiting for v4…
During 2023 we also quietly released two minor versions. These added anti-spam tools, the ability to manage arbitrary addresses (because an address database can never be perfectly up to date), the ability to use external authentication systems, and the ability to define an external website for people who want to manage registrations outside Mobilizon.
They were also the occasion for bug hunting and improvements to the Mobilizon API, paving the way for one of the most eagerly awaited features of v4 (yes, the teasing is unsustainable 😉 ).
What’s new in Mobilizon v4?
We’ve done it! Version 4 is finally here 🙂 And we’re very proud of the new features it brings!
Private Announcements and Conversations
Event organisers can now send private announcements to attendees. This has been a long awaited feature!
Group or event administrators or moderators can now contact people registered in a group or event directly. You can then write to all these people, or select sub-groups, for example only those who have confirmed their attendance, or conversely those who have not confirmed (or declined). It’s even possible to contact people who have registered without creating a Mobilizon account. This opens up some very interesting possibilities, such as the possibility of communicating important information: a change of location or date, for example.
Please note that this is an announcement system and registrants cannot reply (although moderators can add messages). This is not a forum, but a channel for sharing important information in a more top-down way.
As well as this announcement mechanism, we’ve added a conversation system.
This allows you to contact a group or specific people and chat with them live.
For example, an outsider to an event can contact the group administrator from the event page and exchange messages with them. Think of this conversation system as the « DM » (direct message) or « MP » (private message) system you know from other social platforms.
For those who have a Mastodon account (or equivalent), the magic of Fédivers means that you can even use this conversation feature to send private messages from Mastodon, while the person you are contacting can reply from Mobilizon!
Import and synchronise events from other platforms (Facebook, Meetup, etc.)
Once again, this was one of the most eagerly awaited features of Mobilizon.
But it was also one of the most complicated for us to implement in the software. Because these external platforms (yes, Facebook, we’re looking at you!) are the despots of kingdoms of which you are merely the vassal. If they want to raise the drawbridge over which your data passes, they can do so with the snap of a finger, and there is nothing you or we can do about it.
That’s why we’re announcing this feature as present, BUT with a great deal of reserve and caution.
Nevertheless, we’re excited to introduce this new Mobilizon feature to you!
How does it work?
First of all, please understand that everything that follows takes place… outside of Mobilizon. In an external tool modestly called « Mobilizon Import System » (note that we’ve kept it simple 😅 ).
From this tool, you’ll be able to connect to your Mobilizon account and define your profiles or groups on which you authorise external platforms (such as Meetup or EventBrite) to post. These profiles and groups then become « Destinations ».
Then, simply go to the page of the event you want to synchronise (e.g. https://www.eventbrite.fr/e/billets-street-art-feminisme-743545834607), copy and paste this address into Mobilizon’s import system, and the event will be imported.
In addition to the classic import, it is also possible (depending on the platform) to set up the synchronisation of one or more events. Once synchronised, the new events will be published on your selected Mobilizon profile/group. Event updates on the source (for example, if you change the description on Meetup) will automatically update the event republished on Mobilizon (note that deletions are not currently handled).
Important note: iCal (.ics) event feeds are supported! This means you can have events in Framagenda (or Google Calendar, we won’t judge you (too much)) and synchronise them in Mobilizon! Nice, isn’t it?
In addition to the iCal format, the platforms currently supported are Eventbrite, Meetup…
We did all the work on our end and… it works (Yaaaaaaaaay! 🥳)… but only with our « App Developer » account (Oooooooohhh! 😦).
We still have to go through several validation steps, and… we have absolutely no hand in it. It’s Facebook’s kingdom, so Facebook decides. Maybe it’ll work for 5 years, 5 months, 5 days. Maybe it won’t work at all. 🤷
Technically, another feature – reserved for developers – that we’ve added is the ability to add « webhooks« , which are internal calls that can also act as « destinations » for sources. Events can then be sent to these webhooks, which will do… well, whatever you want them to do! This might be useful for our friends at Transiscope, for example, so that their tool can also import events from other platforms.
The « Mobilizon Import System » was deliberately developed outside the Mobilizon core. It is therefore a separate piece of software. In fact, we think that this software is likely to need a lot of modifications (for example, to correct bugs or to add new platforms such as Démosphère or Agenda Militant) and that there might be an interest in hosting this application outside Mobilizon instances (for example, to share functionality between several instances, or to manage the legal risks imposed on us by third party platforms). So we’ve made it a separate software project, but of course free and self-hosting.
Other Mobilizon v4 improvements
Don’t go away! We’ve got more great features to share with you!
First of all, we’ve improved compatibility for tracking other federated event instances (one of the most interesting projects is « Event Federation for WordPress« , which would eventually allow the famous WordPress website/blog engine to be used as an event platform. We talked to the people coordinating this project to share our experiences and incorporated their requests in the form of developments in Mobilizon (which they confirmed in their latest blog post).
Secondly, we have improved the formatting of event descriptions when exporting events and in ICS feeds (which now take into account the status « tentative », « confirmed » or « cancelled »).
Also, we changed email registration confirmations for attendees without an account to now include an unsubscribe link.
Finally, Mobilizon is now available on more operating systems and architectures (Debian, Ubuntu, Fedora, arm64, etc.).
Mission accomplished, Framasoft is ready to pass the baton!
We still strongly believe in the future of this project.
But we’ve reached our goal: we announced an intention and a vision in 2018 and… we’ve fulfilled our mission!
Of course, software is far from bug-free. But anyone involved in software development knows that there will always be things to fix, features to add… It’s never-ending. And we sincerely believe that it’s also important to be able to step back, say to yourself that you’ve kept your commitment, and hand over a project.
The Framasoft team is small: Mobilizon is a salaried developer (yes, only one!), and not even full-time… He is certainly supported by the rest of the association in terms of communication, project management, fundraising, etc. But after five years, we consider the project a success. But after 5 years, we feel that Mobilizon is stable enough for him to redirect his energy and skills to other projects and missions.
We’re not putting Mobilizon on the shelf!
First of all, Framasoft is committed to maintain this v4 for the next few months (and as long as we can), especially in case of security updates or blocking bugs. We’ll also maintain our public, French-language forum https://mobilizon.fr.
But we won’t be developing any new features.
Secondly, another team (the Kaihuri association, well known to the Mobilizon community as the maintainers of the Keskonfai instance) already has a take-over and contribution project to improve Mobilizon’s handling. They present their project and their ambitions on our forum dedicated to Mobilizon: don’t hesitate to give them your feedback and encouragement (or disagreement, for that matter), but also your desire and ability to contribute.
So, if the community doesn’t mind, in the next few weeks we’ll be handing over all the Mobilizon « keys » to this community (they already have maintainer access to the source code repository, but this also applies to the joinmobilizon.org, mobilizon.org, search.joinmobilizon.org websites, tools, social media accounts, etc.).
Mobilizon seems to have a bright future ahead!
Five years of Mobilizon, thanks to you (and your donations)!
Although we’ll be handing over the keys to the project in a few weeks time, all the work done throughout 2023 has come at a significant cost.
If you like this version 4, and it’s possible for you to do so, we encourage you to support Framasoft as a token of our gratitude for all the work we’ve done this year, but also for honouring our original moral contract: to provide you with a free, federated alternative to Facebook groups and events.
Once again this year we need you, your support, your sharing, to help us regain ground on the toxic GAFAM web and multiply ethical digital spaces.
So we’ve asked David Revoy to help us present this on our « Support Framasoft » page, which we invite you to visit (because it’s beautiful) and above all to share as widely as possible:
If we are to balance our budget for 2024, we have five weeks to raise €162,716 : we can’t do it without your help !
5 ans après son annonce, Mobilizon, notre alternative libre et fédérée aux groupes et événements Facebook atteint une phase de maturité. L’occasion pour nous de revenir sur son histoire et son avenir.
Comme cette version est la dernière version majeure de Mobilizon qui sera portée par Framasoft (oui, on vous tease un peu 😅 ), nous vous proposons de commencer par un rappel des différentes étapes qui nous ont mené·es à cette v4.
2018 : une intention et des attentions
Souvenez-vous : en décembre 2018 (5 ans déjà !) nous annoncions notre intention de développer Mobilizon. Notre objectif était de proposer une alternative aux groupes et événements Facebook, qui était devenu de facto l’outil dominant comme plateforme de mobilisation, qu’il s’agisse d’organiser un anniversaire, une conférence sur le logiciel libre, ou une manifestation pour le climat.
Pour cela, nous avions choisi de faire les choses dans l’ordre, en commençant par interroger différents publics sur leurs attentes et leurs besoins réels (et non ceux que nous supposions). Le but étant de créer un outil non seulement pratique et accueillant, mais aussi émancipateur. Ainsi, nous avons par exemple assumé le choix de refuser toute gamification sociale (dans Mobilizon, vous suivez des groupes et non des individus, nous nous sommes interdits le scroll infini pour lui préférer une simple pagination, etc.).
2019 : un crowdfunding et première bêta
En mai 2019, nous avions fait un appel aux dons afin de pouvoir financer le développement d’une première version. Grâce à la mobilisation et la générosité de plus de 1 000 donateur⋅ices, ce fut un succès avec près de 60 000€ récoltés. Moins de 6 mois plus tard, nous annoncions une version bêta du logiciel.
Cette version posait déjà de belles fondations pour la création et la publication d’événements. Cependant, des fonctionnalités « centrales » étaient encore manquantes, comme la possibilité de pouvoir s’inscrire anonymement à un événement, ou la fédération (c’est-à-dire la capacité d’une instance Mobilizon à pouvoir échanger facilement des données avec d’autres instances Mobilizon, ou même des instances Mastodon).
Cette v1 proposait déjà ce qui allait être le cœur du logiciel : les groupes (qui sont l’élément central de Mobilizon), les articles, les ressources liées à un groupe, la possibilité d’avoir plusieurs profils pour un même compte, la possibilité de participer à un événement sans s’inscrire, et… la fédération.
2021 : des notifications et une application
Fin 2021, nous annoncions la version 2 de Mobilizon. L’une des principales nouveautés était l’intégration d’un système de notifications, particulièrement attendu. Mais il y avait aussi au menu : la gestion des fuseaux horaires, la gestion « RTL » (pour les langues s’écrivant de droite à gauche, comme l’arabe ou l’hébreu), la mise à disposition de flux RSS, l’ajout de filtres de tri, la possibilité de définir un événement comme « en ligne » (sans lieu géographique), le suivi public des groupes, etc. Il y a même eu la publication d’une application smartphone, développée par Tom79 (merci encore à lui !).
Elle était essentiellement tournée autour de la question de la recherche. Ainsi, elle apportait la possibilité de faire des recherches fédérées : une recherche depuis l’instance « TRUC » peut ainsi retourner des résultats d’événements hébergés sur l’instance Mobilizon « MACHIN ». Comme pour PeerTube avec son métamoteur SepiaSearch, nous avons développé et mis en place un moteur spécifique à Mobilizon permettant la recherche sur de multiples instances : https://search.joinmobilizon.org
Cette version a aussi été l’occasion de revoir le design de la page d’accueil du logiciel. Notre objectif : augmenter vos possibilités de découvrir des événements et des groupes dont vous ne soupçonneriez pas l’existence, et de rendre davantage visible la diversité des contenus publiés sur Mobilizon.
2023 : en attendant la v4…
Pendant l’année 2023, nous avons aussi publié, plus discrètement, deux versions mineures. Elles ont ajouté des outils permettant de lutter contre le spam, ont donné la faculté de gérer des adresses arbitraires (car une base de données d’adresses ne peut jamais être parfaitement à jour), ouvert la possibilité d’utiliser des systèmes d’authentification externe, et la faculté de définir un site web externe pour les personnes souhaitant gérer les inscriptions en dehors de Mobilizon.
Elles ont aussi été l’occasion d’une chasse aux bugs, et de l’amélioration de l’API de Mobilizon, ce qui a permis de préparer le terrain pour l’une des fonctionnalités les plus attendues de la v4. (oui, le teasing est insoutenable 😉 )
Les nouveautés de Mobilizon v4
Ça y est ! La version 4 est enfin sortie 🙂 Et nous sommes très fier⋅es des nouvelles fonctionnalités qu’elle apporte !
Annonces privées et conversations
Les organisateurices d’événements peuvent dorénavant envoyer des annonces privées aux participant⋅es. C’était une fonctionnalité très attendue !
Ainsi, les adminstrateurices ou modérateurices d’un groupe ou d’un événement peuvent maintenant contacter directement les personnes inscrites à un groupe ou un événement. Vous pourrez donc écrire à toutes ces personnes, ou sélectionner des sous-groupes, par exemple en ne choisissant uniquement que les personnes qui ont confirmé leur participation, ou, au contraire, les personnes qui n’ont pas confirmé (ou celles refusées). Il est même possible de contacter les personnes qui se sont inscrites sans créer de compte Mobilizon. Cela ouvre des perspectives très intéressantes, comme la possibilité de transmettre des informations importantes : un changement de lieu ou de date, par exemple.
Notez qu’il s’agit d’un système d’annonce, les simples inscrit⋅es ne peuvent pas répondre (bien que les modérateur⋅ices pourront, de leur côté, ajouter des messages). Il ne s’agit pas d’un forum, mais bien d’un canal permettant de partager une information importante, de façon plutôt descendante.
En parallèle de ce mécanisme d’annonce, nous avons ajouté un système de conversation.
Ce dernier permet d’entrer en contact avec un groupe, ou certaines personnes, et d’échanger avec elle en direct.
Par exemple, une personne extérieure à un événement pourra, depuis la page d’un événement, entrer en contact avec l’administratrice d’un groupe et échanger des messages avec elle. Voyez ce système de conversation comme celui, bien connu, des « DM » (« Direct Message ») ou « MP » (« Message privé ») d’autres plateformes sociales.
Pour les personnes qui ont un compte Mastodon (ou équivalent), la magie du Fédivers fait que vous pouvez même utiliser cette fonctionnalité Conversation en utilisant, de votre côté, des messages privés depuis Mastodon alors que la personne contactée pourra vous répondre depuis Mobilizon !
Import et synchronisation d’événements depuis d’autres plateformes (Facebook, Meetup, etc)
Là encore, il s’agissait d’une des fonctionnalités les plus attendues de Mobilizon.
Mais clairement, c’était l’une des plus compliquées pour nous à implémenter dans le logiciel. Car ces plateformes externes (oui Facebook, c’est toi qu’on regarde !) sont les despotes de royaumes dont vous n’êtes que les vassaux. Si elles veulent relever le pont levis par où passent leurs données, elles peuvent le faire d’un claquement de doigts, et ni vous, ni nous, ne pourront rien y faire.
C’est pourquoi nous annonçons cette fonctionnalité comme présente, MAIS sujette à beaucoup (mais vraiment beaucoup) de réserve et de prudence.
Cependant, ne boudons pas notre plaisir de vous présenter cette nouvelle capacité de Mobilizon !
Comment ça marche ?
D’abord, comprenez bien que tout ce qui suit se passe… en dehors de Mobilizon. Dans un outil externe pudiquement nommé « Système d’Import de Mobilizon » (notez qu’on a fait simple 😅 ).
Depuis cet outil, vous allez pouvoir vous connecter à votre compte Mobilizon, et définir vos profils ou groupes sur lesquels vous autorisez les plateformes externes (type Meetup ou EventBrite) à poster. Ces profils et groupes deviendront alors des « Destinations ».
Ensuite, il suffit d’aller sur la page de l’événement à synchroniser (par exemple https://www.eventbrite.fr/e/billets-street-art-feminisme-743545834607 ) et de copier-coller cette adresse dans le Système d’import de Mobilizon, et l’événement sera importé.
En dehors de l’import classique, il est aussi possible (suivant les plateformes) de mettre en place une synchronisation d’un ou plusieurs événements. Une fois la synchronisation mise en place, les nouveaux événements sont publiés sur votre profil/groupe Mobilizon sélectionné. Les mises à jour d’événements sur la source (par exemple si vous modifiez la description sur Meetup) entraînent automatiquement une mise à jour de l’événement republié sur Mobilizon (attention, pour le moment, les suppressions ne sont pas gérées).
Note importante : les flux iCal (.ics) d’événements sont supportés ! Cela signifie que vous pouvez parfaitement avoir des événements dans Framagenda (ou Google Agenda, on ne vous jugera pas (trop)), et les synchroniser dans Mobilizon ! Classe, non ?
En plus du format iCal, les plateformes supportées pour le moment sont Eventbrite, Meetup…
Oui, on vous voit, là, en train de hurler dans vos têtes :
On a fait tout le travail de notre côté, et… ça fonctionne (Wouuuuuaiiiis ! 🥳)… mais uniquement avec notre compte « développeur d’applications » (Oooooooohhh ! 😦).
Il nous reste plusieurs étapes de validation à passer, et… nous n’avons absolument pas la main dessus. C’est le royaume de Facebook, c’est donc Facebook qui décide. Peut-être que ça fonctionnera 5 ans, 5 mois, ou 5 jours. Peut-être que ça ne fonctionnera pas du tout. 🤷
Techniquement, une autre possibilité – réservée aux développeur⋅euses – que nous avons ajoutée est celle de pouvoir ajouter des « webhooks », c’est-à-dire des appels internes qui pourront, eux aussi, servir de « Destinations » pour les sources. Les événements pourront donc être envoyés à ces webhooks qui feront… et bien ce que vous déciderez qu’ils doivent en faire ! Par exemple cela pourrait être utile pour nos ami⋅es de Transiscope afin que leur outil puisse aussi importer des événements d’autres plateformes.
Le « Système d’Import de Mobilizon » est volontairement développé en dehors du cœur de Mobilizon. C’est donc un logiciel à part. En effet, nous estimons d’une part que ce logiciel risque d’avoir besoin de nombreuses modifications (par exemple pour corriger des bugs ou ajouter de nouvelles plateformes, comme Démosphère ou l’Agenda Militant), et d’autre part qu’il peut y avoir de l’intérêt à héberger cette application en dehors des instances Mobilizon (par exemple pour mutualiser la fonctionnalité entre plusieurs instances, ou pour gérer les risques juridiques que nous imposent les plateformes tierces). Nous en avons donc fait un projet logiciel séparé, mais évidemment libre et auto-hébergeable.
Autres améliorations de Mobilizon v4
Ne partez pas ! Nous avons encore d’autres fonctionnalités intéressantes à partager !
Tout d’abord, nous avons amélioré la compatibilité pour suivre d’autres instances d’événements fédérés (l’un des projets les plus intéressants étant « Event Federation for WordPress » qui permettrait à terme d’utiliser le célèbre moteur de sites/blog WordPress comme plateforme d’événements. Nous avons échangé avec les personnes qui coordonnent ce projet afin de partager notre expérience, et intégré leurs demandes sous forme de développements dans Mobilizon (ce qu’ils confirment dans leur dernier billet blog (en anglais)).
Lors des exports d’événements ainsi que dans les flux ICS, nous avons amélioré le formatage de la description des événements (qui prennent maintenant en compte les statuts « provisoire », « confirmé » ou « annulé »).
Ensuite, les confirmations d’inscriptions par mail pour les participant⋅es sans compte contiennent maintenant un lien de désinscription.
Enfin, Mobilizon est maintenant disponible sous davantage de systèmes d’exploitation et architectures (Debian, Ubuntu, Fedora, arm64, etc).
Mission accomplie, Framasoft est prête à faire la passe !
Nous croyons toujours très fort dans l’avenir de ce projet.
Mais nous avons atteint notre objectif : nous avions annoncé une intention et une vision en 2018 et… nous avons rempli notre mission !
Le logiciel n’est pas exempt de bugs, évidemment, loin de là. Mais quiconque fait du développement logiciel sait pertinemment qu’il y aura toujours des choses à corriger, des fonctionnalités à ajouter… C’est sans fin. Et nous pensons sincèrement qu’il faut aussi savoir prendre du recul, se dire qu’on a tenu notre engagement, et transmettre un projet.
L’équipe de Framasoft est réduite : Mobilizon, c’est un développeur salarié (oui, un seul !), et encore, même pas à temps plein… Il est certes accompagné par le reste de l’association sur la communication, la gestion de projet, la recherche de fonds, etc. Mais au bout de 5 ans nous considérons Mobilizon comme suffisamment stable pour qu’il puisse rediriger son énergie et ses compétences sur d’autres projets et d’autres missions.
Nous ne mettons pas Mobilizon au placard, non plus, hein !
Tout d’abord, Framasoft s’engage, pour les prochains mois (et autant qu’on le pourra) à maintenir cette v4, notamment en cas de mise à jour de sécurité, ou de bugs bloquants. Nous maintiendrons aussi notre instance publique et francophone https://mobilizon.fr
Mais nous ne nous lancerons pas dans le développement de nouvelles fonctionnalités.
Ensuite, une autre équipe (l’association Kaihuri, bien connue de la communauté Mobilizon en tant que mainteneuse de l’instance Keskonfai), a déjà un projet de reprise et de contribution, pour améliorer la prise en main de Mobilizon. Iels vous présentent leur projet et leurs ambitions sur notre forum consacré à Mobilizon : n’hésitez pas à leur partager vos retours et encouragements (ou divergences, d’ailleurs), mais aussi vos envies et capacités de contribution.
Ainsi, si la communauté n’y voit pas d’inconvénient, nous transmettrons dans les prochaines semaines l’ensemble des « clés » de Mobilizon à cette communauté (iels ont déjà un accès Maintainer sur le dépôt du code source, mais cela concerne aussi les sites web joinmobilizon.org, mobilizon.org, search.joinmobilizon.org, les outils et comptes de médias sociaux, etc.).
Mobilizon semble donc avoir de beaux jours devant elle !
Cinq années de Mobilizon, c’est grâce à vous (et à vos dons) !
Même si nous transmettrons a priori les clés du projet dans quelques semaines, tout le travail effectué tout au long de l’année 2023 a eu un coût non négligeable.
Si cette version 4 vous plaît, et que c’est possible pour vous, nous vous encourageons donc à soutenir Framasoft en forme de gratitude pour le travail effectué cette année, mais aussi pour avoir respecté le contrat moral de départ : vous fournir une alternative libre et fédérée aux groupes et événements Facebook.
Cette année encore, nous avons besoin de vous, de votre soutien, de vos partages, pour nous aider à reprendre du terrain sur le web toxique des GAFAM, et multiplier les espaces de numérique éthique.
Nous avons donc demandé à David Revoy de nous aider à montrer cela sur notre site « Soutenir Framasoft« , qu’on vous invite à visiter (parce que c’est beau) et surtout à partager le plus largement possible :
Si nous voulons boucler notre budget pour 2024, il nous reste quatre semaines pour récolter 162 716 € : nous n’y arriverons pas sans votre aide !
Mobilizon v3 : Find events and groups throughout the fediverse !
Mobilizon is the alternative we have been developing since 2019 so that everyone can emancipate their events and groups from Facebook. Except, unlike Facebook, Mobilizon is not a single platform. It is a software that specialists can install on a server to create multiple events and groups platforms (called « instances »), which can be linked together within a federation.
We do host Mobilizon.fr, but it is restricted to French speaking users (otherwise we wouldn’t be able to moderate). But we’ve got you covered : we propose a selection of other Mobilizon hosters on Mobilizon.org.
« Collectivise Internet / Convivialise Internet 🦆🦆 »Our new 3-year roadmap is funded by your donations. You will find a short presentation of this roadmap on our Support Framasoft website.
It has been just under a year since we published the second version (« v2 ») of Mobilizon. That release brings us updates (time zones adjustment, improvements on language display, etc.), new features (possibility to follow the public activities of a group without having to join, exporting the attendants list of my event, possibility to search among past events, etc.) and some small tweaks (emails design, cards presenting events or groups appearance, etc.).
As we announced at the time, we wanted to develop in 2022 features that would improve content discovery (events, groups, their public pages, public articles of these groups). This is the path we have followed (well, when we say « we », we mean mainly ONE paid developer who devotes a part of his time to the project).
Let’s look around and see what this new version brings us!
Mobilizon Search Index, a global search engine to explore events and groups
As we know it was not always easy to find events or groups on Mobilizon, we worked for most of the year on creating Mobilizon Search Index, a new gateway to Mobilizon.
The results will be the same for everyone, based only on your search (and your browser’s language), and absolutely not pre-sorted according to a profile (because there is no profiling, here!).
The results are presented in a clear and detailed way, to avoid the attention war leading to clickbait thumbnails and all caps over-the-top titles.
Search filters give you the power to sort the results out and display those you really want.
If you want to see in detail the content of an event or a group, Mobilizon Search Index will redirect you directly to the instance where it is hosted (since we have no interest in locking you into the search engine’s website). This is a way to help anyone experience and understand the notion of federation.
Let’s have a look at the new features of this search results page. First of all, you can choose the results display mode (list or map) by clicking on the top-right button.
Then you can filter the results according to several criteria. Look at the left-hand column to see which filters are already active and change them if needed:
type of content (events, groups or both)
online events
event date
distance
categories
event status (confirme, tentative or cancelled)
language
You can also sort the results by using the top right button (only in the « List » mode display). If your results are events and groups, this feature does not apply, you must first filter by content type.
If your results are events, you can sort by 6 different criteria:
best match (only relevant when using the search bar)
event date (from earliest to latest)
most recently published
least recently published
with the most participants
If your results are groups, you can sort by 2 different criteria:
best match (only relevant when using the search bar)
number of members (from largest to smallest)
Our gateway to explore Mobilizon contents
We know that by offering a single gateway to the Mobilizon federation, the structure that holds the keys to that gate gets great powers. They get the power to decide what will be accepted (or rejected) in the search directory. They get the power to record who searched for what, when, from where. And they get the power to intervene in the order and display of the results.
It is on such power mechanisms that Facebook has built its monopoly. Obviously, at Framasoft, we do not seek to be in a position of power… and even less to follow Meta’s (bad) example ! Nevertheless, we want to show the emancipating potential of this software which allows to reclaim the means to gather.
As we already did with Sepia Search (our search engine to explore contents upload on PeerTube), we take the responsibility of opening Mobilizon Search Index, our gateway to Mobilizon.
An a posteriori moderated search engine
Not all Mobilizon instances will be referenced on Mobilizon Search Index. This search engine will be based on the list of instances we maintain at https://instances.joinmobilizon.org. To date, this list consists of 83 instances, but we hope that more and more organizations will use Mobilizon.
This list is aligned with the policy for all of the services we offer:
Thus, if we are notified of an instance where contents explicitly condone terrorism or promote historical revisionism, we will remove it from the index (non-compliance with French laws, which we insist on in our TOS). Such removal will eliminate all events and groups hosted by that instance from the search results.
On the other hand, if one or more people come to abuse the time of our moderators with inappropriate and abusive reports, their words will be discredited and ignored (as indicated in our moderation policy (FR)).
However, we hope not to have to moderate this list too much in order to offer everyone the opportunity to discover the multitude of events and groups created on Mobilizon.
A public indexing tool, reproducible and adaptable to your conditions
The source code, the « recipe » of Mobilizon Search Index, is transparent. We publish it on our software forge and we provides an API that other software (including Mobilizon instances) can use.
So anyone is free to set and host their own instance list, indexing engine and search site, by copying and adapting what we have created. It is up to you to take the power (and responsibilities) by hosting your own Mobilizon search engine, set up and moderated according to your culture, your indexing policy and your values!
A V3 to improve content discovery
A new design for the homepage and the search results page
This is the main new feature of this V3, as it was obvious to us that we would implement all the work done on Mobilizon Search Index in Mobilizon software. This V3 offers you new homepage and the search results page design.
On this new homepage, in addition to a total makeover of the graphic interface (do you like it?), we have changed the order in which the different contents are displayed:
the search bar is now more visible and you can precise a localization
you have 3 categories cards displayed (we highlight those with the most events)
2 sections highlight events nearby and popular groups nearby your location (if you use the Geolocate me button or if you precise in your account’s preferences a city or region)
a new section is dedicated to upcoming online events
a section for the last published events on your instance and its federation
Our goal is to increase your chances of discovering events and groups that you never knew existed, to make the diversity of content published on Mobilizon more visible.
When you use the homepage search bar, Mobilizon displays a new search results page using Mobilizon Search Index design on which you can find all the features detailed above (map/list vue, filter system, sorting sytem). You even have one more critera in the left-hand column: you can choose results in your instance’s network or on the Fediverse.
If you are a Mobilizon instance’s administrator, you can choose and set up which search engine you want to use by default.
Also, the section « These events may interest you », placed at the bottom of events, uses new criteria (categories, event language and distance if the event has a physical address) in addition to tags to recommend you more relevant events.
Necessary substantive changes
During this year, we have modified many elements of Mobilizon in order not to build up technical debt (switch to VueJS 3, migration of the CSS framework from Bulma to Tailwind, etc.). Those changes are not visible when using Mobilizon but are necessary. They already give you the possibility of using a dark theme and they will make it easier for us to offer you more features (e.g. a theme system) in the future.
And we now offer administrators the possibility to use metrics tools (Matomo and Plausible) on their Mobilizon instance that allow them to have additional data (e.g. number of views on a page or number of views of an event) in addition to the stats provided by the software itself.
Mobilizon is still financed thanks to your donations
This v3 of Mobilizon has been partly financed on our 2022 budget, so directly thanks to the donations of the people who support Framasoft, and partly by the NLnet Foundation.
We don’t yet know exactly what we’re going to do on Mobilizon in 2023, but we know you’d love us to develop a feature for events import, ability for event organizers to privately contact attendees, and ability to fill in arbitrary contact information for event location.
Our new campaign Collectivize Internet / Convivialize Internet (in French) is going to require a lot of our energy, but be sure that we will hear your feedback to take them into account. So if you can (at the period we are aware that it is particularly complicated), and if you want to, please support the actions of our association.
At the time of publishing, we are still missing 178 200 € to finance our yearly budget and make everything we want to do in 2023 happen.
If you can (especially in these hard times) and if you want to, thanks for supporting our non-profit and our actions.
Mobilizon v3 : trouver des événements et groupes dans tout le fédiverse !
Mobilizon, c’est l’alternative que nous développons depuis 2019 pour que chacun·e puisse émanciper ses événements et groupes de Facebook. Sauf qu’à l’inverse de Facebook, Mobilizon n’est pas une plateforme unique. C’est un logiciel que des spécialistes peuvent installer sur un serveur pour créer leur propre plateforme d’événements et de groupe (appelée une « instance »). Ces instances peuvent se relier entre elles au sein d’une fédération.
Vous pouvez donc utiliser Mobilizon en vous inscrivant sur Mobilizon.fr, l’instance que nous hébergeons, mais vous pouvez aussi vous inscrire sur d’autres hébergements de Mobilizon (nous proposons une sélection sur Mobilizon.org).
« Collectivisons Internet / Convivialisons Internet 🦆🦆 »
Les actions de notre nouvelle feuille de route étant financées par vos dons (défiscalisables à 66 %), vous pouvez en trouver un résumé complet sur le site Soutenir Framasoft.
Voilà un peu moins d’un an que nous avons publié la seconde version (la « v2 ») de Mobilizon. Celle-ci apportait son lot de mises à jour (prise en compte des fuseaux horaires, amélioration de l’affichage des langues, etc.), de nouvelles fonctionnalités (suivre les activités publiques d’un groupe sans avoir besoin de s’y inscrire, exporter la liste des participantes d’un événement que l’on organise, recherche parmi les événements passés, etc.) et de petites retouches (apparence des emails, design des cartes présentant les événements ou les groupes, etc.).
Nous l’annoncions déjà à l’époque, nous souhaitions développer en 2022 des fonctionnalités permettant d’améliorer la découverte des contenus (les événements, les groupes, leur page publique, les articles publics de ces groupes). C’est bien cette voie que nous avons suivie (enfin quand on dit nous, c’est surtout UN développeur salarié qui consacre une partie de son temps sur le projet) .
Petit tour des nouveautés de cette V3…
Mobilizon Search Index, un moteur de recherche d’événements et de groupes Mobilizon
Comme nous savons qu’il n’a pas toujours été facile de trouver des événements ou des groupes sur Mobilizon, nous avons travaillé une bonne partie de l’année à la réalisation de Mobilizon Search Index, une nouvelle porte d’entrée vers Mobilizon.
Ce que Mobilizon Search Index peut faire pour vous
en parcourant les catégories pour découvrir des événements par sujet
en vous géolocalisant pour trouver des événements à proximité
en vous laissant guider par notre sélection de groupes populaires
en découvrant la liste des événements en ligne
Mobilizon Search Index a été conçu pour vous apporter de l’information en respectant votre attention :
Les résultats seront les mêmes pour tout le monde, en fonction uniquement de votre recherche (et de la langue de votre navigateur), et absolument pas pré-triés selon un profil (parce qu’il n’y a pas de profilage !).
Les résultats sont présentés de manière claire et détaillée, afin d’éviter la course à la vignette racoleuse et aux titres criards tout en majuscules.
Les filtres de recherches vous donnent le pouvoir de trier l’affichage des résultats de manière avancée.
Si vous voulez voir en détail le contenu d’un événement ou d’un groupe, Mobilizon Search Index vous redirigera directement sur l’instance où il est hébergé (puisque nous n’avons aucun intérêt à vous enfermer dans le site web du moteur de recherche). Cela permet au passage de montrer concrètement la notion de fédération.
Regardons maintenant plus en détail les fonctionnalités proposées sur la page de résultats de recherche. Tout d’abord, vous pouvez choisir le mode d’affichage des résultats (liste ou carte) en cliquant sur le bouton en haut à droite.
Vous pouvez aussi filtrer les résultats en fonction de plusieurs critères. Regardez dans la colonne de gauche pour voir quels filtres sont déjà actifs et modifiez-les si nécessaire :
type de contenu (événements, groupes ou les deux)
en ligne (ou pas)
date de l’événement
distance
catégorie
statut (confirmé, provisoire ou annulé)
langue
Vous pouvez également trier les résultats en utilisant le bouton « Tri » situé en haut à droite (uniquement dans l’affichage de type « Liste »). Si les résultats proposent des événements et des groupes, cette fonctionnalité ne s’applique pas, il faut d’abord filtrer par type de contenu.
Si vous affichez des événements, vous pouvez les trier selon 6 critères différents :
pertinence
date de l’événement (par ordre chronologique)
le plus récemment publié
le moins récemment publié
avec le plus de participant⋅es
Si vos résultats sont des groupes, vous pouvez les trier selon 2 critères différents :
pertinence
nombre de membres (du plus grand au plus petit)
Une porte d’entrée pour découvrir la diversité des contenus sur Mobilizon
Nous sommes conscients qu’en proposant une porte d’entrée unique vers la fédération Mobilizon, la structure qui détient les clés de cette porte prend le pouvoir. Elle prend le pouvoir de décider ce qui sera accepté (ou refusé) dans l’annuaire de recherche, elle prend le pouvoir de noter qui a cherché quoi, quand, depuis où, et elle prend le pouvoir d’intervenir dans l’affichage et l’ordre des résultats.
C’est d’ailleurs sur de tels mécanismes de pouvoir que Facebook a construit son monopole. Autant vous dire que, chez Framasoft, nous ne cherchons pas à être en situation de pouvoir… et encore moins à suivre le (mauvais) exemple de Méta ! Pour autant, nous voulons montrer le potentiel émancipateur de ce logiciel qui permet de se réapproprier les moyens de mobilisation.
Comme nous l’avons fait auparavant avec Sepia Search (notre moteur de recherche pour découvrir les contenus publiés sur PeerTube), nous prenons donc la responsabilité de vous proposer Mobilizon Search Index, notre porte d’entrée vers Mobilizon.
Un moteur de recherche modéré a posteriori
Toutes les instances de Mobilizon ne seront pas référencées sur Mobilizon Search Index. Ce moteur de recherche opérera sur la liste d’instances que nous maintenons sur https://instances.joinmobilizon.org. À ce jour, cette liste est composée de 83 instances, mais nous espérons vivement que de plus en plus d’organisations utilisent Mobilizon.
Cette liste est modérée en fonction de plusieurs critères :
Ainsi, si nous sommes informés d’une instance dont le contenu fait explicitement l’apologie du terrorisme ou promeut le révisionnisme historique, nous la supprimerons de l’index. Cette suppression aura pour effet d’éliminer des résultats de recherche tous les événements et groupes hébergés par cette instance.
D’autre part, si une ou plusieurs personnes viennent abuser du temps de nos modérateur⋅ices avec des signalements inappropriés et abusifs, leurs propos seront discrédités et ignorés (comme indiqué dans notre charte de modération).
Nous espérons cependant ne pas avoir à beaucoup modérer cette liste afin de proposer à toustes de découvrir la multitude d’événements et de groupes créés sur Mobilizon.
Un outil d’indexation public, reproductible et adaptable à vos conditions
Le code source (la « recette ») de Mobilizon Search Index est transparent. Il est publié sur notre forge logicielle et nous fournissons une API que d’autres logiciels (y compris les instances de Mobilizon) peuvent utiliser.
Ainsi, toute personne qui le souhaite est libre de créer et d’héberger sa propre liste d’instances, son moteur d’indexation et son site de recherche, en copiant et en adaptant ce que nous avons créé. C’est à vous de prendre le pouvoir (et les responsabilités) en hébergeant votre propre moteur de recherche Mobilizon, configuré et modéré selon votre culture, votre politique d’indexation et vos valeurs !
Une V3 pour améliorer la découverte des contenus
Un nouveau design pour la page d’accueil et la page de résultats de recherche
C’est la nouveauté principale de cette V3, puisqu’il était évident pour nous que nous allions implémenter dans le logiciel Mobilizon tout le travail effectué sur Mobilizon Search Index. Cette V3 vous propose donc un nouveau design de la page d’accueil et de la page de résultats de recherche.
Sur cette nouvelle page d’accueil, outre un total relooking de l’environnement graphique (ça vous plaît ?), nous avons modifié l’ordre d’affichage des différents contenus. Le menu « Explorer » a disparu au profit d’une barre de recherche plus visible qui vous permet de préciser votre localisation. Sous celle-ci, nous affichons les trois catégories qui proposent le plus d’événements au sein de votre fédération. Nous proposons ensuite deux sections qui mettent en avant les événements et les groupes populaires à proximité de votre position (si vous utilisez le bouton « Me Géolocaliser » ou si vous précisez dans les préférences de votre compte une ville ou une région). Une nouvelle section est consacrée aux événements en ligne à venir et nous terminons sur une section dédiée aux derniers événements publiés sur votre instance et sa fédération.
Notre objectif : augmenter vos possibilités de découvrir des événements et des groupes dont vous ne soupçonneriez pas l’existence, de rendre davantage visible la diversité des contenus publiés sur Mobilizon.
Lorsque vous utilisez la barre de recherche de la page d’accueil, Mobilizon affiche une nouvelle page de résultats utilisant un design similaire à Mobilizon Search Index. Vous y retrouvez toutes les fonctionnalités détaillées ci-dessus (vue carte/liste, système de filtre, système de tri). Vous disposez même d’un critère supplémentaire dans la colonne de gauche : vous pouvez choisir les résultats dans le réseau de votre instance ou sur le Fediverse.
Si vous êtes administrateur⋅ice d’une instance Mobilizon, vous pouvez choisir et paramétrer le moteur de recherche que vous souhaitez utiliser par défaut.
Enfin, la section « Ces événements peuvent vous intéresser », placée en bas des événements, utilise de nouveaux critères (catégories, langue de l’événement et distance si l’événement a une adresse physique) en plus des tags pour vous recommander des événements plus pertinents.
Des modifications de fond nécessaires
Cette année, nous avons modifié de nombreux éléments de Mobilizon afin de ne pas accumuler de dette technique (passage à VueJS 3, migration du framework CSS de Bulma à Tailwind, etc.). Ces modifications ne sont pas visibles lorsqu’on utilise Mobilizon mais sont pourtant nécessaires. Elles nous permettent déjà de vous offrir la possibilité d’utiliser un thème sombre. Elles nous permettront, à l’avenir, de vous offrir plus facilement d’autres fonctionnalités (par exemple un système de thèmes).
Et nous offrons désormais la possibilité aux administrateur⋅ices d’utiliser des outils de métriques (Matomo et Plausible) sur leur instance Mobilizon qui leur permettent d’avoir des données complémentaires (le nombre de vues sur une page ou le nombre de vues d’un événement par exemple) en plus des éléments statistiques fournis par le logiciel lui-même .
Mobilizon est toujours financé grâce à vos dons
Cette v3 de Mobilizon a été en partie financée sur notre budget 2022, donc directement grâce aux dons des personnes qui soutiennent Framasoft, et en partie par la Fondation NLnet.
Nous ne savons pas encore exactement ce que nous allons faire sur Mobilizon en 2023, mais nous savons que vous aimeriez beaucoup une fonctionnalité d’import pour les événements, la possibilité pour les organisateur⋅ices d’événements de contacter de manière privée les participant⋅es et de pouvoir renseigner des coordonnées arbitraires pour la localisation d’un événement.
Notre nouvelle campagne Collectivisons Internet / Convivialisons Internet va nous demander beaucoup d’énergie mais nous ferons en sorte que l’outil évolue pour toujours plus prendre en compte les besoins dont vous nous faites part.
À l’heure où nous publions ces lignes, nous estimons qu’il nous manque 178 200 € pour boucler notre budget annuel et nous lancer sereinement dans nos actions en 2023.
Si vous le pouvez (eh oui, en ce moment c’est particulièrement compliqué), et si vous le voulez, merci de soutenir les actions de notre association.
NB : cet article existe aussi en version anglaise (traduction automatique)
Dans notre Lettre d’informations #28 (Automne 2021), nous vous parlions de Romain, stagiaire à Framasoft, dont nous savions que le sujet de stage allait tourner autour du logiciel libre Nextcloud.
Puis, une fois les résultats analysés (nous vous en proposons une version brute anonymisée et une analyse synthétique en fin d’article), nous avons pu identifier un besoin utilisateur non satisfait, sur lequel pourrait travailler Romain.
En effet, Nextcloud comporte de (très) nombreuses fonctionnalités, mais celle qui demeure centrale est probablement le stockage et partage de fichiers. Or, la navigation parmi les fichiers dans l’interface web est assez fastidieuse : un clic à chaque fois que l’on change de dossier, et donc un rechargement plus ou moins rapide de la page et de l’arborescence des dossiers et fichiers. Et parfois de nombreux clics pour passer d’un rameau de l’arborescence à l’autre.
Il y avait sans doute moyen de faire plus accessible et plus naturel.
Romain, qui ne connaissait ni le langage informatique PHP ni la solution Nextcloud au début de son stage, s’est donc lancé dans le développement d’un prototype d’application tierce, qui permettrait non seulement de pouvoir « développer l’arborescence de fichiers » au sein d’une même interface, mais aussi de pouvoir faire des recherches avancées.
Deux mois plus tard naissait le plugin « Sorts », dont nous vous racontons l’histoire ci-dessous.
Bonjour Romain, peux-tu te présenter ?
Je m’appelle Romain et j’ai 24 ans. J’ai grandi en Guadeloupe avant de venir étudier à Villeurbanne, à l’Institut National des Sciences Appliquées de Lyon, dont je serai diplômé en 2022 en tant qu’Ingénieur Télécom.
Quand je ne suis pas occupé par mes études, je passe pas mal de temps à bricoler et réparer des vieilles machines, et à m’investir dans des projets collectifs ! Je suis notamment très engagé au Karnaval Humanitaire, une asso étudiante qui organise un festival de musique dont j’ai été le régisseur site en 2021 et 2022.
Concernant ton stage, tu as choisi Framasoft. Pourquoi ?
Je voulais un stage en accord avec mes valeurs de libre partage des connaissances, et en rupture avec le capital et les grandes entreprises !
Je connaissais déjà un peu les actions de Framasoft et notamment les services en ligne et le développement logiciel, et je savais que j’y trouverais des projets intéressants dans un cadre super… et je n’ai pas été déçu !
Venons-en au sujet de ton stage. Quel était l’objectif général ?
Mon stage s’est déroulé au début d’un projet plus large, dont le nom de code est « Framacloud » [Note de Framasoft : on vous reparlera de ce projet ambitieux à la rentrée], dont l’objectif est de permettre aux structures luttant pour le progrès social et la justice sociale de s’approprier, maîtriser et contrôler les processus de collaboration numérique.
Ce projet de Framasoft est centré sur un logiciel de collaboration en ligne et de partage de fichiers : Nextcloud.
Cependant, bien que ce soit une des solutions libres les plus abouties et complètes dans ce domaine, il est avant tout conçu pour répondre aux besoins des clients de « Nextcloud GmbH« , la société allemande éditrice du logiciel. Ces clients, ce sont de grosses structures, publiques, universitaires ou privées. Du coup, il y a un risque de différences entre les attentes des petites structures associatives et les priorités de développement de Nextcloud GmbH.
Le but de mon stage était donc de trouver comment améliorer ce logiciel afin de le rendre plus utile et plus accessible pour les structures alternatives.
Eh bien d’abord, il fallait à la fois que je me forme sur le développement de Nextcloud, et qu’on en apprenne davantage sur ce logiciel : son fonctionnement, ses défauts et surtout ce qui manquait aux utilisateurs qu’on visait.
Après plusieurs tests du logiciel et plusieurs hypothèses sur comment l’améliorer, on a décidé de se rapprocher de nos utilisateurs cibles. On a donc mis en place une enquête visant des personnes faisant parties de structures engagées pour le progrès social et la justice sociale qui utilisaient déjà Nextcloud. Cette enquête questionnait leurs usages de l’informatique collaborative au sein du collectif, leurs usages de Nextcloud, leurs frustrations et leurs attentes.
C’est grâce aux presque 200 réponses de cette enquête qu’on a décidé des développements logiciels que j’ai réalisés au cours de ce stage et qui ont abouti à la création d’un plugin Nextcloud appelé « Sorts » !
Arrêtons nous déjà sur ce travail d’enquête. Quels en ont été les résultats ?
Les préoccupations principales qui ressortaient de cette enquête étaient, au final, des préoccupations d’ordre plutôt général sur l’outil Nextcloud. Mais ça nous a permis de voir ce qui est important pour le public qu’on souhaite impacter.
Parmi la vingtaine de sujets que j’ai pu identifier dans les réponses, les deux premiers étaient des sujets sur lesquels on ne pouvait pas faire grand-chose : l’édition collaborative de documents et la « lenteur » générale de l’outil.
Par contre, parmi les sujets qui suivaient on avait plus de perspective pour aider à changer les choses en quelques mois de stage : prise en main et ergonomie du logiciel, problèmes de synchronisation ou encore aide aux utilisateurs pour s’y retrouver parmi les fichiers du collectif.
C’est cette dernière préoccupation de s’y retrouver dans l’arborescence des fichiers qui m’intéressait le plus, et qui m’a mené au développement de « Sorts« .
Pour ceux qui souhaitent jeter un œil aux détails de l’enquête, nous avons publié les résultats anonymisés, ainsi qu’une synthèse des différents sujets abordés que j’ai réalisée pour affiner le sujet du stage (c’est sans doute plus digeste que le tableur de résultats bruts).
[Note de Framasoft : Retrouvez les résultats de l’enquête en fin d’article]
Donc, tu es parti sur la création de l’application Nextcloud « Sorts » . Mais… il fait quoi, ce plugin, en fait ?
L’idée derrière Sorts, c’est d’aider les gens à retrouver les fichiers qu’ils cherchent et à comprendre comment les dossiers et les fichiers ont été organisés par le collectif dont ils font partie.
Pour régler le premier problème on a profité de toutes les informations relatives à chaque fichier que Nextcloud stockait déjà (date de modification, poids, « étiquetage » du fichier par l’utilisateur, …) et on a codé une interface qui permet de faire une recherche qui mélange ces différents attributs. Par exemple « Trouve-moi tous les fichiers dans le dossier « Subvention » et ses sous-dossiers qui sont marqués comme étant importants, et qui sont des .pdf ».
Pour régler le deuxième problème on a décidé de présenter les dossiers, sous-dossiers et fichiers d’une manière qui n’était pas encore présente dans Nextcloud : en liste arborescente. C’est-à-dire que lorsqu’on clique sur un dossier, au lieu de « rentrer » dans ce dossier et de ne voir que son contenu direct, le dossier est « déroulé » et on voit son contenu ainsi que les dossiers et fichiers qui sont « à coté » de lui. Cette liste arborescente prend plus de place qu’une liste simple mais elle permet de bien comprendre où on se situe dans les dossiers, ce qui aide à comprendre la façon dont ils sont rangés.
Techniquement, tu as rencontré des soucis ?
Oui, comme dans tout processus de développement. Je pense qu’une des grosses difficultés a été de trouver quelle partie des API de Nextcloud utiliser, quelles étaient ses limites et comment faire avec. La recherche Nextcloud est pensée autour d’une recherche « groupée » (« unified search ») où l’utilisateur cherche une chaîne de caractères, et Nextcloud renvoie comme résultats tout ce qui correspond à cette chaîne de caractères parmi les ressources diverses et variées de Nextcloud (fichiers, todo, évènements, mails, conversations, …). Autant dire que ça ne correspond pas du tout à ce qu’on souhaite faire : chercher parmi les fichiers uniquement selon plusieurs conditions, dont certaines ne sont pas des chaînes de caractères (dates, nombres, …). Mais, heureusement pour nous, il y avait une autre API de recherche propre aux fichiers. Cette autre API paraissait très prometteuse parce qu’elle était déjà pensée pour permettre de combiner des conditions de recherches sur des attributs propres aux fichiers. Cependant, cette API était assez vieille et peu utilisée, ce qui m’a parfois donné un peu de fil à retordre.
De plus, je me suis rendu compte assez tard que l’API ne prenait pas en compte deux des différents attributs des fichiers : les « étiquettes » (tags) et les informations sur les partages de fichiers. Ces informations sont gérées dans des API totalement séparées. Je me suis donc retrouvé face à un dilemme : soit je réécris une API qui fait elle-même les requêtes en base de données avec tous les attributs, soit je complète l’API présente, soit je bricole quelque-chose où je fais 3 requêtes en base de données par recherche et je combine les résultats. La première solution m’aurait pris trop de temps et la deuxième solution aurait été refusée par Nextcloud GmbH (on ne modifie pas les APIs de Nextcloud à la légère), donc j’ai bricolé quelque-chose, et tant pis pour les performances de l’application.
As-tu eu des contacts avec la communauté Nextcloud ou son entreprise éditrice (Nextcloud Gmbh), et si oui, comment ça s’est passé ?
Oui bien sûr, lorsqu’on a commencé à avoir une bonne idée de ce qu’on souhaitait faire de Sorts j’ai écrit une note d’intention avec un lien vers un prototype sur le forum dédié au développement de plugin Nextcloud. Ça a mené à quelques échanges avec des développeurs salariés de Nextcloud qui étaient intéressés par le projet et qui m’ont fait quelques retours constructifs. On a même fait une réunion en visio avec eux pour discuter du plugin mais aussi du projet plus large, mais avec les plannings des uns et des autres cette réunion a eu lieu assez tard dans le développement de Sorts et elle n’a pas beaucoup impacté le plugin.
Et donc, la question qui pique : Sorts, ça marche ou pas ?
Eh bien OUI ! Sorts propose une vue de l’arborescence des fichiers « dépliante » et permet déjà de faire des recherches combinées sur une bonne variété des caractéristiques que peuvent avoir des fichiers !
Cependant, il s’agit d’une version Bêta qui présente quelques limites… J’ai dû faire quelques arrangements avec les problèmes techniques évoqués dans la question précédente, et si la version actuelle fonctionne sur des petites instances Nextcloud, elle aura sans doute du mal à « passer à l’échelle » pour fonctionner avec des instances réelles avec des centaines d’utilisateurs et des milliers de fichiers.
Vidéo de démonstration des fonctionnalités de Nextcloud Sorts 0.1.0-beta (source)
Et la suite ? C’est quoi à ton avis, et pour quand ?
Nous souhaitons continuer à maintenir cette application et à traiter et accepter toutes les contributions éventuelles, mais ni moi ni Framasoft n’avons prévu de développer à plein temps dessus pour le moment. Sorts rentre maintenant dans le monde du développement bénévole, ce qui veut dire que les développements portés par Framasoft et moi-même se feront au fil des envies et des disponibilités, sans agenda particulier (ce qui veut aussi dire que nous n’annoncerons pas de « date de sortie » quelconque).
On arrive à la fin de cette interview. Souhaites-tu nous partager un sentiment sur le travail effectué pendant ce stage ?
Résumer un stage en une émotion ? C’est difficile ! Développer un programme, c’est passer de la frustration quand ça ne marche pas, à l’excitation d’enquêter sur pourquoi ça ne marche pas, à la satisfaction de voir la fonctionnalité fonctionner quand on a trouvé.
Non, plus sérieusement, il y a eu quelques frustrations comme ne pas avoir beaucoup de temps pour développer ou ne pas retrouver autant de temps et de motivation que ce que j’aurais souhaité pour boucler le projet après le stage, mais je suis satisfait. Satisfait d’avoir fait quelque-chose qui marche mais surtout d’avoir pu concevoir ce plugin du presque début à la presque fin, en prenant le temps d’identifier ce qu’on pouvait faire d’utile, de réfléchir à quoi ça devait ressembler, et d’ensuite réfléchir à comment le réaliser techniquement.
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 pourquoi ne pas avoir publié Sorts plus tôt ?
C’est mon grand regret ! Et je pense que les personnes qui s’étaient intéressées à l’application lors de la note d’intention se sont aussi posées la question. Mais ma vie associative et personnelle était assez chargée après le stage et ne m’a pas laissé beaucoup de temps pour m’occuper de Sorts, c’est aussi ça le développement bénévole.
Merci Romain ! Ainsi qu’à toutes les personnes qui auront rendu ce travail possible, notamment en répondant au questionnaire !
Rappel des différents liens évoqués dans l’article :
Application Sorts sur l’App store Nextcloud à télécharger (Attention : version beta, à utiliser à vos risques et périls. Cependant, les risques sont limités car l’application Sorts ne fait pas de modification sur vos fichiers)
Nextcloud Sorts : a Nextcloud application prototype to navigate your files more easily
Then, once the results were analyzed (you will find an anonymized raw version and a synthetic analysis at the end of the article), we were able to identify a set of unmet user needs, on which Romain could work.
Nextcloud provides loads of features, but the one that remains the most central is probably the storage and sharing of files. However, browsing files in the web interface is quite tedious: a click each time you change folder, and thus a more or less fast reloading of the tree structure. And sometimes many clicks to go from one branch of the tree to another.
There was probably a way to make it more accessible and more intuitive.
Romain, who knew neither the PHP computer language nor the Nextcloud software solution when beginning his internship, indulged himself with the development of a prototype of a third-party application, which would not only allow to « open the file tree » within the same interface, but also to be able to make advanced searches.
Two months later, the « Sorts » plugin was born, and we would like to share its story below.
Hello Romain, can you introduce yourself?
My name is Romain and I am 24 years old. I grew up in Guadeloupe (French West Indies) before coming to study in Villeurbanne, at the Institut National des Sciences Appliquées in Lyon, where I will graduate in 2022 as a Telecom Engineer.
When I’m not busy with my studies, I spend a lot of time tinkering and repairing old machines, and getting involved in community projects! I am particularly involved in Karnaval Humanitaire, a student association that organizes a music festival for which I was the site manager in 2021 and 2022.
Picture of Romain, INSA Lyon intern at Framasoft from September 2021 to February 2022
Why did you choose Framasoft for your internship?
I wanted my internship to be in line with my values of free sharing of knowledge, and away from capitalism and big companies!
I already knew a bit about Framasoft’s projects, especially the online services and software development, and I knew I would find interesting projects in a great environment… and I was not disappointed!
Let’s come to the subject of your internship. What was the main goal?
My internship took place at the beginning of a larger project, codenamed « Framacloud » [Framasoft’s note: we’ll be telling you more about this ambitious project in the upcoming months], whose goal is to allow structures fighting for social progress and social justice to gain ownership, master and control over digital collaboration processes.
This Framasoft project is focused on an online collaboration and file sharing software solution: Nextcloud.
However, although it is one of the most successful and complete open source solutions in this field, it is primarily designed to meet the needs of customers of « Nextcloud GmbH« , the German company that publishes the software. These customers are large structures, public, university or private. As a result, there is a risk of differences between the expectations of small associations and the development priorities of Nextcloud GmbH.
The goal of my internship was therefore to find out how to improve this software in order to make it more useful and more accessible for alternative organisations.
OK, that’s a big topic! How did you manage about it?
Well, first of all, I had to learn about the development of Nextcloud, and we had to learn more about this software: how it works, its flaws and especially what was missing for the users we were targeting.
After several tests of the software and several hypotheses on how to improve it, we decided to get closer to our target users. So we set up a survey targeting people who were part of organisations committed to social progress and social justice and who were already using Nextcloud. This survey questioned their uses of collaborative computing within the collective, their uses of Nextcloud, their frustrations and expectations.
Thanks to the almost 200 answers of this survey we decided on the software developments to be achieved during this internship and that led to the creation of a Nextcloud plugin called « Sorts »!
Let’s focus a moment on this survey work. What were the results?
The main concerns that came out of this survey were rather general concerns about the Nextcloud tool. But it allowed us to see what is important for the public we wanted to address.
Of the 20 or so topics I was able to identify in the responses, the first two were topics we couldn’t do much about: collaborative document editing and the general « slowness » of the tool.
On the other hand, among the following subjects we had more perspective to help change things in a few months of training: handling and ergonomics of the software, synchronization problems or help to users to find their way among the files of the collective.
It is this last concern: « finding one’s way in the tree of files more easily » that interested me the most, and that led me to the development of « Sorts ».
For those who want to have a look at the details of the survey, we have published the anonymized results, as well as a synthesis of the different subjects I have discussed in order to refine the subject of the workshop (it is probably easier to digest than the spreadsheet of raw results).
[Framasoft’s note: You can find the results of the survey at the end of the article]
So, you decided to create the Nextcloud application « Sorts ». But… what does this plugin actually do?
The idea behind Sorts is to help people find the files they are looking for and to understand how the folders and files have been organized by the collective they are part of.
To solve the first problem we took advantage of all the information about each file that Nextcloud was already storing (modification date, weight, « tagging » of the file by the user, …) and I coded an interface that allows users to perform a search mixing these different attributes. For example « Find me all the files in the folder « Grant » and its subfolders that are marked as important, and that are in PDF format ».
To solve the second problem we decided to present the folders, subfolders and files in a way that was not yet present in Nextcloud: in a tree list. That is to say that when you click on a folder, instead of « entering » this folder and seeing only its direct content, the folder is « expanded » and you see its content as well as the folders and files which are « next to » it. This tree-like list takes up more space than a simple list but it allows you to understand where you are in the folders, which helps you to understand how they are arranged.
Technically, did you encounter any issues?
Yes, like in any development process. I think one of the big challenges was to find out which part of the Nextcloud APIs to use, what were its limitations and how to deal with it. The Nextcloud current search feature is designed around a « grouped » search (« unified search ») where the user searches for a string of characters, and Nextcloud returns everything that matches this string among the various resources (files, todos, events, emails, conversations, …). This is not at all what we wanted to do: search among files only according to several conditions, some of which are not strings (dates, numbers, …). But, fortunately for us, there was another search API specific to files. This other API looked very promising because it was already thought to allow combining search conditions on file-specific attributes. However, this API was quite old and not widely used, which sometimes gave me a bit of trouble.
Moreover, I realized quite lately that the API did not take into account two of the different file attributes: « tags » and file sharing information. This information is managed in totally separate APIs. So I faced this dilemma: either I rewrite an API that does the database queries itself with all the attributes, or I complete the existing API, or I cobble together something where I do 3 database queries per search and combine the results. The first solution would have taken too much time and the second solution would have been rejected by Nextcloud GmbH (you don’t change Nextcloud APIs so easily), so I cobbled something together, and so much for the performance of the application.
Did you have contacts with the Nextcloud community or its editor (Nextcloud Gmbh), and if so, how did it go ?
Yes of course, when we started to have a clear idea of what we wanted to do with Sorts I wrote a note of intent with a link to a prototype on the Nextcloud plugin development forum. This led to some exchanges with Nextcloud’s employed developers who were interested in the project and sent me some constructive feedback. We even had a video meeting with them to discuss the plugin but also the wider project, but with everyone’s schedules this meeting took place quite late in the development of Sorts and it didn’t impact the plugin much.
And now, the nagging question: is Sorts really working?
Well YES ! 🎉 Sorts offers an « unfolding » file tree view and already allows combined searches on a good variety of characteristics that files can have!
However, this is a Beta version and it has some limitations… I had to make some accommodations with the technical issues mentioned in the previous question, and while the current version works on small Nextcloud instances, it will likely have trouble to scale when working with real instances counting hundreds of users and thousands of files.
Nextcloud Sorts 0.1.0-beta feature demo video (source)
We want to continue to maintain this application and to process and accept all possible contributions, but neither I nor Framasoft have plans to develop it full time at the moment. Sorts is now entering the world of community/voluntary development, which means that the developments carried by Framasoft and myself will be done according to our desires and availabilities, without any particular agenda (which also means that we won’t announce any « release date »).
We are coming to the end of this interview. Would you like to share with us a feeling about the work done during this workshop?
Summarize an internship in one emotion? That’s a tough one! Developing a program goes from frustration when it doesn’t work, to the excitement of investigating why it doesn’t work, to the satisfaction of seeing the feature work when you’ve found it.
No, more seriously, there were some frustrations like not having much time to develop or not finding as much time and motivation as I would have liked to complete the project after the internship, but I am satisfied. Satisfied to have made something that works but especially to have been able to design this plugin from almost the beginning to almost the end, taking the time to identify what could be useful, to think about what it should look like, and then to think about how to realize it technically.
Last question, recurrent in our interviews: what is the question you would have liked to be asked, and what would be your answer?
Why didn’t you publish Sorts earlier?
That’s my big regret! And I think that the people who were interested in the application during the note of intent also asked themselves that question. But my associative and personal life was quite busy after the internship and didn’t leave me much time to take care of Sorts, that’s also what volunteer development is about.
Thank you Romain! And to all the people who made this work possible, especially by answering the questionnaire!
Reminder of the different links mentioned in the article :
Download and install Sorts application on the Nextcloud App store (Warning: beta version, use at your own risk. However, the risks are limited because the Sorts application does not make any modification on your files)
PeerTube v4, more power to help you present your videos
Customization, content discovery, empowering through more control… Here is an overview of the new version of our software solution to create alternative platforms to YouTube and federate them together.
« Frama is not just… »
Each week of Fall 2021, we want to present you the diversity of what Framasoft does. As these actions are funded by your donations (66% tax-free for Fench tax-payers), you can find a complete summary, in the form of cards to click and flip, on the website Support Framasoft.
PeerTube is a free software that, once installed on a server, generates a video hosting platform. This platform can be federated, to share its video catalog with other PeerTube platforms. It also provides a resilient video broadcasting system, which combines peer-to-peer and traditional streaming.
Today, PeerTube is a whole ecosystem: with an index of nearly 900 public « instances » (that’s how a PeerTube server is called), a search engine, dozens of plugins to adapt one’s instance to the needs of the content creators they hosts… But also tens of thousands of lines of code and hundreds of thousands of videos.
Late March 2021, version 3.1 was released, with improved video transcoding, interface, subscriptions…
Version 3.2 of PeerTube was released by the end of May. It allows content creators to customize their channels. Viewers also get better control of their viewing (automatic recover of views of downloads when interrupted, improvement on the video player contextual menu…).
Late July, version 3.3 offers administrators of a PeerTube instance homepage customization: add text, banners, highlight videos, channels, playlists. In addition, playlists now appear in search results, we have also shortened the web addresses of videos, channels and accounts, and the display of languages that read from right to left is now fully supported.
In early September, PeerTube version 3.4 was released. The video player became more convenient and fluid. Instance administrators can now federate only to an account or a channel (without having to federate with the whole instance that hosts them). But above all, it is now possible to filter videos on a page that displays several videos. For example, on the page of a channel you can display only the videos that are in French and that talk about cooking.
A v4 by 2022, to give you even more control
The fourth version of PeerTube is scheduled for late 2021/early 2022. But as of today, we are publishing the Release Candidate of this v4, that is to say, the almost finished version that we will test for bugs and unexpected behavior. So we can already tell you about the new features!
The big new feature of this v4 is the table view of all the videos of an instance. It will facilitate instances administration and moderation by allowing you to select a batch of videos to apply the same action in bulk: delete them, block them, transcode them to or delete a certain video format, etc.
The advanced filter features make this bulk processing easier, by distinguishing between local videos (hosted on one’s own server) and remote videos (hosted on servers with which one has federated), or by sorting by publication date, for example.
Content creators will also be able to benefit from features to better manage all the videos on their PeerTube channels or view their subscribers. For now, this subscriber view is basic and doesn’t allow for (much) action, but it’s a foundation we’ll be able to build on to meet many needs.
Another new low-tech feature in PeerTube is the introduction of 144p video resolution. This is very low bandwidth-friendly, and can be very useful for weak connections, audio broadcasts, or videos where you don’t need to see very fine details.
Finally, the release of this v4 is the occasion of a big spring winter cleaning. The configuration, the code, but also the API (that allows other software to interact with PeerTube) have been reviewed, modified and improved.
Our contributions to the PeerTube ecosystem
Indeed, PeerTube is now an ecosystem of instances, content creators, third party clients, plugins, contributors… An ecosystem of which we are but one member.
We also funded and supported two external developments that greatly improve the live experience. On one hand, we helped the PeerTube Live Chat plugin. It allows instances adminnistrators to add chat functionality to their content creators’ live streams. On the other hand, the PeerTube Live App, which allows anyone with a PeerTube account to broadcast lives from their Android smartphones (available here on Fdroid and here on the Google Playstore).
One of the recent evolutions of the PeerTube ecosystem is the multiplication of large instances, which host many videos. This creates new uses and new expectations that we try to meet.
For example, we communicate with one team of the French Ministry of Education, that works on apps.education.fr, a tool where teachers in France can find many freeèlibre services, including PeerTube hosting. Our goal is to get a better understanding of their needs and use cases, and to find ways to facilitate their contribution to the PeerTube community.
Any plans for PeerTube in 2022…?
The first project is to test this v4 Release Candidate, collect feedback, apply fixes to release a stable v4 by the end of 2021 / early 2022. After that, it will probably be necessary to take some time to rest, and prepare a roadmap for the upcoming year.
Even if we don’t know yet what form PeerTube v5 will take, we can already tell you about our intuitions, and especially the points that caught our attention:
Eliminate frustration points and improve usability;
Work on giving even more control to instance managers as well as to video makers (mass processing of videos, acting on subscriber lists, etc.);
Improve the transcoding and its displaying (display of the time remaining before publishing the video, why not work on deporting transcoding tasks to a remote server…);
Add light-weight editing tools for videos (cut the beginning/end of a video, etc.);
Work on automatic import of channels and videos hosted on other mainstream platforms;
Basic import/export tools for a PeerTube account to facilitate migration between two instances.
The list is far from complete and we’ll keep listening to your ideas (for example on our forum)… But we already know that we won’t be able to do everything, not by ourselves.
Support Framasoft to support PeerTube
In 2021, we received a 50 000 € grant from NLnet (from European funds) for our work on PeerTube. This external funding allowed us to avoid having to prioritize « sexier » features in order to get a successful crowdfunding. So it’s thanks to this support from NLnet that we were able to make significant improvements that are not super-bankable, but necessary when you want a mature software.
The growing success of PeerTube implies an increasing amount of work to maintain and respond to the people who use it: understanding and solving bug reports, reviewing and integration of code contributions (commits), answering questions and requests on the forum, on the chat and on the software forge (already 3100 issues processed for about 400 pending)… All this work, not very visible, is mainly done by Framasoft.
We estimate (roughly) that the NLnet grant will have financed two thirds of the total cost of this project in 2021. This means that we have taken 25 000 € from the annual budget of the Framasoft association, so from the donations of the people who support us. We did not ask NLnet for 2022 funding on PeerTube (because we did it for another of our projects: Mobilizon).
However, Framasoft is (and wishes to remain) a small not-for-profit association https://framasoft.org/en/association , with about 40 members, including 10 employees. We maintain many actions (summarized in a deck of cards to flip on our donation page), and only one of our developers can devote about three quarters of his time to PeerTube.
If you would like to support the funding of PeerTube in 2022, please donate to Framasoft. By the way, in France, the Framasoft association is recognized as being of general interest and thus gives rights to tax deductions (so that a donation of 100 € will be – after tax deduction – 34 € for French taxpayers).
Thus, in addition to supporting PeerTube, you will finance many actions to facilitate digital emancipation, and emancipation through digital.