Introduction aux logiciels libres

olberger
Logiciels libres
Olivier Berger,
TELECOM SudParis - Département INF
<olivier.berger@it-sudparis.eu>

Telecom SudParis
CSC4522 / DSI - 2010/06/10
Présentation personnelle

         ●    Ingénieur de Recherche au département INF à
              TELECOM & Management SudParis (B 303)
         ●    Projets de R&D sur le logiciel libre (CALIBRE,
              HELIOS, COCLICO, ...)
         ●    Contributeur à la distribution Debian
         ●    Recherche : plate-formes de développement
              collaboratif de logiciels (forges)
         ●    Google est mon ami, mais au cas où :
              http://www-public.it-sudparis.eu/~berger_o/
              http://www-public.it-sudparis.eu/~berger_o/weblog/




page 2
Sondage rapide


         ●   Déjà eu des cours sur le sujet ?
         ●   Logiciel libre ?
         ●   Linux ?
         ●   GNU ?
         ●   FSF ?
         ●   APRIL, AFUL, etc. ?
         ●   Firefox ?
         ●   Ubuntu ?
         ●   Creative Commons ?

page 3
         ●   SourceForge ?
Objectif de cette conférence


         ●   Donner une idée des enjeux liés à la
             collaboration dans les projets libres
         ●   Rappel des fondamentaux du modèle libre
         ●   Démythifier un modèle loin d'être magique
         ●   Quelques pistes permettant d'intégrer le libre
             dans les projets industriels




page 4
Contenu




          Introduction générale




page 5
Pourquoi ?




page 6
Le logiciel libre incontournable


         ●    Semble simple
         ●    Loin d'être si simple
         ●    Processus humains plus que technologiques
         ●    Pluri-disciplinaire


         ●    Oportunités
         ●    Risques




page 7
Introduction générale sur le libre


●   Principes
●   Historique
●   Aspects juridiques
●   Aspects économiques
●   Projets / Communautés
●   Evaluation outils libres
●   Guidelines
Liberté, égalité, fraternité...




                      4 libertés




page 9
Définition du logiciel libre

          ●   « La liberté d'exécuter le programme, pour tous les
              usages (liberté 0).
          ●   La liberté d'étudier le fonctionnement du programme,
              et de l'adapter à vos besoins (liberté 1). Pour ceci
              l'accès au code source est une condition requise.
          ●   La liberté de redistribuer des copies, donc d'aider
              votre voisin, (liberté 2).
          ●   La liberté d'améliorer le programme et de publier vos
              améliorations, pour en faire profiter toute la
              communauté (liberté 3). Pour ceci l'accès au code
              source est une condition requise. »
          Définition de la Free Software Foundation (FSF)


page 10
Terminologie


          ●   Logiciel Libre ~= OpenSource
          ●   Liberté !
          ●   Coût ?
          ●   Autres :
              freeware, domaine public, shareware, shared
              source, etc.
          ●   Libre = ouvert ?
          ●   Ne pas se fier aux déclarations : vérifier les
              licences


