Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

echo_des_gnous:emission_107b [2015/02/22 15:53] (Version actuelle)
Pierre Ducroquet
Ligne 1: Ligne 1:
 +====== L'écho des gnous 108 Face B ======
 +Diffusée le 15 février 2015.
  
 +Présents : Sébastien, Antonin
 +
 +Vous pourrez réagir en direct
 +  * sur IRC : http://webchat.freenode.net/ canal #chtinux
 +  * au téléphone : 03 20 91 24 00 (pendant les pauses musicales)
 +
 +Sources :
 +
 +  * [[https://aful.org/ressources/fourches-forks]]
 +
 +====== Sujet ======
 +
 +Le fork (au sens "développement logiciel"). Qu'est-ce qu'un fork? Réussite ou échec?
 +
 +====== Qu'est-ce qu'un fork? ======
 +
 +     * Un fork est une duplication du code source d'un logiciel déjà existant, dont les droits autorisent l'utilisation, la modification et la redistribution de ce code source.
 +     * Pas forcément une particularité du logiciel libre. Ex: lors d'un rachat d'une entreprise par une autre. Secret puisque le code n'est pas disponible.
 +     * Un fork est facilement effectué via des plateformes en ligne de gestion de sources, tel que Gitorious, Bitbucket ou encore GitHub.
 +
 +====== Les enjeux ======
 +
 +Un fork peut naître de plusieurs façons:
 +      * divergence d'opinion de la part des développeurs du projet,
 +      * le refus d'incorporer des améliorations légitimes (type précis de fork appelé spork),
 +      * nécessité de sauver un projet dans sa licence actuelle (en prévention d'un futur rachat par exemple),
 +      * agonie du projet source et nécessité de lui redonner une nouvelle vie sous une nouvelle forme.
 +      * La libération d'un programme initialement sous licence propriétaire (le rachat des droits d'auteur de Blender en 2002).
 +      * Rendre propriétaire un logiciel libre.
 +      * Acquérir une indépendance par rapport à une entreprise commerciale (Mageia, LibO).
 +
 +On différencie les forks amicaux (rapports amicaux entre le projet parent et le projet fils) des forks inamicaux (rapports conflictuels entre le projet parent et le projet fils).
 +
 +  * Spork : Refus plus ou moins légitime d'un mainteneur de paquet d'appliquer des corrections et améliorations.
 +  * Permet aussi de créer un projet intermédiaire pour maintenir les paquets communs de manière commune.
 +  * Le meilleur exemple : LibreOffice. Devant le manque de visibilité du projet offert par Oracle, la communauté de dev crée The Document Fondation pour entité juridique du projet. Elle demande à Oracle de lui céder le nom Ooo et de lui céder le nom du projet => refus. 
 +  * Finalement, projet cédé à la fondation Apache, qui est devenu Apache OpenOffice. Résultat : LibO est le descendant naturel d'Ooo.
 +  * Indépendance gagnée par le projet par rapport à la stratégie commerciale d'Oracle.
 +
 +====== Effets sur le projet original ======
 +
 +Les enjeux sont donc de se conformer à une spécifité / fonctionnalité d'un logiciel précis, en fonction de son opinion ou alors de la légitimité du code source, de sa licence.
 +
 +  * Soit ça ne fait rien (Free BSD continue son bonhomme de chemin malgré les nombreux forks, Debian également).
 +  * Soit ça tue complétement le projet original (LibreOffice a tué Ooo, Inkscape a tué Sodipodi...)
 +  * Soit la fourche meurt (difficulté de maintenir un projet en étant seul par exemple)
 +
 +La survie de la fourche dépend : 
 +
 +  * de la pertinence de la fourche (le but est-il légitime ou farfelu, genre défi technologique).
 +  * de la notoriété de la personne qui fourche (grand nom reconnu ou pas)
 +  * des réactions du projet original (en fonction de leur amour ou non du logiciel libre).
 +  * des utilisateurs. Accueillent-ils le projet de manière favorable.
 +  * de la volonté de la personne qui fourche. Arrive-t-elle à constituer une équipe ou restera-t-elle seule ?
 +
 +
 +
 +====== Les grands avantages ======
 +
 +      * Pas de risque de perdre un logiciel en cas de litige
 +      * Capacité de continuer un projet basé sur ses propres opinions, librement
 +      * Avantage de ne pas commencer un nouveau projet à zéro
 +====== Les grands inconvénients ======
 +
 +       * Les forks sont souvent interprétés négativement pour le développement -> risque de conflits entre projets (forks inamicaux)
 +       * Dispersion des ressources au lieu de donner l'avantage à la contribution
 +       * Incompatibilité des versions et grande confusion occasionnée chez l'utilisateur et le développeur
 +       * Le fork et le travail sur un projet a un coût (matériel et temporel)
 +       * Risque de tuer le projet mère
 +       * Rapide obsolescence du fork s'il n'est pas rapidement suivi
 +====== Les fusions ======
 +
 +Attention : ne pas confondre les forks avec les fusions (fusion de deux projets pour une nouvelle version donnée). 
 +
 +  * LxQt, gestionnaire de bureau léger, fusion de LXDE et RazorQT
 +  * Compiz et Beryl ont fondé CompizFusion en 2007
 +
 +====== Quelques exemples (re)connus ======
 +
 +  * LibreOffice, fork d'OpenOffice.
 +  * Les distributions qui proposent une expérience facilitée : Ubuntu (Debian), Manjaro (Archlinux)...
 +  * Les gestionnaires de bureau (shell) : MATE (GNOME 2)
 +  * Le renommage des applications Mozilla par Debian [[http://fr.wikipedia.org/wiki/Renommage_des_applications_de_Mozilla_par_Debian]]
 +  * Frise des forks des distributions Linux [[http://en.wikipedia.org/wiki/Fork_%28software_development%29#mediaviewer/File:Linux_Distribution_Timeline.svg]]
 
echo_des_gnous/emission_107b.txt · Dernière modification: 2015/02/22 15:53 par Pierre Ducroquet
 
Sauf mention contraire, le contenu de ce wiki est placé sous la licence suivante :CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki