Financer le développement Open Source : un défi à relever

Cet article est un résumé de la conférence donnée par Tom Christie lors de la PyCon Lituanie 2024, intitulée Encode OSS: Funding Open Source Development. Il y partage son expérience et ses réflexions sur les modèles de financement du développement open source, mettant en lumière les succès et les défis rencontrés dans ce domaine.

L'Importance de l'Open Source

Les projets open source permettent aux développeurs de collaborer librement, en partageant leur travail avec l'ensemble de la communauté. Ces projets sont souvent maintenus par des individus ou de petites équipes, sans revenu garanti, dépendant de la bonne volonté et des contributions de la communauté. En tant que créateur de Django Rest Framework (DRF), Tom Christie a consacré plus d'une décennie à contribuer à l'écosystème Python, en particulier dans le domaine des frameworks de développement web.

Lancé en 2011, Django Rest Framework a répondu à un besoin dans le développement web : offrir une manière conviviale d'interagir avec les API via des navigateurs web. Avant DRF, les développeurs interagissaient avec les API à l'aide d'outils tels que curl, mais il n'existait pas de moyen simple de naviguer dans les API directement via un navigateur. DRF a changé cela en offrant une interface intuitive, basée sur le navigateur, pour travailler avec les API, révolutionnant ainsi l'approche des développeurs en matière d'interaction avec les API.

Le défi du financement Open Source

Malgré l'importance de projets comme DRF, le financement du travail open source reste un défi de longue date. Au début de sa carrière, Christie s'appuyait sur son emploi de jour pour soutenir son travail sur DRF, mais à mesure que le projet prenait de l'ampleur, il est devenu évident qu'il nécessitait davantage de temps dédié. En 2014, Christie a lancé une campagne Kickstarter pour obtenir les fonds nécessaires afin de se consacrer à plein temps à DRF. La campagne a été un succès et lui a permis de se concentrer davantage sur le projet.

Cependant, comme le souligne Christie, Kickstarter n'est pas une solution durable à long terme. Cela apporte une injection ponctuelle de fonds, mais le maintien d'un projet open source nécessite un soutien continu. Une fois les fonds de Kickstarter épuisés, Christie s'est tourné vers le parrainage d'entreprises, une solution plus durable. Le lancement de GitHub Sponsors en 2019 a ouvert encore davantage de possibilités pour obtenir un financement fiable et à long terme pour les développeurs open source.

Le soutien des entreprises et des modèles durables

Christie met en avant que le modèle de financement le plus durable pour le développement open source consiste à cibler les entreprises plutôt que les individus. De nombreuses entreprises dépendent fortement des logiciels open source pour faire fonctionner leurs opérations, ce qui en fait des candidates idéales pour fournir le soutien financier nécessaire au maintien de ces projets. En mettant en place des niveaux de parrainage, les développeurs peuvent offrir aux entreprises la possibilité de soutenir l'infrastructure dont elles dépendent, tout en bénéficiant d'une reconnaissance publique pour leur contribution à la communauté.

Par exemple, les entreprises qui sponsorisent des projets open source comme Django Rest Framework s'assurent que le logiciel continue d'être maintenu et amélioré, leur offrant ainsi une tranquillité d'esprit quant à la sécurité et à la stabilité des outils qu'elles utilisent. Christie souligne que l’argumentaire doit se concentrer sur la sécurité et la durabilité à long terme pour convaincre les entreprises de contribuer.

Contributions à l'écosystème Python

En plus de Django Rest Framework, Christie a apporté plusieurs contributions significatives à l'écosystème du développement web en Python. Notamment, il a développé le client HTTPX, un client HTTP Python moderne et asynchrone, plus adapté aux applications web modernes. HTTPX prend en charge à la fois les modes synchrones et asynchrones, offrant aux développeurs une flexibilité dans la gestion des requêtes web.

Le travail de Christie sur Uvicorn, un serveur web ASGI (Asynchronous Server Gateway Interface), a également été déterminant pour l'avancement des capacités asynchrones de Python. Cela a, à son tour, ouvert la voie à des projets comme FastAPI, qui s'appuie sur la même technologie sous-jacente. Par exemple, FastAPI utilise Uvicorn et Starlette (un autre framework auquel Christie a contribué) comme composants essentiels, illustrant l'impact des contributions de Christie sur la communauté Python au sens large.

L'avenir du financement Open Source

L'avenir du financement de l'open source repose sur le renforcement des liens entre les développeurs et les entreprises qui bénéficient de leur travail. Christie plaide pour un modèle visant les sponsors corporatifs, leur offrant des incitations telles que des avantages par paliers, tout en garantissant que la communauté continue d'avoir accès à une infrastructure essentielle.

Il met également en avant l'importance de la transparence, tant dans le processus de financement que dans le développement des logiciels open source. Les développeurs devraient être ouverts sur leurs besoins en financement et sur la valeur qu'ils apportent à l'écosystème des affaires. En clarifiant ces liens, les développeurs open source peuvent créer des voies plus durables pour leurs projets et s'assurer que les outils critiques sur lesquels nous comptons continuent de prospérer.

Conclusion

Le développement open source a une immense valeur, mais sans modèles de financement durables, de nombreux projets essentiels risquent de peiner à survivre. Le travail de Tom Christie sur Django Rest Framework, HTTPX et Uvicorn montre l'impact que des développeurs dévoués peuvent avoir sur l'écosystème, mais souligne également le besoin d'un soutien financier constant. Grâce aux parrainages d'entreprises et à des plateformes modernes de financement comme GitHub Sponsors, les développeurs open source peuvent continuer à innover et à créer les outils qui alimenteront l'avenir du développement logiciel.

Pour en savoir plus sur les idées de Tom Christie concernant le financement du développement open source, visionnez sa conférence donnée lors de la PyCon Lituanie 2024 : Encode OSS: Funding Open Source Development.