Blog Archive

Last modified by Ludovic Dubost on 2019/06/17 20:29

Blog - posts for July 2018

Aidez le projet libre CryptPad !

CryptPad - L'éditeur #ZeroKnowledge Libre a besoin d'aide

This article is a translation from the English post on the CryptPad blog.

Le 31 Octobre 2014, quand le projet CryptPad a été publié, il ne s'agissait d'un simple éditeur Wysiwyg et d'une page d'accueil moche. Depuis le projet a bien grandi avec le financement de XWiki SAS et du projet de recherche OpenPaaS::NG.

Aujourd'hui, une page va se tourner avec la fin du projet OpenPAAS:NG en Avril 2019. Nous avons candidé au concours d'innovation BPI afin d'avoir un financement supplémentaire mais cela n'a pas eu le succès espéré et pour continuer à l'améliorer le projet CryptPad va avoir besoin d'une nouvelle source de financement.

Jusqu'à maintenant, la grande majorité du code de CryptPad a été développé par XWiki SAS par les financement de recherche et avec le risque de ne pas trouver de financement de recherche, nous voulons publiquement expliquer nos intentions. Nous ne souhaitons pas avoir un financement de CryptPad qui soit incompatible avec l'esprit ouvert et le code libre de CryptPad. C'est pourquoi nous nous tournerons d'abord vers des financements de recherche, des souscriptions vendues sur cryptpad.fr et des donations. Nous voulons maintenir l'esprit communautaire de CryptPad.

  1. Nous continuerons à héberger le service https://cryptpad.fr/: nous voulons remercier tous ceux qui ont un compte payant. Avec ce revenu, pour l'instant de 1,5KEuros / an, le hosting de CryptPad est couvert et nous considérons le service CryptPad.fr une resource publique de valeur pour la communauté et celle-ci doit continuer à exister.
  2. XWiki SAS va continuer à financer l'équipe par le projet OpenPAAS jusqu'à la fin de ce projet: par la suite notre intention est de garder au moins 1 developeur actif sur le projet (un coût de 50,000€ par an) par d'autres financement ou un nouveau projet de recherche. Si nous ne pouvons pas trouver de projet, nous évaluerons la capacité de garder le projet actif en fonction des revenus de souscriptions et les donations.
  3. Nous allons rendre des finances de CryptPad publiques: nous allons rendre public l'argent que rentre et l'argent que nous dépensons pour CryptPad, incluant les souscriptions payées sur https://cryptpad.fr/ afin de permettre d'analyser comment le projet est financé, et vous convaincre qu'il est nécessaire et intéressant de nous financer. Pour ouvrir les informations sur notre budget nous avons créé une page OpenCollective. Vous pouvez faire des donations sur cette page.

Comme les souscriptions et donations sont pour l'instant trop faible pour couvrir le financement d'un développeur (le minimum), ni 2 développeurs (l'équipe actuelle) et encore moins 3 ou 4 personnes (ce qui permettrait une réalisation plus rapide de la roadmap), nous avons besoin de votre aide pour faire grandir ce revenu avant Avril 2019 afin de montrer que le projet peut être financé sans projet de recherche. Tout financement reçu d'ici Avril 2019 servira à financer les développements après Avril 2019.

Ce qui nous voudrions faire

Jusqu'à maintenant nous n'avons pas été parfaitement transparent sur notre roadmap. Nous avons un document "tech tree" qui montre de façon simple les fonctionnalités que nous voudrions réaliser et les technologies nécessaires pour avoir des fonctionnalités.

A moyen terme, nous voudrions faire évoluer CryptPad vers une plateforme générique avec la possibilité d'installer des applications, ayant un système de droits vérifiés cryptographiquements, et une fédération avec messagerie PGP-compatible permettant d'échanger des liens, pads et des mises-à-jour de pads entre serveurs.

  • Applications Installables: Il n'y a des points communs importants entre les applications Wysiwyg, Code, Slide ou Kanban board. Chacune de ces applications est constuite au dessus de la même infrastructure de document sécurisé de CryptPad. Pour autant il reste difficile d'en créer une nouvelle sans modifier quelques lignes dans le coeur de CryptPad. Nous voulons changer cela pour qu'une nouvelle applications puisse être installée sans changer le reste du code.
  • Contrôle d'accès vérifiés Cryptographiquement: initiallement CryptPad a un système de contrôle d'accès très simple. Celui qui a l'URL a accès. Nous avons ajouté la possibilité de publier un pad en mode 'lecture-seule' et d'ajouter un mot de passe à un pad, mois nous n'avons pas encore la possibilité de limiter l'accès d'un pad à un groupe et encore plus important de revoker un accès obtenu. Généralemeht les contrôles d'accès sont une fonctionnalité simple, car le serveur est un serveur de "confiance". C'est plus compliqué dans une architecture ZeroKnowledge et cela doit être réalisé cryptographiquement, et encore plus dans un système de fédération de serveurs.
  • Federation et Messagerie: une faiblesse de CryptPad est le partage de pads. Aujourd'hui il y a 150 instances de CryptPad installés et nous voulons permettre aux utilisateurs de ces instances de se partager les pads et de s'envoyer des messages. Comme nous avons déjà un chiffrement côté client, nous pouvons l'étendre pour supporter le protocole PGP pour le partage de pads et des messages.

Fondamentalement, notre objectif a toujours été de promouvoir l'architecture ZeroKnowledge comme une alternative à l'hégémonie Google Docs/Office 365 sur le cloud. Cependant ceci n'est pas une tâche que nous pouvons réaliser seuls et nous avons besoin de votre aide pour réaliser cet objectif.

Comment aider CryptPad

Vous pouvez aider CryptPad de plusieurs façons. Si vous êtes un programmeur vous pouvez participer au développement. Si vous êtes philantropiste ou une organisation utilisatrice ou que vous croyez en ce type de logiciel, vous pouver financer notre roadmap ou financer des fonctionnalités particulières. Tous vous pouvez utiliser CryptPad , le faire connaître et montrer qu'il est possible d'éditer des documents collaborativements sans les données à l'administrateur du serveur.

  • Contributer: En tant que programmeur qui utilise CryptPad, vous pouvez aider à le rendre meilleur. Nous comptons être actif pour gérer les pull requests sur le code. Venez sur notre chat #IRC et #Matrix pour discuter avec nous.
  • Payer une souscription: Chaque souscription aux offres payantes contribue un peu d'argent pour le développement et sera reinvestis pour rendre CryptPad meilleur et plus complet. Chaque souscription nous permet de croire plus au project et a sa viabilité financière. Voir les souscriptions.
  • Sponsoriser une fonctionnalité: Il s'agit d'une des meilleurs façon d'assurer que CryptPad s'améliorera parce que vous pouvez aider le projet tout en participant à sa direction.
  • Acheter du support: Si vous avez installé une instance de CryptPad dans une organization ou une entreprise, vous pouvez souscire un support pour votre installation et aussi participer au financement du développement du projet.
  • Faire une donation: Si vous ne savez pas quoi sponsoriser et que vous n'avez pas besoin d'une souscription ou si vous voulez sponsoriser plus que le montant d'une soucription, vous pouvez faire une donation. Même si ce n'est pas beaucoup d'argent, chaque donation nous permet de prouver que le projet compte pour notre communauté. Faire une donation
  • Faite nous participer à un projet de recherche: Si vous êtes une organization qui monte des projets de recherche financés ou que vous avez de l'experience pour les financements Européens, tout particulièrement pour un projet orienté sécurité, faites nous participer. Ceci nous permettra de financer le projet.
  • Communiquer: Plus CryptPad est utilisé et connu, plus nous pourront convaincre de la valeur du projet pour d'autre partenaires. C'est aussi une preuve de l'interêt que le projet a pour notre communauté.

Tweetez sur CryptPad      Suivez @cryptpad

Pour ouvrir les informations sur notre budget nous avons créé une page OpenCollective. Vous pouvez faire des donations sur cette page.

Venez échanger avec nous

Nous sommes sur Mastodon, sur Twitter et nous avons un chat CryptPad sur IRC / Matrix. Venez discuter avec vous sur le projet et sur comment nous aider.

Si vous êtes un professionel de la technologie, avez un interêt pour ce projet et de l'experience dans le domaine de la recherche, nous cherchons aussi à embaucher un/une leader business et recherche pour nous aider à trouver les bons financement pour le projet et aussi guider le futur fonctionnel et économique du projet.

Comment financer le logiciel libre ? un vrai sujet

Comment financer le logiciel libre ? un vrai sujet !

Ces derniers temps, de plus en plus d'articles traitent du problème de financement des logiciels libres, opposant parfois open-source et libre.

Je suis content que ce sujet se fasse une place dans les conférences, comme ce dernier week-end lors de Passage en Seine 2018 ou plusieurs personnes ont traité ce sujet de façons différentes. Par ailleurs on peut citer les articles de Calimaq et aussi de TechCrunch ainsi que le travail de Sebastien dans le cadre du projet de recherche "encommuns".

Je suis content que ce sujet soit plus traité aujourd'hui, car c'est un sujet qui m'intéresse depuis maintenant 14 ans que je gère XWiki SAS. En effet, XWiki SAS paye des développeurs de logiciel libre tout en essayant de garder un mode éthique de livraison de nos logiciels (en ayant une communauté ouverte et en n'ayant pas de parties propriétaires). Depuis 14 ans, nous sommes confrontés au phénomène de "free-riders", à la difficulté d'embaucher au prix du marché, à la difficulté de faire des bonnes marges sur le revenu de services face aux sociétés de services qui ne contribuent pas aux logiciels libres qu'elles utilisent. Depuis 14 ans aussi nous profitons des avantages du logiciel libre, des contributions, du marketing de notre communauté, du support d'acteurs qui comprennent bien notre modèle, de l'argent de projets de recherche. J'ai fait de multiples conférences parlant de notre expérience sur ce sujet.

