Qu'est-ce qu'un logiciel libre ('free software') ?
Un logiciel libre est un logiciel en accord avec ces principes :
Redistribution libre
La licence d'un logiciel libre ne doit pas empêcher un contractant
de vendre ou donner le logiciel sous forme de composant d'un ensemble
(distribution) constitué de programmes provenant de différentes
sources. La licence ne doit requérir ni redevance ni rétribution
sur une telle vente.
Code source
Le programme doit inclure le code source, et la diffusion sous forme
de code source comme sous forme de programme compilé doit être
autorisée. Quand une forme quelconque du produit est distribuée sans le code source, il doit être clairement indiqué par quel moyen il est possible d'obtenir le code source. pour une somme qui ne doit pas excéder un coût raisonnable de reproduction, ou en le chargeant gratuitement via Internet. Les formes intermédiaires de code source, telles que celles résultant d'un pré-processeur ou d'un traducteur, sont interdites.
Applications dérivées La licence doit permettre les modifications et les applications dérivées, et elle doit permettre à celles-ci d'être distribuées sous les mêmes termes que la licence du logiciel original.
Intégrité du code source de l'auteur
La licence peut défendre de distribuer le code source modifié
seulement si elle autorise la distribution avec le code source
de fichiers correctifs (patch files) destinés à
modifier le programme au moment de la génération. La licence
doit autoriser explicitement la distribution de logiciels générés
à partir de code source modifié. Elle peut requérir
que les applications dérivées portent un nom ou un numéro
de version différent de ceux du logiciel original.
Aucune discrimination de personne ou de groupe
La licence ne doit discriminer aucune personne ou groupe de personnes.
Aucune discrimination de champ d'application
La licence ne doit pas défendre d'utiliser le logiciel dans un
champ d'application particulier. Par exemple, elle ne doit pas défendre
l'utilisation du logiciel dans une entreprise ou pour la recherche génétique.
Distribution de licence
Les droits attachés au programme doivent s'appliquer à
tous ceux à qui il est distribué sans obligation pour
aucune de ces parties de se conformer à une autre licence.
La Licence ne doit pas être spécifique à un produit
Les droits attachés au programme ne doivent pas dépendre du fait que le programme fait partie d'un logiciel en particulier. Si le programme est séparé du logiciel dans lequel il est intégré, et utilisé ou distribué selon les termes de la licence, toutes les parties à qui le programme est redistribué doivent avoir les mêmes droits que ceux accordés avec le logiciel dans lequel il est intégré à l'origine.
La licence ne doit pas imposer de restrictions sur d'autres logiciels
La licence ne doit pas imposer de restrictions sur d'autres logiciels distribués avec le programme sous licence. Par exemple, la licence ne doit pas exiger que les autres programmes distribués sur le même support physique soient aussi des logiciels libres..
Quels intérêts pour la Science ?
La validation scientifique
Tout résultat publié doit être reproductible et
produit de manière claire et précise. Comment vérifier
le calcul d'une boîte noire, et en particulier, d'en valider le
résultat ? L'utilisateur ne peut pas en connaître le fonctionnement.
Il doit se fier à la parole du concepteur. N'est-ce pas là
une attitude ayant attrait à la croyance plutôt qu'à
la rigueur scientifique ? Ainsi, pouvoir étudier le code source
du programme permet de vérifier les outils utilisés, ainsi
que la manière dont ils le sont. Alors, le résultat des
calculs est issu d'un algorithme connu et certifié.
Des outils communs
La recherche est le fruit de collaborations, et chaque résultat
publié est issu de recherches effectuées par de nombreuses
équipes de part le monde. Pourquoi n'en serait-il pas de même
avec les outils informatiques que nous utilisons ? Cela amènerait
à un développement plus rapide et efficace de chaque outil.
Par exemple, il est rare qu'un groupe de recherche en chimie possède
des personnes sachant développer sur toutes les plate-formes. L'ouverture
du code permet à d'autres équipes de développer sur un système qu'elle
maîtrise et de fournir un logiciel plurivalent.
Accessible à tous
La libre distribution du logiciel permet au plus grand nombre de profiter
de l'outil. Cela permet au laboratoire consacrant la majeure partie
de leur budget aux produits chimiques et vaisselles de laboratoire de
pouvoir accéder à un outil puissant.
Adaptable à tous
Le code étant libre, il peut être modifier par quiconque afin de l'adapter
au mieux au besoin d'un laboratoire.
Protection du logiciel
Contrairement à ce qu'on pourrait penser, adopter une licence libre s'est aussi protéger son logiciel. En effet, un logiciel sans licence, c'est être à la merci du plagiat et de la non-reconnaissance d'un travail.Pérénité du code
En cas de faillite d'une société commercialisant un produit, ou de l'arrêt
du développement d'un logiciel par un groupe ou un particulier, quiconque
peut reprendre le projet et continuer à le développer ou le maintenir.
Ceci assure de pouvoir ouvrir des fichiers qui ont été crée dix ans
auparavant.
Des produits plus fiables
Le logiciel libre bénéficie des efforts de l'ensemble des utilsateurs qui travaille dans le but de corriger les problèmes. Les utilisateurs ne se contentant pas seulement de signaler les bogues, peuvent aussi les corriger et envoyer leurs corrections. Les utilisateurs travaillent ensemble, communiquant par l'intermédiaire du courrier électronique, pour venir à bout des problèmes.
Où trouver ces logiciels ?
Quelques sites regroupent des liens vers les sites de développeurs.
http://fsfeurope.gnu.org/france/science.fr.html
http://www.openscience.org
http://www.bioinformatics.org
...
Malheureusement, tous les logiciels n'y sont pas listés. Beaucoup de logiciels sont encore développés sans être distribués. Le fait de faire connaître le logiciel libre permettra de les faire sortir de l'ombre.
Comment mettre un logiciel sous licence libre?
Méthode générale
Pour mettre un logiciel libre sous licence libre, il faut d'abord déclarer qu'il est sous copyright, ensuite il faut ajouter les conditions de distribution, qui sont un outil légal donnant à chacun le droit d'utiliser, de modifier, et de redistribuer le code du programme, ou tous les programmes qui en sont dérivés. Ainsi, le code et ses libertés sont légalement indissociables.
L'en-tête du code source
Il est nécessaire que chaque fichier du code source contienne l'en-tête suivante :
<Indiquer ici le nom du programme et ce qu'il fait> Copyright (C) yyyy <Nom de l'auteur> This program is free software; you can redistribute it and/or modify it under the terms of the <Nom de la licence> as published by <Organisme ayant rédigé cette licence> This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the licence for more details. You should have received a copy of the <Nom de la licence> along with this program; if not, contact <Adresse permettant d'obtenir le texte intégrale de la licence>.
La licence
Le programme doit être distribué sous les termes d'une licence d'utilisation. Plusieurs licences libres existent, à vous de choisir celle que vous souhaiter appliquer. Le logiciel, ainsi que ses sources doivent être distribués avec le texte de licence d'utilisation, ou bien un lien permettant de la retrouver sur un autre média (Internet, ...)
Sources