Pour bien comprendre ce qu'est un logiciel libre, il faut déjà bien comprendre ce qu'est un logiciel.

Le logiciel

Comme vous le savez probablement déjà, un ordinateur fonctionne en binaire, c'est à dire qu'il ne travaille qu'avec des zéros et des uns. Rien de plus. Il est donc deux fois moins intelligent qu'un Shadok, qui lui a tout de même quatre cases dans son cerveau : Ga, Bu, Zo et Meu. Et bien non, l'ordinateur, lui, il n'en a que deux.

Tout au début, les gens fournissaient à l'ordinateur des données sous forme de cartes perforées, ou un trou vallait zéro et un plein valait un (ou le contraire). C'était très fastidieux. Avec l'augmentation de la puissance des machines, on s'est dit qu'on pouvait faire mieux. Alors est né le langage de programmation. Un langage de programmation, c'est une façon de décrire les opérations à exécuter à l'ordinateur dans une langue compréhensible par l'être humain. Par exemple :

Demander une valeur à l'utilisateur, et la mettre dans la variable X
Demander une autre valeur à l'utilisateur, et la mettre dans la variable Y
Si X et plus grand que Y, faire telle opération
Sinon, faire telle autre opération
C'est quand même déjà mieux que les cartes perforées. En informatique, cette description des opérations s'appelle le code source.

Mais, je vous le rapelle, l'ordinateur ne comprend toujours que des zéros et des uns. Donc il faut transformer ce code source en langage machine, et pour ce faire on utilise un programme très spécial appelé un "compilateur". D'un côté il prend le code source, et de l'autre il ressort le fichier binaire, directement executable par la machine, qu'on l'appellera juste "exécutable" dans la suite.

Pour faire plus simple, on va prendre une analogie. C'est comme en cuisine. Quand vous voulez faire un gâteau, vous prenez un recette, vous mélangez les ingrédients selon la recette, vous mettez au four et vous avez le gâteau. Et bien là c'est pareil : la recette c'est le code source, le compilateur mélange les ingrédients et passe au four, et le programme exécutable c'est le gâteau prêt à être mangé.

C'est plus clair maintenant ?

Le logiciel propriétaire

Le logiciel propriétaire, c'est le contraire du logiciel libre. C'est la catégorie la plus répandue de logiciel, malheureusement. Voyons à quoi ça correspond.

Vous est-il déjà arrivé d'acheter un gâteau chez le patissier, ou de manger un plat chez des amis ou au restaurant, et de trouver ça très bon mais d'être totalement incapable de retrouver tous les ingrédients ? Vous pourriez en citer trois ou quatre, mais pas tous.

En cuisine, on ne peut pas toujours retrouver la recette quand on n'a que le plat sous les yeux ou dans la bouche. Et bien en informatique, c'est pareil, mais en mille fois pire. Il est extrêmement difficile de retrouver le code source (la recette) quand on n'a que l'exécutable (le plat). Et dès que le programme est un peu gros, ça devient totalement impossible.

Quand vous achetez un logiciel propriétaire classique, vous n'achetez que le gâteau. La recette est considérée comme un secret professionnel jalousement gardé et protégé. On commence à voir ce que c'est qu'un logiciel libre, mais je voudrais d'abord vous mettre bien dans le bain du logiciel pour que vous compreniez pourquoi c'est si important.

Il y a un point crucial sur lequel un logiciel diffère d'un plat cuisiné : en informatique, il n'y a pas la notion d'ingrédients. La recette vous permet de générer directement le plat, par le biais du compilateur. Vous ne consommez rien au passage. Vous n'utilisez rien. De ce point de vue, le logiciel se rapproche plus du livre, de la musique ou du film. C'est très long et difficile d'écrire un livre, d'écrire une partition, ou de réaliser un film. Mais une fois que cet investissement de départ est fait, un fois qu'on a le livre, l'enregistrement ou le film monté, on peut le dupliquer autant de fois qu'on veut sans perte de qualité, en ne payant que le support, c'est à dire le papier, le CD et la pellicule. En informatique, le prix que paye le client pour le logiciel rend en général le prix du CD-ROM dérisoire.

