Logiciels libres

De quelles ressources dépend la pérennité d'une communauté comme Debian ?


octobre 2004

Copyright (C) 2004 Christophe Le Bars.

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.

Plan

  • I - Qu'est-ce que Debian?
  • II - Les ressources d'un projet comme Debian...
  • III - Logiciel libre et pérennité

Qu'est-ce que Debian?

  • Une distribution?
  • Un système d'exploitation?
  • Un projet de l'informatique libre?

Qu'est-ce que Debian?

Une distribution?

  • Oui mais... C'est une vision historique
  • En fait, bien plus qu'une collection de logiciels
  • Paquets, normes, utilitaires, ...

Qu'est-ce que Debian?

Un système d'exploitation?

  • Oui mais... C'est par analogie avec le monde propriétaire
  • Intégration beaucoup plus aboutie (plusieurs milliers de logiciels)

Qu'est-ce que Debian?

Un projet de l'informatique libre?

  • Oui mais c'est un meta-projet...
  • Vocation à rassembler tous les logiciels libres

Qu'est-ce que Debian?

Les objectifs techniques

  • Intégrer de manière homogène de nombreux logiciels
  • Figer et factoriser l'administration système
  • Adapter un système à une cible
  • Réussir l'utopie du composant à une granularité supérieure

Qu'est-ce que Debian?

Caractéristiques

  • Développement ouvert et public
  • Pas de discrimination (développements et utilisation)
  • Un contrat social avec ses utilisateurs

Qu'est-ce que Debian?

Un peu d'histoire

  • 1993 : le Manifeste « Debian »
  • 1997 : DFSG (« Qu'est-ce que le logiciel libre ») et contrat social
  • 2003 : Debian 3.0 (woody) ~ 8700 paquets
  • 2004 : 3ème, + fort taux de croissance (1 Millions de site web) (source Netcraft)

Les ressources d'un projet comme Debian...

Partager, réutiliser : une idée ancienne...

  • Le logiciel est-il une commodité?
  • Code source disponible ou non?
  • // collaboration scientifique et universitaire
  • Le projet GNU (1984!) => projets ouverts mais peu collaboratifs
  • Liberté d'utilisation, de modification, de distribution

Les ressources d'un projet comme Debian...

La communauté des développeurs

  • Un responsable par paquet
  • Nombreux développeurs de tous horizons (~ 1000)
  • Communication quasi-exclusivement par Internet
  • Communication en anglais (sauf l10n)
  • Participation stratifiée
  • Une organisation élaborée
    (leader, constitution, commissions, élections, etc)

Les ressources d'un projet comme Debian...

Une méthode hyper-compétitive

  • Normes sévères (Debian-Policy)
  • Système de suivi des bogues
  • La revue des pairs
  • Une « Méritocratie »
  • Pragmatisme : « show me the code »
  • Parallélisation et débauche de ressources

« given enough eyeballs, all bugs are shallow » Linus Torvalds

Les ressources d'un projet comme Debian...

L'analogie darwinienne

  • Code source => l'ADN
  • Les utilisateurs => la pression du milieu
  • Les patches, les releases, les forks => l'évolution
  • Qualité et sécurité => la sélection naturelle

Les ressources d'un projet comme Debian...

Évolution du modèle...

  • Dématérialisation de l'objet « distribution » (cd/dvd)
  • Une implémentation de référence de Linux (normalisation LSB)
  • Une base pour des distributions dérivées (Debian Edu, ...)
  • Tirer toutes les conséquences du logiciel libre
  • S'éloigner du modèle de l'éditeur

Les ressources d'un projet comme Debian...

Les projets et l'entreprise...

  • Entreprises utilisant des logiciels libres
    (consciemment ou non)
  • Développeurs de logiciel libre salariés
  • Entreprises participant/créant des projets
  • Prestataires de service

Logiciel libre et pérennité

Pérennité des architectures

  • Personnalisation/adaptation/migration toujours possible
  • Liberté de modification = interopérabilité
  • Respect naturel des standards

Logiciel libre et pérennité

Pérennité des développements

  • Le futur du logiciel ne dépend d'aucune entité
  • Maintenance simplifiée des personnalisations/adaptations
  • Compétences sur le code source répandues

Logiciel libre et pérennité

Pérennité des projets

  • Le moteur : intérêts et besoins
  • La compétition entre les projets (divergence)
  • La coopération entre les projets (convergence)

Logiciel libre et pérennité

Intérêts économiques

  • Développeurs + motivés
  • Maintenance simplifiée
  • Mutualisation d'un coût économique
    => notion d'infrastructure commune
  • Éviter que le paradigme d'un concurrent devienne le standard!