409 lines
19 KiB
TeX
409 lines
19 KiB
TeX
\section{Logiciels libres}
|
|
|
|
%Definir ce qu'est un logiciel libre
|
|
\subsection{Qu'est-ce que c'est?}
|
|
De façon générale, un \emph{logiciel} est un ensemble de données, de
|
|
programmes et de documents destinés à accomplir une certaine tâche. Il
|
|
existe des logiciels pour traiter du texte, gérer des tableaux de
|
|
données, dessiner par ordinateur, etc.
|
|
Plusieurs de ces logiciels sont développés par des entreprises qui les
|
|
rendent accessibles aux utilisateurs sous des licences restrictives et
|
|
moyennant le paiement de sommes parfois très élevées.
|
|
D'autres logiciels sont disponibles gratuitement pour le grand public.
|
|
|
|
Il existe plusieurs types de logiciels, dont les applications, les
|
|
utilitaires et les
|
|
systèmes d'exploitation. Une \emph{application} permet de manipuler ou
|
|
de produire des documents.
|
|
Par exemple, cela inclut les traitements de texte, les tableurs, les
|
|
logiciels de dessin, etc.
|
|
Un \emph{utilitaire} permet quant à lui de manipuler des données et
|
|
d'aider à la maintenance de l'ordinateur.
|
|
Par exemple, un logiciel permettant de compresser des fichiers ou de
|
|
réparer des documents endommagés peut être considéré comme un
|
|
utilitaire au même titre qu'un défragmenteur de disque.
|
|
Un \emph{système d'exploitation} fournit finalement un environnement
|
|
dans lequel les logiciels peuvent cohabiter et s'exécuter.
|
|
|
|
Il existe quatre catégories de logiciels en fonction de la license
|
|
sous laquelle ils sont distribués.
|
|
\begin{description}
|
|
\item[Commercial] Pour utiliser un logiciel commercial, le client doit
|
|
en faire l'achat. Le fournisseur d'un tel logiciel offre des
|
|
informations générales à propos de son produit, des vidéos montrant
|
|
ses fonctions de base mais aucune version d'essai.
|
|
\msw\ et \mso\ sont des exemples de logiciels
|
|
commerciaux.
|
|
\item[Partagiciel] Aussi appelé \angl{shareware} en Anglais, un
|
|
partagiciel est un logiciel qui peut être librement distribué mais
|
|
qui n'offre qu'un nombre limité de fonctionnalités ou ne fonctionne
|
|
que pendant un temps limité.
|
|
L'utilisateur d'un partagiciel a la possibilité, après la période
|
|
d'essai, d'acheter la version complète du logiciel.
|
|
\soft{Paint Shop Prop}\texttrademark\ de \soft{Jasc}\textregistered\
|
|
et
|
|
\soft{WinZip}\texttrademark\ sont des exemples de
|
|
partagiciels.
|
|
\item[Gratuiciel] Aussi appelé \angl{freeware} en Anglais, le
|
|
gratuiciel est offert gratuitement sous certaines conditions, par
|
|
exemple pour usage personnel seulement.
|
|
L'anti-virus \soft{AVG Free}\texttrademark\ de
|
|
\soft{Grisoft}\textregistered\ est
|
|
un exemple de gratuiciel.
|
|
\item[Libre] Aussi eppelé \angl{free} en Anglais, le logiciel libre,
|
|
que nous allons étudier plus en profondeur ici, peut être utilisé et
|
|
distribué sans restriction.
|
|
Comme nous allons le voir, c'est beaucoup plus qu'un logiciel gratuit!
|
|
\end{description}
|
|
|
|
Plus précisément,
|
|
un logiciel \emph{libre} répond aux quatre
|
|
caractéristiques suivantes.
|
|
\begin{enumerate}
|
|
\item Il peut être utilisé par toute personne ou organisme, sans
|
|
restriction. En particulier, un logiciel libre peut être employé autant
|
|
pour un usage personnel que commercial.
|
|
\item L'utilisateur d'un logiciel libre dispose du droit de le
|
|
distribuer à toute autre personne ou organisme.
|
|
\item Le code source du logiciel, c'est-à-dire les documents lisibles
|
|
par l'être humain à partir
|
|
desquels une
|
|
version définitive et exécutable est produite, est disponible pour tout
|
|
utilisateur désirant le consulter.
|
|
Habituellement, le code pourra être téléchargé depuis Internet.
|
|
\item Tout utilisateur peut se procurer et modifier le code source
|
|
pour ensuite distribuer des versions modifiées du
|
|
logiciel. Idéalement, les modifications seront bien entendu
|
|
propagées dans le code source original du logiciel.
|
|
\end{enumerate}
|
|
Cette définition s'inspire de celle donnée par Roberto Di Cosmo lors de
|
|
sa conférence sur les logiciels libres donnée en avril 2007,
|
|
au Département
|
|
d'Informatique et de Recherche Opérationnelle (DIRO) de l'Université
|
|
de Montréal.
|
|
Il existe des logiciels libres pour chacune des trois catégories que
|
|
nous avons présentées précédemment.
|
|
|
|
%Presenter la philosophie du libre
|
|
\subsection{Avantages des logiciels libres}
|
|
Le bénéfice le plus évident des logiciels libres est sans nul doute
|
|
leur coût minime de mise en place et d'utilisation. Il suffit en effet
|
|
de télécharger le produit
|
|
souhaité et de l'utiliser, sans devoir payer de redevances à son
|
|
fabricant ou se soumettre à un contrat de licence long et restrictif.
|
|
Par contre, les avantages des logiciels libres vont bien au-delà de la
|
|
simple réduction des coûts \cite{PFA07}: une plus grande robustesse,
|
|
une meilleure sécurité, un support technique simplifié, etc.
|
|
|
|
\paragraph*{Robustesse.}
|
|
Puisque le code source du logiciel peut être librement téléchargé et
|
|
consulté, plusieurs personnes sont susceptibles de l'examiner. Cela
|
|
permet de mieux cerner les bogues et ainsi d'améliorer la robustesse
|
|
du produit.
|
|
Cette accessibilité du code source est sans nul doute à l'origine de
|
|
la grande robustesse du système d'exploitation \linux\ qui s'exécute de
|
|
nos jours sur un grand nombre de serveurs hébergeant des sites Web
|
|
importants sur Internet, comme par exemple Google.
|
|
|
|
\paragraph*{Sécurité.}
|
|
Souvent,
|
|
des failles de sécurité permettent à des personnes malveillantes de
|
|
s'introduire sur un serveur et d'en perturber le fonctionnement, par
|
|
exemple en modifiant des pages Web hébergées, en surchargeant
|
|
volontairement la machine ou en manipulant des données sensibles (statut
|
|
d'utilisateurs, comptabilité, etc.).
|
|
Une faille de sécurité permet aussi à un virus de s'incruster
|
|
dans un ordinateur et de causer divers problèmes pour l'utilisateur,
|
|
allant du simple agacement à de lourdes pertes de données.
|
|
Dans un logiciel libre, de telles failles sont plus facilement
|
|
visibles puisque n'importe qui peut consulter le code source.
|
|
Cela semble à première vue
|
|
faciliter la vie aux personnes malveillantes, mais il n'en
|
|
est rien puisque les failles détectées peuvent être corrigées par les
|
|
développeurs du logiciel et que les utilisateurs peuvent mettre les
|
|
logiciels à jour sans contrainte de license.
|
|
En bref,
|
|
l'accessibilité du code source fait en sorte que la sécurité doit se
|
|
fonder sur des hypothèses plus fortes que le secret, ce qui accroît la
|
|
sécurité.
|
|
|
|
\paragraph*{Pérennité du logiciel.}
|
|
L'utilisateur peut continuer à employer un logiciel libre, même si ce
|
|
dernier n'est
|
|
plus développé par son fabricant. Un logiciel libre ne \og meurt\fg\
|
|
pas; il continue toujours d'exister et son développement peut être
|
|
repris par toute personne désireuse de le faire.
|
|
Par opposition, si une entreprise cesse de développer un logiciel dont
|
|
elle détient jalousement le code source, plus personne ne peut
|
|
poursuivre le développement si bien que l'utilisateur est contraint de
|
|
changer de logiciel si l'entreprise cesse de le maintenir.
|
|
|
|
\paragraph*{Liberté de mise à jour.}
|
|
Si la version actuelle de son logiciel préféré lui convient
|
|
parfaitement, l'utilisateur n'est pas obligé, lorsqu'une nouvelle
|
|
version voit le jour, de l'adopter.
|
|
D'un autre côté, l'utilisateur désireux de suivre l'évolution de son
|
|
logiciel préféré peut le faire sans autre coût que le téléchargement
|
|
et l'installation de mises à jour.
|
|
Dans le cas de logiciels commerciaux, l'utilisateur est tenu d'adopter
|
|
les nouvelles versions et de
|
|
faire évoluer son matériel en conséquence, mais son refus de le faire
|
|
ne lui cause que des désagréments.
|
|
Les organismes qui paient des coûts annuels pour renouveler des
|
|
licences peuvent quant à eux être forcés de faire la mise à jour si le
|
|
concepteur décide de ne plus renouveler leur contrat de license.
|
|
%Prenons par exemple le système d'exploitation \msw.
|
|
%L'utilisateur particulier disposant d'une copie de Windows~98 peut
|
|
%certes continuer de l'utiliser, mais se voit privé de toute
|
|
%possibilité de mise à jour de sécurité.
|
|
%Le nombre de logiciels auxquels il a accès diminue de jour en jour et
|
|
%il ne peut s'attendre qu'à peu de soutien technique de la part de
|
|
%\ms.
|
|
%Son seul recours est alors de mettre son système d'exploitation à
|
|
%jour.
|
|
Avec les logiciels libres, l'utilisateur met son produit à jour
|
|
\emph{au besoin}, il est \emph{libre} de le faire à sa convenance.
|
|
|
|
\paragraph{Égalité des chances en éducation.}
|
|
Du côté scolaire, il est avantageux d'utiliser des logiciels libres
|
|
pour permettre à tout étudiant d'y avoir accès.
|
|
Toute personne disposant chez elle d'un ordinateur peut alors
|
|
télécharger et installer les logiciels dont elle a besoin pour sa
|
|
formation.
|
|
Cela évite des coûts pour les étudiants, mais aussi pour l'université
|
|
qui n'a pas à établir d'entente avec les fournisseurs pour la
|
|
distribution de logiciels aux étudiants.
|
|
Cela libère aussi des postes à l'universités puisque davantage
|
|
d'étudiants peuvent travailler chez eux ou avec leur ordinateur
|
|
portable.
|
|
|
|
\paragraph{Support technique.}
|
|
Les logiciels libres diminuent également le coût du support technique.
|
|
D'abord, la robustesse de ces logiciels diminue les coûts de
|
|
maintenance, permettant aux techniciens de se consacrer à des tâches
|
|
plus intéressantes telles que l'apprentissage de nouvelles
|
|
technologies et l'assistance aux employés et aux étudiants.
|
|
De plus, les techniciens ont moins besoin de traiter les détails
|
|
spécifiques à chaque version d'un même produit. En cas de problème
|
|
technique avec une ancienne version, une mise à jour vers la plus
|
|
récente version, toujours possible sans coût, permet soit de résoudre
|
|
la difficulté, soit de donner aux technien les outils pour la traiter.
|
|
|
|
\subsection{Philosophie du Libre}
|
|
|
|
Beaucoup de gens se demandent comment \og vit\fg\ un logiciel
|
|
libre. Il existe en fait plusieurs processus de développement pour un
|
|
tel produit.
|
|
Dans le mode le plus simple et à première vue
|
|
le moins prometteur, un programmeur
|
|
amateur construit un logiciel pour résoudre un problème précis et
|
|
décide de le mettre à la disposition de tous les utilisateurs en le
|
|
publiant sur Internet.
|
|
Souvent, un tel logiciel évolue peu.
|
|
Par contre, une personne ou un organisme désireux de faire évoluer le
|
|
logiciel peut le télécharger et le modifier.
|
|
Le système d'exploitation \linux\ a par exemple débuté de cette façon.
|
|
|
|
D'autres logiciels libres proviennent de produits commerciaux que
|
|
leurs concepteurs ont rendu disponibles pour la communauté. Par
|
|
exemple, le navigateur Web \soft{Firefox} est un descendant du navigateur
|
|
\soft{Netscape}, mais il a beaucoup évolué depuis que le code source
|
|
original
|
|
est devenu libre.
|
|
Une entreprise rendant un logiciel libre de cette façon se réserve
|
|
habituellement le droit d'en faire des versions non libres plus
|
|
étendues, mais la version libre demeurera toujours disponible.
|
|
|
|
Maintenant, comment un informaticien peut-il faire de l'argent avec un
|
|
logiciel libre? À première vue, cela semble difficile.
|
|
Par contre, supposons qu'une entreprise éprouve un besoin particulier
|
|
qu'aucun produit sur le marché ne puisse combler.
|
|
Cette entreprise engagera alors un informaticien pour développer une
|
|
solution.
|
|
Cet informaticien pourrait fort bien partir d'un logiciel libre existant,
|
|
lui ajouter la fonctionnalité requise et rendre cette fonctionnalité
|
|
disponible pour qu'elle soit intégrée à la version officielle du
|
|
logiciel.
|
|
L'entreprise qui a engagé l'informaticien a, dans ce cas, non seulement
|
|
comblé son besoin initial mais a en plus permis à la communauté
|
|
entière de
|
|
bénéficier de la solution.
|
|
Ceci contribue à enrichir le logiciel en question et encourage
|
|
d'autres entreprises à procéder de même pour développer de nouvelles
|
|
fonctionnalités.
|
|
|
|
%Recoupe un peu avec ce qui devrait aller dans la section
|
|
%Rétrocession.
|
|
% Peut-être faudra-t-il déplacer des choses d'ici vers là ou faire des
|
|
% liens...
|
|
|
|
\subsection{Exemples de logiciels libres}
|
|
|
|
Il existe un très grand nombre de logiciels dont voici quelques
|
|
exemples.
|
|
Tous les logiciels présentés ici comportent l'avantage de la
|
|
portabilité, c'est-à-dire qu'ils sont disponibles autant pour
|
|
\msw, \applemac\ que \linux.
|
|
|
|
\begin{description}
|
|
\item[\soft{Mozilla Firefox}] \cite{Mozilla}
|
|
Navigateur Web semblable à \msie\
|
|
doté de plusieurs fonctionnalités intéressantes telles que la
|
|
navigation par onglets et le blocage des fenêtres \textsl{popup}.
|
|
Contrairement à \soft{Internet Explorer},
|
|
ce navigateur ne prend pas en charge ActiveX qui est une source
|
|
importante de problèmes de sécurité.
|
|
Son apparence peut être
|
|
personnalisée par des thèmes et un système de composantes
|
|
enfichables permet d'y ajouter une foule de fonctionnalités.
|
|
\item[\soft{Mozilla Thunderbird}] \cite{Mozilla}
|
|
Client de messagerie électronique
|
|
semblable à \ms\ \soft{Outlook Express}.
|
|
Comme son complément \soft{Firefox}, \soft{Thunderbird} procure une
|
|
grande
|
|
sécurité, permettant par exemple de filtrer les messages
|
|
indésirables, de ne pas afficher les images des courriers
|
|
électroniques et dispose lui aussi d'un système d'extensions
|
|
permettant de greffer des nouvelles fonctionnalités.
|
|
\item[\ooo] \cite{OpenOffice}
|
|
Suite bureautique comportant un traitement de
|
|
texte, un tableur, un concepteur de diaporamas, etc., et
|
|
utilisant un format de documents ouvert appelé
|
|
OpenDocument (voir section~\ref{sec:ofmtex}), mais il peut également
|
|
lire et écrire des fichiers
|
|
dans le format de \mso\ 95/97/2000/XP/2003.
|
|
\item[\soft{The GIMP}] \cite{Gimp}
|
|
Logiciel d'édition d'images permettant entre autres la
|
|
retouche de photographies.
|
|
\soft{The Gimp} prend en charge plusieurs formats d'images courants et
|
|
possède des fonctionnalités rivalisant avec le logiciel commercial
|
|
\soft{PhotoShop}\texttrademark\ de la firme \soft{Adobe}\textregistered.
|
|
\end{description}
|
|
|
|
\proposition{Installation des logiciels \soft{Mozilla Firefox},
|
|
\soft{Mozilla
|
|
Thunderbird} et \ooo\ sur
|
|
tous les postes de l'Université de Montréal afin que tout étudiant
|
|
ou employé
|
|
ait la possibilité de les découvrir.}
|
|
|
|
\proposition{Distribution massive aux étudiants
|
|
de disques
|
|
compacts regroupant des logiciels libres. Des disques tels que The
|
|
Open CD \cite{TheOpenCD} ou des distributions de \linux\ pourraient
|
|
par exemple être
|
|
offerts à faible coût dans les librairies de l'Université.}
|
|
|
|
Évidemment, le système d'exploitation \linux\ est un autre exemple
|
|
important de logiciel libre.
|
|
Ce système permet d'accomplir à peu près les mêmes tâches que son
|
|
homologue \mso{Windows} de \ms\ tout en étant affranchi des contraintes
|
|
de licenses.
|
|
Son architecture le rend moins vulnérable aux virus et l'utilisateur a
|
|
accès à une interface semblable à celle de \mso{Windows}.
|
|
L'installation de \soft{Linux} a été grandement simplifiée ces
|
|
dernières années et des logiciels sont disponibles pour exploiter
|
|
presque tous les types de fichiers, même certains formats
|
|
propriétaires.
|
|
|
|
Nous croyons qu'une personne utilisant son ordinateur pour des
|
|
fonctions de base telles que naviguer sur Internet, consulter sa
|
|
messagerie électronique et se servir d'un traitement de texte pourrait
|
|
sans trop de difficulté migrer vers \soft{Linux}.
|
|
|
|
\proposition{Inciter les étudiants à découvrir \linux\
|
|
et à l'utiliser. Ceci peut se faire entre autres
|
|
en installant \linux\ sur
|
|
quelques postes de l'Université, en offrant aux étudiants des
|
|
distributions de \linux\ sur disques compacts,
|
|
en offrant du support technique
|
|
pour ce système, etc.}
|
|
|
|
%Quelques succès du libre dans université/organisations gouvernementales
|
|
\subsection{Exemples de succès du libre}
|
|
|
|
Plusieurs écoles et gouvernements ont migré avec succès vers des
|
|
logiciels libres, permettant dans bien des cas une réduction des coûts,
|
|
mais aussi l'accroissement de la fiabilité des systèmes.
|
|
Par exemple, dans la comission scolaire de Kamloops, en
|
|
Colombie-Britannique,
|
|
les écoles primaires et secondaires ont troqué leurs solutions
|
|
logiciels à base de Novell pour un système fondé sur \linux\
|
|
\cite{BYF07}.
|
|
Initialement, ils ont rencontré de la résistance de la part des
|
|
professeurs qui ne souhaitaient pas adapter leurs cours aux nouveaux
|
|
logiciels et des techniciens formés pour les logiciels propriétaires.
|
|
Par contre, lorsque les techniciens ont été formés pour administrer
|
|
les logiciels libres, ils ont vu leur charge de travail diminuer en
|
|
raison de la réduction du travail de maintenance nécessaire et ont pu
|
|
venir en aide aux professeurs.
|
|
|
|
Lors de sa conférence au DIRO, en avril 2007, Roberto Di Cosmo a
|
|
mentionné
|
|
l'implantation de \ooo\ au sein du ministère français, un
|
|
projet qui fut fructueux. \ms\ ne voulait plus renouveler leur
|
|
contrat de
|
|
license annuel pour \soft{Office}~97 si bien qu'ils devaient passer à
|
|
la
|
|
version~2003. Cela occasionnait des coûts de formation en plus de la
|
|
license. Au
|
|
lieu de former les employés à \soft{Office}~2003, ils les ont formés à
|
|
\ooo, ce qui a donné des résultats fructueux.
|
|
Dans le cas du ministère
|
|
des finances, l'objectif n'était pas de sauver de l'argent et
|
|
pourtant, ils en ont sauvé malgré tout!
|
|
|
|
\subsection{Le problème de la formation}
|
|
|
|
La nécessité de former les employés est un argument fréquemment
|
|
utilisé contre la migration vers une nouvelle solution logicielle.
|
|
Par exemple,
|
|
plusieurs personnes pensent que passer de \mso\ vers
|
|
\ooo\ nécessitera un long apprentissage, que la formation à
|
|
\ooo\ sera aussi longue que celle à \soft{Office} et qu'elle sera
|
|
coûteuse.
|
|
Il n'en est rien, car les mêmes concepts généraux reviennent d'un
|
|
logiciel à l'autre.
|
|
L'utilisateur devra certes prendre quelques minutes pour s'y
|
|
retrouver, mais il réussira sans trop de mal à faire fonctionner le
|
|
nouveau logiciel.
|
|
|
|
Nous croyons que passer de \soft{Internet Explorer} à \soft{Firefox}
|
|
ou de \mso\
|
|
vers \ooo\ est à peu près aussi facile que migrer vers
|
|
une nouvelle version du produit de la même entreprise.
|
|
|
|
Idéalement, il faudrait aider les étudiants et les employés à se
|
|
libérer de ce mythe selon lequel il est nécessaire d'apprendre et
|
|
utiliser les logiciels propriétaires puisqu'ils sont employés partout
|
|
dans l'industrie.
|
|
La formation ne devrait pas cibler un logiciel particulier mais plutôt
|
|
des concepts généraux: comment utiliser un traitement de texte, comment
|
|
maîtriser un tableur, etc.?
|
|
Le logiciel employé pour la formation ne devrait être qu'un exemple
|
|
appuyant le concept, pas le concept lui-même.
|
|
|
|
Par contre, il ne faut pas tomber dans l'autre extrême en remplaçant
|
|
tous les logiciels propriétaires par des logiciels libres du jour au
|
|
lendemain.
|
|
L'idée ici ne consiste pas à bannir les produits \mso\ mais plutôt à
|
|
en faire une solution parmi tant d'autres plutôt que \emph{la}
|
|
seule et unique solution.
|
|
Mais l'utilisateur choisissant un logiciel propriétaire doit le faire
|
|
uniquement si le produit satisfait ses besoins.
|
|
|
|
\proposition{Installer plusieurs logiciels différents sur les postes à
|
|
la disposition du personnel et des étudiants. Toute personne devrait
|
|
pouvoir choisir le logiciel qu'elle désire employer.}
|
|
À première vue, cela peut causer des problèmes de communication entre
|
|
usagers, mais les formats de fichiers ouverts (voir section
|
|
précédente) résoudent la question.
|
|
|
|
\proposition{Diversifier les systèmes d'exploitation installés sur les
|
|
postes de travail. L'Université devrait offrir aussi bien des postes
|
|
\msw\ que des postes \applemac\ et \linux.}
|
|
|
|
\proposition{Offrir aux étudiants de la formation pour les logiciels
|
|
libres afin de leur faire découvrir qu'ils peuvent facilement migrer
|
|
vers ces derniers.}
|