Les mainteneurs d'ESLint partagent les défis du financement des utilitaires open source par le biais du parrainage

Publié: 2020-10-23

ESLint, l'un des utilitaires de linting JavaScript les plus populaires, a rapidement éclipsé les premiers concurrents plus établis, grâce à sa licence open source. La licence claire a permis au projet d'être largement utilisé mais ne s'est pas immédiatement traduit par des fonds pour son développement en cours. Bien qu'il soit téléchargé plus de 13 millions de fois par semaine, ses responsables ont encore du mal à prendre en charge l'utilitaire.

Un peu plus d'un an après le lancement d'ESLint Collective pour financer les efforts des contributeurs, la direction du projet a partagé certains des succès et des défis de la poursuite du modèle de parrainage. Un effort qui n'a pas abouti a été d'embaucher un responsable dédié :

C'était une chose difficile à surmonter pour l'équipe, et nous pensons qu'il y a une leçon importante sur la durabilité de l'open source : même si nous recevons des dons, ESLint ne rapporte pas assez pour payer les mainteneurs à plein temps. Lorsque cela se produit, les mainteneurs sont confrontés à une décision difficile : nous pouvons essayer de faire fonctionner le développement à temps partiel, mais il est difficile de trouver un autre travail à temps partiel pour compenser le revenu mensuel dont nous avons besoin pour que cela en vaille la peine. Dans certains cas, faire du travail à temps partiel rend plus difficile la recherche d'un autre travail parce que vous êtes limité par le temps d'une manière que les autres pigistes ne sont pas.

Une expérience quelque peu réussie qu'ESLint a explorée consiste à payer son comité de pilotage technique (TSC) de cinq personnes, la direction du projet responsable de la gestion des versions, des problèmes et des demandes d'extraction. Les membres reçoivent 50 $/heure pour les contributions et le temps consacré au projet, plafonnés à un maximum de 1 000 $/mois. Le plafond empêche les membres du TSC de consacrer trop de temps au projet en plus de leur travail quotidien afin de ne pas s'épuiser.

L'équipe rapporte que cet arrangement d'allocation a fonctionné "extrêmement bien" et que les contributions ont lentement augmenté : "Il y a quelque chose à dire sur le fait de payer les gens pour un travail précieux : lorsque le travail est explicitement valorisé, les gens sont plus disposés à le faire."

Sur des projets plus importants comme WordPress, les contributions des entreprises sont essentielles à son développement continu. Ces dernières années, la campagne Five for the Future a permis de rémunérer de nombreux contributeurs puisque leurs employeurs leur versent un salaire tout en donnant de leur temps pour travailler sur WordPress.

Certaines des avancées majeures de WordPress nécessitent un immense investissement en temps et en expertise. C'est la résolution de problèmes qui nécessite de travailler avec plusieurs équipes pendant des mois pour créer des solutions complexes qui fonctionneront pour des millions d'utilisateurs. C'est pourquoi vous ne voyez pas des armées de gens construire Gutenberg gratuitement. Une grande partie du développement est menée par des employés rémunérés et n'aurait peut-être pas eu lieu sans les dons de temps des employés. Automattic, Google, Yoast SEO, 10up, GoDaddy, Human Made, WebDevStudios, WP Engine et de nombreuses autres entreprises ont collectivement promis des milliers d'heures de travail par mois. La diversité des entreprises et des particuliers qui soutiennent WordPress aide le projet à maintenir sa stabilité et à mieux résister aux tempêtes de la vie.

Les petits projets open source comme ESLint ont rarement les mêmes ressources à leur disposition et doivent expérimenter. Résumant l'examen d'un an des contributeurs payants des parrainages, l'équipe déclare : « Maintenir un projet comme ESLint demande beaucoup de travail et de nombreuses contributions de la part de nombreuses personnes. La seule façon pour que cela continue est de payer les gens pour leur temps.

Lorsque même les services publics les plus populaires ont du mal à obtenir suffisamment de parrainages, quel espoir y a-t-il pour des projets plus petits ? De nombreux utilitaires devenus indispensables dans les flux de travail des développeurs sont en passe de devenir insoutenables.

