« Le Logiciel Libre Déjeuner technologique Bruno Beaufils » : différence entre les versions

De April MediaWiki
Aller à la navigationAller à la recherche
Aucun résumé des modifications
Ligne 5 : Ligne 5 :
'''Intervenant :''' Bruno Beaufils, maître de conférence en informatique
'''Intervenant :''' Bruno Beaufils, maître de conférence en informatique


'''Lieu :''' Lille 1, Les déjeuners technologiques
'''Lieu :''' Université de Lille 1, Les Déjeuners technologiques


'''Date :''' Février 2014
'''Date :''' Février 2014
Ligne 11 : Ligne 11 :
'''Durée :''' 1 h 01 min
'''Durée :''' 1 h 01 min


'''[https://www.youtube.com/watch?v=PObBhHRQzHM Visualiser la vidéo]  
'''[https://www.youtube.com/watch?v=PObBhHRQzHM Visualiser la vidéo]
 
'''Licence :''' [http://www.gnu.org/licenses/licenses.html#VerbatimCopying Verbatim]




Ligne 124 : Ligne 126 :
Donc Stallman s'est dit « eh bien moi je ne peux plus travailler, du coup, ce que je vais faire, c'est que je vais créer le projet GNU. » Ça paraissait complètement délirant. Il est tout seul, dans son coin et il se dit moi je vais réécrire UNIX, un truc qui existe depuis 10 ans, je vais le refaire tout seul. Après il a créé une fondation pour pouvoir supporter ça, pour pouvoir vivre de ça, qu'il a appelée la FSF, <em>Free Software Foundation</em>, Fondation du logiciel libre et puis finalement, ça n'a pas bien marché tout de suite, mais il a réussi à créer des choses. Il faut comprendre que les gens dont je parle, Bill Gates comme Stallman comme, plus tard, Torvalds, sont des informaticiens qui sont un peu forts. Stallman il a écrit Emacs, il a écrit GCC [GNU Compiler Collection, NdT], il a écrit sed [Stream EDitor, NdT], il a écrit deux ou trois trucs qui servent aujourd'hui encore. En gros, il a écrit tous les outils qui lui servaient. La seule chose qu'il n'a pas réussi à écrire, c'est le noyau du système. Vous savez tous ce que c'est qu'un noyau de système, c'est le truc qui gère vraiment les ressources sur la machine. Il avait commencé à le faire, le truc n'est toujours pas terminé. Il s’appelle Hurd. Pourquoi ? Pour plein de raisons. D'abord parce qu'il n'y avait pas eu beaucoup d'énergie autour de ça, et puis parce que c'était une idée un peu originale à l'époque, autour du micronoyau qui a mis du temps à vraiment accrocher.
Donc Stallman s'est dit « eh bien moi je ne peux plus travailler, du coup, ce que je vais faire, c'est que je vais créer le projet GNU. » Ça paraissait complètement délirant. Il est tout seul, dans son coin et il se dit moi je vais réécrire UNIX, un truc qui existe depuis 10 ans, je vais le refaire tout seul. Après il a créé une fondation pour pouvoir supporter ça, pour pouvoir vivre de ça, qu'il a appelée la FSF, <em>Free Software Foundation</em>, Fondation du logiciel libre et puis finalement, ça n'a pas bien marché tout de suite, mais il a réussi à créer des choses. Il faut comprendre que les gens dont je parle, Bill Gates comme Stallman comme, plus tard, Torvalds, sont des informaticiens qui sont un peu forts. Stallman il a écrit Emacs, il a écrit GCC [GNU Compiler Collection, NdT], il a écrit sed [Stream EDitor, NdT], il a écrit deux ou trois trucs qui servent aujourd'hui encore. En gros, il a écrit tous les outils qui lui servaient. La seule chose qu'il n'a pas réussi à écrire, c'est le noyau du système. Vous savez tous ce que c'est qu'un noyau de système, c'est le truc qui gère vraiment les ressources sur la machine. Il avait commencé à le faire, le truc n'est toujours pas terminé. Il s’appelle Hurd. Pourquoi ? Pour plein de raisons. D'abord parce qu'il n'y avait pas eu beaucoup d'énergie autour de ça, et puis parce que c'était une idée un peu originale à l'époque, autour du micronoyau qui a mis du temps à vraiment accrocher.


Tout ça c'est basé autour d'une idée. Il faut bien comprendre ce que c'est que Stallman et tous les gens qui gravitent autour de ça. C'est un truc assez vieux, c'est ce qu'on appelle les hackers. Hacker ça n'a vraiment pas la connotation qu'on vous en met dans la presse. Hacker, en gros, on le traduit en français par bidouilleur : c'est un mec qui bidouille, un mec qui veut savoir comment marche quelque chose. Il y a un philosophe, enfin un étudiant, ce n'est pas un philosophe, c'est un étudiant finnois, qui a développé toute une littérature autour de l'éthique du hacker, que je vous conseille de lire<ref>[L’Éthique Hacker et l'Esprit de l'ère de l'information Pekka Himanen - <em>L’Éthique Hacker et l'Esprit de l'ère de l'information</em>]</ref>, qui oppose ça à l'éthique protestante. L'éthique protestante c'est, en gros, l'éthique du travail. C'est-à-dire que le travail c'est un devoir moral et quand on fait un travail, c'est pour être payé et pour rien d'autre. Ça c'est l'éthique du protestant. L'éthique du protestant c'est je travaille parce que ça fait du bien à la société et parce que je vais être payé. Je vais échanger mon temps contre de l'argent.
Tout ça c'est basé autour d'une idée. Il faut bien comprendre ce que c'est que Stallman et tous les gens qui gravitent autour de ça. C'est un truc assez vieux, c'est ce qu'on appelle les hackers. Hacker ça n'a vraiment pas la connotation qu'on vous en met dans la presse. Hacker, en gros, on le traduit en français par bidouilleur : c'est un mec qui bidouille, un mec qui veut savoir comment marche quelque chose. Il y a un philosophe, enfin un étudiant, ce n'est pas un philosophe, c'est un étudiant finnois, qui a développé toute une littérature autour de l'éthique du hacker, que je vous conseille de lire<ref>[https://wikimonde.com/article/Pekka_Himane Pekka Himanen - <em>L’Éthique Hacker et l'Esprit de l'ère de l'information</em>]</ref>, qui oppose ça à l'éthique protestante. L'éthique protestante c'est, en gros, l'éthique du travail. C'est-à-dire que le travail c'est un devoir moral et quand on fait un travail, c'est pour être payé et pour rien d'autre. Ça c'est l'éthique du protestant. L'éthique du protestant c'est je travaille parce que ça fait du bien à la société et parce que je vais être payé. Je vais échanger mon temps contre de l'argent.


L'éthique du hacker est définie autrement. Un hacker c'est quelqu'un qui fait quelque chose parce que ça lui plaît. Dans le travail qu'il fait il y a un intérêt intrinsèque, il y a un truc qui lui plaît vraiment dans ce qu'il fait. Donc en gros, vous comprenez bien que l'énergie et la manière dont on va travailler est différente quand on suit l'éthique hacker et quand on suit l'éthique protestante.
L'éthique du hacker est définie autrement. Un hacker c'est quelqu'un qui fait quelque chose parce que ça lui plaît. Dans le travail qu'il fait il y a un intérêt intrinsèque, il y a un truc qui lui plaît vraiment dans ce qu'il fait. Donc en gros, vous comprenez bien que l'énergie et la manière dont on va travailler est différente quand on suit l'éthique hacker et quand on suit l'éthique protestante.
Ligne 177 : Ligne 179 :
Je vais juste aller super vite  ; ça ce n'est pas très intéressant. Il y a quelques licences que vous devez connaître, donc la GPL. Il y en a une un peu plus cool, qui s'appelle la LGPL, <em>Lesser General Public License</em>, qui dit, en gros, que vous avez le droit d'écrire du code, enfin qui vous donne, alors on vous déconseille d'utiliser, mais c'est quand vous écrivez un logiciel ou une librairie ou des bibliothèques qui vont être accolées à un logiciel qui lui n'est pas libre, qui vont, par exemple, être utilisées avec un logiciel qui n'est pas libre ; typiquement c'est le cas des librairies. En gros on enlève la liberté, on vous prive d'une liberté, on vous autorise à priver les gens d'une liberté qui est celle de redistribuer le code, de l’utiliser avec n'importe qui.
Je vais juste aller super vite  ; ça ce n'est pas très intéressant. Il y a quelques licences que vous devez connaître, donc la GPL. Il y en a une un peu plus cool, qui s'appelle la LGPL, <em>Lesser General Public License</em>, qui dit, en gros, que vous avez le droit d'écrire du code, enfin qui vous donne, alors on vous déconseille d'utiliser, mais c'est quand vous écrivez un logiciel ou une librairie ou des bibliothèques qui vont être accolées à un logiciel qui lui n'est pas libre, qui vont, par exemple, être utilisées avec un logiciel qui n'est pas libre ; typiquement c'est le cas des librairies. En gros on enlève la liberté, on vous prive d'une liberté, on vous autorise à priver les gens d'une liberté qui est celle de redistribuer le code, de l’utiliser avec n'importe qui.


Ensuite il y en a deux autres qui sont un peu importantes parce que vous allez les retrouver souvent. Il y en a plein, vraiment beaucoup, mais au moins la MIT Public License, c'est celle qui est utilisée pour les serveurs X donc pour X 11, qui est le truc qui gère pour l'instant vos aspects graphiques vous êtes sur un Unix standard et puis BSD puisqu'il rentrait dans le coin, il faut connaître BSD.
Ensuite il y en a deux autres qui sont un peu importantes parce que vous allez les retrouver souvent. Il y en a plein, vraiment beaucoup, mais au moins la <em>MIT Public License</em>, c'est celle qui est utilisée pour les serveurs X donc pour X 11, qui est le truc qui gère pour l'instant vos aspects graphiques vous êtes sur un Unix standard et puis BSD puisqu'il rentrait dans le coin, il faut connaître BSD.


Alors quelques logiciels mais c'est vraiment pour aller très vite. Vous êtes plutôt des développeurs, donc vous avez tous, déjà au moins une fois dans votre vie, utilisé des logiciels libres, ne serait-ce que parce que vous développez, donc vous avez déjà utilisé GCC ou n’importe quel outil autour de GCC, ça peut être GCJ, ça peut être Lycos, ça peut être n'importe quoi. Vous avez au moins utilisé un éditeur sérieux genre Emacs ou VI une fois dans votre vie. Au pire, vous avez utilisé un éditeur pas sérieux, genre Eclipse, c'est aussi un logiciel qui est plus ou moins libre, plutôt moins que plus d’ailleurs. On en trouve dans toutes les catégories d'utilisation.
Alors quelques logiciels mais c'est vraiment pour aller très vite. Vous êtes plutôt des développeurs, donc vous avez tous, déjà au moins une fois dans votre vie, utilisé des logiciels libres, ne serait-ce que parce que vous développez, donc vous avez déjà utilisé GCC ou n’importe quel outil autour de GCC, ça peut être GCJ, ça peut être Lycos, ça peut être n'importe quoi. Vous avez au moins utilisé un éditeur sérieux genre Emacs ou VI une fois dans votre vie. Au pire, vous avez utilisé un éditeur pas sérieux, genre Eclipse, c'est aussi un logiciel qui est plus ou moins libre, plutôt moins que plus d’ailleurs. On en trouve dans toutes les catégories d'utilisation.

Version du 3 janvier 2017 à 06:07


Titre : Le Logiciel Libre

Intervenant : Bruno Beaufils, maître de conférence en informatique

Lieu : Université de Lille 1, Les Déjeuners technologiques

Date : Février 2014

Durée : 1 h 01 min

Visualiser la vidéo

Licence : Verbatim


00' transcrit MO

Bruno Beaufils : Bonjour.

Ami de l'orateur : Je te rassure, je ne fais que passer. Je savais que tu étais là.

Bruno Beaufils : Bon. Eh bien bonjour. Désolé de ce retard indépendant de ma volonté. Je vais vous faire une petite présentation autour du logiciel libre. Une des difficultés c’est que je ne connaissais pas tellement le public, donc j'ai considéré que c’était essentiellement des étudiants. Donc désolé pour les gens du fond, je pense que vous n'apprendrez pas grand-chose. Mon espoir c'est que les étudiants non plus n’apprennent rien, en gros, que vous ayez eu des enseignements suffisamment corrects pour savoir ce que c'est que le logiciel libre et que, à priori, aujourd'hui, vous vous embêtiez un peu pendant la présentation.

Rapidement pour ceux qui ne me connaissent pas, je suis Bruno Beaufils, je suis maître de conférences ici à Lille 1. Je suis en poste à l'IUT, département informatique dans lequel j’enseigne les systèmes d'exploitation, en gros, en majorité. Vous avez mes coordonnées[1]. Et puis il y a un autre truc, c’est que, en dehors de mon boulot, j'ai une vie. J'utilise l'informatique depuis presque aussi longtemps que les gens du fond, mais les logiciel libres depuis 1991 à peu près, en gros depuis que je suis arrivé à Lille 1 et je participe, un petit peu, à la communauté, notamment en étant membre de l'April[2] dont je parlerai un petit peu tout à l'heure si j'ai un peu de temps. Donc vous avez mes coordonnées.

La première chose, c'est que la présentation que je vais faire, comme toutes les présentations que je fais sans ma casquette maître de conf, là je ne suis pas en cours donc j'ai le droit de dire ce que je veux — en cours aussi, mais en cours j’essaie d'être un peu poli — elle va être un peu biaisée. C'est-à-dire que j'ai un à priori sur ce que je vais raconter : je suis plutôt favorable au logiciel libre et plutôt défavorable au logiciel privateur. Donc ça va transparaître un peu dans ce je vais raconter. Il faut que vous ayez un peu de sens critique et puis que vous voyez ce que je dis avec un peu de recul, s'il le faut.

Le biais vient du fait que je suis enseignant-chercheur. Normalement, si je suis enseignant-chercheur, dans le public en tout cas, mon objet c'est de diffuser du savoir et donc c'est de faire en sorte que l'information circule librement. Vous allez voir que quand je vais présenter le logiciel libre, forcément, de par ma nature, de part mon travail, de part mon implication dans l'université, je vais être proche des idées du logiciel libre. Ensuite j'utilise et je contribue au logiciel libre depuis longtemps, très longtemps, et puis je suis favorable à l'extension des principes du logiciel libre en dehors du cadre du logiciel. On parlera un tout petit peu à la fin, je vous présenterai un livre, pour ceux que ça intéresse et puis une émission ou deux qui sont passées récemment à la radio. Je vais vous présenter un truc pour lequel je ne vais pas être pas complètement objectif. Ce qui change, puisque d'habitude, dans le cours je suis complètement objectif : pour les gens qui m'ont eu pas une seule fois j'ai été non objectif en cours.

Après incomplète, parce que je l'ai faite super vite, pour plusieurs raisons. La première c'est que c'est un sujet qui me tient à cœur et du coup j'ai envie de dire plein de trucs. Et quand on veut dire plein de trucs, c'est super compliqué de structurer, c'est super compliqué de faire un choix. Donc je l'ai fait volontairement assez technique du point vue de la conception du logiciel, donc de la naissance, et pas tellement des logiciels eux-mêmes. Ensuite, c'est incomplet parce que vous allez voir que des licences qui se disent libres, licences d'utilisation qui se disent libres, il y en a une flopée, enfin c'est un des points noirs du monde libre, c'est qu'il y a beaucoup, beaucoup de licences, avec des petites subtilités à chaque fois et avec des petites distinctions dont une grosse qu'on verra tout à l'heure entre logiciel libre d'un côté et logiciel ouvert de l'autre.

Donc mon objectif c'est d'essayer de vous faire comprendre ce que c'est que le logiciel libre, de vous convaincre de son intérêt et si jamais j'ai réussi à faire ça je suis content. Après, ce que j'aimerais bien, c'est que vous réussissiez à avoir envie de participer à cet effort, enfin à ce mouvement. Je pense que si vous êtes là c'est que vous êtes un petit peu intéressés, donc vous l’êtes déjà plus ou moins. Et puis après c'est juste introductif parce qu'à la fin je vous donnerai quelques liens pour aller plus loin.

D'abord, vous êtes, j'espère, tous plus ou moins informaticiens, vous savez ce que c'est qu'un logiciel, donc ce que je vais vous dire là vous le savez déjà. Un logiciel c'est juste une suite d'instructions qui, normalement, va être exécutée sur un processeur, sur un microprocesseur particulier. Vous savez qu'un programme et l'informatique au sens général ça ne sert qu'à deux choses : un, faire des calculs, deux, stocker le résultat de ces calculs. Là je prends l’aspect très technique ; ça ne fait rien de plus que ça. Le calcul ça peut être ce qu'on veut, c'est le traitement de n'importe quel type d'information. L'information étant un nombre, enfin un truc qu'on représente par des nombres, comme on veut, mais en gros ça ne sert qu'à ça. Le troisième truc que j'ai mis c'est, évidemment, réutiliser ces résultats. Si on fait un calcul qu'on a un résultat dont on ne se sert pas, ce n'est pas très intéressant. Voilà à quoi sert un logiciel.

Vous savez, en gros, comment on le construit. On le construit, d'abord en écrivant ce qu'on appelle un programme source, on va dire, pour simplifier un peu les choses. Ce programme source il est généralement écrit dans un langage de programmation, qui n'est pas directement exécutable par le processeur. C'est assez rare d'écrire directement dans le jeu d'instructions du processeur sur lequel on va travailler. C'est possible, c'est possible dans plein de cas, notamment dans l'embarqué, dans plein de cas on n'a pas forcément de compilateur. Mais la plupart du temps on écrit un truc qu'on appelle le code source. Et il y a quelqu’un qui l'écrit ; donc il y a un humain qui l'écrit. Pour définir un logiciel il faut définir qui est l'auteur du logiciel et puis, ensuite, comment a été écrit ce logiciel, donc avec quel langage de programmation, quel code source on a utilisé. Et enfin, à partir du langage de programmation et du code source, généralement ce qu'on fait, c'est qu'on fait une version exécutable, d'un manière ou d'une autre, soit en la compilant, soit en l'interprétant à travers une machine virtuelle, comme par exemple ce que fait Java, ou ce qu'on pourrait faire avec n'importe quel autre interpréteur comme Python, PERL ou Lisp. En gros voila ce que c'est qu'un logiciel.

Ce qui nous intéresse là-dedans, dans la conception du logiciel libre, c'est le code, qu'il soit source ou exécutable on s'en fout parce qu'à priori, quand on a le code exécutable on peut toujours essayer de revenir en arrière en faisant ce qu'on appelle du retro-engineering, c'est-à-dire en allant regarder les instructions qui vont être exécutées sur le processeur. C'est un peu compliqué, il faut mieux avoir accès au code source. C'est ça, c'est le code, d'un côté, et puis l'auteur. L'auteur est donc la personne qui a écrit le code et qui en a la propriété puisqu'on verra qu'à priori, quand on écrit un truc, quand on a une idée, pour l'instant elle est protégée. Je peux raconter qu'un logiciel ça ne vit pas tout seul. Un logiciel c'est fait pour être en interaction avec des humains, donc ce qu'on va appeler des utilisateurs et puis ça essaye, de temps en temps, de communiquer avec d'autres ordinateurs, c'est-à-dire avec d'autres logiciels, avec d'autres programmes, par exemple pour l'échange de données qu'on a vu dans le premier point.

Ce qui m'intéresse, c'est l'auteur et le code source. Ça c'était du point de vue de la technique en gros, ça c’était du point de vue de l'informatique. Vous savez ce que c'est qu'un logiciel.

Du point de vue du droit, c'est quoi un logiciel ? C'est une idée. C'est une idée qui a été écrite. On pourrait comparer un logiciel à, par exemple, je grossis le trait à chaque fois, un livre, une chanson, une musique, n'importe quoi. Il y a quelqu'un qui écrit l’œuvre, qui a eu l'idée, qui la met en œuvre. C'est un peu plus compliqué dans le monde de la musique ou des lettres parce qu'il n'y pas qu’un seul auteur, il y un auteur, un interprète, enfin il y a plein de personnes qui concourent à la réalisation de l’œuvre. Dans l'informatique, on peut considérer qu'il y a un auteur ; quand je dis auteur, ça peut être un ensemble de gens, en gros ça peut être une entreprise, une organisation. C'est pour ça que je l'appelle éditeur.

Un éditeur, quand il a une idée, quand il a développé un logiciel, il est simplement propriétaire de son œuvre, donc il est propriétaire de son logiciel. Propriétaire, ça veut dire qu'il en fait ce qu'il veut : il peut vous le donner, il peut vous le vendre, il peut vous concéder les droits qu'il a dessus, ce qu'il veut. Il est protégé dans tous les pays du monde, en tout cas dans quasiment tous les pays qui sont à l'ONU ou à l'OMC par un truc qu'on appelle le droit d'auteur. Le droit d'auteur c'est, en anglais copyright, c'est un ensemble de droits qui sont appliqués dans les différents pays qui sont reconnus par des organisations et des pactes entre pays pour protéger le propriétaire d'une idée ou d'une œuvre.

Et du coup l'éditeur, le propriétaire fait ce qu'il veut avec son idée, avec son œuvre. Vraiment, il fait ce qu'il veut et la plupart du temps on considère que le copyright c'est un truc qui est fait pour protéger et faire gagner de l'argent à l'auteur, mais pas forcément. Tout ce que ça implique, le copyright, c'est qu'il y a un droit de propriété sur une œuvre. C'est tout. Le propriétaire en fait ce qu'il veut.

À l'autre bout de la chaîne, quand vous avez écrit un logiciel, ce qui vous intéresse, c'est qu'il soit utile à des gens. Ça peut n’être qu'à vous : vous avez peut-être écrit un logiciel qui ne vous sert qu'à vous. Très bien ! Vous êtes content. Vous ne vous en servez pas plus que dans votre utilisation personnelle, il n'y a pas de problème. Mais la plupart du temps, ce n'est pas ça. Si on regarde la planète, on est aujourd'hui six ou sept milliards, les gens qui sont informaticiens sur la planète, il n'y en a pas beaucoup. C'est une race super rare. Il y moins de 1 % de gens sur la planète qui sont informaticiens. Donc la plupart des gens utilisent des outils informatiques, donc des calculs électroniques, sans vraiment avoir les compétences pour écrire les outils dont ils ont besoin. Aujourd'hui vous avez quasiment tous un téléphone portable ; il y a plus de téléphones portables en France que de téléphones fixes, quasiment, pourtant je suis assez convaincu que si on fait un micro-trottoir dans la rue, personne ne sait comment fonctionne un téléphone portable pour de vrai ; on ne sait pas comment ça fonctionne. Du point de vue du matériel on ne sait pas comment ça fonctionne, du point de vue logiciel ; on n'a pas les compétences. Pourtant on en a besoin. Aujourd'hui on a besoin du téléphone portable, par exemple pour téléphoner en cas d'urgence ou en cas de problème. On a des besoins qui sont identifiés par des gens, qui n'ont pas forcément les compétences pour trouver la solution à ces besoins.

Du coup, si un utilisateur a besoin d'un logiciel et qu'il n'a pas les compétences pour l'écrire, il va être tributaire de quelqu'un qui va écrire le logiciel pour lui. Donc il va être tributaire d'un éditeur, d'un auteur, de quelqu'un qui va écrire un programme, donc de vous, en gros, plus tard, j'espère vous serez tous éditeurs ou auteurs de logiciels. Du coup, il y a une liaison entre le propriétaire du logiciel et puis l'utilisateur. Cette liaison se fait par un contrat. Ce contrat c'est ce qu'on appelle une licence.

10' 07

Dans une licence on met ce qu'on veut. Le propriétaire du logiciel fait ce qu'il veut avec sa licence. C'est son œuvre, alors il met ce qu'il veut dedans. En gros les deux sont liés, l'éditeur et l'utilisateur sont liés. Généralement il y a un éditeur et plusieurs utilisateurs, mais on pourrait très bien imaginer que, comme dans des échanges de troc comme on pouvait le constater avant les apparitions de monnaie, que deux interlocuteurs. La plupart du temps ce n'est pas ça, c'est un vers quelques. Donc il y a un contrat entre les deux et ce contrat on appelle ça une licence.

Les licences logicielles, on les appelle souvent abusivement les licences d'utilisation logiciel, c'est-à-dire les licences logicielles la plupart du temps, il y en a de deux catégories,[il y a des fautes d'orthographe], il y a les licences qu'on appelle libres et celles qu'on appelle non libres et je mettrai des noms derrière non libres tout de suite après.

Une licence libre, c'est une licence pour laquelle un propriétaire de logiciel a décidé de faire respecter quatre libertés, quatre droits particuliers ; c'est-à-dire qu'il est propriétaire d'une œuvre et il donne quatre droits à n'importe qui, qui veut utiliser son œuvre. Les quatre droits sont notés liberté 0, 1, 2 et 3.

En gros la première c'est de pouvoir utiliser sans aucune restriction le logiciel. Je reviendrai sur quelques exemples tout à l'heure.

La seconde c'est de pouvoir l'étudier et le modifier. Vous avez un logiciel, vous avez le droit de regarder ce qu'il y a dedans, vous avez le droit de le modifier s'il ne vous plaît pas, si jamais vous en avez les compétences ou le faire modifier par quelqu'un si vous n'avez pas les compétences directes.

La troisième c'est de le redistribuer. C'est-à-dire que vous avez récupéré le logiciel, vous avez le droit de le redistribuer à qui vous voulez.

Et la quatrième, enfin la liberté 3, c'est de le redistribuer avec les modifications que vous avez apportées.

La première est super importante et souvent on ne la comprend pas très bien. Une licence libre vous confère le droit de faire ce que vous voulez avec votre logiciel, y compris préparer des attentats. Il n'y a aucune restriction possible sur l'utilisation d'un logiciel libre. Dès qu'on en met une, on n'est plus libre. Je pousse volontairement le bouchon un peu loin quand je dis un attentat parce que vous comprenez tout de suite qu'il y a une idée de méchant, etc. der trière, mais à priori on ne doit pas préjuger l'utilisation d'un logiciel. Si on préjuge l'utilisation d'un logiciel, comme on va le faire, par exemple, pour les logiciels privateurs, à priori ça veut dire qu'on n'est pas libre, c'est-à-dire qu'on ne donne pas toute la liberté à l'utilisateur final, à la personne qui va se servir du logiciel qu'on a écrit. D'accord ? On est bien propriétaire de cette version du logiciel.

La seconde, c'est dire qu'on doit donner le code source. C'est-à-dire qu'en gros, on ne doit pas écrire un logiciel et le distribuer à quelqu'un en disant : « Tu en fais ce que tu veux, mais je ne te dis pas comment ça marche ». D'accord ? C'est-à-dire qu'on ne fait pas du Apple. Clairement, quand on donne un truc, on doit savoir comment ça fonctionne derrière. On doit être capable de le faire. Je ne dis pas que vous allez le faire, mais vous avez la possibilité de le faire, on vous donne la possibilité de le faire. C'est-à-dire que pour vous, ça veut dire que quand vous avez développé un logiciel, vous ne distribuez pas simplement un binaire, vous distribuez un binaire et un source. et surtout, si jamais vous n'avez pas le source, vous dites : « Vous avez le droit d'aller regarder comment le binaire a été construit. Je ne vous interdis pas de faire quoi que ce soit sur le binaire, à regarder en arrière, de faire du retro-engineering sur le binaire par exemple ».

Le redistribuer et le redistribuer avec les versions modifiées. Ça veut dire qu'en gros vous avez le droit d'aider votre prochain. Quelqu'un qui tait à côté de vous, qui ne connaissait pas forcément l'éditeur, qui vous connaît, vous, sait que vous faites un truc, il sait que le vous le faites avec un logiciel particulier, vous avez le droit de lui donner. Vous avez le droit de lui donner, après l'avoir récupéré tel quel, vous avez le droit de lui donner après avoir fait des modifications ou avoir fait faire des modifications.

Ces quatre lois sont super importantes. Une licence qui va être libre est une licence qui respecte ça strictement. Dans le monde on a des licences libres et on a celles qui ne sont pas libres. Celles qui ne sont pas libres, souvent, à tort, on les appelle licences propriétaires. Il n'y a pas de raison de les appeler licences propriétaires. Vous êtes propriétaire du code que vous écrivez, même si vous avez défini ou distribué votre logiciel sous une licence libre. Vous êtes toujours propriétaire. Pour moi le contraire de libre, c'est être en prison. Être en prison c'est être privé de quelque chose. Donc en gros, le contraire des licences libres ce sont les licences que moi j'appelle privatrices, je ne suis pas le seul, et puis je ne suis pas le premier ; je ne pense pas que je suis celui qui le dise le plus fort. On en parlera un petit peu tout à l'heure.

Une licence non libre ou privatrice, c'est, en gros, une licence qui restreint une des quatre. C'est-à-dire que si on a une des quatre libertés qui est restreinte, on est dans une licence qui est privatrice. Elle vous prive d'une des libertés qui sont là. Ça se voit très nettement, on le verra tout à l'heure si on a un peu de temps de parler des logiciels qui ont été libérés, il y a plein de codes de logiciels qui ont été libérés. Libérés ça veut dire qu'avant on était en prison. On a libéré, par exemple, le code de Mozilla, on a libéré le code de Star Office. On en reparlera un petit peu tout à l'heure.

À l'opposé des logiciels sous licence libre, on a souvent des logiciels sous licence qu'on dit non libre, donc privatrice, qui sont généralement des trucs que vous ne lisez pas. Enfin la plupart du temps, quand on démarre un logiciel, on ne fait pas attention à ça. Quand vous démarrez votre iPhone, c'est-à-dire un super iPhone, vous cliquez plein de fois sur « J'accepte », vous n'avez pas lu le truc écrit en tout petit très, très long, c'est ce qu'on appelle le Contrat de Licence Utilisateur Final. C'est un contrat comme une licence libre. Dans ce contrat on fixe explicitement des cadres à l'utilisation de ce que vous avez acheté, ou de ce qu'on vous a donné. Il n'y a aucune notion d'argent entre libre, non libre. On peut avoir un truc libre, on en parlera tout à l'heure, qui est payant, un truc non libre qui est gratuit. Un truc non libre, la CLUF que vous connaissez la plus, souvent sans vraiment l'avoir lue en entier, c'est la CLUF de Microsoft, qui, en gros, fixe l’utilisation prévue du logiciel auquel vous avez accès, je reviendrai par exemple sur un cas particulier de CLUF qui est un peu perverse. On vous interdit généralement de faire de la rétro-ingénierie, c'est-à-dire qu'on ne vous donne pas le source, on ne vous donne pas le code source de votre logiciel, mais on vous interdit d’aller le construire, de le regarder. On peut vous l'interdire, ça ne veut pas pour autant dire que vous n'allez pas pouvoir le faire. On ne vous empêche pas techniquement de le faire. On vous empêche légalement de le faire. Après, techniquement, on peut essayer vous empêcher, mais vous savez bien qu'il n'y a aucune mesure de contrainte technique qui tient très longtemps. Plus ça va plus on va réussir à les casser.

Et enfin, on vous interdit de la copier. Ça, c'est généralement ce qu'on voit dans les CLUFS, donc dans les contrats de licence d'utilisateur final.

J'insiste sur le fait que je n'ai pas parlé d'argent. Je prends un exemple précis. Vous êtes tous ici étudiants, vous avez tous, plus ou moins, eu un jour ou l'autre, à faire à Microsoft parce que vous étiez intéressé par un programme. Je dis Microsoft, je pourrais dire Apple ou IBM, par un programme qui s'appelle par exemple le programme Academic Alliance ou le programme University chez IBM, etc., dans lequel on vous donne accès gratuitement à tout un tas de logiciels. Par exemple, le programme MSDNAA, donc de Microsoft, est un programme dans lequel on donne accès à tous les étudiants, gratuitement, à tous les outils de développement de Microsoft. Vous avez le droit de tout récupérer gratuitement chez Microsoft et complètement, enfin version complète. Pourtant il y a une CLUF. Ce n'est parce qu'on vous donne accès gratuitement à un truc que c'est un logiciel libre. On vous donne accès à quelque chose en vous privant d'un certain nombre de libertés. Par exemple, si vous lisez bien les termes des licences de ce genre de programme, on vous interdit d'utiliser ces logiciels en dehors du cadre universitaire. On vous interdit de faire de l'argent avec, par exemple. On vous interdit plein de choses. Donc en gros, tous ces CLUFS sont souvent des choses qui sont privateurs au sens, non pas privateurs d'argent, mais privateurs de vraies libertés d’utilisation. C'est vraiment sur l'utilisation que la plupart du temps on a une privation. C'est pour ça que la liberté 0 a été rajoutée. En fait, quand les libertés ont été crées pour le logiciel libre, on a commencé par les trois, et puis il en manquait une, et comme elle paraissait plus importante que les autres, on l'a mise en premier. Ce n'est pas parce qu'en informatique on commence par compter par 0 et ça tombait bien, mais ce n’était pas vraiment pour ça. La liberté d'utilisation a été vraiment celle qui a été rajoutée en dernier, quand Stallman a créé tout ça, on en reparlera tout à l'heure.

Du coup, il y a une petite technique qui a été utilisée ou qui est souvent mise en avant par les gens qui défendent le logiciel libre pour dire on respecte la loi, c'est simplement qu'on va bien faire comprendre que à priori le droit d'auteur nous intéresse mais on ne veut pas s'en servir comme il a été prévu pour, mais en le détournant. Donc on fait ce qu'on appelle du copyleft et vous avez ici une phrase qu'on trouve dans la définition du copyleft selon la FSF. En gros pour mettre un logiciel sous copyleft, c'est super simple, on le met d’abord sous copyright, et puis, après, on rajoute ce qu'on veut derrière. C'est-à-dire qu'en gros on dit : « Ce logiciel m'appartient, il est à moi, c'est moi qui l'ai édité, c'est moi qui en suis l'auteur et j'en fais ce que je veux, et du coup, je rajoute, comme contrainte sur la licence que j'y applique, les quatre libertés enfin le respect des quatre libertés que je viens de citer. » Ça, c'est un truc qu'on utilise très souvent.

Ce qu'il faut bien comprendre là-dedans c'est qu'il y a un aspect viral. Dans les quatre libertés et dans le copyleft, c'est qu'on oblige un logiciel sous copyleft à rester sous copyleft tout au long de sa vie. C'est-à-dire que vous ne pouvez pas dire « j'ai un logiciel libre que j'ai récupéré, j'en fais ce que je veux, je le ferme, je ne distribue plus le code, je fais de l'argent avec, je le distribue sans vous donner le code. » Vous ne pouvez pas faire ça. Il y a un vrai aspect viral, on en reparlera un petit peu tout à l'heure si on un petit peu de temps, c'est un des reproches qu'on a fait aux licences libres, c'est qu'elles sont virales. Quand vous mettez une licence copyleft, quand vous mettez un logiciel sous copyleft, il ne peut plus quitter le copyleft, plus jamais, légalement. C'est-à-dire que si quelqu’un lui faisait quitter le copyleft, vous pourriez l'attaquer au tribunal et vous gagneriez. C'est ce qui s'est passé plusieurs fois déjà, à chaque fois que quelqu'un a essayé de s’attribuer du code qui était sous copyleft et qu'on a pu le prouver devant un tribunal, la personne qui a, ou l'entreprise, l'organisation, ça se fait souvent dans le monde embarqué, qui a mis le logiciel sous copyright sans mettre le copyleft, a perdu et a dû payer des sommes importantes et surtout a dû ouvrir le code, c'est ça qui est important. Les sommes ne sont pas très au centre du débat là-dedans.

Donc il a un aspect viral qui est super important dans la copyleft. Ça c'est une technique qui est mise en place, vous comprenez bien que cette technique c'est un peu du hacker, en gros on bidouille le truc. On a une loi qui ne nous intéresse pas tellement, qui a une interprétation commune qui ne nous intéresse pas tellement, eh bien on essaye de la détourner. On va revenir tout de suite après.

19'41

Il y a quelques exemples de licences libres. J’imagine que vous avez tous accès à un terminal Linux puisque vous êtes tous des étudiants sérieux, pour ça, on va en lire une de licence. Il y en a une qui est très connue, qui est la plus répandue, c'est ce qu'on appelle la GPL[3], vous l'avez un peu partout, qui est la GNU General Public License, le G n'a rien à voir avec GNU, on verra tout à l'heure ce que c'est GNU quand je ferai un petit peu d'historique, mais la General Public License, c'est une licence publique générale qui, en gros, assure les quatre libertés dont je vous parlais tout à l'heure. Il y a un préambule sur comment ça fonctionne et puis, ensuite, on donne les termes et les conditions de la licence. Elle existe en anglais et uniquement en anglais. Elle a été traduite en français, mais, à priori, la traduction française n'a pas de valeur légale. Il y a d'autres licences qui s'y rapprochent. La première c'est qu'elle s’applique à n'importe quoi et vous pouvez faire n'importe quoi avec, la liberté 0. La seconde c'est que vous pouvez copier et redistribuer comme vous voulez, la troisième c'est que vous pouvez la modifier et la quatrième c'est que vous pouvez distribuer des versions modifiées. Ce truc-là vous y avez accès tout le temps, partout, si vous avez une machine. Pour être précis, si vous avez un téléphone portable, en cherchant un peu vous allez la trouver. En cherchant un peu avec les systèmes d’exploitation qui tournent aujourd'hui sur téléphone portable, aussi bien l'iOS que Android, il y a du code GPL là-dedans, ne serait-ce que via les ???.

Il y a plein d'autres licences sur lesquelles on reviendra un petit peut tout à l'heure, mais avant de poursuivre, il faut vraiment abattre quelques malentendus autour du logiciel libre. Il y a un problème de fond avec tout ça, avec le logiciel libre, c'est que, historiquement ça vient de l'anglais. On le verra tout à l'heure, c'est un Américain qui a créé le mouvement du Libre et en anglais libre ça se dit free. Sauf que gratuit en anglais ça se dit free aussi. Du coup il y a un problème, c'est que beaucoup de gens ont interprété la création de la licence, de la GPL et puis de tout ce qui est venu après, comme étant le développement du logiciel libre, du free software, comme du logiciel gratuit. Du coup on a fait une distinction assez claire dans les discours, en tout cas certains la font de manière assez claire entre deux choses, entre free as free speech, libre comme dans la liberté d'expression et puis free as a free beer, comme, vous avez compris ce que ça veut dire, aller boire un coup gratos. Donc il y a deux choses complètement différentes. Le free dont on parle, c'est le free comme free speech pas comme free beer. Du coup ça veut dire que libre égal gratuit, ce qu'on a dans la tête, ce que les gens ont dans la tête, ce qu'on a essayé de vous mettre dans la tête, c'est faux ! On peut très bien avoir un logiciel libre qui soit payant. Ça vous parait toujours un peu bizarre, mais il y a plein d'explications possibles. Ça peut être payant, tout simplement parce que la production du logiciel ou la construction du binaire pour un système d'exploitation particulier, coûte de l'argent à l'auteur et que l’auteur n'a pas envie de produire le binaire, de vous le distribuer et de payer de l'argent. C'est le cas, par exemple, avec ce qui se passe aujourd'hui avec les marketplaces. Quand vous mettez un logiciel en ligne sur un marketplace, sur le marketplace, enfin sur l'App Store, je ne sais pas comment vous appelez ça en fonction de votre téléphone, sur l'App Store Apple, vous devez payer, vous devez participer, d'une manière ou d'une autre, au dépôt du logiciel. Donc l'auteur a besoin d'argent pour déposer le binaire. Il se peut très bien qu'on vous donne un logiciel en vous le faisant payer. On a toujours les quatre libertés.

Pour le coup, moi ça m'est arrivé il n'y a pas très longtemps, j'ai un gamin qui a cinq ans, qui joue pas mal avec un truc qui s'appelle Gcompris[4], qui est une suite ludique créée par un Français. Et j'ai voulu l'installer sur une machine avec un système d’exploitation non libre, privateur, qui s’appelle Mac OS X et pour le coup le logiciel est gratuit, libre et disponible sur toutes les distributions Linux. On reparlera tout à l'heure de ce que c'est qu'une distribution Linux, mais j'imagine que vous savez ce que c'est. Sous Mac OS ou sous Windows il est payant. C’est-à-dire qu'en gros vous avez une version bridée. Si vous voulez la version complète, il faut payer. C'est ridicule, on paye deux ou trois euros. Mais on paye un truc libre ; on paye un truc dont on a les sources. J'aurais très bien pu aller récupérer les sources tout seul et les recompiler et ça ne m'aurait rien coûté. D'accord ! Sauf que ça ne me plaisait pas et du coup j'ai payé un logiciel qui est complètement libre. Pour le coup la licence c'est vraiment la GPL. Donc libre égal gratuit, ça c'est un truc qu'il faut s'enlever de la tête. C'est vraiment faux !

Ensuite, libre est différent de commercial. Ça aussi il faut se l'enlever de la tête. Commercial ça veut dire quoi ? Ça veut dire, qu'en gros, vous êtes payé pour faire un truc. Quand vous faites un travail vous touchez de l'argent de quelqu'un, de la personne pour qui vous faites le travail. On peut très bien imaginer qu'on est en train de faire un travail qui va, ensuite, donc pour vous développer un logiciel, qui va ensuite être distribué sous licence libre. Il faut juste trouver quelqu’un pour le payer. Ce quelqu’un pour le payer ça pourrait être, par exemple, une administration. Il n'y a aucune raison qu'une administration ne paie pas ses fonctionnaires quand ses fonctionnaires développent du logiciel. Les gens qui sont au fond, là-bas, ils sont administrateurs système dans un bâtiment pas bien loin d'ici, ils sont payés pour le travail qu'ils font. Et pourtant ils produisent du logiciel donc libre, et qui est la plupart du temps libre, si on leur demande gentiment, je pense qu'ils le mettront sous logiciel libre.

Donc en gros libre et commercial, ça peut très bien se marier. Pour le coup il y a beaucoup d'entreprises aujourd'hui en France qui vivent du logiciel libre. Il y a même une branche professionnelle complète, des syndicats, pardon, d'entreprises complets, comme par exemple le syndicat des sociétés de services en logiciel libre dont on peut citer Linagora, on peut citer Smile, etc., qui ne sont pas des petits des SSII. Ce sont des SSII spécialisées dans le logiciel libre. Je prends l'exemple de Smile qui est sur Lille, par exemple, c'est entre sept et huit cents personnes en France. Ce n'est pas une petite SSII. C'est entre cinquante et soixante quinze millions, je ne me rappelle plus exactement, de chiffre d'affaires. Ce sont des gens qui font de l'argent avec du logiciel libre. Donc on peut très bien vivre du logiciel Libre. Libre et commercial ça peut très bien aller ensemble. Il ne faut pas imaginer que libre c'est un truc d'anarchos communistes qui sont mal rasés, qui ne pas bons et qui sont des beatniks. Ce n'est pas du tout ça. Libre, c'est simplement qu'on vous donne des libertés, et donner des libertés ça permet, par exemple, à des gens, de faire la Manif pour tous. Il ne faut pas les contraidre.

Ensuite il ne faut pas imaginer, et j'en ai un petit peu parlé tout à l'heure, que le téléchargement gratuit ça veut dire que c'est libre. Je reprends l'exemple de MSDNAA ou de Apple ou de IBM University. On vous donne accès gratuitement à des choses. Ce n'est pas pour autant que vous avez le droit d'en faire ce que voulez. La plupart du temps c'est ce que vous faites, c'est-à-dire que vous le téléchargez, vous l'installez, vous ne regardez pas le truc, vous faites « J'accepte » et puis pouf, on n'en parle plus. D'accord ? Ça c'est illégal. C'est-à-dire que quand vous avez un contrat il faut lire le contrat et l'accepter. Quand vous acceptez un contrat, vous acceptez tous les termes du contrat et dans les termes du contrat il est par exemple dit explicitement que vous n’avez pas le droit de faire autre chose que de préparer de l'enseignement. Je parle par exemple aux chercheurs qui sont dans la salle, la plupart du temps dans les programmes de Microsoft Academic Alliance, vous n'avez pas le droit d'utiliser les logiciels du programme MSDNAA, qui a changé de nom maintenant donc la licence a peut-être changé, vous n’aviez pas le droit il y a encore deux/trois ans d'utiliser les logiciels de ce programme-là pour faire de la recherche, ni pour faire de l'exploitation. Vous aviez le droit d'en faire de l'enseignement. C'est super pervers parce que vous comprenez bien que moi, sur mon portable, je ne fais pas que de l'enseignement ou que de la recherche, je fais les deux : mon portable me sert aux deux. Une fois que j'ai installé un logiciel qui est sous cette licence-là, comment je peux prouver que ce que je suis en train de faire est simplement de la recherche ou simplement de l'enseignement ?

Vous comprenez que derrière il y a le capitalisme qui récupère tout ça. C'est-à-dire que l'idée c'est de vous familiariser avec un outil, surtout quand vous êtes étudiant, et quand vous êtes parti vous êtes habitué à ce truc-là. À un moment ou un autre vous serez prescripteur en entreprise de ces logiciels qui vous « facilitent la vie », entre guillemets, parce que, en gros, on vous l'a donné et puis ils remplissent directement une fonction qui était nécessaire pour votre formation. Donc téléchargement égal libre, ça aussi c'est faux !

Et enfin accès aux sources égal libre, ça c'est faux aussi. Ça c'est un point très important, très dur, dont on va parler un tout petit peu après. Quand on a accès aux sources d'un programme, ce n'est pas pour autant qu’il est libre. Le meilleur exemple, c'est que l'armée, en France, a accès au code de Microsoft Windows. Microsoft Windows n'est pas libre ! Alors sous certaines conditions, certains bouts de code, certaines universités, certaines équipes ont accès au code de Microsoft Windows. Il n'est pas libre pour autant. Ce n'est pas parce qu'on vous montre comment fonctionne un truc qu'il est libre. Historiquement, les premiers logiciels qui étaient installés, on en reparlera tout à l'heure, sur les machines, sur les gros systèmes étaient des logiciels dont on donnait les sources. Quand je suis arrivé ici, moi, les logiciels qu'on récupérait, je parle de Prolog, étaient des logiciels dont on avait les sources pourtant c’était un logiciel était privateur, édité par une entreprise qui nous le faisait payer et qui nous interdisait de le modifier. En revanche elle nous montrait le code pour qu'on sache comment ça fonctionne. D'accord ? Ce n'est pas parce qu'on vous montre le code d'un logiciel que vous avez le droit de considérer que vous pouvez en faire ce que vous voulez.

Ça ce sont des malentendus qu'il faut vraiment oublier. Libre ça ne veut pas dire tout ça. libre ça ne veut pas simplement dire des choses qui sont malhonnêtes, en gros.

28' 10

Après, super rapidement, maintenant qu'on a défini un peu ce que c'est que le Libre, donc en gros les quatre libertés — utiliser, modifier, enfin regarder, modifier, copier et distribuer — il faut un peu comprendre d'où ça vient tout ça.

Au début des années 60/70, en fait, dans le monde de l'informatique, ou dans les technologies de l'information, il n'y avait qu'une seule catégorie d'entreprises qui marchait bien, c'étaient les constructeurs. Je vous ai donné quelques noms, vous en connaissez encore quelques-uns. IBM j'imagine que vous le connaissez encore, qui se porte encore pas trop mal ; HP pas trop mal non plus ; DEC va un peu moins bien. Mais les gros de l'informatique c'étaient les gens qui fabriquaient des ordinateurs. Ça coûtait très, très cher, c’était très, très gros. Il faut bien comprendre que ça a perduré. Aujourd'hui IBM, si vous regardez bien, si vous êtes intéressé un peu au marché de l’information et au marché de l'emploi sur lequel vous allez vous retrouver, IBM n'est pas sous la convention Syntec. IBM est sous la convention UIMM, c'est-à-dire qu'IBM est considéré comme une industrie métallurgique. C'est comme ça qu'IBM est traité aujourd'hui en France.

Les gros constructeurs étaient des gens qui avaient le pouvoir. Donc le logiciel, en gros, il n'y avait pas d'industrie, c’était gratuit. Ça coûtait tellement cher d’acheter une machine que le logiciel, de toutes façons, était fourni avec. Et la plupart du temps les développements se faisaient sur le mode un peu universitaire, c'est-à-dire que les équipes discutaient entre elles, aussi bien entre IBM et DEC. Plein de protocoles ont été définis par l'un, utilisés par l'autre, etc., il n'y avait pas tellement de concurrence sur le logiciel. La concurrence se faisait sur la rapidité du processeur, sur la quantité d'espace mémoire, etc. Donc il n'y avait pas d'industrie du logiciel, du tout.

Au début des années 80, il y deux trucs qui ont commencé à apparaître, ce sont les ordinateurs personnels, aussi bien le truc qu'on montait tout seul, genre ZX80 pour ceux qui connaissent, ou un peu plus loin l'Altair et puis, après, les grosses machines, les IBM PC. Donc l'informatique s'est miniaturisée grâce au développement technologique et puis, du coup, on a réussi à faire des ordinateurs qui ont réussi à aller un peu partout. Avant c’était compliqué, si on regarde il y a 45 ans ici à l'université, il y avait un ordinateur. Ça ne fait pas beaucoup ! À partir de 80, entre 80 et 83, le PC c'est 83, entre 83 et 88, on est passé de 20 000 ordinateurs en France à plus de 5 millions ou 6 millions, donc on a une progression très importante. N'importe qui pouvait récupérer un ordinateur.

Du coup, les gens qui faisaient de l'informatique pour jouer, pour lesquels le logiciel c’était vraiment un hobby ou c’était des gens qui faisaient un peu de recherche, ont commencé à se dire « tiens, il y a peut-être un filon, il y a peut-être de l'argent à se faire ! » Un des premiers à faire ça, c'est 76, 1976, c'est Bill Gates qui était dans un groupe, un petit club de hobbyistes, des gens qui se rencontraient pour monter des ordinateurs, pour écrire des logiciels, etc. Il y avait dans ce club, un peu comme la ??? par exemple, vous aviez un journal hebdomadaire dans lequel chacun peut donner un truc, écrire un programme ou n'importe quoi. Lui il a écrit une lettre en disant, lettre ouverte aux hobbyistes en disant « ça commence à bien faire, moi j'ai écrit un logiciel, tout le monde s'en sert, sans me demander, sans me payer mon travail. Il n'y pas de raison qu'un logiciel qui a été développé ne soit pas payé, c'est-à-dire que le développeur du logiciel ne soit pas payé. » Après, il a raison, sur le fond il a raison, il n'y pas de raison qu'un travail ne soit pas rémunéré. Chaque peine mérite son salaire. En fait, il a fait ce courrier et puis ça a commencé à se répandre. Au début des années 80 on a commencé à voir plein de gens qui ont quitté le milieu des hobbies, donc des gens qui faisaient ça pour le fun et qui sont allés créer des boîtes. Bill Gates s'est allié avec d'autres pour créer Microsoft. Il y en a d'autres, des gens qui sont partis créer Sun, des gens qui ont créé Oracle, qui ont créé Lotus, qui ont créé plein de grosses boîtes qui, aujourd’hui, sont des grosses industries. Donc l'industrie du logiciel a commencé à arriver à partir de 1980, en gros autour de 1980.

En 83, un chercheur, un ingénieur du MIT, donc MIT vous le savez c'est l'université américaine à Boston, qui s'appelle Richard Stallman dont je ne vous ai pas montré de photo, mais si on a un peu de temps après, vous imaginez à peu près qui c'est, c'est un monsieur barbu, gros, avec des cheveux longs, qui a vraiment pour le coup l'air d'un beatnik, a créé un truc qui s'appelait le projet GNU. GNU c'est un TLA [Three-Letter Acronym, NdT], donc c'est un acronyme de trois lettres qui veut dire GNU's not UNIX, c'est récursif. En gros l'idée c'est qu'il travaillait au MIT dans un laboratoire d'intelligence artificielle, il avait accès à plein de logiciels et puis, du jour au lendemain, on a commencé à lui dire : « Eh bien non, tu n'as plus d'accès aux sources, tu n'as plus accès au code que tu utilises. Si jamais tu veux le distribuer, eh bien c'est terminé, il faut que tu payes, etc. » Donc il s'est dit, ben moi UNIX — UNIX, pour ceux qui ne connaissent pas, c'est quand même le système le plus répandu, qui est créé autour des années 70, créé au début par AT&T puis qui ensuite s'est diffusé. Une branche a été créée par l'université de Berkeley, donc l’université, et une autre par tous les industriels et chaque constructeur d'ordinateur a pris un bout d'UNIX pour refaire le sien. IBM a fait AIX, HP a fait HP-UX, DEC a fait Electric, etc. — donc chacun avait sa version d'UNIX, avec son code à lui. Le code était ouvert au début, il n'y avait pas de licence du tout dessus, chacun l'a pris, en a fait ce qu'il a voulu et puis a commencé à le fermer.

Donc Stallman s'est dit « eh bien moi je ne peux plus travailler, du coup, ce que je vais faire, c'est que je vais créer le projet GNU. » Ça paraissait complètement délirant. Il est tout seul, dans son coin et il se dit moi je vais réécrire UNIX, un truc qui existe depuis 10 ans, je vais le refaire tout seul. Après il a créé une fondation pour pouvoir supporter ça, pour pouvoir vivre de ça, qu'il a appelée la FSF, Free Software Foundation, Fondation du logiciel libre et puis finalement, ça n'a pas bien marché tout de suite, mais il a réussi à créer des choses. Il faut comprendre que les gens dont je parle, Bill Gates comme Stallman comme, plus tard, Torvalds, sont des informaticiens qui sont un peu forts. Stallman il a écrit Emacs, il a écrit GCC [GNU Compiler Collection, NdT], il a écrit sed [Stream EDitor, NdT], il a écrit deux ou trois trucs qui servent aujourd'hui encore. En gros, il a écrit tous les outils qui lui servaient. La seule chose qu'il n'a pas réussi à écrire, c'est le noyau du système. Vous savez tous ce que c'est qu'un noyau de système, c'est le truc qui gère vraiment les ressources sur la machine. Il avait commencé à le faire, le truc n'est toujours pas terminé. Il s’appelle Hurd. Pourquoi ? Pour plein de raisons. D'abord parce qu'il n'y avait pas eu beaucoup d'énergie autour de ça, et puis parce que c'était une idée un peu originale à l'époque, autour du micronoyau qui a mis du temps à vraiment accrocher.

Tout ça c'est basé autour d'une idée. Il faut bien comprendre ce que c'est que Stallman et tous les gens qui gravitent autour de ça. C'est un truc assez vieux, c'est ce qu'on appelle les hackers. Hacker ça n'a vraiment pas la connotation qu'on vous en met dans la presse. Hacker, en gros, on le traduit en français par bidouilleur : c'est un mec qui bidouille, un mec qui veut savoir comment marche quelque chose. Il y a un philosophe, enfin un étudiant, ce n'est pas un philosophe, c'est un étudiant finnois, qui a développé toute une littérature autour de l'éthique du hacker, que je vous conseille de lire[5], qui oppose ça à l'éthique protestante. L'éthique protestante c'est, en gros, l'éthique du travail. C'est-à-dire que le travail c'est un devoir moral et quand on fait un travail, c'est pour être payé et pour rien d'autre. Ça c'est l'éthique du protestant. L'éthique du protestant c'est je travaille parce que ça fait du bien à la société et parce que je vais être payé. Je vais échanger mon temps contre de l'argent.

L'éthique du hacker est définie autrement. Un hacker c'est quelqu'un qui fait quelque chose parce que ça lui plaît. Dans le travail qu'il fait il y a un intérêt intrinsèque, il y a un truc qui lui plaît vraiment dans ce qu'il fait. Donc en gros, vous comprenez bien que l'énergie et la manière dont on va travailler est différente quand on suit l'éthique hacker et quand on suit l'éthique protestante.

Stallman comme d'autres, à l'époque, baignent quand même pas mal autour, pour le coup, vraiment des hippies et compagnie et donc ont une vue de la société qui est un peu différente de celle qu'on a aujourd’hui, on y reviendra peut-être un petit peu, dans laquelle il faut s'épanouir d'abord par ce qu'on fait et pas simplement par la capacité à engranger de l’argent. Donc tout ça, ce sont quand même des choses qu'il faut avoir en tête, parce que le logiciel libre n'est pas né de n'importe quoi. On est vraiment dans l'éthique du hacker, le plaisir de ce qu'on fait plutôt que le devoir moral. Ensuite, en 91, il y a un étudiant de licence, à Helsinki, qui s'appelle Linus Torvalds, qui crée et qui distribue sous licence GPL, donc la licence dont j'ai parlé tout à l'heure, le noyau d'un système d'exploitation qu'il a appelé Linux pour faire une blague, parce que tous les systèmes d'exploitation finissent par X : HP-UX, IRIX, AIX, etc. Donc il a créé le sien en inversant les choses, il l'a appelé Linux. C'était les débuts d'Internet, de l'internet, il a distribué le code sous GPL et puis il a dit : « Voila, si ça vous intéresse, jouez avec, faites-moi des remontées, corrigez le code. » Il a tout distribué, un peu sous la même idée que Tanenbaum, qui faisait ça, donc Andrew Tanenbaum qui était un enseignant, un peu comme moi mais en moins bon ! Et qui donnait des cours de système d'exploitation, dans lesquels le cours, pendant un semestre, c'était d'écrire un système d'exploitation qui s'appelait Minix. Torvalds a fait pareil, mais pour lui, pour jouer, et pour le coup il l'a fait sur une machine particulière qui était un PC, sur lequel il y avait un processeur assez récent, enfin, un 286 à l'époque. Il l'a distribué en 91 sous GPL et puis alors là, c'est parti ! Puisqu'en gros, ce qui manquait pour que le système UNIX puisse être remplacé complètement par des logiciels libres, c’était le cœur du système. Stallman avait réussi à faire quasiment tout ce qui était autour, de l'éditeur au compilateur en passant pas tous les outils qui permettent de faire de la gestion de documentation, du traitement de texte, etc., donc tout avait été écrit sauf le noyau. Le noyau, il fallait encore utiliser un HP-UX, un Solaris ou alors un AIX, etc. Là, en 91, il y a Linux qui apparaît, une première version. Du coup, il y a des gens qui ont commencé à dire « eh bien voila ! On a un noyau de système d'exploitation, on a des outils, on est capables de faire un truc complet. On va prendre tout ça et puis distribuer ça au grand public sous la forme d'un joli truc tout prêt à utiliser, sans avoir le code source, mais en donnant le code source à ceux qui le veulent. » C'est ce qu'on a appelé les distributions Linux, ou plus exactement les distributions GNU/Linux. Le noyau Linux avec les outils GNU autour.

Ça, ça arrive en 93, la première ça va être Slackware ou SLS [Softlanding Linux System, NdT], puis après on a Debian qui est arrivé Redhat, etc., qui sont arrivées ; quelques Français s'y sont mis un peu plus tard, qui n'ont pas eu beaucoup de succès, comme Mandriva par exemple, mais en gros on a commencé à faire en sorte qu'installer un système d'exploitation complet, avec le noyau et des outils, soit « facile » entre guillemets. Aujourd'hui c'est trivial. Aujourd'hui vous démarrez avec un clé USB, ça marche, mais c'est le même principe. Donc en gros, une distribution Linux c'est un ensemble de logiciels qu'on a choisis pour vous, qu'on a pré-compilés pour vous, juste pour votre matériel, donc vous vous avez juste à le copier sur votre matériel. C'est possible pourquoi ? Parce que le code est ouvert, parce qu'on a le droit de redistribuer le code, parce qu'on a le droit de le modifier, etc. En gros, on a pris le noyau Linux, on a pris les outils GNU, on les adaptés à notre sauce, on les a mis sur un support et on les a distribués. Et si vous vouliez les sources, vous pouvez les demander.

38' 05

Donc en 93 on a commencé à voir les distributions qui sont apparues et en 98 il y a Raymond, Eric S. Raymond, qui est un grand libriste aussi, même s'il est un peu particulier, qui écrit un essai que je vous conseille de lire, il est encore très d'actualité qui s'appelle La Cathédrale et le Bazar dans lequel il décrit, en gros, deux choses, deux modes de fonctionnement, deux modes de production différents. Un mode qui correspondrait à une cathédrale et un mode qui correspond à un bazar, alors un bazar, il faut voir ça comme un marché, le bazar au sens turc. C'est une espèce de grand marché. En gros, il compare la création d'un logiciel sous la forme très structurée, très hiérarchique, très pyramidale comme on a construit les cathédrales, il dit « c'est très bien, ça marche, on fait des super beaux trucs, mais c'est un peu compliqué, c'est un peu lourd, ça prend du temps et puis surtout ce n'est pas très solide, ça peut tomber. Alors qu'un bazar, au sens marché, c'est le bordel, c'est l'anarchie, il n'y a pas de chef, n’importe qui fait n'importe quoi, mais ça tient super bien et c'est plus vieux que les cathédrales ». Les bazars sont plus vieux que les cathédrales. Il y a des bazars à Istanbul depuis beaucoup plus longtemps qu'on est capable de construire des cathédrales en France.

Il compare les deux modes de fonctionnement qui, en gros, sont le mode de fonctionnement standard du monde, je vais dire propriétaire ou privateur, classique, qui est calqué sur la création de bâtiments, qui est calqué sur l'industrie classique et puis le monde du logiciel libre qu'il considère comme étant le bazar, dans lequel un mec fait un truc et puis quelqu’un peut le prendre et puis n'importe qui fait ce qu'il veut. L'information circule et, en gros, ce qui va faire que tout tient c'est qu'on a créé un maillage et que l'information circule librement.

Tout ça était un truc qui ensuite a essaimé un peu partout. Je n'ai pas mis de date ici parce que je n'avais plus de place sur le slide, mais vous pouvez imaginer qu'il y a plein d'autres choses qui sont parties de cette même idée. Le noyau Linux a fonctionné comme ça. C'est-à-dire que quelqu'un donne un code source et puis vous êtes tous intéressés par ce truc-là, vous le regardez, ou alors on vous force à le faire en TP, du coup vous trouvez des bugs, vous corrigez, vous renvoyez. Tout ça circule et, au final, on arrive à progresser petit à petit. Donc on a une espèce de fonctionnement dans le bazar qui est, en gros, le fonctionnement évolutionnaire classique. C'est-à-dire qu'il y a un truc qui, petit à petit grossit, part, essaie. Il n'y a pas une prévision, au départ, de ce qu'on voulait. Et ça, ça a super bien marché. Vous pouvez le comprendre : aujourd’hui, Wikipédia, c'est exactement ça. Au départ, Wikipédia c'est appliquer dans le monde de l'information, des dictionnaires ou des encyclopédies, ce qu'on avait fait pour le logiciel libre. L'idée du bazar, l'idée du Libre a commencé à sortir du monde du logiciel et il serait peut être temps qu'elle sorte encore plus loin, on en reparlera un petit peu tout à l'heure.

Juste au tour des licences. Il y a quelques petites informations qu'il faut avoir en tête, c'est que le truc pur et idéal, etc., au départ c'est vraiment la GPL, c'est la GNU GPL, c'est la première licence publique. Il y en a d'autres qui ont essayé d'étendre un peu ces idées, en les assouplissant. Il y a en deux. D'abord il y a DFSG, c'est Debian Free Software Guidelines. Debian, c'est la contraction de Deborah et Ian ; c'est un mec qui s'est dit : « Tiens, moi je vais faire une distribution Linux, ma copine s'appelle Deborah, je m'appelle Ian, ça va faire Debian et je vais distribuer ça et puis on va voir ce que ça donne ! » Aujourd'hui Debian c'est la distribution Linux la plus répandue dans le monde. On a plus de 40 % des serveurs dans le monde qui utilisent ça, des serveurs Web dans le monde qui utilisent Debian.

Pour pouvoir intégrer un logiciel dans le paquet Debian, c'est-à-dire dans le noyau et la suite de logiciels, il fallait respecter un certain nombre de règles ; ces règles c'était ce qu'on appelait les DFSG. En gros c’était un assouplissement, selon Stallman, c’était un assouplissement des quatre libertés. Pour qu'un logiciel puisse être intégré à Debian il faut qu'il ait une licence qui respecte les règles qui sont là-dedans. Ça, ce n'est pas très grave, parce qu'en gros ça veut dire qu’on est capable d'assouplir un peu les choses pour pouvoir rentrer plein de licences différentes, parce que n'importe qui peut faire une licence. Vous pouvez faire une licence. Il y a une licence formidable qui s'appelle, dont je vous parlerai tout à l'heure, qui s'appelle WTFPL, qui en gros, en anglais ça veut dire Do What the Fuck You Wan To Public License, vous faites ce que vous voulez avec le code. Ça c'est une licence qui n'est pas forcément libre, mais n'importe qui peut en faire une. En gros Debian en a fait une.

Il y a une autre mouvement qui est sorti en 98, qui est un peu plus inquiétant, qui est le mouvement Open Source Initiative. En gros, ce dont on s'est rendu compte avec le logiciel libre, c'est que le logiciel libre a plein de qualités, on va les voir tout à l'heure, dont une, il est très, très fiable. Pourquoi il est très fiable ? Pour une raison super simple, le code est ouvert, plein de gens peuvent regarder ce qu'il y a dedans. Donc plus il y a de gens qui regardent un truc, plus il y a de gens compétents qui regardent un truc, plus on est capable de l'améliorer et de faire des corrections. Sur un logiciel privateur, à priori les seuls qui peuvent le regarder le code, ce sont les gens qui ont accès ; les gens qui ont accès, généralement, c'est l'éditeur et personne d'autre. Dans le logiciel libre, à priori, on a une qualité plus grande parce qu'on a plus de paires d'yeux qui le regardent. Ça, c'est une des caractéristiques importantes.

Le problème du logiciel libre, c'est que l'image qu'on a collée au logiciel libre, c'est Stallman et Stallman, je n'ai pas eu le temps de mettre sa photo, mais il fait peur, il fait peur aux entreprises. Stallman, vous ne l'envoyez pas chez Capgemini, c'est très clair. Vous ne l'envoyez pas chez GFI ou CGI. Enfin, peut-être maintenant ils le prendraient, mais à l'époque on ne le prenait pas. Du coup, des gens ont essayé de se présenter un peu plus proprement en disant « nous, ce qu'on va faire, c'est qu'on va faire des logiciels qui vont respecter un truc, c'est qu'on va laisser transparent, le code sera ouvert. Vous pourrez voir le code. Et donc n'importe qui va pouvoir aller le modifier. » Vous comprenez, là L'idée c'est : je fais du code, je le rends public, n'importe qui peut le modifier, mais il est encore à moi le code. Donc les modifications sont encore à moi. Donc en gros je fais travailler les gens pour moi gratuitement. C'est par exemple ce que fait IBM, très tôt dans son histoire.

Ça, c'est ce qu'on appelle le logiciel open source ou ouvert et du coup, ça c'est répandu, ça s'est répandu parce c’était plus sexy, parce que c’était plus grand public, parce qu'en gros on sacrifiait des libertés pour des raisons de convenance. Du coup, il y a un truc qui s’appelle l'Open Source Initiative, qui a commencé à lister, pareil que les DFSG, des règles qu'il fallait respecter pour qu'une licence soit open source, ouverte. Il y a du coup une bagarre très forte entre le monde libre et le monde open source. Souvent on parle de FOSS, Free Open Source Software, il faut mieux rajouter un L, il faut vraiment insister sur la liberté, il ne faut pas laisser le F comme étant gratuit seulement, mais vraiment comme free speech.

Et puis il y a un truc qui montre que ça s'est étendu un peu plus loin, c'est qu'il y a mouvement qui est créé qui s'appelle les Creatives Commons, qui s'est dit « on va essayer de faire des licences pas uniquement pour les logiciels, qu'on va pouvoir appliquer à n’importe quelle œuvre de l’esprit. Et pour ça, on va faire quatre grands pôles, qui sont attribution, non commercial, no derivative work et ShareAlike. En gros, quelle est la licence que je veux attribuer à une œuvre que j'ai produite ? Et pour ça, je vais lui accoler un truc, je vais lui accoler soit un logo, soit un sigle, BY, NC, ND, SA. En gros ça veut dire quoi ? Ça veut dire que si je fais, par exemple, juste une licence BY, on la représente comme ça CC BY, Creative Commons BY, ça veut dire quoi ? Ça veut dire que le logiciel ou l’œuvre que je distribue, je la distribue en précisant la signature de l'auteur initial. Je ne veux pas qu'elle change. C'est-à-dire que vous avez le droit de faire ce que vous voulez avec, mais il faut que la signature de l'auteur initial reste présente dans le code ou dans l’œuvre que j'ai produite. Pour le coup ça s'applique vachement plus facilement à la musique, à la vidéo, aux œuvres littéraires, etc.

Ensuite il y a est-ce que j'interdis ou pas de tirer un profit commercial de l’œuvre que j'ai récupérée ? Vous pouvez faire les combinaisons que vous voulez. En gros, il y a six combinaisons de licences, les six combinaisons qui sont ici. Ensuite est-ce que vous interdisez ou pas la possibilité d’intégrer l’œuvre qui a été construite à une autre œuvre ? Et puis ensuite, est-ce que vous gardez l'aspect viral ou pas, ShareAlike ?

Vous pouvez construire le truc que vous voulez comme ça et en gros, ce truc-là s'est répandu sur autre chose que le logiciel. Aujourd'hui on trouve ça surtout sur du texte, on trouve ça sur de la musique, par exemple autour de Jamendo, des œuvres comme ça. Et tout ça, ça part quand même de l'idée qu'à priori on veut rendre le truc ouvert et on le rend plus ou moins ouvert en rajoutant plus ou moins de contraintes. Ça, ça vient du monde du logiciel libre.

Après très rapidement parce j'ai l'impression que je vais perdre encore beaucoup de monde, l’intérêt du logiciel libre, eh bien il y en a trois, enfin, il y a trois grands aspects. Le premier c'est que techniquement il n'y a clairement pas photo, il est prouvé maintenant, ça peut paraître vraiment évident, que c'est plus fiable pour une raison simple. De la même manière que sous Unix on dit que plus les codes sont petits moins il y a d’erreurs, forcément moins on écrit de choses moins on fait d'erreurs, d'accord ? En gros, si on fait des gros trucs, plus on est nombreux à le vérifier, plus il y a de chances que le truc soit propre, donc soit de bonne qualité. D'un point de vue technique, le fait que ça soit transparent, ouvert, modifiable et distribuable, à priori ça c'est un gage de fiabilité. Ce n'est pas parce que vous mettez un truc sous licence libre qu'il est forcément fiable. Après, il faut une communauté autour. Il faut qu'il y ait des gens qui le regardent. C'est-à-dire que c'est fiable parce qu'il y a beaucoup de gens qui le regardent. Si moi je fais un truc dans mon coin, je le mets sur un site web, je dis il est GPL, ce n'est pas pour autant qu'il est super bien. C'est moi qui l'ai fait ! Donc il super bien ! Mais admettons que ce soit quelqu'un d'autre par exemple Fabien. Il faut qu'on soit plusieurs à le regarder. S'il le fait tout seul ce sera moins bien que s'il le fait tout seul, qu'il me le montre et que je lui dis : « Ah, c'est bien ».

Ensuite, il y a un autre truc qui est important c'est que c'est pérenne. Un code libre est plus pérenne qu'un code qui est privateur pour une raison vachement simple, c'est qu'à priori même si l'éditeur disparaît, vous avez accès au code et vous pourriez le faire modifier ; si vous n'avez pas les capacités vous pourrez essayer trouver quelqu'un qui va le faire modifier, qui va le faire évoluer. Il ne faut pas imaginer qu'une entreprise ne disparaisse pas. Aujourd'hui vous savez, quasiment personne ici à part les derniers rangs, ne savent qui est DEC. Pourtant DEC c'est une entreprise qui a créé deux trois trucs en informatique. Donc il ne faut pas imaginer que les entreprises sont figées et ne disparaissent jamais. Il faut imaginer qu'un jour le mec qui vous a produit un logiciel, qui vous l'a vendu, qui est privateur, eh bien il peut disparaître complètement, du jour au lendemain, et puis vous n'avez plus aucune ressource. Si c'est un truc qui était important pour votre vie en tant qu'entreprise, organisation, eh bien vous êtes perdu. Si le code est libre vous n’êtes pas perdu. Je ne dis pas que vous allez gagner, mais vous n’êtes pas perdu parce que vous avez le code qui est libre, donc vous pouvez essayer de trouver quelqu'un qui va le faire évoluer ou, au pire, vous-même vous adapter pour le faire évoluer.

Ensuite c'est que c'est plus facile de rendre les choses interopérables, donc échanger des données entre logiciels, quand on sait comment le logiciel fonctionne. Quand on ne sait pas, à priori c'est un peu compliqué si l'auteur ne veut pas. Du point de vue technique, il n'y a pas photo, il n'y a pas beaucoup de défauts au logiciel libre.

Du point de vue économique, le truc qu'on a mis souvent en avant, c’est que c'est moins cher, donc le coût est plus bas. Alors Il faut faire attention à ça. Le coût plus bas c'est vrai parce qu'il n'y a généralement, j'ai bien dit généralement, pas de coût de licence. Je vous ai donné un contre-exemple avec GCompris tout à l’heure. Il y a coup de licence si on veut la version complète. Il y a plein de modèles, de business models comme ça autour du fait qu'on soit, par exemple, Freemium. C'est-à-dire que vous avez un accès à un centre de services. Si vous voulez des services en plus, eh bien vous les payez et on pourrait imaginer l'appliquer sur le logiciel libre. Donc à priori, le coût des licences c'est vraiment un aspect économique gagnant.

Le fait qu'on a une protection légale, c'est-à-dire qu'il n'y a pas de piratage possible sur un logiciel libre, vous ne pouvez pas être attaqué de piraterie par qui que ce soit. On vous garantit que l'information peut circuler librement, que le logiciel peut circuler librement. À priori vous avez une protection légale, vous n'avez pas à payer d'avocat, ce n'est pas la peine ! En revanche, il faut faire attention, le coût peut être caché. C'est-à-dire qu'on peut avoir un coût qui est dû au fait que j'ai un logiciel libre, mais comme les gens ne le connaissent pas bien, il faut que je les forme. Ou j'ai un logiciel libre, mais, par exemple, l'éditeur n'est vraiment qu'une bande de gugusses dans un coin qui n'ont pas forcément envie de le faire évoluer comme moi je le veux, donc il faut peut-être que moi je le fasse évoluer de mon côté, en allant soit le faire tout seul, soit payer des entreprises qui vont faire le travail pour moi. Donc il peut y avoir des coûts cachés. Ceci dit, c'est quand même un avantage, si on regarde le TCO, donc le Total Cost of Ownership, la plupart du temps, sauf quand les études sont faites par des gens qui sont payés par des éditeurs privateurs, à priori le coût est plus faible.

Et puis surtout, on a une indépendance technologique : on ne dépend pas d'une entreprise. Et quand on est une entreprise et qu'on est sur un marché concurrentiel, on n'a pas intérêt à dépendre de quelqu'un, de quelqu’un qui peut être, indirectement, en concurrence avec nous parce que c'est un actionnaire, par exemple, d'un de nos concurrents. Ça c'est un point de vue économique.

Et puis du point de vue philosophique, il n'y a quand même pas à tortiller. Après, une fois de plus, je ne suis pas objectif, mais la libre diffusion de l'information c'est quand même un truc super important, de mon point de vue ! Après ! Ici je suis enseignant-chercheur, peut-être que vous, vous en avez un autre ! Peut-être qu'au contraire vous voulez que tout soit fermé parce que vous pensez tout de suite au Pédonazi, dès qu'on fait circuler l'information comme on veut, eh bien il y a des gens qui vont en profiter. Ce sont, en gros, les reproches qu'on fait aujourd'hui à Internet. Sur internet on fait tout et n'importe quoi ! Eh bien non on ne fait pas tout et n'importe quoi. Il y a des lois en France, on doit respecter les lois. À priori, pour moi, l'information doit circuler librement, même s'il peut y avoir des écarts. On ne s'est pas posé la question quand on a créé le téléphone. Quand on a créé le téléphone on ne s'est pas dit : « Tiens il va y avoir des mecs qui vont préparer des attentats ou qui vont préparer des casses à partir du téléphone ! » Pourquoi on se pose la question sur Internet ? Peut-être parce que c'est plus simple, parce que c'est accessible à plus de monde et du coup on a un peu plus peur. Mais l’information doit circuler librement même si, au bord, il peut y avoir des problèmes.

50' 36

Et puis ensuite, je ne sais pas pour vous, mais moi je n'aime pas les trucs que je ne comprends pas. Après j'ai peut-être aussi l'éthique hacker, mais quand j'ai un objet devant moi, je veux savoir comment ça marche. Je n'ai pas envie de dire à mon gamin : « Eh bien voila, tu te rends compte, changer les piles sur ton iPhone, c'est super compliqué ! » Je veux savoir comment marche un truc. Je veux savoir comment est prise une décision, etc. Donc la transparence de l'information et la libre circulation de l'information c'est, à mon avis, deux choses importantes. Et ça, c'est un truc qui est garanti par l'idée du Logiciel Libre qui, à mon avis, devrait sortir un peu plus loin que le logiciel.

Je vais juste aller super vite  ; ça ce n'est pas très intéressant. Il y a quelques licences que vous devez connaître, donc la GPL. Il y en a une un peu plus cool, qui s'appelle la LGPL, Lesser General Public License, qui dit, en gros, que vous avez le droit d'écrire du code, enfin qui vous donne, alors on vous déconseille d'utiliser, mais c'est quand vous écrivez un logiciel ou une librairie ou des bibliothèques qui vont être accolées à un logiciel qui lui n'est pas libre, qui vont, par exemple, être utilisées avec un logiciel qui n'est pas libre ; typiquement c'est le cas des librairies. En gros on enlève la liberté, on vous prive d'une liberté, on vous autorise à priver les gens d'une liberté qui est celle de redistribuer le code, de l’utiliser avec n'importe qui.

Ensuite il y en a deux autres qui sont un peu importantes parce que vous allez les retrouver souvent. Il y en a plein, vraiment beaucoup, mais au moins la MIT Public License, c'est celle qui est utilisée pour les serveurs X donc pour X 11, qui est le truc qui gère pour l'instant vos aspects graphiques vous êtes sur un Unix standard et puis BSD puisqu'il rentrait dans le coin, il faut connaître BSD.

Alors quelques logiciels mais c'est vraiment pour aller très vite. Vous êtes plutôt des développeurs, donc vous avez tous, déjà au moins une fois dans votre vie, utilisé des logiciels libres, ne serait-ce que parce que vous développez, donc vous avez déjà utilisé GCC ou n’importe quel outil autour de GCC, ça peut être GCJ, ça peut être Lycos, ça peut être n'importe quoi. Vous avez au moins utilisé un éditeur sérieux genre Emacs ou VI une fois dans votre vie. Au pire, vous avez utilisé un éditeur pas sérieux, genre Eclipse, c'est aussi un logiciel qui est plus ou moins libre, plutôt moins que plus d’ailleurs. On en trouve dans toutes les catégories d'utilisation.

Firefox, par exemple, est un logiciel qui est libre et qui est libre depuis pas très longtemps. En fait, Firefox c'est le code de Netscape, Netscape qui est une entreprise, qui avait écrit un des premiers navigateurs après Mosaic, un navigateur web, et qui s'est retrouvée en concurrence frontale avec une entreprise qui s'appelle Microsoft, qui distribuait son navigateur gratuitement avec tous ses systèmes d'exploitation. Netscape, qui était une entreprise qui était un peu costaud, qui a écrit deux/trois trucs genre JavaScript, genre les plugins dans les navigateurs, etc., a décidé, un jour ou l’autre, de dire : « Eh bien voila, moi je ne peux plus me battre contre Microsoft. Je suis en train de perdre des parts de marché parce que Internet Explorer est distribué gratuitement partout, et moi je suis obligée de faire en sorte que les gens aillent me chercher. Après, ce que je vais faire, c'est que je vais ouvrir le code. Je libère le code ». Donc le code a été libéré, rendu public, avec une licence quasiment libre qu'on a appelée la Mozilla Public License, dans laquelle, du coup, une fondation s'est créée et a pris le code en main et puis l'a modifié, l'a réécrit, etc. Aujourd'hui on a Firefox, Thunderbird qui sont deux des grands outils qu'on a dans le monde autour du web. Donc ça c'est un logiciel privateur, qui était en prison et qui a été libéré. Il y en a plein d'autres comme ça.

Star Office, par exemple, était une suite bureautique qui essayait de se battre contre Microsoft Office, créée par une entreprise allemande. Les chances de gagner étaient assez faibles. Du coup ils ont décidé de libérer le code. Ensuite ils ont été rachetés par Sun, par Oracle, etc., puis le code, comme il était libéré, il a été repris par une fondation aussi, libre-office.org, qui a créé un pack complet, une suite complète de traitement de texte, de tableur, de présentation etc., WYSIWYG en gros, et qui fonctionne pratiquement sur tous les systèmes d’exploitation. Donc il y a plein de trucs qu'on retrouve un peu partout et souvent c'est soit du code qui est monté et qui a été créé from scratch, GCC, Emacs et VI, qui ont été créés par des gens et ça a pris, les gens ont trouvé ça intéressant, soit c'est un code qui a été libéré et sur lequel vous pouvez intervenir.

Du coup quand on a un code qui est libéré, il y a un problème dans le logiciel libre, c'est que quand quand on a libéré du code et qu'on a du code ouvert, libre, n'importe qui peut le prendre et faire n'importe quoi. Il n'y a pas de suite forcément logique. En gros, quand je disais que c’était le bazar, ce n'est pas vraiment ça. C'est le bazar, mais ça s'organise tout doucement. Et l’organisation se fait, en gros, par méritocratie. Quand vous faites un truc, que vous le faites bien, eh bien vous commencez à prendre des responsabilités. Et n’importe qui n'a pas le droit de dire « eh bien moi j'ai fait un Linux, j'ai fait une version Linux particulière, j'ai fait une version BSD particulière ». Il y a des organisations qui se recréent autour du bazar, et qui se créent à posteriori, et qui se créent, en gros, pour essayer de faire en sorte qu'il n'y ait qu'une seule version libre du logiciel. Sinon on peut avoir ce qu'on appelle des forks, vous avez compris, des fourchettes, dans lesquelles on va avoir des versions différentes qui vont évoluer, parallèles. C'est ce qui s'est passé avec Star Office, on a par exemple Star Office qui a été pris par OpenOffice. OpenOffice est parti d'un côté par LibreOffice, ça a été repris ensuite par Apache. On peut avoir des versions parallèles, du même logiciel, qui fonctionnent. D'accord ? Puisque après le code est ouvert, il n'y a pas d'obligation d'avoir un logiciel unique. Ensuite, ce qui est important c'est la distribution, je vous ai déjà expliqué ce que c’était. je ne reviens pas tellemnt dessus.

Et je termine juste par un truc, j'aurais voulu passer plus de temps dessus, parce que c'est vraiment ça qui m'intéresse, mais, voilà, j'espère que je vous ai donné un peu de goût. On peut contribuer super facilement au logiciel libre. Il ne faut pas imaginer qu'on va tout de suite commencer à pouvoir être LSD COR Developer, et puis donner de la ligne de code en C pour faire du DNSSEC ou de l'IPsec. On peut faire n’importe quoi qui va aider. Par exemple, indépendamment du logiciel libre, vous comprenez bien pour Wikipédia, pour tous ces trucs qui sont collaboratifs, le logiciel libre c'est avant tout un truc collaboratif : ça vit parce qu'il y a une communauté de gens qui regardent et qui font évoluer la chose, par le code, par développer du code, ou simplement par remonter des problèmes. Quand on est développeur et qu'on a écrit un truc on n'a pas forcément pensé à tous les cas possibles, on n'a pas forcément fait un développement TDD [test-driven development, NdT] en commençant par les tests, on n'a pas forcément pensé à tous les tests, etc., donc plus on a d'utilisateurs, plus on a d'utilisateurs qui font remonter les informations aux développeurs, d'une manière ou d'une autre, plus on fait en sorte que le code va s'améliorer. Donc vous participez à ce mouvement en faisant ne serait-ce qu’utiliser un logiciel et quand vous avez un problème le faire remonter, après avoir lu la doc. D’accord ? Pas simplement en débarquant ; ce n'est pas simplement remonter « ça ne marche pas ! » Il faut aller chercher un peu, il faut lire le manuel fantastique.

Ensuite il y a plein d'autres trucs. Vous, vous êtes informaticiens, donc vous pouvez commencer par ça, c'est assez simple à faire, remonter des bugs et j'imagine que vous en rencontrez tout le temps. Un informaticien c'est un mec qui rencontre des bugs plus facilement que n'importe qui. Ce que vous pouvez faire c'est participer à l'étude de code. C'est-à-dire que le code est public et plus il y a de gens qui le regardent mieux c'est. Il commence à y avoir des outils pour ça. Je pense à Gerrit, par exemple, qui vous permet de valider ou de donner votre avis sur un bout de code qui a été déposé par un commit Git ou des choses comme ça. Donc vous pouvez facilement, sans forcément écrire tout de suite des gros trucs, prendre un logiciel ou un truc qui vous intéresse, il faut vraiment que ce soit un truc qui vous intéresse, il faut être dans l'éthique hacker, il faut que ça vous apporte quelque chose intrinsèquement, sinon ce n'est pas la peine ; il ne faut pas y aller pour dire parce que c'est bien je vais gagner de l'argent. Il faut y aller parce que ça vous plaît, parce que vous considérez que ça a un intérêt. Donc soit en faisant des remontées de bugs, soit en faisant l'étude de code, soit simplement en faisant la doc. La doc c'est le truc que les informaticiens n'aiment pas faire. Je suis assez sûr que la plupart d'entre vous, le dernier TP que vous avez dû rendre, la doc devait être très légère. D'accord ? Très, très légère ! En tout cas, c'est ce qui s'est passé pour mes étudiants. En gros ce qu'on peut imaginer, c'est que vous avez maîtrisé un outil particulier, Blender, Gimp, ou, je ne sais pas, Inkscape, et puis vous participez à la traduction de la doc, à l'écriture de la doc, à des bouts de choses. Donc participer au monde du ogiciel libre c'est super simple du point de vue technique pour vous en tant qu'informaticiens. Ça sera encore plus simple quand vous serez des grands codeurs, que vous serez très vieux et que vous saurez parler, vous saurez débugger uniquement avec DBD ou ADB. Mais maintenant vous est capables de le faire simplement en faisant des choses toutes simples : remonter des bugs c'est important. Documenter et éventuellement aller commencer à regarder du code. Participer, c'est super simple.

Et la dernière chose que je voulais dire et puis je vais m’arrêter vraiment, c'est que je vous encourage à lire un livre qui s'appelle Utopie du logiciel libre de Sébastien Broca. Sébastien Broca est un jeune docteur en sociologie qui a fait une étude du monde du logiciel libre ; d'abord qui vous raconte tout ça mais plus joliment, avec des vraies phrases, avec un peu de dates, un peu de documentation et puis qui va plus loin que ça, qui vous montre comment l'idée du logiciel libre, ça s'appelle Utopie du Logiciel Libre - Du bricolage informatique à la réinvention sociale, c'est au Passager Clandestin, qui vous montre comment le logiciel libre est en train de devenir une voie qui permet, peut-être, le renouveau social entre l'économie de marché complètement libérale d'un côté et puis l’économie, on ne va pas dire communiste parce qu'on en est quand même bien loin, l'économie où l’État a tous les pouvoirs. Tout ça, ça commence à venir et il n'est pas le seul. Je pense qu'il y a plein d'autres mouvements autour de ça qui naissent en ce moment, surtout quand on voit ce qui se passe du point de vue des libertés individuelles. J'imagine que vous suivez un peu ce qui s'est passé avec la NSA. Je vous encourage à vous rapprocher des associations qui défendent ces idées-là, l'April, La Quadrature du Net[6] par exemple ou FDN[7] et à lire ce livre. Si jamais ce livre ne vous plaît pas, enfin si c'est trop long parce que c'est écrit trop petit et puis il n'y a pas de code dedans, il n'y a pas une seule ligne de code dedans. Ce jeune homme a été interviewé le 28 décembre sur France Culture dans une émission que je vous conseille qui s'appelle Place de la Toile, PDLT, qui est le samedi soir à 6 heures ; enfin, en gros la plupart du temps vous pouvez le récupérer en podcast, ça dure 50 minutes, parce qu'il y a un peu de musique, etc. Donc il est interviewé[8]. Le truc, vous pouvez encore l'écouter pendant un an et c'est vraiment passionnant. Ça fait sortir le mouvement du Libre du logiciel. Et ça l'amène vraiment à une votre portée et ça l'amène à penser la société différemment grâce au logiciel et grâce à un truc qui l'étonne, lui, et qui ne m'étonne pas, qui ne devrait pas vous étonner, vous, c'est que les techniciens, donc nous, on devrait être critiques sur la technique ; c'est-à-dire qu'on ne doit pas simplement utiliser la technique parce qu'elle nous simplifie la vie. On doit utiliser la technique parce qu'elle nous simplifie la vie et qu'on comprend qu'elle ne nous prive pas de libertés particulières. En gros, son truc, c'est qu'il est surpris qu'on puisse être critique vis-à-vis de la technique et qu'on devrait être comme ça pour tout, c'est-à-dire que la transparence on devrait l'appliquer à plein d'autres méthodes de développements que le logiciel.

Voilà. J'ai été un tout petit peu plus long que prévu, mais je suis arrivé en retard. Donc si vous avez des questions, je suis prêt à y répondre.

Applaudissements.