Le modèle de développement du Logiciel Libre
Bâtie sur Internet
Au début fut l'Internet, lieu de prédilection des échanges inter-universités.
C'est grâce à Internet que s'est développé le logiciel libre.
Les listes de diffusion ont été le premier vecteur de diffusion des logiciels libres.
C'est par un email qu'en 1983, Richard M. Stallman a initié le projet GNU, qui a donné naissance à la plupart des outils utilisé (tel GCC ou Emacs) sous le système d'exploitation connu sous le nom de GNU/Linux et sous de nombreux autres systèmes d'exploitation de type UNIX.
Est ensuite venu le web. La page web est un moyen simple de publier ses travaux de façon plaisante.
Par exemple des sites à vocation d'hébergement de projets de logiciel libre se sont créés dont le plus connu SourceForge héberge plus de 100 000 projets de logiciels libres !
D'autres outils comme les NewsGroup (connu aussi sous le nom d'USENET) sont très utilisés pour le développement de logiciels libres.
C'est par ce biais que Linus Torvalds, l'auteur de Linux a annoncé son projet, son premier e-mail annonçant la création de Linux est d'ailleurs
resté gravé dans les annales.
Bien d'autres outils tous en rapport avec Internet sont utilisés pour le développement de logiciels libres.
La théorie du «Bazaar»
Dans le développement de logiciels, ce sont les développeurs qui prennent les initiatives et prennent en main la conception du logiciel.
Selon les théories de Eric S. Raymond, inspiré en celà par son expérience propre ou par le développement de logiciels libres tel Linux, il existe des lois quant aux développements de logiciel libre,
ce sont celles-ci:
- Tout bon logiciel commence par gratter un développeur là ou ça le démange.
- celà signifie que c'est le développeur qui est l'initateur d'un logiciel et non le client ou un quelconque supérieur hierarchique
- Les bons programmeurs savent quoi écrire. Les grands programmeurs savent quoi réécrire (et réutiliser).
- la tentation de réécrire à chaque fois ce qui a déjà été réalisé est une triste réalité pour les logiciels propriétaires. Cependant avec le logiciel
libre il devient aisé de partir de code source déjà existant pour bâtir un nouveau logiciel ou tout simplement l'étendre ou l'améliorer.
- «Prévoyez d'en jeter un, car de toute manière, vous le ferez.»
- signifie qu'il faut se remettre en cause, et éventuellement revoir la conception et abandonner certaines parties du code source
- «Bien souvent, les solutions les plus innovantes, les plus frappantes, apparaissent lorsque vous réalisez que votre approche du problème était mauvaise.»
- ainsi de nombreux logiciels libres ont connu des réécritures complète
- De l'importance d'avoir des utilisateurs
- les utilisateurs sont très importants pour l'amélioration du logiciel et la plus grande corrélation entre la demande effective
et les fonctionnalités offertes par le logiciel.
- les écouter est donc primordial
- Quand un programme ne vous intéresse le plus, votre dernier devoir à son égard est de le confier à un successeur compétent.
- un grand avantage du logiciel libre est qu'un logiciel abandonné par son auteur est toujours sauvable, il n'est pas voué à une mort certaine.
Des passations de projets sont ainsi monnaie courantes.
- Distribuez tôt, mettez à jour souvent.
- le paradigme du développement de logiciel libre.
- ne pas attendre de disposer d'une solution répondant à tous les besoins. Répondre aux besoins primordiaux suffit
- et surtout évoluer rapidement en répondant à la demande et non pas en suivant un carnet de route tracé.
- Étant donné un ensemble de bêta-testeurs et de co-développeurs suffisamment grand, chaque problème sera rapidement isolé, et sa solution semblera évidente à quelqu'un.
Ou, moins formellement, «Étant donnés suffisamment d'observateurs, tous les bogues sautent aux yeux.» C'est ce que j'appelle: «La Loi de Linus».
- Il est presque aussi important de savoir reconnaître les bonnes idées de vos utilisateurs que d'avoir de bonnes idées vous-même. C'est même préférable, parfois.
- les utilisateurs et les autres développeurs sont partie prenante du processus du développement
- les écouter et adopter leurs idées est indispensable
Ce site a été réalisé dans le cadre des projets tuteurés de l'
IUT d'Orsay par:
Badredine Ladjemi et Bruno Miralles
encadré par M. Christian Métairie
Cette création est mise à disposition sous un
contrat Creative Commons.