Introduction

L'open source a longtemps existé avant l'invention des systèmes de contrôle de version distribués (DVCS). Les auteurs de logiciels open source partageaient leur code via des pages web, des fichiers texte ou des serveurs FTP. Les utilisateurs pouvaient éventuellement rejoindre des listes de discussion ou des canaux IRC pour discuter du logiciel.

Contexte Technique

Avec l'avènement de sites comme Sourceforge, les développeurs pouvaient héberger leur code et utiliser des outils de collaboration tels que CVS/SVN et des listes de discussion. L'arrivée de Git et de plateformes comme Github a révolutionné la façon dont les logiciels open source sont développés et partagés. Cependant, cela a également introduit de nouvelles complexités, telles que la gestion de tickets, les réunions avec les parties prenantes et les distractions liées à la gestion d'une communauté.

Analyse et Implications

Le développement de logiciels open source sur des plateformes comme Github peut devenir une tâche à plein temps pour les mainteneurs, avec des notifications constantes, des demandes de pull requests et des plaintes de la part des utilisateurs. Cela peut conduire à une situation de burn-out et à une perte de contrôle sur le projet. Il est important de noter que l'open source ne nécessite pas nécessairement une communauté ouverte et que les développeurs peuvent choisir de travailler seuls ou avec un petit groupe de personnes de confiance.

Perspective

Les développeurs d'open source peuvent se libérer de la pression de gérer une communauté en désactivant les fonctionnalités de suivi des problèmes et des pull requests, ou en utilisant des serveurs Git minimalistes pour partager leur code. Il est possible de développer des logiciels open source sans être obligé de gérer une communauté ou de suivre les dernières tendances en matière de machine learning ou de cloud. Les développeurs peuvent simplement se concentrer sur l'écriture de code et la création de logiciels qui leur plaisent, sans être dérangés par les distractions liées à la gestion d'une communauté.