370 likes | 541 Views
Logiciels Libres Quoi ? Quand ? Qui ? Où ? Comment ? Pourquoi ? (par Pierre-Yves Gosset - http://www.framasoft.net ) Etude de cas : BASIS et l'interopérabilité (par Frédéric Riondet - ENSSIB). Introduction.
E N D
Logiciels Libres Quoi ? Quand ? Qui ? Où ? Comment ? Pourquoi ? (par Pierre-Yves Gosset - http://www.framasoft.net) Etude de cas : BASIS et l'interopérabilité (par Frédéric Riondet - ENSSIB)
Introduction « Framasoft.net est un site internet collaboratif à géométrie variable dont le sujet est le logiciel libre et son état d'esprit » Annuaire de 1 200 notices de logiciels libres Tutoriels libre-diffusion (100) Tribune libre (215) Association (FRAnçais et MAthématiques sur intraNET) Communauté « Utilis'acteurs » Orientation Grand public Site en perpétuelle évolution
C'est quoi ? Logiciel libre
Logiciel et recette de cuisine • Programme et recette de cuisine • Programme = recette exécutable = plat cuisiné • Imaginez un monde... • où les crêpes ne sont disponibles que toutes prêtes • où la recette n'est pas disponible • où il ne viendrait à personne l'idée d'avoir la recette • Ce monde existe : le monde du logiciel depuis le début des années 80
Le monde des crêpes libres • Liberté de lire, comprendre la recette des crêpes et de les cuisiner • Liberté de donner à ses amis des crêpes fabriquées avec cette recette • Liberté de modifier la recette des crêpes • Liberté de distribuer la recette modifiée des crêpes
Quelles libertés ? • Quatre libertés : • Liberté d'utilisation d'un programme • Liberté d'étudier le fonctionnement d'un programme • Liberté de modifier un programme • Liberté de distribuer un programme
Logiciel propriétaire • Liberté d'utilisation d'un programme : oui, sous conditions • Liberté d'étudier un programme : non • Liberté de modification d'un programme : non • Liberté de distribution d'un programme : non = Location
Une philosophie bien connue • Liberté, Égalité, Fraternité • Liberté: d'utiliser, de faire des copies, des améliorations, de les diffuser • Égalité : même droits pour tous • Fraternité : coopération de tous, pour construire quelque chose ensemble • Le logiciel libre n'est pas qu'une question de technique ou de licence
Principe fondateur : la coopération • « Si tu as une pomme, que j’ai une pomme, et que l’on échange nos pommes, nous aurons chacun une pomme. Mais si tu as une idée, que j’ai une idée et que l’on échange nos idées, nous aurons chacun deux idées. », Georges Bernard Shaw
Evitons les abus de langages • libre ≠ domaine public (utilisable sans contrainte) • libre ≠ gratuit, freeware (graticiel) • libre ≠ shareware (partagiciel) • propriétaire ≠ commercial • libre s'oppose à propriétaire • libre ≠ code source
Désignations utilisées • Logiciel Libre, • Free Software • Open Source Software • Libre Software • Software Libero (italien), Software Livre (portugais), Freie Software (allemand), etc. • Free and Open Source Software (FOSS) • Free, Libre and Open Source Software (FLOSS)
Quand ? Logiciel libre
Historique • Génèse : • L'imprimante, le Finlandais et les manchots • Evolutions : • Le libre au-delà du logiciel (images, musique, wikipedia, etc = “Free culture”) • Copyleft, Creative Commons, Brevets, DRM
Qui ? Logiciel libre
Qui ? • Développeurs • De l'amateur au professionnel • Entreprises et institutions • Services • Utilisateurs • Vous !
Où ? Logiciel libre
Où ? • Une journée sans logiciel libre • Champs d'applications • Où trouver des logiciels libres ?
Comment ? Logiciel libre
Comment ? • La jungle des licences
Pourquoi utiliser des logiciels libres ? Logiciel libre
Qualités éthiques • Liberté, égalité, fraternité • Entraide, diffusion et partage de la connaissance • Transparence • Des outils disponibles pour tous • Personne ne vous retire votre liberté • Permettent aux pays en développement de se développer mieux • Défense des diversités culturelles et linguistiques • Développement basé sur un besoin et non un marché
Qualités éthiques et sociales • Liberté, égalité, fraternité • Entraide, diffusion et partage de la connaissance • Transparence • Des outils disponibles pour tous • Personne ne vous retire votre liberté • Permettent aux pays en développement de se développer mieux • Défense des diversités culturelles et linguistiques • Développement basé sur un besoin et non un marché
Qualités techniques • Code ouvert : • Pérennité des solutions : maîtrise du code source et de son évolution • Sureté : code examiné à la loupe, bogues rapidement identifiés (non cachés) et corrigés, condition nécessaire à la sécurité • Souplesse : adaptation à des besoins particuliers (en interne ou par des tiers) • Faible coût, bénéficier du travail déjà fait • Format ouvert • Maîtrise et conservation de ses données (archivage) • Echanges, collaboration (interopérabilité) • Multi-plateforme, portabilité (indépendance)
L’interopérabilité SQL Le métamoteur doit interroger Basis, une base propriétaire : son langage d’interrogation est le SQL. Il attend en retour une notice avec 15 champs (DC) au format XML Métamoteur Catalogue « BASIS » Notice Dublin Core XML
? SQL Langage propriétaire Problème 1 : Basis ne connaît pas le SQL. Son langage d’interrogation et de manipulation des données est un langage propriétaire dérivé du SQL. Les deux logiciels ne se comprennent pas. Métamoteur Catalogue « BASIS » Notice Dublin Core XML
API : Programme de traduction SQL Langage propriétaire Solution proposée : un programme d’interface entre applications (API). Dans notre cas, il s’agit d’un programme qui va traduire le SQL en langage proriétaire. L’éditeur du logiciel « Basis » refuse de donner la syntaxe de son langage et demande à être le développeur exclusif du driver : il le fera payer et en conservera les droits pour pouvoir le revendre à d’autres clients par la suite… Métamoteur Catalogue « BASIS » Notice Dublin Core XML
API : Programme de traduction SQL Langage propriétaire Problème 2 : la notice « Basis » ne correspond pas du tout à une notice classique DC. Il va falloir faire le tris des informations qui se trouvent dans la notice « Basis » et la réorganiser. Certaines informations ne se trouvent pas dans la notice mais dans des espaces « particulier » de la base de donnée. Il faudra aller les chercher pour les afficher. Métamoteur Catalogue « BASIS » ? Notice BASIS Notice Dublin Core XML
API : Programme de traduction SQL Langage propriétaire Problème 2 : Il faut donc créer un filtre pour ne retenir que les données correspondant au DC et réorganiser la notice « Basis ». Les informations manquantes sont récupérées dans d’autres tables de la base qui ne sont pas habituellement requêtées. La société qui édite le logiciel s’impose pour développer ce filtre cas il ne veulent pas dévoiler l’architecture de leur base. Il faudra aussi créer un programme de balisage XML… Métamoteur Catalogue « BASIS » Notice BASIS XML Notice Dublin Core XML Filtre DC
De nombreux connecteurs à développer : Problème 3 : ce connecteur n’est pas le seul, il y en a bien d’autres à développer, avec toujours les mêmes problèmes. Pour chaque connecteur, il faut payer des développement qui peuvent être très coûteux (parfois plusieurs semaines de développement) Métamoteur Base de Gestion Catalogue « BASIS » A-to-Z Résolveur de lien • Le prix ne devient-il pas excessif par rapport au service rendu à l’usager ? • Quelle est la pérennité d’une telle intégration ?
Les versions Le « versionning », une méthode pour pousser l’usager à changer d’outil • Évolution de l’environnement : • Rend obsolète le logiciel • Augmente le nombre d’incompatibilité • Arrêt de maintenance : • Plus de mise à jour • Bloque les réparations en cas de panne • Le code source n’est toujours pas dévoilé = Baisse l’espérance de vie : • Les connexions développées ne seront peut-être plus d’actualité avec la prochaine version du logiciel… • Une nouvelle version du logiciel devra être tôt ou tard redéployée
Les Licences • C’est le droit d’utiliser le logiciel : • Pour de multiples raisons, le constructeur du logiciel peut décider de renégocier les licences ou demander d’en acheter de nouvelles • Augmenter le nombre d’utilisateur • Dupliquer les données • Rendres les données accessibles différemment • Changer de serveur • Changer de situation géographique • = On perd le droit d’utiliser le logiciel selon ses besoins
Quelques applications • Les SIGB & co : • Koha, PMB, NotiX, Ejournals, TomAcq • La GED : • Maarch, Honolulu • Les CMS : • 700 environs (SPIP, Drupal, Typo3, Plone, Joomla…) • Les +: • PMB/SPIP
Ressources SIGB • Compubib http://compubib.enssib.fr/ • FreeBiblio http://www.freebiblio.info/ • JC Blog http://www.houpier.fr/ • Groupe de réflexion sur les SIGB libres http://www.sigb-libres.info/
Où les trouver ? • Ressources généralistes: • Framasoft : http://www.framasoft.net/ • Wikipedia : http://fr.wikipedia.org/wiki/Portail:Logiciels_libres • Sourceforge : http://www.sourceforge.net/ • Philosophie : • ARIL : http://www.april.org/ • AFUL : http://www.aful.org/ • Formats-ouverts : http://formats-ouverts.org/ • Libroscope : http://www.libroscope.org/ • Free Software Foundation : http://www.fsf.org/
Quels logiciels ? • Navigateur web : Firefox • Logiciel de courriel : Thunderbird • Suite bureautique : OpenOffice.org • Graphisme : Gimp, Blender • Multimédia : VideoLan, Audacity • GNU/Linux (Mandriva, Ubuntu, Debian, etc.) • ...
Crédits et licences • Cette présentation est placée sous licence GFDL Permission vous est donnée de copier, distribuer et/ou modifier ce document selon les termes de la Licence GNU Free Documentation License, Version 1.1 ou ultérieure publiée par la Free Software Foundation ; sans section inaltérable, sans texte de première page de couverture, et sans texte de dernière page de couverture. Le texte de la GNU Free Documentation Licence est disponible à l'URL suivante : http://www.gnu.org/copyleft/fdl.html • Crédits : « Logiciels libres : la liberté de choix est un enjeu de société » : Frédéric Couchet, Délégué général APRIL – Licence GFDL - http://www.april.org/
Questions ? pyg@framasoft.net Logiciel libre