Je voudrais porter l'attention sur ces différentes présentations et rapport récents et apporter quelques commentaires sur le sujet:

Ces articles traitent du problème de financement des logiciels libres, avec une éventuelle opposition aux logiciels "Open-Source" financés par les grands acteurs capitalistiques (GAFAM en particulier). Ils parlent ensuite des free-riders: entreprises et organisations utilisatrices de logiciels libres, sociétés de services qui les utilisent pour leurs clients, services clouds qui basent leur business sur du libre, ou individus qui utilisent sans participer au développement de ces logiciels.

La conférence de Atosh, provocatrice, montre le développeur "open-source" comme exploité pour son travail gratuit. Il prend en exemple les tweets de Fabien Potencier, créateur de Symfony, un logiciel libre emblématique du monde PHP:

fabpot.png

A noter que dans les réponses aux tweets, @fabpot reconnait que la comparaison est trop extrême, en particulier face à la situation de réels esclaves dans le monde. 

Lors de cette conférence, Atosh pose un problème sérieux: celui des free-riders et de la façon dont ceux-ci conçoivent le travail des développeurs de logiciels libres. Les ingénieurs qui arrivent sur le marché aujourd'hui utilisent l'open-source et le logiciel libre naturellement, sans avoir conscience du modèle de fonctionnement du libre et du travail des participants au mouvement. En quelque sorte le libre est victime de son propre succès. En voulant démocratiser et montrer le libre au monde, nous avons appuyé sur la gratuité et c'est ce qui a été retenu par la majorité des utilisateurs.