De ce point de vue, le logiciel s'approche beaucoup du livre, et moins de la cuisine. Mais revenons à la cuisine, parce que c'est plus simple, et que j'aime bien la bouffe :)

Le logiciel libre

En une phrase, le principe du logiciel libre, c'est de dire : « Les consommateurs ont le droit de savoir ce qu'ils mangent ». Le logiciel libre, c'est donner la recette avec le gâteau, c'est donner le code source avec l'exécutable. Le logiciel libre, c'est quatre règles de base :

  • Le droit d'exécuter le programme (= le droit de manger le gâteau)
  • Le droit d'étudier le fonctionnement du programme (= le droit de lire la recette)
  • Le droit de redistribuer le programme (= le droit de donner du gâteau à n'importe qui, je vous rappelle que la recette permet directement d'obtenir le gâteau, sans ingrédients)
  • Le droit d'améliorer le programme et de publier les améliorations (= le droit d'améliorer la recette et de publier ces améliorations)

C'est ce que font tous les bons cuisiniers : il s'échangent leurs recettes, les adaptent à leur goût, les perfectionnent... Le fondement du libre c'est ça : le partage des connaissances.

Le fondateur du principe du logiciel libre s'appelle Richard Stallman, et il a créé la Fondation pour le logiciel libre (Free Software Foundation) en 1985.

Pour quoi faire

Vous allez me dire : oui mais je suis bien incapable de lire une recette de programme. Certes, mais par exemple, quand je vais acheter au supermarché une boîte de gâteaux, je n'ai pas la moindre idée de ce qu'est l'émulsifiant E504. Pourtant, je suis content que ce soit écrit sur la boîte, parce que si je veux je peux chercher, et bon, c'est quand même mieux de savoir ce qu'on va manger.

Mais risque-t-on une crise du foie en exécutant un programme ? Pas exactement, mais on risque l'équivalent informatique ! Un programme réalise toujours ce que son auteur lui a demandé de faire. Toujours. Si il arrive dans une situation que l'auteur n'avait pas prévue, il s'arrête. C'est ce qu'on appelle un "bug", ou un "crash". Et le programme ne vous affiche pas un message pour toutes les opérations qu'il fait. Sans la recette, vous ne pouvez absolument pas savoir si un programme n'est pas en train de fouiller dans vos données, d'envoyer vos numéros de comptes en banque sur internet, vos sites préférés, vos dernières recherches sur le net, etc... Pour le savoir, il faut la recette.

Mais au delà de l'équivalent informatique d'un risque sanitaire, le logiciel libre c'est tout simplement mieux d'un point de vue éthique. Les gens doivent pouvoir savoir ce qu'ils mangent. Et on fait de meilleurs gâteaux si on partage ses recettes et ses trouvailles avec les autres que si chacun reste dans son coin. C'est pas plus compliqué que ça.

Questions - Réponses

Et maintenant, quelques questions-réponses sur des mots que vous avez peut-être déjà entendu mais pas forcément compris.