"Malheureusement, les services publics comme ceux-ci rapportent rarement une somme d'argent significative grâce aux dons, quelle que soit leur utilisation ou leur popularité", a déclaré l'ingénieur de l'OSS Colin McDonnell dans sa proposition de nouveau modèle de financement. « Envisagez un routeur réactif. Même avec 41,3 000 étoiles sur GitHub, 3 millions de téléchargements hebdomadaires de NPM et une adoption presque universelle dans les applications monopage basées sur React, cela ne rapporte que 17 000 $ de dons par an. »

McDonnell a proposé le concept de «pools de sponsors» pour financer des projets plus petits qui ne peuvent pas bénéficier des modèles de financement open source existants. Au lieu de faire des dons par projet, les partisans de l'open source pourraient donner un montant fixe dans un "portefeuille" chaque mois, puis distribuer ces fonds aux projets qu'ils sélectionnent pour leurs pools de sponsors. L'élément clé de la mise en œuvre est que l'ajout de nouveaux projets au pool ne devrait prendre qu'un seul clic, ce qui réduit la friction psychologique associée au soutien de projets supplémentaires.

McDonnell a suggéré que GitHub est la seule organisation disposant de l'infrastructure pour mettre en œuvre ce modèle en tant qu'extension de GitHub Sponsors. Un commentateur sur Hacker News propose que les sponsors et l'idée de "pool de sponsors" puissent exister en parallèle.

"Je crois qu'il y a une différence significative entre être le mécène d'un développeur et avoir l'impression de soutenir un créateur avec des sentiments, une histoire et une famille... et vouloir être un bon citoyen qui a une liste approuvée de projets dont je bénéficie de et que vous voulez soutenir », a déclaré Pete Forde.

"Je peux parrainer Matz, obtenir ses mises à jour et me sentir bien de savoir que je suis considéré comme un supporter ET mettre de côté $$$ par mois pour contribuer à tous les outils que j'utilise dans mes projets simplement parce que c'est la bonne chose à faire et je veulent que ces projets existent à long terme. Ce sont des initiatives complètement différentes. Patreon vs Humble Bundle, si vous voulez.

Tidelift est un autre concept qui a été mis en évidence dans la discussion HN. Il a une approche différente et unique pour financer le travail open source. Tidelift regroupe les fonds des organisations utilisant le logiciel pour soutenir les mainteneurs.

"Je maintiens le raisin rubis, un projet de taille moyenne", a déclaré Daniel Doubrovkine. « Nous recevons 144 $/mois de Tidelift. À mesure que de plus en plus d'entreprises s'inscrivent au parrainage d'entreprise, le montant en dollars augmente. C'est une piscine.

Snowdrift adopte une approche plus inhabituelle de la mise en commun des parrainages où les mécènes "se regroupent" les dons les uns des autres pour financer des biens publics. Il fonctionne comme une coopérative à but non lucratif pour financer des projets gratuits et ouverts qui servent l'intérêt public.

Flossbank vise plus spécifiquement le financement de projets open source et adopte une approche technique pour assurer des contributions équitables à l'ensemble de l'arbre de dépendance de vos packages open source installés. L'organisation prétend fournir un moyen "gratuit et sans friction" de redonner aux mainteneurs. Les développeurs peuvent opter pour des publicités organisées et axées sur la technologie dans le terminal lors de l'installation de packages open source. Comme alternative, ils peuvent définir un montant de don mensuel à répartir sur les packages qu'ils installent.

Aucun modèle de financement unique ne convient à tous les projets, mais les expériences qui regroupent les parrainages de diverses manières semblent être à la mode, en particulier pour soutenir les mainteneurs qui ne sont peut-être pas aussi compétents pour commercialiser leurs efforts. La conversation autour des services publics de soutien se poursuit sur Hacker News. Les développeurs WordPress qui dépendent de certains de ces utilitaires voudront peut-être participer et partager leurs expériences dans le financement de petits projets.