page 11
Libre vs. non-libre

          ●   En théorie, identification facile :
              ●       droit d'utilisation : OK - NOK
              ●       droit d'étudier : OK - NOK
              ●       droit de modifier : OK - NOK
              ●       droit de diffuser copies (modifiées) : OK – NOK

          ●   En pratique, parfois complexe (jargon licences)
          ●   Demander aux experts
                  ●    Free Software Foundation (http://www.fsf.org/),
                  ●    OpenSource initiative (http://www.opensource.org/).




page 12
Logiciel libre




page 13
Logiciel non-libre (Propriétaire)




page 14
Exemples de logiciels libres


          ●   GNU/Linux, FreeBSD, OpenBSD
          ●   Apache
          ●   Perl, PHP, Python
          ●   Java (récent)
          ●   Eclipse, Maven, Hudson
          ●   GNOME, KDE, etc.
          ●   Jonas, Jboss, MySQL, PostgreSQL
          ●   Asterisk
          ●   Videolan
          ●   Firefox, OpenOffice, Thunderbird
          ●   Talend, CPS, XWiki
          ●   etc.

page 15
ValeurS : mouvement logiciel libre

               ●        Philosophie : Liberté, Egalité, Fraternité
                        ●   Liberté : faire des copies, améliorer, distribuer
                        ●   Égalité : mêmes droits pour tout le monde
                        ●   Fraternité : Co-opération pour construire des biens
                            communs
               ●        Mouvement « politique »
                        ●   Éthique, philosophie, activisme politique
                        ●   Richard M. Stallman et la FSF (Free Software
                            Foundation : http://www.fsf.org)
 http://stallman.org/
                        ●   APRIL, en france http://www.april.org/



page 16
« Mouvement » Open Source ?

          ●   Approche orientée vers le marché (créé en
              réaction au mouvement du libre)
          ●   Bénéfices pratiques
          ●   Coûts (ambiguïté free)
          ●   « Mouvement »
              ●   Open Source Initiative
                  (http://www.opensource.org)
              ●   La plupart des industriels de l'informatique, les SS2I,
                  etc.




page 17
●
              Principes
          ●
              Historique
          ●
              Aspects juridiques
          ●
              Aspects économiques
          ●
              Projets / Communautés
          ●
              Evaluation outils libres
          ●
              Guidelines



page 18
Chronologie

          ●   Au début était le code source (< 80) Unix, BSD (> 80)
          ●   GNU project & Free Software Foundation créés par Richard M.
              Stallman (> 83/84)
          ●   Noyau Linux créé par Linus Torvalds (> 91)
          ●   Distributions GNU/Linux ( > 95)
          ●   Création de l'APRIL (96)
          ●   IBM entre en jeu (2001)
          ●   Sun rachète StarOffice et création de OpenOffice.org (2002)
          ●   Ubuntu, Firefix 1.0 (2004)
          ●   OpenOffice.org 2.0 (2005)
          ●   Google sponsorise
          ●   Java sous GPL (2007)
          ●   Android, ...

page 19
Le libre est partout


          ●   Internet : Apache, Bind, etc.
          ●   Serveurs (Samba, MySQL, etc.)
          ●   Groupware, CMS, ERP, ETL, etc.
          ●   Appliances, embarqué, grand public
               ●    Nokia 900
               ●    Freebox, Easybox, routeurs, etc.
               ●    Téléphones (Google Android, etc.)
               ●    GPS, ...
          ●   Impots
          ●   Poste de travail des gendarmes, députés AN
          ●   ...

page 20
Impact global dans la société


●   Impact sur tous les aspects de la production et
    de la diffusion du savoir, et plus largement tous
    les artefacts immatériels :
    ●   Publications et données scientifiques (open archives, etc.)
    ●   OpenStreetmap, Wikipedia
    ●   Création artistique : creative commons (CC)
    ●   Entertainment - gratuité ?
    ●   Débat public, démocracie, régulation de l'utilisation des
        ressources, etc.
●   Nouveau paradigme : (Creative) Commons (L.
    Lessig)
●   Des biens publics aux biens communs ?
Résistances


●   Copyright / droit d'auteur
●   Brevets
●   DRM
●   FUD
●   Hadopi
●   ...
Aujourd'hui incontournable

          ●   20/25 ans plus tard
          ●   La partie est en voie d'être gagnée


          ●   Mais au fait, comment ça marche !?!




page 23
Qu'est-ce que le logiciel libre ?




              ●   Juridique / Licences
              ●   Organisationnel / Communautés
              ●   Economique / Modèles d'affaires


                      Pas un seul modèle !



page 24
●
              Principes
          ●
              Historique
          ●
              Aspects juridiques
          ●
              Aspects économiques
          ●
              Projets / Communautés
          ●
              Evaluation outils libres
          ●
              Guidelines



page 25
Droit d'auteur sur le logiciel


          ●    A la base : le droit d'auteur / copyright
          ●    Similaire à propriété littéraire et artistique
          ●    Fondement : code source
          ●    Ensuite : oeuvres dérivées


          ●    IANAL




page 26
Protection vs. Contrôle

          ●   Comment bien exercer un contrôle ?
          ●   Le Copyright contrôle si
              ●   Utiliser
              ●   On peut copier pour donner ou vendre
              ●   (essayer de) Modifier
              ●   Toute autre chose non prévue dans un contrat de licence
          ●   Le libre rééquilibre la donne en faveur des tiers,
              utilisateurs, concurrents




page 27
Droit d'auteur, licences


          ●   Droit d'auteur :
              ●   Prérogatives de l'auteur, faibles
              ●   Conditions d'exploitation (employeur ?), fortes
          ●   Attaché à :
              ●   au fichier source, d'abord
              ●   œuvres dérivées (y compris exécutable)
          ●   Régime par défaut : restrictions des droits
          ●   Licence libres établissent des exceptions
          ●   Œuvres composites : compliqué
          ●   Mixibilité des licences ?
page 28
Brevets sur les logiciels

          ●   Le droit d'auteur/copyright ne controle pas si
              un programme similaire peut être écrit par un
              tiers
          ●   Le brevet protège une idée
          ●   Au départ destiné à protéger l'intérêt général
          ●   Dérive
          ●   Controverse législative en Europe




page 29
Licences libres




page 30
Catégories de licences libres

          ●   Deux grandes catégories :
              ●   Façon « domaine public » (BSD, X11)
              ●   Façon « Copyleftées »
          ●   Copyleftées (GPL, LGPL):
              ●   Liberté de changer le logiciel
              ●   Impossibilité de changer la licence sur oeuvres dérivées
          ●   Un même logiciel + plusieurs licenses =
              segmentation des « marchés » (dual license)
          ●   Modèles économiques des éditeurs de
              logiciels libres

page 31
Points clés


          ●   Question d'oeuvres dérivées
          ●   Edition de liens, etc.
          ●   Pas questions modèle éco, mais seulement
              copyright
          ●   Compatibilité des licences
          ●   Éviter la prolifération des licences
          ●   Qui est titulaire des droits ?
          ●   SAAS, Cloud computing ? (Affero GPL)



page 32
●
              Principes
          ●
              Historique
          ●
              Aspects juridiques
          ●
              Aspects économiques
          ●
              Projets / Communautés
          ●
              Evaluation outils libres
          ●
              Guidelines



page 33
$/€


          ●   Libre == gratuit (oui, mais)
          ●   ROI
          ●   Technologies clés




page 34
Économie du logiciel


          ●   Non rivalité
          ●   Valeur augmente quand on s'en sert (effets de
              réseau)
          ●   Monopôles
          ●   Création d'un « bien commun »
          ●   Faciliter la réutilisation
          ●   Mutualisation de l'investissement
          ●   Logiciel libre == gratuit (une fois qu'il a été payé)



page 35
Software Wars




page 36
« Bataille » immense

          ●   Réduire les coûts (commoditisation)
          ●   Effets de réseaux pour établir des standards
          ●   Mutualiser la R&D
          ●   « Co-opétition » :
              ●   coopération
              ●   compétition
          ●   Prendre position dans le libre pour maîtriser
              son évolution
          ●   Modèles économiques ?


page 37
« Commoditisation » du logiciel




                                 source : Frank van der Linden (Philips)

page 38
Valeur du libre ?

          ●   Exemple: Debian 2.2 GNU/Linux (2001)
          ●   Lignes de code source :
              ●   55 201 526
              ●   dont noyau Linux < 6%
              ●   x 2 tous les 2 ans
          ●   Si applique métriques traditionnelles du
              développement en entreprise :
              ●   Effort estimé : 14 005 hommes x années
              ●   Délai estimé : 6,04 ans (équipe de 2 318 p.)
              ●   Coût développement : US$ 1 891 990 000
          (Source: "Counting potatoes" par Gonzalez-Barahona et al)
          ●   Cf. http://ohloh.net pour d'autres chiffres
page 39
              (Méthodologie discutable)
ROI utilisateurs


          ●    Profusion d'études
          ●    Libre != gratuit ... heureusement ;-)
          ●    Économie gestion des licenses
          ●    Transfert de coût entre licences et formation
          ●    Paradoxes


          ●    Au final coût des licences souvent marginal dans
               les coûts d'un projet



page 40
Modèles d'affaires pour fournisseurs


          ●   Service
          ●   « Valeur ajoutée » couches hautes
          ●   Editeur
          ●   Double licence


          ●   Marché en croissance


          ●   Positions stratégies industrielles


          ●   Exemple : Linagora (fondée par anciens INT Management)


page 41
Acteurs spécialisés Logiciel libre




Source : Cartographie des Entreprises du Logiciel Libre (CNLL, 2010)



page 42
Qui ?




                  (source : Sam Hocevar)

page 43
Qui participe

          ●   Individus bénévoles
              ●   Parfois très isolés
              ●   Parfois de façon organisée (Apache, GNU project, etc.)
          ●   Sociétés
              ●   Services
              ●   Utilisateurs finaux (sponsors)
          ●   Pas un seul profil d'activités :
              ●   Utilisation, tests, rapports de bugs
              ●   Support communautaire (forums, listes, etc.)
              ●   Code
              ●   Vendre du libre
              ●   etc.


page 44
Rapide panorama d'un écosystème



                             Debian
                              Debian
                       s
                 rs ion
               ve gs                       packages
                  bu


Développeurs    versions                                     Utilisateurs
   amont                     RedHat
                              RedHat
                 bugs
(“upstream”)
                                             bugs
                 ve
                   rsi
                bu ons
                  gs
                            OpenSuse

       Éditeurs                                       SSII
                           distributions
 page 45
Le libre est global


          ●   debian




                                Debian developers

page 46
Où sont ces développeurs ?

          Par pays (SourceForge) :


          Rang Pays         Developpeurs
            1. United States 425620
            2. Germany 95800
            3. United Kingdom 60768
            4. Canada 49109
            5. France 44587
            6. China     36517
             ... ... ...
          (source : Gregorio Robles and Jesús M. González Barahona - 2006)



page 47
Où sont ces développeurs ? (2)

          Par continent :

             Continent Développeurs
             Africa 12 560
             Asia 127 275
             EU401 845
             Europe 466 792
             North America 485 679
             Oceania 46 422
             South America 36 330

          (source : Gregorio Robles and Jesús M. González Barahona – 2006)



page 48
Comment ?




page 49
●
              Principes
          ●
              Historique
          ●
              Aspects juridiques
          ●
              Aspects économiques
          ●
              Projets / Communautés
          ●
              Evaluation outils libres
          ●
              Guidelines



page 50
Vidéo


      « 5 years of Linux kernel development in GIT »
      Visualisation avec GOURCE




page 51
Comment le libre est-il développé ?

          ●   Outils de travail collaboratif :
              ●   Internet, CVS, SubVersion, Git, mailing-lists, chat IRC
              ●   « Forges » publiques (ou privées) :
                   –SourceForge, GitHub, LaunchPad
                  – FusionForge, Redmine,...
          ●   Structure projets (caricature)
              ●   old-style traditional model : Cathedral
              ●   new unexpected style : Bazaar
            "The Cathedral and the Bazaar" (Eric Raymond)
          ●  Projet == réseau social

page 52
Communautés, résaux sociaux

Linux 1.0
(1994)
Developers linked by
common authorship to
same files
source [Robles]




   page 53
Bon sang, mais c'est le bazar !




Classical analysis of Apache modules feb. 2004 (source [Robles])
    page 54
Amélioration de la visualisation




            Reshaped with Girvan-Newman algorithm (source
            [Robles])
page 55
Apache 01/01/1999




page 56
Apache 01/01/2000




page 57
Apache 01/09/2000




page 58
Apache 01/01/2002




page 59
Apache 01/02/2004




page 60
Développement collaboratif et distribué


          ●   Forces centrifuges
               ●   Fork / branch
               ●   Git, Bzr, etc
          ●   Forces centripètes
               ●   Cohésion
               ●   Communauté
               ●   Leadership
               ●   Merge




page 61
Prendre part à une nouvelle communauté

          ●   Rencontrer des hommes (et des femmes), pas
              seulement des compagnies ou des services
              marketing
          ●   Construire un projet où différents modèles peuvent
              cohabiter
          ●   Apprendre les règles des communautés
          ●   Méritocratie
          ●   De nombreux mode d'organisation sociale
          ●   Comme dans la « vie réelle » c'est souvent plus subtil
              que ce qu'on en dit dans les présentations ou les
              publicités !
          ●   Communiquer pour construire la confiance

page 62
« HOWTO » projets
           basés sur le libre




page 63
●
              Principes
          ●
              Historique
          ●
              Aspects juridiques
          ●
              Aspects économiques
          ●
              Projets / Communautés
          ●
              Evaluation outils libres
          ●
              Guidelines



page 64
Qualités

          ●   Prépare l'avenir
          ●   Sécurité
          ●   Adaptabilité
          ●   Indépendance
          ●   Faible coût
          ●   Portabilité
          ●   ...


                             Encore faut-il vérifier ?
                    Qui fait vraiment ce travail ? -> VOUS !

page 65
Annuaires

          ●   Freshmeat http://freshmeat.net/ (> 39000
              projets)
          ●   FSF/Unesco : http://directory.fsf.org/ (> 5800
              projets)
          ●   Framasoft : http://framasoft.net/ (> 1400)

          ●   Ohloh : http://ohloh.net/ (> 300 000 projets ??)




page 66
Sélection d'un produit

          ●   Facilité à tester
          ●   Ne pas confondre vitesse et précipitation
          ●   Sous-traiter ce qui peut l'être
          ●   Identifier les éléments critiques et monter en
              compétence
          ●   Préférer les solutions déjà packagées
              (distributions)
          ●   Éléments de dépendance sur des tiers non-
              contractualisés


page 67
Nombreuses qualités


          ●    Qualités génériques ... déjà connues


          ●    Qualités particulières d'un logiciel libre
               => à évaluer
                ●   sa licence
                ●   sa communauté
                ●   son code (sa doc, son langage, etc.)


          ●    Méthodes d'évaluation (QSOS, OpenBRR, ...)

              http://fr.wikipedia.org/wiki/Méthode_d'évaluation_de_logiciels_libres

page 68
Méthode QSOS (http://www.qsos.org/)




page 69
Fiche QSOS




page 70
Analyse des besoins
                      Conduite de projet

          Spécification



                 Architecture



                      Conception détaillée



                                    Codage


                                             Tests




                                                                   ?
                                                     Déploiement


page 71
Maintien en condition opérationnelle

          ●   Réactivité pour les mises à jour
          ●   Diminuer l'adhérence dans les composants
              spécifiques




page 72
Stabilisation impossible

          ●   Mises à jour de sécurité permanentes
          ●   Répétition des mises à jour
          ●   Automatisation souhaitable
          ●   Diminuer la taille du code spécifique




page 73
Reverser au projet

          ●   Rendre générique les éléments spécifiques
          ●   Maintenus à l'extérieur
          ●   Améliorés à l'extérieur
          ●   Pas besoin de les repackager


          ●   Plus facile à dire qu'à faire


          ●   Participer aux projets externes ASAP


page 74
Compétences pour le développement

          ●   Développement distribué
          ●   Communication en réseau
          ●   Rendre générique ce qui peut l'être
              (bibliothèques, sous-projets)
          ●   Méthodologie d'intégration (versions dérivées,
              customisations)
          ●   Savoir packager (exemple : Debian)
          ●   Traditionnels : doc, specs, tests, etc.
          ●   Animation de communauté
          ●   ...
page 75
Comment bien intégrer un projet libre

          ●   Guides nouveaux contributeurs
          ●   Être de bonne volonté (commencer petit pour
              se faire connaître)
          ●   Pas magique (le diable est dans les détails)
          ●   Identifier la roadmap
          ●   Stratégie de stabilisation de versions
          ●   Système d'Assurance Qualité
          ●   Identifier les acteurs clé
          ●   Rencontres physiques
          ●   Canaux temps réel (IRC, etc.)
page 76
Spécificités du projet


          ●   Pas que la licence
          ●   Communauté
              ●   développement
              ●   utilisatrice
          ●   Personnes, rôles
          ●   Acteurs économiques
          ●   But, objectifs
          ●   Méthodologie



page 77
Règles de vie en communauté


          ●   Bénévoles (motivations)
          ●   Professionnels
          ●   Contractualisation ?
          ●   Confiance
          ●   Leadership
          ●   Barrières à l'entrée
          ●   Humour, culture et autres folklores




page 78
Enjeux sociaux plus que techniques


          ●   Comprendre les règles du jeu
          ●   Identifier les éléments influents
          ●   Motiver des bénévoles
          ●   Faire accepter ses contributions
          ●   Impact sur les décisions
          ●   Prouver son implication
          ●   Se faire (re-)connaître
          ●   Anticiper les alea


page 79
Où rencontrer la communauté


          ●   En ligne
          ●   Salons / conférences :
               ●   Solutions Linux
               ●   Rencontres Mondiales LL
               ●   Open World Forum
               ●   FOSDEM
          ●   Associations :
               ●   April
               ●   CNLL
               ●   etc.

page 80
Contribuer : une nécessité

          ●   Cercle vertueux des contributions
          ●   Quasi-obligation du fait des licences
          ●   Externalisation de la maintenance
          ●   Se faire plaisir et apprendre en vraie grandeur
          ●   Se faire connaître et reconnaître
          ●   Influer sur le pilotage d'un projet




page 81
Comment bien contribuer

          ●   Il n'y a pas besoin de savoir coder
          ●   Assurer une veille régulière
          ●   Beaucoup d'effort même pour des choses
              simples
          ●   Minimum légal : faire vivre la base de bugs
              dans le bugtracker du projet




page 82
Comment bien contribuer (suite)

          ●   Accepter des usages sociaux différents
          ●   Communiquer avant tout
          ●   Jouer le jeu selon les règles
          ●   Eviter l' « abandonware » non déclaré
          ●   Respecter copyright
          ●   Respecter les licenses




page 83
Conclusion

Loin de l'exhaustivité


Le libre est un changement extrèmement positif
Plein d'oportunités


Pas un seul modèle : mais quelques bonnes pratiques
générales

Contribuer est nécessaire pour la survie du modèle,
mais aussi concrètement dans les effets utiles aux
projets locaux.
 page 84
●
    Merci à :
    ●
        Jean-Christophe Becquet / APITUX
    ●
        Roberto Di Cosmo / Paris 7 – PPS
    ●
        Gregorio Robles
●
    Aller plus loin :
    ●
        «Richard Stallman et la révolution du logiciel libre» Eyrolles, 2010
    ●
        http://www.april.org
    ●
        http://www.apitux.org/index.php?2009/05/25/199-cours-logiciel-libre-standards-ouve
    ●
        http://loli.fsa.ulaval.ca/index.php?id=9
    ●
        http://dpt-info.univ-littoral.fr/mediawiki/index.php/I2L:Accueil
    ●
        http://www.dicosmo.org/CourseNotes/LogicielLibre/


    page 85
Conditions d'utilisation


          ●    This work is Copyright 2009-2010 by Institut
               TELECOM and Olivier Berger, published under a
               Creative Commons ShareAlike license




page 86
Merci de votre attention


                                  http://www-public.it-sudparis.eu/~berger_o/weblog/

page 87   direction ou services       <pied de page>
1 of 87

Recommended

Logiciels libres by
Logiciels libresLogiciels libres
Logiciels libresj_lipaz
824 views29 slides
Logiciel Libre, Société Libre by
Logiciel Libre, Société LibreLogiciel Libre, Société Libre
Logiciel Libre, Société LibrePier-Luc Brault
2.9K views43 slides
La valorisation des logiciels libres en entreprise by
La valorisation des logiciels libres en entrepriseLa valorisation des logiciels libres en entreprise
La valorisation des logiciels libres en entrepriseRobert Viseur
1.3K views55 slides
De l’open source à l’open cloud by
De l’open source à l’open cloudDe l’open source à l’open cloud
De l’open source à l’open cloudRobert Viseur
1K views41 slides
Introduction aux logiciels libres by
Introduction aux logiciels libresIntroduction aux logiciels libres
Introduction aux logiciels libresolberger
696 views93 slides
Plateforme Pour Le DéVeloppement Collaboratif Des Logiciels Libres by
Plateforme Pour Le DéVeloppement Collaboratif Des Logiciels LibresPlateforme Pour Le DéVeloppement Collaboratif Des Logiciels Libres
Plateforme Pour Le DéVeloppement Collaboratif Des Logiciels LibresFdiwa
2.7K views74 slides

More Related Content

Viewers also liked

La centrale d'achat dédiée aux petites entreprises by
La centrale d'achat dédiée aux petites entreprisesLa centrale d'achat dédiée aux petites entreprises
La centrale d'achat dédiée aux petites entreprisesCEFAC
1.2K views12 slides
Vendre à l'international - Aspects juridiques et économiques by
Vendre à l'international - Aspects juridiques et économiquesVendre à l'international - Aspects juridiques et économiques
Vendre à l'international - Aspects juridiques et économiquesCEFAC
1.7K views27 slides
E transformation du luxe by
E transformation du luxeE transformation du luxe
E transformation du luxeVERONICA MARTINS
23.7K views125 slides
Lean vs-six-sigma by
Lean vs-six-sigmaLean vs-six-sigma
Lean vs-six-sigmaArturo Alejandro Zuccarelli
28.1K views23 slides
Entrepreunariat - Financement - Aides by
Entrepreunariat - Financement - AidesEntrepreunariat - Financement - Aides
Entrepreunariat - Financement - AidesArthur Dagard
555 views15 slides
Programme Postgraduate de Management Mode et Design by
Programme Postgraduate de Management Mode et DesignProgramme Postgraduate de Management Mode et Design
Programme Postgraduate de Management Mode et DesignInstitut Français de la Mode
1.7K views6 slides

Viewers also liked(8)

La centrale d'achat dédiée aux petites entreprises by CEFAC
La centrale d'achat dédiée aux petites entreprisesLa centrale d'achat dédiée aux petites entreprises
La centrale d'achat dédiée aux petites entreprises
CEFAC1.2K views
Vendre à l'international - Aspects juridiques et économiques by CEFAC
Vendre à l'international - Aspects juridiques et économiquesVendre à l'international - Aspects juridiques et économiques
Vendre à l'international - Aspects juridiques et économiques
CEFAC1.7K views
Entrepreunariat - Financement - Aides by Arthur Dagard
Entrepreunariat - Financement - AidesEntrepreunariat - Financement - Aides
Entrepreunariat - Financement - Aides
Arthur Dagard555 views
Basic Six Sigma Presentation by vivekissar
Basic Six Sigma PresentationBasic Six Sigma Presentation
Basic Six Sigma Presentation
vivekissar146.2K views
présentation Marketing du luxe by celtine
présentation Marketing du luxeprésentation Marketing du luxe
présentation Marketing du luxe
celtine50.2K views

Similar to Introduction aux logiciels libres

Retour d'expérience sur la conduite d'un projet libre by
Retour d'expérience sur la conduite d'un projet libreRetour d'expérience sur la conduite d'un projet libre
Retour d'expérience sur la conduite d'un projet libreolberger
3.3K views90 slides
La valorisation des logiciels libres en entreprise by
La valorisation des logiciels libres en entrepriseLa valorisation des logiciels libres en entreprise
La valorisation des logiciels libres en entrepriseRobert Viseur
774 views55 slides
Presentation open source by
Presentation open sourcePresentation open source
Presentation open sourceVanessa David
1.4K views14 slides
logiciel libre by
logiciel librelogiciel libre
logiciel libreEric Zile Kouassi
966 views37 slides
Présentation Logiciels Libres et Open Source - Philosophie et Concepts.pdf by
Présentation Logiciels Libres et Open Source - Philosophie et Concepts.pdfPrésentation Logiciels Libres et Open Source - Philosophie et Concepts.pdf
Présentation Logiciels Libres et Open Source - Philosophie et Concepts.pdfLaurent Destailleur
48 views30 slides
Les Logiciels Libres : Une Opportunité Pour Votre Entreprise ? by
Les Logiciels Libres : Une Opportunité Pour Votre Entreprise ?Les Logiciels Libres : Une Opportunité Pour Votre Entreprise ?
Les Logiciels Libres : Une Opportunité Pour Votre Entreprise ?Asher256
15 views13 slides

Similar to Introduction aux logiciels libres(20)

Retour d'expérience sur la conduite d'un projet libre by olberger
Retour d'expérience sur la conduite d'un projet libreRetour d'expérience sur la conduite d'un projet libre
Retour d'expérience sur la conduite d'un projet libre
olberger3.3K views
La valorisation des logiciels libres en entreprise by Robert Viseur
La valorisation des logiciels libres en entrepriseLa valorisation des logiciels libres en entreprise
La valorisation des logiciels libres en entreprise
Robert Viseur774 views
Presentation open source by Vanessa David
Presentation open sourcePresentation open source
Presentation open source
Vanessa David1.4K views
Présentation Logiciels Libres et Open Source - Philosophie et Concepts.pdf by Laurent Destailleur
Présentation Logiciels Libres et Open Source - Philosophie et Concepts.pdfPrésentation Logiciels Libres et Open Source - Philosophie et Concepts.pdf
Présentation Logiciels Libres et Open Source - Philosophie et Concepts.pdf
Les Logiciels Libres : Une Opportunité Pour Votre Entreprise ? by Asher256
Les Logiciels Libres : Une Opportunité Pour Votre Entreprise ?Les Logiciels Libres : Une Opportunité Pour Votre Entreprise ?
Les Logiciels Libres : Une Opportunité Pour Votre Entreprise ?
Asher256 15 views
Info libre by socionum
Info libreInfo libre
Info libre
socionum74 views
Graphotec granit opensource by pjoulaud
Graphotec granit opensourceGraphotec granit opensource
Graphotec granit opensource
pjoulaud1.2K views
Logiciellibre by m4rylin
LogiciellibreLogiciellibre
Logiciellibre
m4rylin799 views
diapo_sem_axe4_LL_aux_communs_num_V4.pdf by J-Y Jeannas
diapo_sem_axe4_LL_aux_communs_num_V4.pdfdiapo_sem_axe4_LL_aux_communs_num_V4.pdf
diapo_sem_axe4_LL_aux_communs_num_V4.pdf
J-Y Jeannas80 views
Cartographie des marchés Open Source belges et français by Robert Viseur
Cartographie des marchés Open Source belges et françaisCartographie des marchés Open Source belges et français
Cartographie des marchés Open Source belges et français
Robert Viseur1.1K views
Leslogicielslibres uneopportunitpourlesentreprisesmarocaines-100514143712-php... by touria tpd
Leslogicielslibres uneopportunitpourlesentreprisesmarocaines-100514143712-php...Leslogicielslibres uneopportunitpourlesentreprisesmarocaines-100514143712-php...
Leslogicielslibres uneopportunitpourlesentreprisesmarocaines-100514143712-php...
touria tpd215 views
libre en fête 2009 by m4rylin
libre en fête 2009libre en fête 2009
libre en fête 2009
m4rylin545 views
Les licences libres - Algeria 2.0 by Algeria 2.0
Les licences libres - Algeria 2.0Les licences libres - Algeria 2.0
Les licences libres - Algeria 2.0
Algeria 2.0 648 views
Code d'Armor : Open Source, mode d'emploi by bbailleux
Code d'Armor : Open Source, mode d'emploiCode d'Armor : Open Source, mode d'emploi
Code d'Armor : Open Source, mode d'emploi
bbailleux1.7K views
Open the Source 2: cartographie du marché Open Source belge by Robert Viseur
Open the Source 2: cartographie du marché Open Source belgeOpen the Source 2: cartographie du marché Open Source belge
Open the Source 2: cartographie du marché Open Source belge
Robert Viseur828 views
Logiciel Libre - Hedi Magroun - AUF - 2008 by Hedi Magroun
Logiciel Libre - Hedi Magroun - AUF - 2008Logiciel Libre - Hedi Magroun - AUF - 2008
Logiciel Libre - Hedi Magroun - AUF - 2008
Hedi Magroun1.2K views
Luc Fievet - Membre du conseil d'administration de l'APRIL, acteur de la prom... by TechnoArk
Luc Fievet - Membre du conseil d'administration de l'APRIL, acteur de la prom...Luc Fievet - Membre du conseil d'administration de l'APRIL, acteur de la prom...
Luc Fievet - Membre du conseil d'administration de l'APRIL, acteur de la prom...
TechnoArk1.7K views
Conference TDWI BI Open Source - 2011 11 29 by canadadri
Conference TDWI BI Open Source - 2011 11 29Conference TDWI BI Open Source - 2011 11 29
Conference TDWI BI Open Source - 2011 11 29
canadadri655 views

More from olberger

Presentation distro recipes-2013 by
Presentation distro recipes-2013Presentation distro recipes-2013
Presentation distro recipes-2013olberger
1.7K views20 slides
An introduction to git by
An introduction to gitAn introduction to git
An introduction to gitolberger
2.2K views52 slides
Generating Linked Data descriptions of Debian packages in the Debian PTS by
Generating Linked Data descriptions of Debian packages in the Debian PTSGenerating Linked Data descriptions of Debian packages in the Debian PTS
Generating Linked Data descriptions of Debian packages in the Debian PTSolberger
1.6K views17 slides
Interoperability of FLOSS forges; lessons from the COCLICO project, implement... by
Interoperability of FLOSS forges; lessons from the COCLICO project, implement...Interoperability of FLOSS forges; lessons from the COCLICO project, implement...
Interoperability of FLOSS forges; lessons from the COCLICO project, implement...olberger
964 views30 slides
OSLC (Open Services for Lifecycle Collaboration): open standard for interoper... by
OSLC (Open Services for Lifecycle Collaboration): open standard for interoper...OSLC (Open Services for Lifecycle Collaboration): open standard for interoper...
OSLC (Open Services for Lifecycle Collaboration): open standard for interoper...olberger
6.4K views28 slides
Presentation forges logicielles à mathrice by
Presentation forges logicielles à mathricePresentation forges logicielles à mathrice
Presentation forges logicielles à mathriceolberger
1.1K views26 slides

More from olberger(18)

Presentation distro recipes-2013 by olberger
Presentation distro recipes-2013Presentation distro recipes-2013
Presentation distro recipes-2013
olberger1.7K views
An introduction to git by olberger
An introduction to gitAn introduction to git
An introduction to git
olberger2.2K views
Generating Linked Data descriptions of Debian packages in the Debian PTS by olberger
Generating Linked Data descriptions of Debian packages in the Debian PTSGenerating Linked Data descriptions of Debian packages in the Debian PTS
Generating Linked Data descriptions of Debian packages in the Debian PTS
olberger1.6K views
Interoperability of FLOSS forges; lessons from the COCLICO project, implement... by olberger
Interoperability of FLOSS forges; lessons from the COCLICO project, implement...Interoperability of FLOSS forges; lessons from the COCLICO project, implement...
Interoperability of FLOSS forges; lessons from the COCLICO project, implement...
olberger964 views
OSLC (Open Services for Lifecycle Collaboration): open standard for interoper... by olberger
OSLC (Open Services for Lifecycle Collaboration): open standard for interoper...OSLC (Open Services for Lifecycle Collaboration): open standard for interoper...
OSLC (Open Services for Lifecycle Collaboration): open standard for interoper...
olberger6.4K views
Presentation forges logicielles à mathrice by olberger
Presentation forges logicielles à mathricePresentation forges logicielles à mathrice
Presentation forges logicielles à mathrice
olberger1.1K views
Jailbreaking the Forges : project export/import efforts by olberger
Jailbreaking the Forges : project export/import effortsJailbreaking the Forges : project export/import efforts
Jailbreaking the Forges : project export/import efforts
olberger1.1K views
Bug tracking à grande échelle et interopérabilité des outils de développement... by olberger
Bug tracking à grande échelle et interopérabilité des outils de développement...Bug tracking à grande échelle et interopérabilité des outils de développement...
Bug tracking à grande échelle et interopérabilité des outils de développement...
olberger2.3K views
OSLC (Open Services for Lifecycle Collaboration): standard ouvert pour l’int... by olberger
OSLC (Open Services for Lifecycle Collaboration):  standard ouvert pour l’int...OSLC (Open Services for Lifecycle Collaboration):  standard ouvert pour l’int...
OSLC (Open Services for Lifecycle Collaboration): standard ouvert pour l’int...
olberger2K views
Presentation soc-fr-fossa by olberger
Presentation soc-fr-fossaPresentation soc-fr-fossa
Presentation soc-fr-fossa
olberger513 views
Bugs tracking at a large scale in the FLOSS ecosystem by olberger
Bugs tracking at a large scale in the FLOSS ecosystemBugs tracking at a large scale in the FLOSS ecosystem
Bugs tracking at a large scale in the FLOSS ecosystem
olberger2K views
Coclico project - Forges Interoperability (OWF 2010) by olberger
Coclico project - Forges Interoperability (OWF 2010)Coclico project - Forges Interoperability (OWF 2010)
Coclico project - Forges Interoperability (OWF 2010)
olberger1.6K views
Bugtracking on the Web 2.5 by olberger
Bugtracking on the Web 2.5Bugtracking on the Web 2.5
Bugtracking on the Web 2.5
olberger764 views
Weaving a Semantic Web across OSS repositories - a spotlight on bts-link, UDD... by olberger
Weaving a Semantic Web across OSS repositories - a spotlight on bts-link, UDD...Weaving a Semantic Web across OSS repositories - a spotlight on bts-link, UDD...
Weaving a Semantic Web across OSS repositories - a spotlight on bts-link, UDD...
olberger778 views
Introduction to bts-link by olberger
Introduction to bts-linkIntroduction to bts-link
Introduction to bts-link
olberger1.4K views
Visualizing contributions in a forge -Case study on PicoForge by olberger
Visualizing contributions in a forge -Case study on PicoForgeVisualizing contributions in a forge -Case study on PicoForge
Visualizing contributions in a forge -Case study on PicoForge
olberger587 views
Olpc France Presentation Sl2008 by olberger
Olpc France Presentation Sl2008Olpc France Presentation Sl2008
Olpc France Presentation Sl2008
olberger994 views
Collaboration avec des projets libres - enjeux, difficultés et bonnes pratiques by olberger
Collaboration avec des projets libres - enjeux, difficultés et bonnes pratiquesCollaboration avec des projets libres - enjeux, difficultés et bonnes pratiques
Collaboration avec des projets libres - enjeux, difficultés et bonnes pratiques
olberger672 views

Introduction aux logiciels libres

  • 1. Logiciels libres Olivier Berger, TELECOM SudParis - Département INF <olivier.berger@it-sudparis.eu> Telecom SudParis CSC4522 / DSI - 2010/06/10
  • 2. Présentation personnelle ● Ingénieur de Recherche au département INF à TELECOM & Management SudParis (B 303) ● Projets de R&D sur le logiciel libre (CALIBRE, HELIOS, COCLICO, ...) ● Contributeur à la distribution Debian ● Recherche : plate-formes de développement collaboratif de logiciels (forges) ● Google est mon ami, mais au cas où : http://www-public.it-sudparis.eu/~berger_o/ http://www-public.it-sudparis.eu/~berger_o/weblog/ page 2
  • 3. Sondage rapide ● Déjà eu des cours sur le sujet ? ● Logiciel libre ? ● Linux ? ● GNU ? ● FSF ? ● APRIL, AFUL, etc. ? ● Firefox ? ● Ubuntu ? ● Creative Commons ? page 3 ● SourceForge ?
  • 4. Objectif de cette conférence ● Donner une idée des enjeux liés à la collaboration dans les projets libres ● Rappel des fondamentaux du modèle libre ● Démythifier un modèle loin d'être magique ● Quelques pistes permettant d'intégrer le libre dans les projets industriels page 4
  • 5. Contenu Introduction générale page 5
  • 7. Le logiciel libre incontournable ● Semble simple ● Loin d'être si simple ● Processus humains plus que technologiques ● Pluri-disciplinaire ● Oportunités ● Risques page 7
  • 8. Introduction générale sur le libre ● Principes ● Historique ● Aspects juridiques ● Aspects économiques ● Projets / Communautés ● Evaluation outils libres ● Guidelines
  • 10. Définition du logiciel libre ● « La liberté d'exécuter le programme, pour tous les usages (liberté 0). ● La liberté d'étudier le fonctionnement du programme, et de l'adapter à vos besoins (liberté 1). Pour ceci l'accès au code source est une condition requise. ● La liberté de redistribuer des copies, donc d'aider votre voisin, (liberté 2). ● La liberté d'améliorer le programme et de publier vos améliorations, pour en faire profiter toute la communauté (liberté 3). Pour ceci l'accès au code source est une condition requise. » Définition de la Free Software Foundation (FSF) page 10
  • 11. Terminologie ● Logiciel Libre ~= OpenSource ● Liberté ! ● Coût ? ● Autres : freeware, domaine public, shareware, shared source, etc. ● Libre = ouvert ? ● Ne pas se fier aux déclarations : vérifier les licences page 11
  • 12. Libre vs. non-libre ● En théorie, identification facile : ● droit d'utilisation : OK - NOK ● droit d'étudier : OK - NOK ● droit de modifier : OK - NOK ● droit de diffuser copies (modifiées) : OK – NOK ● En pratique, parfois complexe (jargon licences) ● Demander aux experts ● Free Software Foundation (http://www.fsf.org/), ● OpenSource initiative (http://www.opensource.org/). page 12
  • 15. Exemples de logiciels libres ● GNU/Linux, FreeBSD, OpenBSD ● Apache ● Perl, PHP, Python ● Java (récent) ● Eclipse, Maven, Hudson ● GNOME, KDE, etc. ● Jonas, Jboss, MySQL, PostgreSQL ● Asterisk ● Videolan ● Firefox, OpenOffice, Thunderbird ● Talend, CPS, XWiki ● etc. page 15
  • 16. ValeurS : mouvement logiciel libre ● Philosophie : Liberté, Egalité, Fraternité ● Liberté : faire des copies, améliorer, distribuer ● Égalité : mêmes droits pour tout le monde ● Fraternité : Co-opération pour construire des biens communs ● Mouvement « politique » ● Éthique, philosophie, activisme politique ● Richard M. Stallman et la FSF (Free Software Foundation : http://www.fsf.org) http://stallman.org/ ● APRIL, en france http://www.april.org/ page 16
  • 17. « Mouvement » Open Source ? ● Approche orientée vers le marché (créé en réaction au mouvement du libre) ● Bénéfices pratiques ● Coûts (ambiguïté free) ● « Mouvement » ● Open Source Initiative (http://www.opensource.org) ● La plupart des industriels de l'informatique, les SS2I, etc. page 17
  • 18. Principes ● Historique ● Aspects juridiques ● Aspects économiques ● Projets / Communautés ● Evaluation outils libres ● Guidelines page 18
  • 19. Chronologie ● Au début était le code source (< 80) Unix, BSD (> 80) ● GNU project & Free Software Foundation créés par Richard M. Stallman (> 83/84) ● Noyau Linux créé par Linus Torvalds (> 91) ● Distributions GNU/Linux ( > 95) ● Création de l'APRIL (96) ● IBM entre en jeu (2001) ● Sun rachète StarOffice et création de OpenOffice.org (2002) ● Ubuntu, Firefix 1.0 (2004) ● OpenOffice.org 2.0 (2005) ● Google sponsorise ● Java sous GPL (2007) ● Android, ... page 19
  • 20. Le libre est partout ● Internet : Apache, Bind, etc. ● Serveurs (Samba, MySQL, etc.) ● Groupware, CMS, ERP, ETL, etc. ● Appliances, embarqué, grand public ● Nokia 900 ● Freebox, Easybox, routeurs, etc. ● Téléphones (Google Android, etc.) ● GPS, ... ● Impots ● Poste de travail des gendarmes, députés AN ● ... page 20
  • 21. Impact global dans la société ● Impact sur tous les aspects de la production et de la diffusion du savoir, et plus largement tous les artefacts immatériels : ● Publications et données scientifiques (open archives, etc.) ● OpenStreetmap, Wikipedia ● Création artistique : creative commons (CC) ● Entertainment - gratuité ? ● Débat public, démocracie, régulation de l'utilisation des ressources, etc. ● Nouveau paradigme : (Creative) Commons (L. Lessig) ● Des biens publics aux biens communs ?
  • 22. Résistances ● Copyright / droit d'auteur ● Brevets ● DRM ● FUD ● Hadopi ● ...
  • 23. Aujourd'hui incontournable ● 20/25 ans plus tard ● La partie est en voie d'être gagnée ● Mais au fait, comment ça marche !?! page 23
  • 24. Qu'est-ce que le logiciel libre ? ● Juridique / Licences ● Organisationnel / Communautés ● Economique / Modèles d'affaires Pas un seul modèle ! page 24
  • 25. Principes ● Historique ● Aspects juridiques ● Aspects économiques ● Projets / Communautés ● Evaluation outils libres ● Guidelines page 25
  • 26. Droit d'auteur sur le logiciel ● A la base : le droit d'auteur / copyright ● Similaire à propriété littéraire et artistique ● Fondement : code source ● Ensuite : oeuvres dérivées ● IANAL page 26
  • 27. Protection vs. Contrôle ● Comment bien exercer un contrôle ? ● Le Copyright contrôle si ● Utiliser ● On peut copier pour donner ou vendre ● (essayer de) Modifier ● Toute autre chose non prévue dans un contrat de licence ● Le libre rééquilibre la donne en faveur des tiers, utilisateurs, concurrents page 27
  • 28. Droit d'auteur, licences ● Droit d'auteur : ● Prérogatives de l'auteur, faibles ● Conditions d'exploitation (employeur ?), fortes ● Attaché à : ● au fichier source, d'abord ● œuvres dérivées (y compris exécutable) ● Régime par défaut : restrictions des droits ● Licence libres établissent des exceptions ● Œuvres composites : compliqué ● Mixibilité des licences ? page 28
  • 29. Brevets sur les logiciels ● Le droit d'auteur/copyright ne controle pas si un programme similaire peut être écrit par un tiers ● Le brevet protège une idée ● Au départ destiné à protéger l'intérêt général ● Dérive ● Controverse législative en Europe page 29
  • 31. Catégories de licences libres ● Deux grandes catégories : ● Façon « domaine public » (BSD, X11) ● Façon « Copyleftées » ● Copyleftées (GPL, LGPL): ● Liberté de changer le logiciel ● Impossibilité de changer la licence sur oeuvres dérivées ● Un même logiciel + plusieurs licenses = segmentation des « marchés » (dual license) ● Modèles économiques des éditeurs de logiciels libres page 31
  • 32. Points clés ● Question d'oeuvres dérivées ● Edition de liens, etc. ● Pas questions modèle éco, mais seulement copyright ● Compatibilité des licences ● Éviter la prolifération des licences ● Qui est titulaire des droits ? ● SAAS, Cloud computing ? (Affero GPL) page 32
  • 33. Principes ● Historique ● Aspects juridiques ● Aspects économiques ● Projets / Communautés ● Evaluation outils libres ● Guidelines page 33
  • 34. $/€ ● Libre == gratuit (oui, mais) ● ROI ● Technologies clés page 34
  • 35. Économie du logiciel ● Non rivalité ● Valeur augmente quand on s'en sert (effets de réseau) ● Monopôles ● Création d'un « bien commun » ● Faciliter la réutilisation ● Mutualisation de l'investissement ● Logiciel libre == gratuit (une fois qu'il a été payé) page 35
  • 37. « Bataille » immense ● Réduire les coûts (commoditisation) ● Effets de réseaux pour établir des standards ● Mutualiser la R&D ● « Co-opétition » : ● coopération ● compétition ● Prendre position dans le libre pour maîtriser son évolution ● Modèles économiques ? page 37
  • 38. « Commoditisation » du logiciel source : Frank van der Linden (Philips) page 38
  • 39. Valeur du libre ? ● Exemple: Debian 2.2 GNU/Linux (2001) ● Lignes de code source : ● 55 201 526 ● dont noyau Linux < 6% ● x 2 tous les 2 ans ● Si applique métriques traditionnelles du développement en entreprise : ● Effort estimé : 14 005 hommes x années ● Délai estimé : 6,04 ans (équipe de 2 318 p.) ● Coût développement : US$ 1 891 990 000 (Source: "Counting potatoes" par Gonzalez-Barahona et al) ● Cf. http://ohloh.net pour d'autres chiffres page 39 (Méthodologie discutable)
  • 40. ROI utilisateurs ● Profusion d'études ● Libre != gratuit ... heureusement ;-) ● Économie gestion des licenses ● Transfert de coût entre licences et formation ● Paradoxes ● Au final coût des licences souvent marginal dans les coûts d'un projet page 40
  • 41. Modèles d'affaires pour fournisseurs ● Service ● « Valeur ajoutée » couches hautes ● Editeur ● Double licence ● Marché en croissance ● Positions stratégies industrielles ● Exemple : Linagora (fondée par anciens INT Management) page 41
  • 42. Acteurs spécialisés Logiciel libre Source : Cartographie des Entreprises du Logiciel Libre (CNLL, 2010) page 42
  • 43. Qui ? (source : Sam Hocevar) page 43
  • 44. Qui participe ● Individus bénévoles ● Parfois très isolés ● Parfois de façon organisée (Apache, GNU project, etc.) ● Sociétés ● Services ● Utilisateurs finaux (sponsors) ● Pas un seul profil d'activités : ● Utilisation, tests, rapports de bugs ● Support communautaire (forums, listes, etc.) ● Code ● Vendre du libre ● etc. page 44
  • 45. Rapide panorama d'un écosystème Debian Debian s rs ion ve gs packages bu Développeurs versions Utilisateurs amont RedHat RedHat bugs (“upstream”) bugs ve rsi bu ons gs OpenSuse Éditeurs SSII distributions page 45
  • 46. Le libre est global ● debian Debian developers page 46
  • 47. Où sont ces développeurs ? Par pays (SourceForge) : Rang Pays Developpeurs 1. United States 425620 2. Germany 95800 3. United Kingdom 60768 4. Canada 49109 5. France 44587 6. China 36517 ... ... ... (source : Gregorio Robles and Jesús M. González Barahona - 2006) page 47
  • 48. Où sont ces développeurs ? (2) Par continent : Continent Développeurs Africa 12 560 Asia 127 275 EU401 845 Europe 466 792 North America 485 679 Oceania 46 422 South America 36 330 (source : Gregorio Robles and Jesús M. González Barahona – 2006) page 48
  • 50. Principes ● Historique ● Aspects juridiques ● Aspects économiques ● Projets / Communautés ● Evaluation outils libres ● Guidelines page 50
  • 51. Vidéo « 5 years of Linux kernel development in GIT » Visualisation avec GOURCE page 51
  • 52. Comment le libre est-il développé ? ● Outils de travail collaboratif : ● Internet, CVS, SubVersion, Git, mailing-lists, chat IRC ● « Forges » publiques (ou privées) : –SourceForge, GitHub, LaunchPad – FusionForge, Redmine,... ● Structure projets (caricature) ● old-style traditional model : Cathedral ● new unexpected style : Bazaar "The Cathedral and the Bazaar" (Eric Raymond) ● Projet == réseau social page 52
  • 53. Communautés, résaux sociaux Linux 1.0 (1994) Developers linked by common authorship to same files source [Robles] page 53
  • 54. Bon sang, mais c'est le bazar ! Classical analysis of Apache modules feb. 2004 (source [Robles]) page 54
  • 55. Amélioration de la visualisation Reshaped with Girvan-Newman algorithm (source [Robles]) page 55
  • 61. Développement collaboratif et distribué ● Forces centrifuges ● Fork / branch ● Git, Bzr, etc ● Forces centripètes ● Cohésion ● Communauté ● Leadership ● Merge page 61
  • 62. Prendre part à une nouvelle communauté ● Rencontrer des hommes (et des femmes), pas seulement des compagnies ou des services marketing ● Construire un projet où différents modèles peuvent cohabiter ● Apprendre les règles des communautés ● Méritocratie ● De nombreux mode d'organisation sociale ● Comme dans la « vie réelle » c'est souvent plus subtil que ce qu'on en dit dans les présentations ou les publicités ! ● Communiquer pour construire la confiance page 62
  • 63. « HOWTO » projets basés sur le libre page 63
  • 64. Principes ● Historique ● Aspects juridiques ● Aspects économiques ● Projets / Communautés ● Evaluation outils libres ● Guidelines page 64
  • 65. Qualités ● Prépare l'avenir ● Sécurité ● Adaptabilité ● Indépendance ● Faible coût ● Portabilité ● ... Encore faut-il vérifier ? Qui fait vraiment ce travail ? -> VOUS ! page 65
  • 66. Annuaires ● Freshmeat http://freshmeat.net/ (> 39000 projets) ● FSF/Unesco : http://directory.fsf.org/ (> 5800 projets) ● Framasoft : http://framasoft.net/ (> 1400) ● Ohloh : http://ohloh.net/ (> 300 000 projets ??) page 66
  • 67. Sélection d'un produit ● Facilité à tester ● Ne pas confondre vitesse et précipitation ● Sous-traiter ce qui peut l'être ● Identifier les éléments critiques et monter en compétence ● Préférer les solutions déjà packagées (distributions) ● Éléments de dépendance sur des tiers non- contractualisés page 67
  • 68. Nombreuses qualités ● Qualités génériques ... déjà connues ● Qualités particulières d'un logiciel libre => à évaluer ● sa licence ● sa communauté ● son code (sa doc, son langage, etc.) ● Méthodes d'évaluation (QSOS, OpenBRR, ...) http://fr.wikipedia.org/wiki/Méthode_d'évaluation_de_logiciels_libres page 68
  • 71. Analyse des besoins Conduite de projet Spécification Architecture Conception détaillée Codage Tests ? Déploiement page 71
  • 72. Maintien en condition opérationnelle ● Réactivité pour les mises à jour ● Diminuer l'adhérence dans les composants spécifiques page 72
  • 73. Stabilisation impossible ● Mises à jour de sécurité permanentes ● Répétition des mises à jour ● Automatisation souhaitable ● Diminuer la taille du code spécifique page 73
  • 74. Reverser au projet ● Rendre générique les éléments spécifiques ● Maintenus à l'extérieur ● Améliorés à l'extérieur ● Pas besoin de les repackager ● Plus facile à dire qu'à faire ● Participer aux projets externes ASAP page 74
  • 75. Compétences pour le développement ● Développement distribué ● Communication en réseau ● Rendre générique ce qui peut l'être (bibliothèques, sous-projets) ● Méthodologie d'intégration (versions dérivées, customisations) ● Savoir packager (exemple : Debian) ● Traditionnels : doc, specs, tests, etc. ● Animation de communauté ● ... page 75
  • 76. Comment bien intégrer un projet libre ● Guides nouveaux contributeurs ● Être de bonne volonté (commencer petit pour se faire connaître) ● Pas magique (le diable est dans les détails) ● Identifier la roadmap ● Stratégie de stabilisation de versions ● Système d'Assurance Qualité ● Identifier les acteurs clé ● Rencontres physiques ● Canaux temps réel (IRC, etc.) page 76
  • 77. Spécificités du projet ● Pas que la licence ● Communauté ● développement ● utilisatrice ● Personnes, rôles ● Acteurs économiques ● But, objectifs ● Méthodologie page 77
  • 78. Règles de vie en communauté ● Bénévoles (motivations) ● Professionnels ● Contractualisation ? ● Confiance ● Leadership ● Barrières à l'entrée ● Humour, culture et autres folklores page 78
  • 79. Enjeux sociaux plus que techniques ● Comprendre les règles du jeu ● Identifier les éléments influents ● Motiver des bénévoles ● Faire accepter ses contributions ● Impact sur les décisions ● Prouver son implication ● Se faire (re-)connaître ● Anticiper les alea page 79
  • 80. Où rencontrer la communauté ● En ligne ● Salons / conférences : ● Solutions Linux ● Rencontres Mondiales LL ● Open World Forum ● FOSDEM ● Associations : ● April ● CNLL ● etc. page 80
  • 81. Contribuer : une nécessité ● Cercle vertueux des contributions ● Quasi-obligation du fait des licences ● Externalisation de la maintenance ● Se faire plaisir et apprendre en vraie grandeur ● Se faire connaître et reconnaître ● Influer sur le pilotage d'un projet page 81
  • 82. Comment bien contribuer ● Il n'y a pas besoin de savoir coder ● Assurer une veille régulière ● Beaucoup d'effort même pour des choses simples ● Minimum légal : faire vivre la base de bugs dans le bugtracker du projet page 82
  • 83. Comment bien contribuer (suite) ● Accepter des usages sociaux différents ● Communiquer avant tout ● Jouer le jeu selon les règles ● Eviter l' « abandonware » non déclaré ● Respecter copyright ● Respecter les licenses page 83
  • 84. Conclusion Loin de l'exhaustivité Le libre est un changement extrèmement positif Plein d'oportunités Pas un seul modèle : mais quelques bonnes pratiques générales Contribuer est nécessaire pour la survie du modèle, mais aussi concrètement dans les effets utiles aux projets locaux. page 84
  • 85. Merci à : ● Jean-Christophe Becquet / APITUX ● Roberto Di Cosmo / Paris 7 – PPS ● Gregorio Robles ● Aller plus loin : ● «Richard Stallman et la révolution du logiciel libre» Eyrolles, 2010 ● http://www.april.org ● http://www.apitux.org/index.php?2009/05/25/199-cours-logiciel-libre-standards-ouve ● http://loli.fsa.ulaval.ca/index.php?id=9 ● http://dpt-info.univ-littoral.fr/mediawiki/index.php/I2L:Accueil ● http://www.dicosmo.org/CourseNotes/LogicielLibre/ page 85
  • 86. Conditions d'utilisation ● This work is Copyright 2009-2010 by Institut TELECOM and Olivier Berger, published under a Creative Commons ShareAlike license page 86
  • 87. Merci de votre attention http://www-public.it-sudparis.eu/~berger_o/weblog/ page 87 direction ou services <pied de page>