Qu'est-ce que le piratage ? Le piratage d'un logiciel, c'est le copier sans en avoir le droit, comme certaines personnes le font pour des CDs audio. Pas de têtes coupées, de pendus ou de supplice de la planche, c'est juste une copie illégale qui se traduit par un manque à gagner (pas de perte réelle, c'est vous qui payez le CD vierge). Mais les logiciels propriétaires vous interdisent de les copier, comme pour les CD audios. Sauf qu'en informatique, certains programmes ont des protections pour empêcher la copie. C'est là qu'interviennent les crackers : ce sont des gens suffisamment expérimentés pour retirer la protection sans abîmer le programme. En gros, c'est comme si ils arrivaient à enlever la fève de la galette des rois sans l'abîmer, pour ne pas que vous vous cassiez les dents dessus.

Qu'est-ce qu'un format de fichiers ? On ne le dira jamais assez, un ordinateur ça ne comprend que des zéros et des uns. C'est vrai pour les programmes, mais c'est valable aussi pour les données. Quand vous avez par exemple un texte en gras, il faut le représenter sous la forme de zéros et de uns, et il y a plein de manières de faire ça. C'est ça le format, c'est la manière de représenter les données pour un ordinateur. Sans aller jusqu'aux zéros et aux uns, un texte en gras peut se mettre par exemple sous ces formes :

<b>texte</b>
\textbf{texte}
<strong>texte</strong>
Et il y en a plein d'autres. Voilà ce qu'est un format de fichier. Sous Windows, le format d'un fichier est indiqué par le point et trois lettres situés à la fin du nom du fichier. Mais attention, sur la plupart des Windows, ce point et ces trois lettres sont masquées à l'utilisateur, et il faut cocher une case au bon endroit pour les voir (Windows n'est pas pédagogique pour l'utilisateur : moins il en sait, mieux Microsoft se porte). Le format de fichier est en général spécifique au programme qui l'utilise. Par exemple, un document Microsoft Word (.doc) ne peut être lu que par Microsoft Word, et de préférence de la même version. Vous allez me dire : «Bah, il suffit que tout le monde se mette d'accord pour utiliser le même format.» Hou là là, que n'avez-vous pas dit malheureux ! C'est totalement vrai, mais c'est être bien idéaliste : le format de fichier est le moyen le plus sûr pour une entreprise peu scrupuleuse de vous maintenir dans ses clients. Il permet de prendre vos données en otage ! Même si vous trouvez un meilleur programme, moins cher, pour faire ce que vous faites, vous serez obligé de conserver l'ancien parce qu'il sera le seul à pouvoir ouvrir vos documents ! C'est honteux, oui, et ce sont des pratiques qui sont courantes en informatique, parce qu'il est très facile de cacher derrière une difficulté technique des problèmes qui ne le sont pas du tout.

Certains formats sont dits ouverts, c'est à dire utilisables par tout le monde parce que leur fonctionnement est expliqué. C'est le cas par exemple du HTML (page web), du PDF (document), du PNG (image), Jpeg (image), du Mp3 (son), du Ogg (son) et des formats d'OpenOffice: sxw, sxc, ...

Qu'est-ce qu'un virus Un virus, c'est un programme malfaisant, c'est un peu comme un vrai virus biologique. Certains virus informatiques causent des dégâts à votre ordinateur ou vos données, d'autres cherchent uniquement à se reproduire. Certains programmes sont très sensibles aux virus, par exemple Internet Explorer et Outlook ou Outlook Express. On peut dire qu'ils ont un système immunitaire très très affaibli. Il vaut mieux utiliser Firefox et Thunderbird à la place.

Pour se protéger des virus, il faut utiliser l'équivalent informatique du vaccin : l'anti-virus. Il permet de protéger l'ordinateur des virus qu'ils connaît, comme un vaccin. Mais attention, il faut mettre à jour sa liste de virus connus, vous vous doutez bien qu'un vaccin contre la grippe ne protège pas du tétanos. Quasiment tous les anti-virus ont une option pour télécharger automatiquement les nouvelles signatures de virus régulièrement depuis internet (toutes les deux semaines environ).

Qu'est-ce qu'un spyware Un spyware c'est un peu comme un fruit pourri dans votre tarte, sauf qu'on l'a placé là intentionnellement. C'est un mini programme inséré dans un autre, dont le but est de collecter le plus d'informations sur vous, vos habitudes, vos préférences, tout ça afin de vous envoyer de la publicité ciblée. Évidemment, comme on peut voir la recette des logiciels libres, ceux-ci ne contiennent jamais de spyware. Par contre, beaucoup de logiciels propriétaires, souvent gratuits, les utilisent pour que l'auteur gagne de l'argent.

Le mot de la fin

Voilà, j'espère que le monde de l'informatique est plus clair pour vous, et que vous voyez pourquoi j'ai choisi les logiciels libres. C'est tout simple, je préfère vivre dans un monde où on partage ses connaissances pour le bien de tous plutôt que dans un monde où chacun reste dans son coin. Et ça c'est tout simple, ça n'a rien de technique.

P.S. :

Merci à Ultimate pour sa relecture.