Cependant je ne peux pas être 100% d'accord avec @fabpot. J'espère qu'il parle des développeurs du libre en général et pas de lui, car il fait quand même partie des privilégiés de l'open-source, et il le mérite pleinement: son logiciel Symfony est un succès massif. Ce succès a contribué au succès de SensioLabs et de SensioGrey (revendu en 2017 à WPP). Je ne connais pas les détails et peut-être que ce n'est pas magique, mais le chiffre d'affaires de ces sociétés semble confortable (plus que celui d'XWiki). Il me semble un peu exagéré de poser tous les développeurs open-source en victimes, alors qu'ils sont libres de leur choix et sont loin d'être maltraités dans pas mal de cas, d'autant plus qu'ils sont très recherchés sur le marché. Par contre il est vrai que pour certains types de logiciels et pour certains modes opératoires du logiciel libre, il peut en effet s'avérer difficile de trouver le financement associé.

Je pense que le problème qui est mis en lumière ici n'est pas spécifique au libre, car il existe en réalité pour toute personne qui fait un effort pour participer à la société, comme les bénévoles des ONGs en tout genre, écologie, pauvreté, mais aussi les employés qui acceptent parfois des salaires plus bas pour faire un métier qui participe à la société (éducation, pompiers, chercheurs, services publics, etc..).

Il s'agit d'un côté de la relation entre les acteurs d'un monde marchand, tourné vers les business, qui ne se pose pas toujours beaucoup de questions et prend ce qu'il y a à prendre, et de l'autre côté des acteurs qui se posent des questions et souhaitent contribuer à la société.

Le développeur open-source fait partie de ceux-là, qu'il soit bénévole, dans une entreprise du libre comme SensioLabs ou XWiki, ou qu'il travaille pour les GAFAMs. Quelque part il contribue un peu plus à la société qu'un développeur du monde propriétaire, mais il n'est pas le seul. 

Un point qui serait intéressant est d'ailleurs de communiquer plus pour encourager les développeurs et entreprises du monde marchand à contribuer d'une façon ou d'une autre aux logiciels libres qu'ils utilisent au jour le jour pour leurs employeurs et leurs clients.

Sur le sujet de la relation marchand / non marchand @fabpot a fait lors d'une conférence des remarques intéressantes:

fabpotoss.png

En effet il y a un modèle d'open-source d'entreprise commerciale "Open Source de droite". Il y a aussi un modèle de contributeurs individuels "Open Source de gauche". Cependant je pense qu'il y a aussi des modèles intermédiaires avec des entreprises socialement responsables qui veulent équilibre valeurs et création de valeur. On pourrait appeler cela "l'Open Source du centre".

Chez XWiki SAS, par exemple, nous n'avons pas pris d'investisseurs afin de ne pas avoir cette pression de rentabilité face à nos valeurs et nous souhaitons contribuer notre code en logiciel libre tout en étant capable de payer des salaires corrects à nos employés.

En final la question est de savoir comment on peut financer le logiciel libre autrement que part l'investissement capitalistique ou une part minime du revenu d'une grande entreprise commerciale.

Que pouvons nous donc faire face au problème du financement du libre ? En effet c'est un réel problème. Comme indiqué dans l'article mentionnant "les communs du capital", le monde capitalistique a vu un interêt au logiciel open-source. En final on se rend compte que ces dernières années de plus en plus de contributions au libre viennent des entreprises commerciales. D'autres entreprises commerciales, en particulier Cloud, utilisent les contributions aussi bien des entreprises mais aussi des contributeurs indépendants, et ce sans contribuer en retour ou alors marginalement. Nous avons alors plusieurs façons de voir les choses: nous pouvons voir le verre à moitié plein (plus de code libre) ou voir le verre à moitié vide (la dépendances aux entreprises commerciales et les free-riders). 

Les articles de Calimaq et de Sébastien Broca sont très intéressant car ils soulèvent une contradiction possible chez les libristes qui veulent à la fois un code très libre mais aussi ne pas introduire d'impossibilité pour le monde capitalistique d'utiliser le code libre. Cela pose effectivement une question intéressante. Si le monde du capital peut largement utiliser le code libre, mais le monde du code libre ne peut pas utiliser le code propriétaire, n'y a-t-il pas un risque que le libre ne soit qu'un satellite de la production propriétaire ? Alors l'embélie que nous voyons avec la grande quantité de code open-source produit, n'est dû qu'au succès démesuré du monde du Cloud. A l'opposé, la vision parfois proposée par les libristes est un modèle de fonctionnement à base de volontaires sans entreprises avec un système de donation. Au jour d'aujourd'hui on ne voit que quelques succès dans le système de donation pour le code libre et on risque de voir un fonctionnement uniquement à base de bénévolat.

Calimaq et Sébastien Broca présentent la solution de CoopCycle qui propose une licence à réciprocité. C'est du libre mais avec des contraintes de fonctionner de façon similaire. Le problème est que ce type de licence ne répond pas forcement aux critères d'une licence libre car elle introduit une discrimination. Je vois aussi un autre problème: en restreignant la diffusion d'un logiciel libre, quelque soient les raisons, on pose aussi le problème de son succès, surtout dans la phase de lancement.

Une autre approche est de communiquer beaucoup plus fortement sur le modèle du libre et le besoin de participer ou reverser. C'est pour cela que je fais de plus en plus de conférences sur ce sujet et que nous faisons des efforts pour expliquer le modèle du libre à nos clients. Nous appuyons maintenant de façon systématique sur l'importance du contrat de support, sur la durée de nos contrats et surtout nous appliquons un sur-prix de 50% pour nos services si le client n'a pas de contrat de support. Ceci s'avère plutôt efficace et a l'interêt d'engager la discussion sur le financement de notre logiciel. Aux RMLL2018 le 8 Juillet, je ferais une conférence sur les Recettes et Astuces pour financer du logiciel libre qui explique les méthodes que nous avons appliquées.

Dans l'article de TechCrunch est mise en avant l'initiative OpenCollective que je trouve très intéressante, avec une approche de transparence des finances d'un collectif de production de communs. Pour autant cette approche est de la donation et il reste à prouver la capacité de la donation à apporter des financements significatifs et suffisant pour la production de logiciels libres.

Ces sujets sont très intéressants et les communautés du libre vont devoir les résoudre afin de pouvoir produire des alternatives au modèle des GAFAM. Je doute fortement qu'il sera possible de faire des alternatives viables si l'on n'est pas capable d'apporter une rémunération correcte aux développeurs qui devront produire et maintenir ces solutions. 

Du côté d'XWiki, nous nous posons aussi ces questions. Pour le logiciel XWiki nous avons trouvé un premier modèle qui fonctionne, avec le service et le support et nous arrivons à financer un logiciel plus pour entreprises que pour particuliers. Cependant nous trouvons notre modèle trop lié au service et il est difficile de grandir sur ce modèle. Nous essayons pour cela de nouvelles solutions, comme le support qui représente une part significative de nos revenus, comme notre offre Cloud qui émerge, ou comme livrer des applications payantes tout en les laissant open-source. Nous appliquons ici de façon plus stricte la séparation libre et gratuit.

Pour le logiciel CryptPad, la problématique est justement encore plus importante. Nous avons un financement de recherche qui se termine en 2019 et nous avons un logiciel qui laisse peu de place au service. Il s'adresse aux individus (par son service cloud https://cryptpad.fr) comme aux entreprises qui pourront aussi l'utiliser. Comme le logiciel a une innovation significative (la fusion de données avec chiffrement bout en bout), nous avons décidé d'avoir une licence plus dure, afin de restreindre la reprise du code par les projets non-libres. C'est un début de réciprocité. Mais la question se pose surtout de savoir comment payer les développeurs. Nous avons 2 personnes à plein temps sur le projet, soit un budget entre 50k et 100k par an (en tenant compte du Crédit Impôt Recherche). Nous avons ouvert un mode payant de notre service cloud (qui rapporte environ 1keuros annuellement pour l'instant), mais rien n'empêche nos utilisateurs d'installer leurs propres instances. Le logiciel CryptPad à l'ambition de proposer une alternative aux Google Docs/DropBox/Trello en mode chiffré, ce qui est une tache énorme quand on mesure la R&D pour réaliser toutes les fonctions nécessaires. Nous nous intéressons ainsi au modèle de crowdfunding et de OpenCollective. Récement Framasoft vient de faire une campagne pour PeerTube (33k collectés), et même si c'est prometteur cela reste faible au vu de la notorité de Framasoft et du salaire d'un ingénieur qualifié. Nous nous posons fortement la question sur le bon modèle. D'un côté nous pouvons aller plus vers les individus et le crowdfunding, de l'autre nous pourrions aller plus vers l'entreprise ou la monétisation par le cloud. En tout cas ce que nous ne voulons pas c'est aller vers le financement capitalistique qui puisse remettre en cause le modèle libre. Si vous avez des idées n'hésitez pas !

D'ailleurs, à ce sujet nous cherchons un "lead" business pour CryptPad et aussi pour notre équipe recherche afin de justement trouver le moyen de financer CryptPad et ensuite de l'améliorer pour nos utilisateurs. Pour en savoir plus, suivez notre conférence CryptPad au RMML2018 à Strasbourg le 8 Juillet.