Documenter c’est s’enrichir (Libres conseils 18/42)

Chaque jeudi à 21h, rendez-vous sur le framapad de traduction, le travail collaboratif sera ensuite publié ici même.

Traduction Framalang : lamessen, lerouge, Kalupa, Sky, Astalaseven, Alpha, LuD-up, CoudCoudpeupleLa, goofy

La documentation et moi, avant et après

Anne Gentle

Anne Gentle est une rédactrice technique acharnée et la coordinatrice de la documentation communautaire à Rackspace pour OpenStack, un projet open source d’informatique dans le nuage. Avant de rejoindre OpenStack, Anne travaillait en tant que consultante de publication communautaire, en donnant une direction stratégique aux rédacteurs professionnels qui veulent produire du contenu en ligne sur des wikis contenant des pages et des commentaires générés par les utilisateurs. Sa passion pour les méthodes communautaires de documentation l’a amenée à écrire un livre sur les techniques de publication collaborative pour la documentation technique intitulé Conversation et communauté : la documentation dans le web social. Elle s’occupe aussi bénévolement de la maintenance de la documentation pour les manuels FLOSS qui proposent de la documentation open source pour les projets open source.

Voilà une prémisse bien étrange : vider mes tripes sur ce que j’aurais voulu savoir de l’open source et de la documentation. Plutôt que de vous dire ce que je veux que vous sachiez sur l’open source et la documentation, je dois vous dire ce que j’aurais aimé que mon moi antérieur sache. Cette demande suscite un sentiment de nostalgie ou de remords voire cette horrible énigme : « à quoi pouvais-je bien penser ? ».

En ce qui me concerne, avec juste cinq ans de moins, mon moi antérieur était une trentenaire bien installée dans sa vie professionnelle. D’autres, au contraire, se souviennent qu’ils n’étaient qu’adolescents lors de leurs premières expériences open source. Jono Bacon dans son livre L’art de la Communauté, raconte comment il s’est tenu devant la porte d’un appartement, le cœur battant, alors qu’il était sur le point de rencontrer quelqu’un à qui il n’avait jamais parlé que sur le réseau, par le biais d’une communauté open source. J’ai moi aussi fait cette expérience de la première rencontre physique de gens que j’avais découverts en ligne, mais ma première incursion dans le monde de la documentation open source s’est produite lorsque j’ai répondu à une demande d’aide par courriel.

Le courriel provenait d’un ancien collègue qui me demandait de l’aide pour la documentation de l’ordinateur portable XO, le projet fondateur de l’organisation One Laptop Per Child (un portable pour chaque enfant). J’ai réfléchi à ce que je pensais être une proposition intéressante, j’en ai parlé à mes amis et à mon époux en me demandant si ce n’était pas une bonne occasion d’expérimenter de nouvelles techniques de documentation et d’essayer une chose que je n’avais jamais faite auparavant : une documentation basée sur un wiki. Depuis cette première expérience, j’ai rejoint OpenStack, un projet open source sur une solution d’informatique dans le nuage, et je travaille à plein temps sur la documentation et le support communautaires.

Je pense immédiatement aux nombreuses contradictions que j’ai rencontrées tout au long de la route. J’ai découvert que pour chaque observation il existe des champs et contre-champs surprenants. Par exemple, la documentation est absolument indispensable pour l’aide aux utilisateurs, l’éducation, la possibilité de choisir ou bien la documentation promotionnelle qui amène à adopter un logiciel. Pourtant, une communauté open source pourra continuer d’avancer malgré le manque de documentation ou de la doc complètement défectueuse. Voici une autre collision apparente de valeurs : la documentation pourrait être une très bonne tâche pour démarrer, un point de départ pour les nouveaux volontaires, pourtant les nouveaux membres de la communauté savent si peu de choses qu’il ne leur est pas possible d’écrire ni même d’éditer de manière efficace. En outre les petits nouveaux ne sont pas bien familiers des différents publics auxquels doit servir la documentation.

Ces derniers temps on entend dire un peu partout : « les développeurs devraient écrire la doc de développement » parce qu’ils connaissent bien ce public et par conséquent cela lui serait aussi utile qu’à eux-mêmes. D’après mon expérience, un regard frais et neuf est toujours le bienvenu sur un projet et certaines personnes ont la capacité d’écrire et de partager avec d’autres ce regard frais et empathique. Mais vous n’allez sûrement pas vous mettre à créer une culture « réservée aux novices » autour de la doc parce qu’il est important que des membres essentiels de la communauté technique apportent leur contribution aux efforts de documentation, et qu’ils encouragent aussi les autres à y participer.

Une partie du vilain petit secret sur la documentation des projets open source est qu’il n’existe qu’une frontière pour le moins floue entre leur documentation officielle et leur documentation officieuse. Si seulement j’avais su que les efforts de documentation devraient être sans cesse renouvelés et que de nouveaux sites web pourraient apparaître là où il n’y en avait pas… Une documentation extensive n’est pas le moyen le plus efficace pour s’initier à des projets ou des logiciels mais un parcours sinueux dans les méandres de la documentation sur le Web peut s’avérer plus instructif pour ceux qui veulent lire entre les lignes et avoir ainsi une idée de ce qui se passe dans la communauté grâce à la documentation. Avoir beaucoup de forks(1) et des publics variés peut indiquer que le produit est complexe et qu’il est très suivi. Cela peut aussi signifier que la communauté n’a mis en place aucune pratique quant à la documentation de référence ou que les efforts désorganisés sont la norme.

À mes débuts, j’aurais aimé avoir la capacité de ressentir la « température conviviale » d’une communauté en ligne. Quand vous entrez dans un restaurant rempli de tables nappées de blanc, de couples qui dînent et de conversations feutrées, l’information visuelle et auditive que vous recevez détermine l’ambiance et vous donne quelques indices sur ce que vous vous apprêtez à vivre lors de votre repas. Vous pouvez tout à fait transposer ce concept de température conviviale à une communauté en ligne.

Une communauté open source vous donne quelques indices dans ses listes de discussion, par exemple. Une page de présentation de la liste qui commence par de nombreuses règles et conventions sur la manière de poster indique une gouvernance très stricte. Une liste de discussion qui contient de nombreuses publications mettant l’accent sur le fait qu’il « n’y a pas de question bête » est plus accueillante pour de nouveaux rédacteurs de documentation.

J’aurais aussi aimé connaître un moyen de faire non seulement de l’audit de contenu, c’est-à-dire lister le contenu à disposition pour le projet open source, mais aussi de l’audit de communauté, donc lister les membres influents de la communauté open source, qu’il s’agisse ou non de contributeurs.

Pour terminer, une observation à propos de l’open source et de la documentation que j’ai pu vérifier avec plaisir, c’est l’idée que la rédaction de la documentation peut s’effectuer via des « sprints » — grâce à des de brusques dépenses d’énergie avec un public ciblé et un but précis, pour aboutir à un ensemble documentaire de référence.

J’ai été très contente d’entendre lors d’une conférence à SXSW Interactive que les sprints sont tout à fait acceptables pour la collaboration en ligne, qu’il faut s’attendre à des fluctuations du niveau d’énergie de chacun et que c’est OK. La documentation des logiciels est souvent faite à l’arrache dans les moments d’accalmie d’un cycle de release(2) et ça ne pose aucun problème dans la documentation open source qui est basée sur la communauté. Vous pouvez adopter une approche stratégique et coordonnée et continuer tout de même de proposer des évènements de grande intensité autour de la documentation. Ce sont des moments exaltants dans l’open source et mon ancien moi les a pleinement ressentis. C’est une bonne chose que vous continuiez à passer de votre moi antérieur à votre moi actuel avec un paquet de conseils en poche.

(1) Un fork est un nouveau logiciel créé à partir du code source d’un logiciel existant.

(2) La release est la publication d’un logiciel.




Restons courtois ! (Libres conseils 17/42)

Chaque jeudi à 21h, rendez-vous sur le framapad de traduction, le travail collaboratif sera ensuite publié ici même.

Traduction Framalang : peupleLa, goofy, lamessen, SaSha_01, lerouge, Kalupa, RavageJo, lenod, Sky, Astalaseven, Alpha, KoS, purplepsycho +tala

De L’importance des bonnes manières

Rich Bowen

Rich Bowen a travaillé dans le domaine du logiciel libre et open source pendant près de quinze ans. La majeure partie de son travail a porté sur le serveur HTTP Apache ; il a également travaillé sur Perl, PHP et diverses applications web. Il est l’auteur de Apache Cookbook, The Definitive Guide to Apache et divers autres livres. Il fait également de fréquentes apparitions dans diverses conférences sur les technologies.

J’ai commencé à travailler sur le projet de documentation du serveur HTTP Apache en septembre 2000. Du moins, c’est à ce moment-là que j’ai réalisé mon premier commit dans les docs. Auparavant, j’avais présenté quelques corrections par courriel, et quelqu’un d’autre les avait appliquées.

Depuis cette période, j’ai réalisé un peu plus d’un millier de modifications de la documentation du serveur HTTP Apache, ainsi qu’une poignée de modifications du code lui-même. Ceux qui s’impliquent dans les logiciels libres et open source le font pour tout un tas de raisons différentes. Certains tentent de se faire un nom. La plupart essaient de « gratter là où ça les démange » comme ils disent, s’efforçant d’ajouter une fonctionnalité, ou de créer une nouvelle brique logicielle pour satisfaire un de leurs besoins.

Je me suis impliqué dans l’écriture de la documentation sur des logiciels parce que j’avais été enrôlé pour aider à l’écriture d’un livre et que la documentation existante était vraiment horrible. Donc, pour rendre le livre cohérent, j’ai dû discuter avec différentes personnes du projet afin qu’elles contribuent à donner du sens à la documentation. Lors de la rédaction de l’ouvrage, j’ai amélioré la documentation, avant tout pour me faciliter la tâche. À peu près à la même époque, Larry Wall, le créateur du langage de programmation Perl, promouvait l’idée selon laquelle les trois principales qualités d’un programmeur étaient la paresse, l’impatience et l’arrogance. Selon moi, Larry avançait des arguments fondés et avec un sens de l’humour certain. Néanmoins, une partie non négligeable de la communauté des programmeurs a pris ses paroles comme un permis de connerie.

La paresse

Nous écrivons de la documentation pour ne pas avoir à répondre aux mêmes questions tous les jours pour le restant de notre vie. Si la documentation est insuffisante, les gens auront des difficultés à utiliser le logiciel. Bien que cela puisse être la source d’une activité lucrative de consultant, il s’agit aussi du meilleur moyen de faire avorter un projet, car les gens abandonneront, frustrés, et se tourneront alors vers d’autres choses qu’ils n’auront pas à passer des heures pour comprendre.

Ainsi, la paresse est la première vertu d’un rédacteur de documentation. Quand un client pose une question, nous devrions répondre à cette question en profondeur. Et même, de la façon la plus complète possible. Nous devrions alors enregistrer cette réponse pour la postérité. Nous devrions l’enrichir avec des exemples et si possible des diagrammes et des illustrations. Nous devrions nous assurer que le texte est clair, grammaticalement correct et éloquent. Nous devrions alors l’ajouter à la documentation existante dans un endroit facile à trouver et largement référencé partout où quelqu’un pourrait le chercher.

La prochaine fois que quelqu’un posera la même question, nous pourrons lui répondre avec un lien vers la réponse. Et les questions que l’on pourrait poser après l’avoir lue devraient être la source d’améliorations et d’annotations à ce qui a déjà été écrit. C’est la vraie paresse. La paresse ne signifie pas simplement se dérober au travail. Cela veut aussi dire faire le travail si bien qu’il n’aura pas à être refait.

La patience

ll existe une tendance dans le monde de la documentation technique à être impatient et querelleur. Les sources de cette impatience sont nombreuses. Certaines personnes pensent que, comme elles ont dû travailler dur pour comprendre ces choses, vous le devez aussi. Beaucoup d’entre nous dans le monde du technique sommes des autodidactes et nous avons peu de patience pour ceux qui viennent après nous et veulent accéder rapidement au succès. J’aime appeler ça le comportement du « tire-toi de mon chemin ». Ce n’est pas vraiment constructif.

Si vous ne parvenez pas à être patient avec le client, alors vous ne devriez pas être impliqué dans le service clientèle. Si vous vous mettez en colère quand quelqu’un ne comprend pas, vous devriez peut-être laisser quelqu’un d’autre gérer la question.

Bien sûr, c’est très facile à dire, mais beaucoup plus difficile à faire. Si vous êtes un expert sur un sujet particulier, les gens vont inévitablement venir à vous avec leurs questions. Vous êtes obligé d’être patient, mais comment allez-vous y parvenir ? Cela vient avec l’humilité.

L’humilité

J’ai fait de l’assistance technique, en particulier par liste de diffusion, pendant à peu près deux ans, quand j’ai commencé à suivre des conférences techniques. Ces premières années ont été très amusantes. Des idiots venaient sur une liste de diffusion et posaient des questions stupides que des milliers d’autres perdants avaient posées avant eux. Et si seulement ils avaient regardé, ils auraient trouvé toutes les réponses déjà données auparavant. Mais ils étaient trop paresseux et trop bêtes pour le faire.

Ensuite, j’ai assisté à une conférence, et j’ai constaté plusieurs choses. Tout d’abord, j’ai découvert que les personnes qui posaient ces questions étaient des êtres humains. Ils n’étaient pas simplement un bloc de texte écrit noir sur blanc, à espacement fixe. Il s’agissait d’individus. Ils avaient des enfants. Ils avaient des loisirs. Ils connaissaient beaucoup plus de choses que moi sur une grande variété de sujets. J’ai rencontré des gens brillants pour qui la technologie était un outil qui servait à accomplir des choses non techniques. Ils souhaitaient partager leurs recettes avec d’autres cuisiniers. Ils souhaitaient aider les enfants d’Afrique de l’Ouest à apprendre à lire. Ils étaient passionnés de vin et voulaient en apprendre davantage. Ils étaient, en bref, plus intelligents que moi, et mon orgueil était le seul obstacle sur la route de leur succès.

Quand je suis revenu de cette première conférence, j’ai regardé les utilisateurs de listes de diffusion sous un tout autre jour. Ce n’étaient plus des idiots posant des questions stupides, simplement des gens qui avaient besoin d’un peu de mon aide pour pouvoir accomplir une tâche. Pour la plupart, la technologie n’était pas une passion. La technologie était seulement un outil. Il était donc compréhensible qu’ils n’aient pas passé des heures à lire les archives de la liste de diffusion de l’année passée et choisissent plutôt de reposer des questions.

Bien entendu, si un jour les aider devient pénible, la chose la plus polie à faire est de prendre du recul et de laisser quelqu’un d’autre répondre à la question plutôt que de leur dire que ce sont des imbéciles. Mais il faut aussi se rappeler toutes les fois où j’ai eu à poser des questions stupides.

La Politesse et le Respect

En fin de compte, tout cela se résume à la politesse et au respect. J’ai principalement abordé la question de l’assistance technique, mais la documentation n’est rien d’autre qu’une forme statique d’assistance technique. Elle répond aux questions que vous attendez des gens et elle offre des réponses dans une forme semi-permanente à titre de référence.

Lorsque vous écrivez cette documentation, vous devriez essayer de trouver le juste équilibre entre penser que votre lecteur est un idiot et penser qu’il devrait déjà tout savoir. D’un côté, vous lui demandez de s’assurer que l’ordinateur est branché, de l’autre, vous utilisez des mots comme « simplement » et « juste » pour faire comme si chaque tâche était triviale, laissant au lecteur l’impression qu’il n’est pas tout à fait à la hauteur.

Cela implique d’avoir beaucoup de respect et d’empathie pour votre lecteur, en essayant de vous rappeler ce que c’est que de débuter ou d’avoir un niveau intermédiaire dans l’apprentissage d’un nouveau logiciel. Cependant, les exemples de mauvaise documentation sont si répandus qu’il ne doit pas être difficile de s’en souvenir. Il y a des chances que vous en ayez fait l’expérience au cours de la dernière semaine.

J’aurais aimé…

J’aurais aimé être moins arrogant quand j’ai commencé à travailler sur la documentation open source. Quand je relis ce que j’ai pu écrire sur des listes de diffusion archivées publiquement, gravées à jamais dans le marbre d’Internet, j’ai honte d’avoir été aussi grossier.

La plus grande vertu humaine est la politesse. Toutes les autres vertus en découlent. Si vous ne pouvez pas être poli, tout ce que vous accomplirez importera peu.




RTFM ? — mais où est-il, votre manuel ? (Libres conseils 16/42)

Chaque jeudi à 21h, rendez-vous sur le framapad de traduction, le travail collaboratif sera ensuite publié ici même.

Traduction Framalang : lamessen, Sputnik, lerouge, RavageJo, Sky, Astalaseven, goofy, KoS, peupleLa + Julius22

Une bonne documentation change la vie des débutants

Atul Jha

Atul Jha utilise des logiciels libres depuis 2002. Il travaille en tant que spécialiste des applications au CSS Corp, à Chennai en Inde. Il aime parcourir les universités, rencontrer des étudiants et propager la bonne parole du logiciel libre.

En 2002, on naviguait sur Internet dans des cybercafés en raison du coût important des accès par lignes commutées. À l’époque, la messagerie instantanée de Yahoo était très populaire et j’avais pris l’habitude de discuter sur le canal #hackers. Il y avait quelques fous furieux là-dedans qui prétendaient qu’ils pouvaient pirater mon mot de passe. J’étais très impatient d’en savoir plus sur le piratage et de devenir l’un d’eux. Le lendemain, je suis retourné au cybercafé et j’ai tapé « comment devenir un hacker » sur le moteur de recherche Yahoo. La toute première URL dirigeait sur le livre d’Eric S. Raymond. J’étais fou de joie à l’idée d’entrer dans le cercle des initiés.

J’ai commencé à lire le livre et à ma grande surprise la définition de hacker était « quelqu’un qui aime résoudre les problèmes et dépasser les limites ». Il y est également écrit : « les hackers construisent des choses, les casseurs les brisent »(1). Hélas, je cherchais le côté obscur, celui des crackers, et ce livre m’a mené de l’autre côté de la force, celui des hackers. J’ai continué à lire le livre et à rencontrer divers termes nouveaux tels que GNU/Linux, liste de diffusion, groupe d’utilisateur Linux, IRC, Python et bien d’autres encore.

En poursuivant mes recherches, j’ai pu trouver un groupe d’utilisateurs de Linux à Delhi et j’ai eu l’opportunité de rencontrer de vrais hackers. J’avais l’impression d’être dans un autre monde quand ils parlaient de Perl, RMS, du noyau, des pilotes de périphériques, de compilation et d’autres choses qui me passaient bien au-dessus de la tête.

J’étais dans un autre monde. J’ai préféré rentrer à la maison et trouver une distribution Linux quelque part. J’avais bien trop peur pour leur en demander une. J’étais loin de leur niveau, un débutant totalement idiot. J’ai réussi à en obtenir une en payant 1 000 Roupies indiennes [NdT : environ 13,92 €] à un gars qui en faisait le commerce. J’en ai essayé beaucoup mais je n’arrivais pas à faire fonctionner le son. Cette fois-là, je décidai de consulter un canal IRC depuis le cybercafé. Je trouvai #linux-india et lançai : « g ok1 son ». Des injonctions fusèrent alors : « pas de langage SMS » et « RTFM ». Ça m’a fait encore plus peur et j’ai mis du temps à faire la relation entre « RTFM » et « read the fucking manual » [NdT : « lis le putain de manuel » dans la langue de Molière].

J’étais terrifié et j’ai préféré rester à l’écart de l’IRC pendant quelques semaines.

Un beau jour, j’ai reçu un courriel qui annonçait une réunion mensuelle de groupes d’utilisateurs Linux. J’avais besoin de réponses à mes nombreuses questions. C’est là que j’ai rencontré Karunakar. Il m’a demandé d’apporter mon ordinateur à son bureau, où il avait l’intégralité du dépôt de Debian. C’était nouveau pour moi, mais j’étais satisfait à l’idée de pouvoir enfin écouter de la musique sur Linux. Le lendemain, j’étais dans son bureau après avoir fait le trajet avec mon ordinateur dans un bus bondé, c’était génial. En quelques heures, Debian était opérationnel sur mon système. Il m’a aussi donné quelques livres pour débutants et une liste des commandes de base.

Le lendemain, j’étais à nouveau au cybercafé, et je lisais un autre essai d’Eric S. Raymond, intitulé Comment poser les questions de manière intelligente. Je continuais de fréquenter le canal #hackers sur Yahoo chat où je m’étais fait un très bon ami, Krish, qui m’a suggéré d’acheter le livre intitulé Commandes de références sous Linux. Après avoir passé quelque temps avec ces livres et en utilisant tldp.org (The Linux Documentation Project) comme support, j’étais devenu un utilisateur débutant sous Linux. Je n’ai jamais regardé en arrière. J’ai aussi assisté à une conférence sur Linux où j’ai rencontré quelques hackers de Yahoo ; écouter leurs conférences m’a beaucoup inspiré. Quelques années plus tard, j’ai eu la chance de rencontrer Richard Stallman qui est une sorte de dieu pour beaucoup de gens dans la communauté du logiciel libre.

Je dois reconnaître que la documentation d’Eric S. Raymond a changé ma vie et sûrement celle de beaucoup d’autres. Après toutes ces années passées dans la communauté du logiciel libre, je me suis rendu compte que la documentation est la clé pour amener des débutants à participer à cette extraordinaire communauté open source. Mon conseil à deux balles à tous les développeurs serait : s’il vous plaît, documentez votre travail, même le plus petit, car le monde est plein de débutants qui aimeraient le comprendre. Mon blog propose un large éventail de publications, qui vont des plus simples comme l’activation de la vérification orthographique dans OpenOffice à celles, plus complexes, traitant de l’installation de Django dans un environnement virtuel.

[1] NdT : Un hacker sait où et comment bidouiller un programme pour effectuer des tâches autres que celles prévues par ses concepteurs alors qu’un cracker est un pirate informatique spécialisé dans le cassage des protections dites de sécurité.




Faire un test à la fois vous met sur la bonne voie (Libres conseils 15/42)

Chaque jeudi à 21h, rendez-vous sur le framapad de traduction, le travail collaboratif sera ensuite publié ici même.

Traduction Framalang : lamessen, Sky, Kalupa, ga3lig, Wxcafe, goofy, Astalaseven, Slystone, okram, KoSLycoris, peupleLa, Julius22

La Voie des tests conduit à la Lumière

Jonathan “Duke” Leto

Jonathan Leto, dit « Le Duc » est un développeur de logiciel, un mathématicien dont les travaux sont publiés, un ninja de Git et un passionné de cyclisme qui vit à Portland, en Oregon. C’est l’un des développeurs principaux de la machine virtuelle Parrot et le fondateur de Leto Labs LLC.

Lorsque j’ai commencé à m’impliquer dans le logiciel libre et open source, je n’avais aucune idée de ce que pouvaient être les tests ni de leur importance. J’avais travaillé sur des projets personnels de programmation auparavant, mais la première fois que j’ai réellement travaillé sur un projet collaboratif (c’est-à-dire en faisant un peu de commit) c’était pour Yacas, acronyme de Yet Another Computer Algebra System, (NdT : encore un autre logiciel de calcul algébrique similaire à Mathematica).

À ce stade de mon parcours, les tests ne venaient qu’après coup. Mon méta-algorithme général était : bidouiller du code > voir si ça fonctionne> écrire (éventuellement) un test simple pour démontrer que ça fonctionne. Un test difficile à écrire n’était généralement jamais écrit.

C’est le premier pas sur la voie qui mène à la Lumière grâce aux tests. Vous savez que les tests sont probablement une bonne idée, mais vous n’en avez pas vu clairement les bénéfices, alors vous vous contentez de les écrire de temps en temps.

Si je pouvais ouvrir un trou de souris dans l’espace-temps et donner à mon moi plus jeune un conseil plein de sagesse sur les tests, ce serait :

« Certains tests sont plus importants, sur le long terme, que le code qu’ils testent. »

Il y a sans doute quelques personnes qui pensent en ce moment même que je mets mon casque de protection psychique (NdT : il s’agit d’un chapeau pour se protéger contre la manipulation à distance du cerveau) quand je m’assois pour écrire du code. Comment les tests pourraient-ils être plus importants que le code qu’ils testent ? Les tests sont la preuve que votre code marche réellement ; ils vous montrent le chemin vers l’écriture d’un code propre et vous apportent aussi la souplesse qui vous permettra de modifier le code tout en sachant que les fonctionnalités seront toujours là. En effet, plus votre code source grossit, plus vos tests sont importants, car ils vous permettent de changer une partie dudit code en sachant que le reste fonctionnera.

Une autre raison essentielle qui justifie l’écriture de tests est la possibilité de spécifier que quelque chose est un souhait explicite et non une conséquence imprévue ou un oubli. Si vous avez un cahier des charges, vous pouvez utiliser des tests pour vérifier qu’il est respecté, ce qui est très important, voire indispensable dans certaines industries. Un test, c’est comme quand on raconte une histoire : l’histoire de votre conception du code et de la façon dont il devrait fonctionner. Soit le code change et évolue, soit il mute en code infectieux (1).

Très souvent, vous écrirez des tests une première fois pour ensuite remettre totalement en cause votre réalisation voire la réécrire à partir de zéro. Les tests survivent souvent au code pour lesquels ils ont été conçus à l’origine. Par exemple, un jeu de tests peut être utilisé quel que soit le nombre de fois où votre code est transformé. Les tests sont en fait l’examen de passage qui vous permettra de jeter une ancienne réalisation et de dire « cette nouvelle version a une bien meilleure structure et passe notre jeu de tests ». J’ai vu cela se produire bien des fois dans les communautés Perl et Parrot, où vous pouvez souvent me voir traîner. Les tests vous permettent de changer les choses rapidement et de savoir si quelque chose est cassé. Ils sont comme des propulseurs pour les développeurs.

Les charpentiers ont un adage qui dit quelque chose comme ça :

« Mesurer deux fois, couper une fois. »

Le code serait la coupe, le test serait la mesure.

La méthode de développement basée sur les tests fait économiser beaucoup de temps, parce qu’au lieu de vous prendre la tête à bricoler le code sans but défini, les tests précisent votre objectif.

Les tests sont aussi un très bon retour d’expérience. Chaque fois que vous faites une nouvelle passe de test, vous savez que votre code s’améliore et qu’il a une fonctionnalité de plus ou un bogue de moins.

Il est facile de se dire « je veux ajouter 50 fonctionnalités » et de passer toute la journée à bricoler le code tout en jonglant en permanence entre différents travaux. La plupart du temps, peu de choses aboutiront. La méthode de développement basée sur les tests aide à se concentrer sur la réussite d’un seul test à la fois.

Si votre code échoue devant ne serait-ce qu’un seul test, vous avez pour mission de le faire réussir. Votre cerveau se concentre alors sur quelque chose de très spécifique, et dans la plupart des cas cela produit de meilleurs résultats que passer constamment d’une tâche à une autre.

La plupart des informations relatives au développement basé sur les tests sont très spécifiques à un langage ou à une situation, mais ce n’est pas une obligation. Voilà comment aborder l’ajout d’une nouvelle fonctionnalité ou la correction d’un bogue dans n’importe quel langage :

  1. Écrivez un test qui fait échouer votre code, mais qui, selon vous, sera passé quand la fonctionnalité sera implémentée ou que le bogue sera corrigé. Mode expert : pendant l’écriture du test, pensez à l’exécuter de temps en temps, même s’il n’est pas encore fini, et tentez de deviner le message d’erreur effectif que le test renverra. À force d’écrire des tests et de les faire tourner, cela devient plus facile ;
  2. Bidouillez le code ;
  3. Exécutez le test. S’il marche, passez au point 4, sinon retournez au point 2 ;
  4. C’est fini ! Dansez le sirtaki.

Cette méthode fonctionne pour n’importe quel type de test et n’importe quel langage. Si vous ne deviez retenir qu’une seule chose de ce texte, souvenez-vous des étapes ci-dessus.

Voici maintenant quelques directives plus générales de conduite de tests qui vous serviront bien et fonctionneront dans n’importe quelle situation :

  1. Comprendre la différence entre ce qu’on teste et ce qu’on utilise comme un outil pour tester autre chose ;
  2. Les tests sont fragiles. Vous pouvez toujours écrire un test qui contrôle la validité d’un message d’erreur. Mais que se passera-t-il si le message d’erreur change ? Que se passera-t-il quand quelqu’un traduira votre code en catalan ? Que se passera-t-il lorsque quelqu’un exécutera votre code sur un système d’exploitation dont vous n’avez jamais entendu parler ? Plus votre test est résistant, plus il aura de valeur.

Pensez à cela quand vous écrivez des tests. Vous voulez qu’ils soient résistants, c’est-à-dire que les tests, dans la plupart des cas, ne devraient avoir à changer que quand les fonctionnalités changent. Si vous devez modifier vos tests régulièrement, sans que les fonctionnalités aient changé, c’est que vous faites une erreur quelque part.

testing-comicmatics

Types de tests

Bien des personnes sont perdues quand on leur parle de tests d’intégration, tests unitaires, tests d’acceptation et autres tests à toutes les sauces. Il ne faut pas trop se soucier de ces termes. Plus vous écrirez de tests, mieux vous en distinguerez les nuances et les différences entre les tests deviendront plus apparentes. Tout le monde n’a pas la même définition de ce que sont les tests, mais c’est utile d’avoir des termes pour décrire les types de tests.

Tests unitaires contre tests d’intégration

Les tests unitaires et les tests d’intégration couvrent un large spectre. Les tests unitaires testent de petits segments de code et les tests d’intégration vérifient comment ces segments se combinent. Il revient à l’auteur du test de décider ce que comprend une unité, mais c’est le plus souvent au niveau d’une fonction ou d’une méthode, même si certains langages appellent ces choses différemment.

Pour rendre cela un peu plus concret, nous établirons une analogie sommaire en utilisant des fonctions. Imaginez que f(x) et g(x) soient deux fonctions qui représentent deux unités de code. Pour l’aspect concret, supposons qu’elles représentent deux fonctions spécifiques du code de base de votre projet libre et open source.

Un test d’intégration affirme quelque chose comme la composition de la fonction, par exemple f(g(a)) = b. Un test d’intégration consiste à tester la façon dont plusieurs choses s’intègrent ou travaillent ensemble, plutôt que la façon dont chaque partie fonctionne individuellement. Si l’algèbre n’est pas votre truc, une autre façon de comprendre est de considérer que les tests unitaires ne testent qu’une partie de la machine à la fois, tandis que les tests d’intégration s’assurent que la plupart des parties fonctionnent à l’unisson. Un bel exemple de test d’intégration est le test de conduite d’une voiture. Vous ne vérifiez pas la pression atmosphérique, ni ne mesurez le voltage des bougies d’allumage. Vous vous assurez que le véhicule fonctionne globalement.

La plupart du temps, il est préférable d’avoir les deux. Je commence souvent avec les tests unitaires puis j’ajoute les tests d’intégration au besoin puisqu’on a besoin d’éliminer d’abord les bogues les plus basiques, puis de trouver les bogues plus subtils issus d’un emboitement imparfait des morceaux, à l’opposé de pièces qui ne fonctionnent pas individuellement. Beaucoup de gens écrivent d’abord des tests d’intégration puis se plongent dans les tests unitaires. Le plus important n’est pas de savoir lequel vous écrirez en premier, mais d’écrire les deux types de tests.

Vers la Lumière

La méthode de développement basée sur les tests est un chemin, pas un aboutissement. Sachez apprécier le voyage et assurez-vous de faire une pause pour respirer les fleurs si vous êtes égaré. 

(1) Équivalent approché du terme bitrot qui en argot de codeur désigne ce fait quasi-universel : si un bout de code ne change pas mais que tout repose sur lui, il « pourrit ». Il y a alors habituellement très peu de chances pour qu’il fonctionne tant qu’aucune modification ne sera apportée pour l’adapter à de nouveaux logiciels ou nouveaux matériels.

Comic strip réalisé avec le Face-O-Matic de Nina Paley et Margot Burns

Copyheart ? 2011 by Margo Burns and Nina Paley. Copying is an act of love. Please copy!




Nina chante le blues du ©opyright et choisit la licence CC0

Nina Paley est une artiste étasunienne auteure de bandes dessinées et dessins animés, dont le célèbre Sita Sings The Blues. Elle a pris en grippe, depuis bien longtemps, le système du copyright de son pays. J’ai découvert ses œuvres grâce à @Calimaq dont le blog SILex  traite des problématiques du droit d’auteur. Et depuis longtemps le Framablog soutient ses choix militants et fait connaître ses œuvres.

Hier, @Calimaq m’envoie un lien vers l’article qui va suivre. Il sait que cela va me toucher : Nina parle ci-dessous de la licence CC0, annonçant l’élévation volontaire et par anticipation d’une œuvre dans le Domaine Public. J’aime tant la CC0 qu’elle pare chacune de mes œuvres <autopromo>dont mon premier roman #Smartarded, publié chez Framabook</autopromo>. Cette licence me permet de « couper le cordon » avec les histoires que j’écris. Leur enlever et la chaîne et le boulet qu’elles se traînaient pour rendre leur lectorat libre de se les approprier.

On le sait, les licences libres ne sont pas sans restrictions. Les trolls débats sur les entraves aux libertés qu’entraînent les clauses NC (condition de non commercialisation) et ND (condition de non modification) remplissent des forums entiers. Pourtant, peu de gens parlent de la contrainte que peut représenter la clause share alike, le fameux « SA » viral, imposant la licence choisie à toute nouvelle adaptation de l’œuvre.

Nina Paley nous livre ici son vécu, nous explique ce « vœu de non-violence légale » qui motive l’expérience qu’elle mène… et que je lui souhaite aussi heureuse que celle que je vis.

– Pouhiou

Article original sur le blog de Nina Paley

Traduction Framalang : nafnaf, ehsavoie, Chuckman, goofy, Pouhiou

Ahimsa : Sita Sings the Blues désormais en CC-0 « domaine public »

par Nina Paley

Par la présente, je déclare passer la licence de Sita Sing the Blues de CC-BY-SA (partage à l’identique) à CC-0.

Il y a quelques années j’ai entamé une démarche pour faire vœu de non-violence : un engagement de ne jamais poursuivre en justice qui que ce soit pour du savoir (ou de la culture, des œuvres culturelles, de l’art, de la propriété intellectuelle — ou le nom quelconque que vous préférez). Le copyright est désespérément détraqué ; bien sûr, le droit craque de partout aux USA. Mais pourquoi devrais-je recourir à cette même loi aberrante pour essayer de corriger les abus qu’elle introduit ? Nous vivons dans un univers chaotique. Les choix que j’effectue, bien que fondés sur des principes solides, n’y changeront rien. Les gens continueront à censurer, supprimer et verrouiller le savoir. La licence Share-Alike (partage à l’identique selon les mêmes conditions), nécessaire légalement pour conserver l’aspect libre du savoir, a eu pour conséquence d’en détruire la liberté

« Ne pas utiliser le savoir c’est lui faire injure »

a écrit Jeff Jarvis, dans une réflexion sur la mort d’Aaron Swartz.

J’ai appris la mort d’Aaron dimanche ; le lundi, le National Film Board of Canada (NdT : l’Office national du film du Canada) m’a demandé de remplir des formulaires pour « autoriser » le réalisateur (et ami personnel) Chris Landreth à faire référence à Sita Sings the Blues dans son court-métrage à venir, Subconscious Password, même si le Fair Use libérait le NFB de toute peur légitime des propriétés virales du Share-Alike. Je fais des compromis avec mes principes tous les jours, mais ce lundi-là je ne pouvais absolument pas. La bêtise des avocats du NFB était du même acabit que celle qu’Aaron combattait en libérant les documents du JSTOR. Je ne supportais pas l’idée de permettre d’avoir encore plus de mauvais avocats, de mauvaises décisions, de saloperie de copyright, en remplissant gratuitement des formulaires pour un système stupide et corrompu. Je ne pouvais tout simplement plus le faire.

Donc la NFB a dit à Chris d’enlever toute référence faite à SSTB dans son film.

Se lever pour défendre ses principes a des conséquences. Les gens vous critiquent, vous craignent et ont pitié de vous. Les condamnations publiques pleuvent. Vous perdez de l’argent. Parfois on vous poursuit en justice et, bien que cela ne me soit pas encore arrivé, cela pourrait venir vu ma pratique grandissante de la désobéissance civile.

Ma création artistique est illégale ! — Bouge pas, je vais réformer la loi !

(Commentaire de Nina Paley : Les vrais artistes n’attendent pas que les juges et les lois les autorisent)

Ce n’est pas moi mais bien mon travail, qui est la vraie victime de mes prises de positions. Quand j’ai refusé par principe les DRM (verrous limitant l’utilisation d’œuvres numériques afin de limiter les copies) de Netflix, le résultat fut que moins de gens ont vu SSTB. Quand de nombreuses chaînes de télévision me demandaient les droits de SSTB et que je leur répondais qu’ils les avaient déjà, le résultat fut qu’ils ne le diffusèrent pas. Quand des éditeurs ont voulu adapter SSTB en livre, la licence Share-Alike fut une cause de rupture des négociations, et il n’y eut pas de livre SSTB.

Ne pas utiliser le savoir, c’est lui faire injure.

Donc, chers NFB et Netflix, chers éditeurs et patrons de chaînes, chers vous qui formez cette putain de légion d’avocats : Sita Sings the Blues est désormais dans le Domaine Public. Désormais, vous n’avez plus aucune excuse pour entraver sa diffusion.

Est-ce que je continuerai de me battre ? Oui. MAIS PLUS PAR LA LOI. Je crois toujours aux raisons qui motivent la BY-SA mais la vérité c’est que jamais, au grand jamais, je ne poursuivrai quiconque en justice pour SSTB ou une autre œuvre culturelle. Je continuerai à condamner publiquement des abus tels que le verrouillage et la mauvaise attribution volontaire… Mais quelle utilité de menacer le monde d’une arme chargée si l’on ne s’en sert pas ? La licence CC-0 (NdT : versement volontaire et par anticipation dans le Domaine Public) est l’affirmation que jamais je ne serai procédurière contre qui que ce soit, peu importent les abus et la malfaisance.

Pour moi, la CC-0 est ce qu’il y a de plus proche d’un vœu de non-violence légale. La loi est un âne que je refuse de monter.

Je ne peux pas abolir le mal. La Loi ne peut abolir le mal, au contraire, elle le perpétue et l’amplifie. Les gens continueront à censurer, faire taire, menacer et maltraiter le savoir, et ce désastreux morcellement qu’est la propriété intellectuelle continuera d’encourager de telles choses. Mais je me refuse, pour combattre des monstres, à en devenir un ou à nourrir le monstre que je combats.

Ni la CC-BY-SA ni la CC-0 ne sont la solution à notre monde à la dérive avec son régime de copyright parfaitement détraqué.

Ce que je peux dire c’est que SSTB a été sous licence CC-BY-SA durant les 4 dernières années, donc je connais bien le sujet et je peux partager les résultats de cette expérience. En avançant sous la licence CC-0 j’apprendrai de nouvelles choses et j’aurai de nouveaux résultats à partager. Cela ressemble à une victoire même si de mauvais scénarios peuvent entrer en jeu. Honnêtement je n’ai pas été capable de déterminer quelle licence Libre est la « meilleure », et passer sous licence CC-0 peut contribuer à apporter une réponse.

Crédit photo : ouest-communications (CC BY-NC-ND 2.0)

CC0

Goofy et ses complices ont dédié cet article au domaine public en renonçant dans le monde entier à leurs droits selon les lois sur le droit d’auteur, droit voisin et connexes, dans la mesure permise par la loi.

Ugh.




Sans médias libres, pas de liberté de pensée – Conférence d’Eben Moglen

Une conférence d’Eben Moglen à Re:Publica (2012)

Version française par Aka, Nebu, Vincent, Alban, Benjamin, puis Moosh, peupleLa, Slystone, goofyLycorisbruno

Le texte ci-dessous a connu sa première publication sur le site de Benjamin Sonntag, où vous pourrez trouver la vidéo sous-titrée de la conférence à télécharger en divers formats ainsi qu’une présentation d’Eben Moglen et un excellent aperçu synthétique du contenu. Nous proposons une version mieux révisée (mais encore perfectible) de la traduction, à laquelle nous ajoutons les questions/réponses qui ont succédé à la conférence.

La vidéo étant assez longue (63 minutes) il nous a semblé utile de remettre en valeur les propos de Moglen par un texte lisible en une vingtaine de minutes. Vous pouvez le découvrir sur cette page ou bien télécharger le fichier disponible ici.

Conférence Eben Moglen à Re:Publica 2012 (format .ODT)

Conférence Eben Moglen à Re:Publica 2012 (format .PDF)

Bonjour.

C’est un plaisir d’être ici, et un honneur d’être à Re:publica.

Depuis maintenant mille ans, nos ancêtres se sont battus pour la défense de la liberté de pensée. Nous avons subi des pertes considérables, mais aussi remporté d’immenses victoires. Et nous sommes aujourd’hui à une époque charnière. Depuis l’adoption de l’imprimerie par les Européens au XVe siècle, nous étions essentiellement concernés par l’accès aux livres imprimés. Le droit de lire et le droit de publier étaient les principaux sujets de notre combat pour la liberté de pensée ces 500 dernières années. La principale inquiétude était celle de pouvoir lire en privé, penser, parler et agir sur la base d’une volonté libre et non censurée.

Le principal ennemi de la liberté de pensée, au début de notre combat, était l’Église Catholique universelle. Une institution basée sur le contrôle des pensées dans le monde européen, fondée sur une surveillance hebdomadaire de la conduite et des pensées de tout être humain ; basée sur la censure de tout matériel de lecture et finalement basée sur la faculté de prédire et punir toute pensée non-orthodoxe. Les outils disponibles pour le contrôle des pensées à l’aube de l’Europe moderne étaient pauvres, même selon nos standards du XXe siècle, mais ils marchaient. Ainsi, pendant des centaines d’années, la lutte était concentrée sur le premier objet industriel de masse, à l’importance croissante dans notre culture occidentale : « le livre ». Selon que l’on pouvait l’imprimer, le posséder, le vendre ou le lire, apprendre avec lui, sans l’autorisation ou le contrôle d’une autorité ayant le pouvoir de punir les pensées. À la fin du XVIIe siècle, la censure de l’écrit en Europe a commencé à craquer, tout d’abord en Hollande, puis au Royaume-Uni, et enfin, par vagues, à travers toute l’Europe. Et le livre devint un article de commerce subversif, et commença à grignoter le contrôle des pensées.

À la fin du XIXe siècle, cette lutte pour la liberté de lecture commença à attaquer la substance même du christianisme et le monde européen trembla sous les coups de la première grande révolution de l’esprit, qui parlait de « liberté, égalité, fraternité » mais qui signifiait en fait « liberté de penser autrement ». L’Ancien Régime commença à lutter contre la pensée et nous sommes alors passés dans une autre phase dans l’histoire de la liberté de pensée, qui présumait la possibilité de la pensée non-orthodoxe, et de l’action révolutionnaire. Ainsi, pendant 200 ans, nous avons lutté face aux conséquences de ces changements.

Cette génération décidera comment le réseau sera organisé

C’était hier et c’est aujourd’hui.

Aujourd’hui, nous entamons une nouvelle ère dans l’histoire de l’espèce humaine. Nous construisons un système nerveux unique qui englobera tout esprit humain. Nous sommes à moins de deux générations aujourd’hui du moment où tout être humain sera connecté à un réseau unique, où toute pensée, plan, rêve ou action sera un influx nerveux de ce réseau. Et le destin de la liberté de pensée, ou plus largement le destin de toute liberté humaine, tout ce pour quoi nous avons combattu pendant plus de mille ans dépendra de l’anatomie des neurones de ce réseau. Nous sommes la dernière génération d’êtres humains qui aura été formée sans contact avec le Net.

À dater de ce jour, tout nouvel être humain, et dans deux générations tout cerveau de l’humanité aura été formé, depuis sa plus tendre enfance, en connexion directe avec le réseau. L’humanité deviendra un super-organisme, dans lequel chacun de nous sera un neurone de ce cerveau. Et nous le construisons aujourd’hui, maintenant, nous tous, en ce moment, cette génération, unique dans l’histoire de l’humanité. Cette génération décidera comment le réseau sera organisé.

Hélas, nous commençons mal. Voici le problème.

Nous avons grandi en étant des consommateurs de médias, c’est ce qu’ils nous ont appris, que nous étions des consommateurs de médias, mais maintenant les médias nous consomment.

Les choses que nous lisons nous regardent en train de les lire. Les choses que nous écoutons nous écoutent les écouter. Nous sommes pistés, nous sommes contrôlés : les médias que nous utilisons nous prédisent. Le processus de construction du réseau a gravé dans le marbre les principes de bases de transport de l’information. Il détermine s’il existe quelque chose comme une lecture anonyme. Et il a choisi de se construire contre la lecture anonyme.

…mais personne n’est intéressé par l’anonymat désormais, n’est-ce pas ?

Il y a 20 ans, j’ai commencé à travailler comme avocat pour un homme nommé Philippe Zimmermann, qui avait alors créé une sorte de cryptographie à clé publique destinée au grand public, nommée Pretty Good Privacy (PGP). L’effort effectué pour créer PGP était équivalent à essayer de conserver la possibilité du secret à la fin de XXe siècle. Phil essayait alors d’interdire au gouvernement de tout surveiller. Conséquence de cela, il fut au moins menacé d’un procès par le gouvernement des États-Unis pour avoir partagé des secrets militaires, car c’est ainsi qu’on surnommait la cryptographie à clé publique à l’époque. Nous avions dit « Vous ne devriez pas faire cela, il y aura des milliards de dollars en commerce électronique, si tout le monde peut utiliser une cryptographie forte » mais personne n’était intéressé. Mais ce qui était important au sujet de Pretty Good Privacy, au sujet de la lutte pour la liberté que la cryptographie à clé publique représentait pour la société civile, ce qui était crucial devint clair quand nous avons commencé à gagner.

En 1995, il y a eu un débat à la faculté de droit de Harvard. Nous étions 4 à discuter du futur de la cryptographie à clé publique et de son contrôle. J’étais du côté que je suppose être celui de la liberté, c’est là que j’essaie toujours d’être. Avec moi, à ce débat se trouvait un homme nommé Daniel Weitzner, qui travaille aujourd’hui à la Maison Blanche, et s’occupe de la régulation de l’Internet pour Obama. En face de nous se trouvait le procureur général des États-Unis et avocat dans le privé, nommé Stewart Baker, qui était avant conseiller en chef de l’Agence de la Sécurité Nationale (NSA), ceux qui nous écoutent, et qui dans le privé, aidait des entreprises à gérer ceux qui les écoutent. Il devint ensuite responsable de la politique générale du Département de la Sécurité Intérieure (DHS), des États-Unis, et il est à l’origine d’une bonne partie de ce qui nous est arrivé sur Internet après 2001.

Et donc, nous venions de passer deux heures agréables à débattre du droit à la cryptographie et, à la fin, il y avait une petite fête au club de la faculté de droit d’Harvard, et enfin, après la fin du repas, quand il ne resta plus grand chose sur la table, Stuart dit :

« Allons messieurs, maintenant que nous sommes entre nous, telles des femmes, libérons nos chevelures ». Il n’avait déjà plus beaucoup de cheveux à cette époque mais il les a libérés… « Nous n’emmènerons pas au tribunal votre client, M Zimmermann. La cryptographie à clé publique sera bientôt libre. Nous avons mené une longue bataille perdue d’avance contre elle, mais ce n’était qu’un gain de temps ». Puis il regarda autour de la pièce et dit : « mais personne n’est intéressé par l’anonymat désormais n’est-ce pas ? »

Un frisson me parcourut la colonne vertébrale, et je pensais alors « ok Stuart, désormais je sais que tu passeras les vingt prochaines années à essayer d’éliminer l’anonymat dans la société humaine, et je passerai ce temps à essayer de t’empêcher de le faire, nous verrons bien où cela nous mènera ».

Et cela commence très mal.

Nous n’avons pas intégré l’anonymat quand nous avons construit le net. C’était une erreur dont nous payons maintenant le prix. Notre réseau présume que vous pouvez être suivis par des mouchards en permanence. Et en utilisant le Web, nous avons fabriqué Facebook. Nous avons mis une seule personne au milieu de tous les échanges. Nos vies sociales et nos vies privées sont sur le Web, et nous partageons tout avec nos amis mais aussi avec notre « super-ami ». Celui qui nous trahit à ceux qui le construisent, ceux qui le paient, ceux qui l’aident, ou ceux qui lui donnent les centaines de milliards de dollars qu’il désire.

Nous sommes en train de créer un média qui nous consomme et qui aime ça.

Le but principal du commerce au XXIe siècle est de prévoir comment nous faire acheter des choses. Et la chose principale que les gens veulent que nous achetions, c’est de la dette. Et nous nous endettons, nous nous chargeons de plus de dettes, de plus de doutes, de plus de tout ce dont nous avons besoin sans que nous le sachions jusqu’à ce qu’ils nous disent que nous pensions à ces choses car ils possèdent la barre de recherche, et nous mettons nos rêves dedans.

Tout ce que nous voulons, tout ce que nous espérons, tout ce que nous aimerions savoir est dans la barre de recherche, et ils la possèdent. Nous sommes surveillés partout, tout le temps.

Il y a une barre de recherche et ils la possèdent, nous y collons nos rêves et ils les dévorent !

Au XXe siècle, il fallait construire la Loubianka, il fallait torturer des gens, il fallait les menacer, il faillait les oppresser pour qu’ils vous informent sur leurs amis. Je n’ai pas besoin de parler de ça à Berlin. Au XXIe siècle, pourquoi se donner tant de mal ? Il suffit de construire un réseau social et tous les gens vous fournissent des informations sur tous les autres gens. Pourquoi gâcher du temps et de l’argent avec des immeubles pleins d’employés qui vérifient qui est qui sur les photographies ? Proposez à tout le monde de taguer les amis et bing ! Le travail est fait ! Oups, est-ce que j’ai utilisé ce mot ? Bing ! Le travail est fait !

Il y a une barre de recherche et ils la possèdent, nous y collons nos rêves et ils les dévorent !

Et ils nous renvoient immédiatement qui nous sommes. « Si vous avez aimé ça, vous allez adorer ceci ! » Et c’est le cas.

Ils nous calculent. Ce sont des machines qui le font. Chaque fois que vous créez un lien, vous apprenez quelque chose à la machine. Chaque fois que vous faites un lien à propos de quelqu’un, vous apprenez quelque chose à la machine à propos de cette personne. Il faut que nous construisions ce réseau, il faut que nous construisions ce cerveau, c’est le plus grand but de l’humanité, nous sommes en train de le réaliser mais nous n’avons pas le droit de le faire mal.

Autrefois, les erreurs technologiques étaient des erreurs, nous les commettions, elles étaient les effets non intentionnels de nos comportements fautifs, mais les choses ont changé aujourd’hui.

Les choses qui ne tournent pas bien ne sont pas des erreurs, elles sont conçues comme ça. C’est leur but et leur but, c’est de décoder la société humaine.

Je disais à un responsable du gouvernement des États Unis il y a quelques semaines de cela : « Notre gouvernement s’est mal conduit. Nous avons créé des règles après le 11 septembre. Ces règles disaient : nous garderons les données concernant les gens et parmi ces gens certains seront innocents, ils ne seront suspects de rien ». Ces règles conçues en 2001 disaient :

« Nous conserverons ces données sur des gens qui ne sont suspects de rien pour une durée maximale de cent quatre-vingt jours, après quoi nous les détruirons ».

En mars, au milieu de la nuit, un mercredi, après que tout était éteint, alors qu’il pleuvait, le Ministère de la Justice et le directeur du Renseignement National des États-Unis ont dit :

« Oh, nous changeons ces règles. Un petit changement. Nous disions avant que la durée de conservation des données concernant les personnes non suspectes était au maximum de cent quatre-vingt jours, nous passons à cinq ans. »

Ce qui correspond à l’éternité.

J’ai plaisanté avec l’avocat avec lequel j’étais à New-York, ils ont écrit « cinq ans » dans le communiqué de presse parce qu’ils n’arrivaient pas à avoir le 8 couché dans la police pour le communiqué de presse, sinon ils auraient simplement dit l’infini, qui est ce qu’ils pensaient.

Et donc, voici la discussion que j’ai eue avec un responsable gouvernemental que je connais depuis plusieurs années, qui travaille à la Maison Blanche :

— Vous voulez changer la société américaine.

— Eh bien, nous sommes arrivés à la conclusion que nous avons besoin d’un graphe social complet de la population des États-Unis.

— Vous avez besoin d’un graphe social complet de la population des États-Unis ?

— Oui

— Vous voulez dire que le gouvernement des États-Unis d’Amérique va, à partir de maintenant, tenir une liste des gens que chaque Américain connaît. Est-ce que vous ne pensez pas que cela nécessiterait une loi ?

Il a simplement ri parce qu’ils l’avaient fait dans un communiqué de presse au milieu de la nuit un mercredi pendant qu’il pleuvait.

La criminalisation de la lecture a bien avancé

Si nous n’agissons pas rapidement, nous allons vivre dans un monde où nos médias se nourriront de nous et nous balanceront au gouvernement. Cet endroit sera du jamais vu et si nous le laissons arriver, nous ne verrons plus jamais autre chose que cela. L’humanité aura été ligotée et les médias se nourriront de nous et nous balanceront au gouvernement. Et l’État possèdera nos esprits.

Le futur ex-président de la République française (NdT cette conférence a eu lieu pendant la campagne électorale de 2012 qui opposait MM. Hollande et Sarkozy) a fait campagne le mois dernier sur une proposition selon laquelle il devrait y avoir des peines criminelles contre la visite répétée de sites djihadistes. C’était une menace de criminaliser la lecture en France. Bon, il sera bientôt l’ancien président de la France, mais ça ne signifie pas que ce sera une idée périmée en France. Pas du tout.

La criminalisation de la lecture a bien avancé. Aux États-Unis d’Amérique dans ce que nous appelons les procès terroristes, nous voyons désormais souvent des recherches Google faites par des particuliers utilisées comme preuves de leur comportement criminel. La recherche de la connaissance est devenue une preuve dans les procès de terrorisme organisé. Nous rendons criminel l’acte de penser, lire et chercher. Nous le faisons dans des sociétés soi-disant libres, nous le faisons malgré le premier amendement, nous le faisons en dépit des leçons de notre histoire parce que nous oublions alors même que nous apprenons.

Nous n’avons pas beaucoup de temps. La génération qui a grandi hors du Net est la dernière qui peut le réparer sans violence.

Les gouvernements sont tombés amoureux du datamining

Tous les gouvernements de la planète sont tombés amoureux de l’idée qu’ils peuvent faire du datamining (captation et fouille des données) avec leur population. Je pensais auparavant que nous allions combattre le Parti Communiste Chinois durant la 3e décennie du XXIe siècle. Je n’avais pas prévu que nous aurions à combattre le gouvernement des États-Unis d’Amérique ET le gouvernement de la République Populaire de Chine et quand Mme Kroes sera ici vendredi, peut-être lui demanderez-vous s’il faudra la combattre elle aussi.

Les gouvernements sont tombés amoureux du datamining car ça fonctionne vraiment très bien. C’est efficace. C’est efficace pour les bonnes causes autant que pour les mauvaises causes. C’est efficace pour aider les gouvernements à comprendre comment fournir des services. C’est efficace pour aider les gouvernements à comprendre quels sont les problèmes futurs. C’est efficace pour aider les politiciens à comprendre comment les votants vont réfléchir. Mais ça rend aussi possible des types de contrôle social qui étaient auparavant très compliqués, très coûteux et très pénibles, avec des méthodes très simples et très efficaces.

Il n’est plus nécessaire de maintenir des réseaux imposants d’informateurs comme je l’ai déjà dit. La Stasi ne vaudrait plus rien si elle était de retour, car Zuckerberg fait le boulot à sa place.

Mais en dehors de la simple facilité à surveiller plus loin que la conservation des données, c’est la pérennité de la vie au-delà du temps de l’oubli : plus rien ne disparaît jamais. Ce qui n’est pas compris aujourd’hui le sera demain. Le trafic chiffré que vous utilisez aujourd’hui dans des conditions de sécurité relative est en attente jusqu’à ce qu’il y en ait suffisamment pour que la crypto-analyse marche, pour que les décodeurs réussissent à le décrypter. Il va falloir que nous revoyions toutes nos règles de sécurité en permanence, car aucun paquet chiffré ne sera plus jamais perdu.

Rien n’est déconnecté indéfiniment, seulement temporairement. Chaque bribe d’information peut être conservée et tout est éventuellement lié à quelque chose d’autre. C’est la logique des responsables gouvernementaux qui disent : « Il nous faut un graphe social robuste de la population des États-Unis d’Amérique. » Pourquoi en ont-ils besoin ? Parce que les points non connectés aujourd’hui seront connectables demain ou l’an prochain ou le suivant. Rien n’est jamais perdu, rien ne disparaît, rien n’est plus oublié.

Donc, la forme primaire de collecte qui devrait nous inquiéter le plus est que les médias nous espionnent pendant que nous les utilisons. Les livres qui nous regardent les lire, la musique qui nous écoute en train de l’écouter. Les moteurs de recherche qui surveillent ce que nous recherchons pour ceux qui nous recherchent et ne nous connaissent pas encore.

Les gens parlent beaucoup des données qui sortent de Facebook : Est-ce qu’elles sortent pour moi ? Est-ce qu’elles sortent pour lui ? Est-ce qu’elles sortent pour eux ? Ils veulent que vous pensiez que la menace est que les données se disséminent. Vous devriez savoir que la menace, c’est le code qui entre.

Sur les 50 dernières années ce qu’il s’est passé dans l’informatique d’entreprise, c’est l’addition de cette couche d’analyse de données au dessus des stockages de données. On la nomme dans l’informatique d’entreprise l’« informatique décisionnelle ». Ce qui signifie que vous avez construit ces vastes stockages de données dans votre entreprise depuis 10 ou 20 ans. Vous disposez uniquement d’informations au sujet de vos propres opérations, vos fournisseurs, vos concurrents, vos clients. Désormais, vous voulez que ces données fassent de la magie. En les combinant avec les sources de données ouvertes disponibles dans le monde, en les utilisant pour répondre à des questions que vous ne saviez pas que vous vous posiez. C’est ça, l’informatique décisionnelle.

L’informatique décisionnelle sur Facebook, c’est là que tous les services de renseignements du globe veulent être.

La menace réelle de Facebook, c’est l’informatique décisionnelle à l’intérieur des données de Facebook. Les stockages de données de Facebook contiennent les comportements, pas seulement la pensée, mais aussi le comportement de près d’un milliard de personnes. La couche d’informatique décisionnelle au-dessus de ça, laquelle est simplement tout le code qu’ils peuvent faire tourner en étant couverts par les règles d’utilisation qui disent « Ils peuvent faire tourner tout le code qu’ils veulent pour améliorer l’expérience ». L’informatique décisionnelle sur Facebook, c’est là que tous les services de renseignements du globe veulent être.

Imaginez que vous soyez une petite organisation de services secrets dans une quelconque pays sans importance. Mettons-nous à leur place et appelons-les je ne sais pas moi, disons, « Korghistan ». Vous êtes les services secrets, vous êtes dans le « business des gens », les services secrets sont le « business des gens »

Il y a plusieurs catégories de gens dont vous avez besoin. Vous avez besoin d’agents, de sources, vous avez des adversaires, vous avez des gens influençables, des gens que vous torturez et qui sont reliés aux adversaires : femmes, maris, pères, filles, vous voyez, ce genre de gens. Donc vous cherchez ces catégories de gens. Vous ignorez leurs noms, mais vous savez à quoi ils ressemblent, vous savez qui vous pourriez recruter en tant qu’agent, vous savez qui sont les sources potentielles, vous connaissez les caractéristiques sociales de vos adversaires, et dès que vous connaissez vos adversaires, vous pouvez trouver ceux qui sont influençables.

Donc ce que vous voulez entreprendre, c’est faire tourner du code dans Facebook. Ça va vous aider à trouver les personnes dont vous avez besoin, ça va vous montrer les personnes dont les comportements et cercles sociaux vous indiquent qu’ils sont ce dont vous avez besoin, qu’il s’agisse d’agents, de sources, quels sont leurs adversaires et qui vous pouvez torturer pour les atteindre.

Donc vous ne voulez pas sortir des données de Facebook. Le jour où ces données sortent de Facebook, elles sont mortes. Vous voulez mettre du code dans Facebook et le faire tourner là-bas et avoir les résultats, vous voulez coopérer.

Facebook veut être un média. Ils veulent posséder le Web, ils veulent que vous cliquiez sur les boutons « J’aime ». Les boutons « J’aime » sont effrayants même si vous n’appuyez pas dessus, ce sont des mouchards sur le Web parce qu’ils indiquent à Facebook toutes les autres pages Web que vous consultez contenant un bouton « J’aime ». Que vous cliquiez dessus ou non, ils ont un enregistrement qui indique : « Vous avez consulté une page, qui intégrait une bouton J’aime » et soit vous avez dit oui, soit vous avez dit non. Mais dans les deux cas, vous avez généré une donnée, vous avez informé la machine.

Or donc, ce média a envie de mieux vous connaître que vous ne vous connaissez vous-même. Or, nous ne devrions laisser personne faire ça. Nous avons combattu pendant mille ans pour l’espace intérieur, cette bulle privée dans laquelle nous lisons, pensons, réfléchissons et devenons non-orthodoxes à l’intérieur de nos propres esprits. C’est cet espace que tout le monde veut nous prendre. « Dites-nous quels sont vos rêves, dites-nous quelles sont vos pensées, dites-nous ce que vous espérez, dites-nous ce qui vous effraie ». Ce n’est pas une confession privée hebdomadaire. C’est une confession 24h/24.

Le robot mobile que vous transportez avec vous, c’est celui qui sait où vous vous trouvez en permanence et écoute chacune de vos conversations. C’est celui dont vous espérez qu’il ne rapporte pas tout à un centre de commande. Mais ce n’est qu’un espoir. Celui qui fait tourner tous ces logiciels que vous ne pouvez ni lire, ni étudier, ni voir, ni modifier, ni comprendre. Celui-là, celui-là même écoute vos confessions en permanence. Quand vous le tenez devant votre visage, désormais, il va connaître votre rythme cardiaque. C’est une appli Android, dès maintenant les changements minimes de la couleur de votre visage révèlent votre fréquence cardiaque. C’est un petit détecteur de mensonges que vous transportez avec vous. Bientôt je pourrai de mon siège dans une salle de classe observer la pression sanguine de mes étudiants monter et descendre. Dans bon nombre de salles de classes aux États-Unis d’Amériques, c’est une information de première importance Mais il ne s’agit pas de moi, bien sûr, il s’agit de tout le monde, n’est-ce pas ? Car il s’agit seulement de données et des gens qui y ont accès. L’intérieur de votre tête devient l’extérieur de votre visage, devient l’intérieur de votre smartphone, devient l’intérieur du réseau, devient le premier fichier du dossier au centre de commande.

Nous avons donc besoin de médias libres sinon nous perdons la liberté de pensée, c’est aussi simple que ça.

Que signifie un média libre ? Un média que vous pouvez lire, auquel vous pouvez penser, auquel vous pouvez faire des ajouts, auquel vous pouvez participer sans être suivi, sans être surveillé, sans qu’il y ait de rapports sur votre activité. C’est ça, un média libre. Et si nous n’en avons pas, nous perdrons la liberté de penser, et peut-être pour toujours.

Avoir un média libre signifie avoir un réseau qui se comporte conformément aux besoins des gens situés à la marge. Et pas conformément aux besoins des serveurs situés au cœur.

Construire un média libre nécessite un réseau de pairs, pas un réseau de maîtres et de serviteurs, pas un réseau de clients et de serveurs, pas un réseau où les opérateurs de réseaux contrôlent tous les paquets qu’ils font transiter. Ce n’est pas facile, mais c’est encore possible. Nous avons besoin de technologie libre. La dernière fois que j’ai donné une conférence politique à Berlin c’était en 2004, elle était intitulée “die Gedanken sind frei” (NdT : Les pensées sont libres — en allemand dans le texte). J’y disais que nous avons besoin de 3 choses :

  • de logiciels libres
  • de matériels libres
  • de bande passante libre.

Maintenant, nous en avons encore plus besoin. Huit années ont passé, nous avons commis des erreurs, et les problèmes sont plus conséquents. Nous n’avons pas avancé, nous avons régressé.

Nous avons besoin de logiciels libres, c’est à dire de logiciels que l’on peut copier, modifier et redistribuer. Nous en avons besoin parce que nous avons besoin que le logiciel qui fait fonctionner le réseau soit modifiable par les personnes qui utilisent ce réseau.

Les tablettes que vous utilisez, que M. Jobs a conçues, sont faites pour vous contrôler. 

La mort de M. Jobs est un événement positif. Je suis désolé de vous l’annoncer de la sorte. C’était un grand artiste et un monstre sur le plan moral, et il nous a rapprochés de la fin de la liberté à chaque fois qu’il a sorti quelque chose, parce qu’il détestait partager. Ce n’était pas de sa faute, c’était un artiste. Il détestait partager parce qu’il croyait qu’il avait tout inventé, même si ce n’était pas le cas. À l’intérieur de toutes ces coques fines portant un logo Apple que je vois partout dans la salle, il y a des morceaux de logiciels libres modifiés pour lui donner le contrôle; rien d’illégal, rien de mal, il respecte la licence, il nous a baisés à chaque fois qu’il pouvait et il a pris tout ce que nous lui avons donné et il a fait des choses jolies qui contrôlent leurs utilisateurs.

Autrefois, il y avait un homme ici qui construisait des choses, à Berlin pour Albert Speer (NdT : un haut responsable du Troisième Reich) son nom était Philip Johnson (NdT : un architecte américain) et c’était un brillant artiste mais un monstre sur le plan moral. Et il disait qu’il était venu travailler pour construire des immeubles pour les nazis parce qu’ils avaient tous les meilleurs graphismes. Et il le pensait, parce qu’il était un artiste, tout comme M. Jobs était un artiste. Mais être artiste n’est pas une garantie de moralité.

Nous avons besoin de logiciels libres. Les tablettes que vous utilisez, que M. Jobs a conçues, sont faites pour vous contrôler. Vous ne pouvez pas modifier le logiciel, il est même difficile de faire de la simple programmation. Ce n’est pas vraiment un problème, ce ne sont que des tablettes, nous ne faisons que les utiliser. Nous ne faisons que consommer le prestige de ce qu’elles nous apportent mais elles nous consomment aussi.

Nous vivons comme dans la science-fiction que nous lisions lorsque nous étions enfants et qui supposait que nous serions parmi les robots. À ce jour, nous vivons communément avec des robots, mais ils n’ont pas de bras ou de jambes. Nous sommes leurs bras et leurs jambes, nous transportons les robots partout avec nous. Ils savent où nous allons, ils voient tout ce que nous voyons, tout ce que nous disons, ils l’écoutent et il n’y a pas de première loi de la robotique. Ils nous font du mal, tous les jours. Et il n’y a aucun réglage pour empêcher ça.

Nous avons donc besoin de logiciels libres. À moins que nous ne contrôlions le logiciel du réseau, le réseau finira par nous contrôler.

Nous avons besoin de matériels libres. Cela signifie que lorsque nous achetons un bidule électronique, il devrait être le nôtre et pas celui de quelqu’un d’autre. Nous devrions être libre de le modifier, de l’utiliser comme il nous plaît, pour garantir qu’il ne travaille pas pour quelqu’un d’autre que nous-même. Bien sûr, la plupart d’entre nous ne modifiera jamais rien, mais le fait que nous pouvons le modifier nous met en sécurité. Bien sûr, nous ne serons jamais la personne qu’ils veulent le plus surveiller.

L’homme qui ne sera pas président de la France pour sûr, mais qui pensait qu’il le serait, dit à présent qu’il a été piégé et que sa carrière politique est détruite non pas parce qu’il a violé une femme de chambre mais parce qu’il a été manipulé après qu’on ait espionné son smartphone. Peut-être qu’il dit la vérité, peut-être que non. Mais il n’a pas tort pour ce qui est du smartphone. Peut-être que c’est arrivé, peut-être que non, mais ça arrivera.

Nous transportons des choses dangereuses avec nous partout où nous allons. Elles ne travaillent pas pour nous, elles travaillent pour quelqu’un d’autre. Nous acceptons cela. Nous devons arrêter.

Nous avons besoin de bande passante libre. Cela signifie que nous avons besoin d’opérateurs réseaux qui sont des transports en commun dont le seul travail est de déplacer les paquets réseaux d’un point A à un point B. Ce sont presque des tubes, et ils ne sont pas autorisés à être impliqués. Il était de coutume, lorsque qu’un colis était transporté d’un point A à un point B, que si le gars chargé du transport l’ouvrait et regardait ce qu’il contenait, il commettait un crime.

Plus maintenant.

Aux États-Unis d’Amérique, la chambre des représentants a voté la semaine dernière que les opérateurs réseaux, aux États-Unis d’Amérique, devaient être intégralement à l’abri des poursuites judiciaires pour complicité d’espionnage illégal avec le gouvernement, pour autant qu’ils l’aient fait « de bonne foi ».

Et le capitalisme signifie que vous n’avez jamais à dire que vous êtes désolé, que vous êtes toujours de bonne foi. De bonne foi, tout ce que nous voulons faire c’est de l’argent M. le Juge, laissez-nous dehors. — Très bien, vous êtes libres.

Nous devons avoir de la bande passante libre. Nous possédons encore le spectre électromagnétique, il appartient encore à nous tous, il n’appartient à personne d’autre. Le gouvernement est un mandataire, pas un propriétaire. Nous devons avoir un spectre que nous contrôlons également pour tous. Personne n’est autorisé à écouter quelqu’un d’autre, pas d’inspection, pas de vérification, pas d’enregistrement, cela doit être la règle. Cela doit être la règle de la même façon que la censure doit disparaître. Si nous n’avons pas de règle pour une communication libre, alors nous réintroduisons de la censure. Qu’on le sache ou non.

Nous avons donc très peu de choix maintenant, notre espace a rétréci et nos possibilités de changement ont diminué.

Nous devons avoir des logiciels libres. Nous devons avoir des matériels libres. Nous devons avoir de la bande passante libre. Ce n’est qu’avec eux que nous pourrons faire des médias libres.

Nous ne devrions pas commercer avec des gens qui vendent de la musique sous surveillance.

Mais nous devons travailler sur les médias aussi, directement, pas par intermittence, pas sans y faire attention. Nous devons demander aux organisations des médias d’obéir à des règles éthiques élémentaires. Une première loi des médias robotiques : ne fais aucun mal. La première règle pour nous est : ne surveille pas le lecteur. Nous ne pouvons pas vivre dans un monde où chaque livre signale chaque lecteur. Si c’est le cas, nous vivons dans une bibliothèque gérée par le KGB. Enfin : amazon.com ou le KGB, ou les deux ! Vous ne pourrez jamais savoir !

Le livre, cet objet imprimé merveilleux, ce premier produit du capitalisme de masse, le livre est en train de mourir. C’est dommage, mais il est en train de mourir. Et le remplaçant est une boîte qui surveillera le lecteur ou non.

Vous vous souvenez qu’amazon.com a décidé qu’un livre de Georges Orwell ne pouvait pas être distribué aux État-Unis d’Amérique pour des raisons de copyright. Ils sont venus et l’ont effacé de chacune de toutes les liseuses d’Amazon où le consommateur avait acheté des copies de La ferme des animaux. « Oh, vous l’avez peut-être acheté mais cela ne signifie pas que vous être autorisé à le lire ». C’est de la censure. C’est de l’autodafé. C’est tout ce que nous avons vécu au XXe siècle. Nous avons brûlé des gens, des maisons et des œuvres d’art. Nous avons combattu. Nous avons tué des dizaines de millions de personnes pour mettre un terme à un monde dans lequel l’État brûlerait les livres, et ensuite nous l’avons regardé se faire encore et encore, et maintenant nous nous préparons à autoriser que cela soit fait sans aucun feu.

Partout, tout le temps.

Nous devons avoir une éthique des médias et nous avons le pouvoir de faire appliquer cette éthique parce que nous sommes encore les personnes qui payent le fret. Nous ne devrions pas commercer avec des gens qui vendent des livres sous surveillance. Nous ne devrions pas commercer avec des gens qui vendent de la musique sous surveillance. Nous ne devrions pas commercer avec les sociétés cinématographiques qui vendent des films sous surveillance. Nous allons devoir dire cela même si nous travaillons sur la technologie.

Parce qu’autrement, le capitalisme va agir aussi vite que possible pour rendre nos effort de liberté caducs. Et il y a des enfants qui grandissent qui ne sauront jamais ce que « liberté » signifie.

Nous devons donc la promouvoir, cela va nous coûter un peu, pas beaucoup, mais un peu quand même. Nous allons devoir oublier et faire quelques sacrifices dans nos vies pour faire appliquer cette éthique aux médias. Mais c’est notre rôle. De même que faire des technologies libres est notre rôle. Nous sommes la dernière génération capable de comprendre directement ce que sont ces changements car nous avons vécu des deux côtés de ces changements et nous savons. Nous avons donc une responsabilité. Vous comprenez cela.

C’est toujours une surprise pour moi, bien que ce soit complètement vrai, mais de toutes les villes du monde où j’ai voyagé, Berlin est la plus libre. Vous ne pouvez pas porter de chapeau dans l’aéroport de Hong-Kong, plus maintenant. Je l’ai découvert le mois dernier en essayant de porter mon chapeau dans l’aéroport de Hong-Kong. « Vous n’y êtes pas autorisé, ça perturbe le système de reconnaissance faciale ». Il va y avoir un nouvel aéroport ici, sera-t-il tellement surveillé que vous ne serez pas autorisé à porter un chapeau parce que cela perturbe le système de reconnaissance faciale ?

Nous avons une responsabilité, nous savons. C’est comme ça que Berlin est devenue la ville la plus libre où j’ai pu me rendre parce que nous savons que nous avons une responsabilité, parce que nous nous souvenons, parce que nous avons été des deux côtés du mur. Cela ne doit pas être perdu maintenant. Si nous oublions, plus aucun oubli ne sera jamais possible. Tout sera mémorisé. Tout ce que vous avez lu, durant toute votre vie, tout ce que vous avez écouté, tout ce que vous avez regardé, tout ce que vous avez cherché.

Sûrement nous pouvons transmettre à la prochaine génération un monde libre de tout ça. Sûrement nous le devons. Que se passera-t-il si nous ne le faisons pas ? Que diront-ils lorsqu’ils réaliseront que nous avons vécu à la fin d’un millénaire de lutte pour la liberté de penser ?

Au final, alors que nous avions presque tout, on a tout laissé tomber, par commodité, pour un réseau social, parce que M. Zuckerberg nous l’a demandé, parce que nous n’avons pas trouvé de meilleur moyen pour parler à nos amis. Parce qu’on a aimé ces belles petites choses si chaleureuses dans notre main.

Parce que nous n’avions pas vraiment prêté attention à l’avenir de la liberté de pensée ?

Parce que nous avions considéré que c’était le travail de quelqu’un d’autre. Parce que nous avions pensé que c’était acquis. Parce que nous pensions être libres. Parce que nous n’avions pas pensé qu’il restait des luttes à terminer. C’est pourquoi nous avons tout laissé tombé.

Est-ce que c’est ce que nous allons leur dire ? Est-ce vraiment ce que nous allons leur dire ?

La liberté de pensée exige des médias libres. Les médias libres exigent une technologie libre. Nous exigeons un traitement éthique lorsque nous lisons, lorsque nous écrivons, lorsque nous écoutons, et lorsque nous visionnons.

C’est la ligne de conduite de nos politiques. Nous devons conserver ces politiques jusqu’à notre mort. Parce que dans le cas contraire, quelque chose d’autre va mourir. Quelque chose de tellement précieux que beaucoup, beaucoup, beaucoup de nos pères et de nos mères ont donné leur vie pour cela. Quelque chose de tellement précieux que nous sommes d’accord pour dire que c’est la définition de ce qu’est un être humain. Il mourra si nous ne maintenons pas ces politiques pour le restant de nos jours. Et si nous les maintenons, alors toutes les choses pour lesquelles nous avons lutté se réaliseront parce que partout sur la planète, chaque personne pourra lire librement. Parce que tous les Einstein des rues auront le droit d’apprendre. Parce que tous les Stravinsky deviendront des compositeurs. Parce que tous les Socks deviendront des chercheurs en physique. Parce que l’humanité sera connectée et que chaque esprit sera autorisé à apprendre et aucun esprit ne sera écrasé pour avoir mal pensé.

Nous sommes à un moment décisif où nous pouvons choisir de soutenir cette grande révolution que nous avons bâtie bit après bit depuis un millénaire, ou de tout laisser tomber, par commodité, par simplicité de parler avec nos amis, pour la rapidité des recherches, ou d’autres choses vraiment importantes…

Je disais en 2004 ici même et je le redis maintenant : « Nous pouvons vaincre. Nous pouvons être la génération des personnes qui ont terminé le travail de construire la liberté de pensée ».

Je ne l’ai pas dit alors, mais je dois le faire maintenant que nous sommes aussi potentiellement la génération qui l’aura perdue.

Nous pouvons régresser dans une inquisition pire que toutes les inquisitions qui ont jamais existé. Elle n’usera peut-être pas tant de torture, elle ne sera peut-être pas aussi sanguinaire, mais elle sera bien plus efficace. Et nous ne devons absolument pas laisser cela arriver. Trop de gens se sont battus pour nous. Trop de gens sont morts pour nous. Trop de gens ont espéré et rêvé pour ce que nous pouvons encore réaliser.

Nous ne devons pas échouer.

Merci beaucoup.

Questions / Réponses

Q  : Merci. Vous avez dépeint un possible avenir vraiment horrible. Pouvez-vous nommer des organisations ou groupes aux États-Unis d’Amérique qui soutiennent des actions allant dans votre sens, dans votre vision positive de transformer la société ?

R : Pas seulement aux États-Unis d’Amérique mais partout dans le monde, nous avons des organisations qui se préoccupent des libertés numériques. L’« Electronic Frontier Foundation » aux États-Unis d’Amérique, « La Quadrature du Net » en France, « Bits of Freedom » aux Pays-Bas et j’en passe.

Les mouvements pour la liberté numérique sont extrêmement importants. Les pressions sur les gouvernements pour qu’ils obéissent à des règles issues du XVIIIe  siècle concernant la protection de la dignité humaine et la prévention de la surveillance étatique sont cruciales. Malheureusement, le travail sur les libertés numériques contre les gouvernements n’est pas suffisant.

Le mouvement des logiciels libres, La FSF, « Free Software Foundation » aux États-Unis d’Amérique et la « Free Software Foundation Europe », dont le siège est en Allemagne, font un travail important pour maintenir ce système anarchique (sur le mode du “bazar”) producteur de logiciels, qui nous a apportés tant de technologies, et que nous-même ne pouvons contrôler. Et cela est crucial.

Le mouvement « Creative Commons » qui est très ancré non seulement aux États-Unis d’Amérique et en Allemagne mais aussi dans plus de 40 pays autour du monde est aussi extrêmement important parce que les licences « Creative Commons » donnent aux créateurs des alternatives au contrôle excessif qui existe avec le système du copyright, et qui profite à la surveillance des médias.

L’encyclopédie libre « Wikipedia » est une institution humaine extrêmement importante et nous devons continuer de soutenir la fondation « Wikimedia » autant que faire se peut. Sur les cent sites web les plus visités aux États-Unis d’Amérique dans une étude menée par le « Street Journal », sur les cent sites web les plus visités aux États-Unis d’Amérique, seulement un ne surveille pas ses utilisateurs. Je vous laisse deviner qui c’est ? C’est Wikipédia.

Nous avons un énorme travail qui se déroule maintenant à travers le monde dans l’enseignement supérieur. Maintenant que les universités commencent à réaliser que le coût de l’enseignement supérieur doit baisser et que  les esprits vont grandir dans la toile. La « UOC », l’« Open University of Catalonia » est l’université exclusivement en ligne la plus extraordinaire aujourd’hui. Elle sera bientôt en concurrence avec d’autres universités extraordinaires. « MITX », le nouveau programme d’éducation web de la « Massachussets Institute of Technology » va fournir des cours de la plus haute qualité technique, et rendre ses supports de cours existants, accessibles librement (au sens de la culture libre) pour tous, depuis n’importe-où et en permanence. Stanford va adapter une structure de e-learning privateur qui sera le Google de l’éducation supérieure, si Stanford a de la chance.

Nous devons soutenir l’éducation libre sur Internet, et chaque ministère de l’éducation national européen devrait y travailler. Il y a beaucoup d’endroits où chercher des logiciels libres, du matériel libre, de la bande passante libre, et des médias libres.

Il n’y a pas de meilleur endroit pour chercher des médias libres sur Terre, maintenant, que dans cette salle. Tout le monde sait ce qu’il peut faire. Ils le font. Nous devons juste faire comprendre à tous les autres que si nous arrêtons ou si nous échouons, la liberté de pensé en sera le prix et nous le regretterons pour toujours.

Q : Merci beaucoup. Je voulais vous poser une petite question. Est-ce que Facebook, l’iPhone et les médias libres peuvent coexister à long terme ?

R : Probablement pas. Il ne faut pas trop s’inquiéter, iPhone n’est qu’un produit Facebook, il n’est que la version commerciale d’un service. J’ai récemment dit dans un journal à New-York que je pensais que Facebook continuerait d’exister pour une durée comprise entre 12 et 120 mois. Je pense que c’est exact.

Les réseaux sociaux fédérés seront disponibles dans l’avenir. Les réseaux sociaux fédérés sous une forme qui vous permette de quitter Facebook sans quitter vos amis seront disponibles dans l’avenir. De meilleurs moyens de communication sans une tierce partie qui vous espionne seront disponibles dans l’avenir.

La question c’est : « est-ce que les gens vont les utiliser ?»

La Freedom Box vise à produire une pile logicielle qui tiendrait dans une nouvelle génération de serveurs à bas coût et de faible consommation de la taille d’un chargeur de téléphone mobile, et si nous réussissons cette tâche, nous serons capables de connecter des milliards de serveurs web au réseau qui nous serviront à fournir des services concurrents, qui ne violeront pas la vie privée, et qui seront compatibles avec les services existants.

Mais votre téléphone mobile change fréquemment, donc l’iPhone s’en ira, pas de problème. Et les services web sont moins rares qu’ils n’en ont l’air maintenant. Facebook est une marque, ce n’est pas quelque chose dont il faut nous soucier en particulier, il faut juste que nous fassions cela aussi vite que possible

Coexistence ?  Tout ce que j’ai à en dire c’est qu’ils ne vont pas coexister avec la  liberté. Je ne vois pas pourquoi je devrais coexister avec eux.

(applaudissements)

Q : Bonjour, je m’appelle […] du Bangladesh. Merci pour cette présentation formidablement informative et lucide. J’ai participé à l’introduction des emails au Bangladesh au début des années 90. À cette époque les connexions coûtaient très cher. Nous dépensions 30 cents par kB donc un 1MB nous coûtait 300 dollars. Ça a changé depuis, mais c’est toujours très encadré par les instances régulatrices et pour nous sur le terrain, c’est très difficile, car les pouvoirs en place (les gardiens des clefs) ont intérêt à maintenir cet état de fait. Mais dans ce réseau des gardiens des clefs, il y a aussi un réseau entre mon pays et le vôtre. Et à l’heure actuelle, la source de données la plus large en volume est le recensement du Bengladesh, et la société qui le fournit est en lien direct avec la CIA. En tant  qu’opérateurs, que pouvons-nous faire en attendant de pouvoir devenir  des acteurs majeurs ?

R : C’est pourquoi j’ai commencé en parlant des comportements récents des États-Unis d’Amérique. Mon collègue au Centre des Lois de Libertés Logicielles en Inde a passé beaucoup de temps le mois dernier à essayer de faire passer une motion par la chambre haute du Parlement Indien pour annuler la régulation par les services informatiques de la censure du Net Indien et bien sûr la bonne nouvelle c’est que la base de données la plus large en volume dans le monde sera bientôt les scans rétiniens que le gouvernement Indien va exiger, si vous désirez avoir une bouteille de gaz propane ou des choses telles que… l’énergie pour votre maison. Et les difficultés que nous avons rencontrées en parlant aux responsables gouvernementaux indiens sont qu’ils disaient : « Si les Américains peuvent le faire pourquoi pas nous ? » Ce qui est malheureusement vrai.

Le gouvernement des États Unis d’Amérique a réduit cet hiver le niveau des libertés sur Internet de par le monde, dans le sens qu’ils font du datamining (des fouilles de données) sur vos sociétés de manière aussi systématique qu’en Chine. Ils sont d’accord sur le principe. Ils vont tirer les vers du nez à leur population via le datamining et ils vont encourager tous les autres États sur Terre à en faire de même. Donc je suis entièrement d’accord avec vous sur la définition du problème.

Nous ne pouvons plus désormais vivre quelque part, à cette étape de notre histoire, en continuant à penser en termes de pays, à un moment de la mondialisation, où la surveillance des populations est devenue une question globale, et nous avons à travailler dessus en partant du principe qu’aucun gouvernement ne décidera d’être plus vertueux que les superpuissances.

Je ne sais pas comment nous allons pouvoir gérer le Parti Communiste Chinois. Je ne sais vraiment pas. Je sais comment nous  allons gérer le gouvernement américain. Nous allons insister sur nos droits. Nous allons faire ce qui fait sens aux États Unis d’Amérique, nous allons combattre légalement, nous allons mettre la pression, nous allons les bousculer, nous serons partout y compris dans la rue pour en parler.

Et je suspecte que c’est ce qui va se passer ici aussi. À moins que nous changions les structures qui fondent nos sociétés, nous n’avons aucune chance de convaincre les petits gouvernements qu’ils doivent abandonner leurs contrôles.

En ce qui concerne la bande passante, nous allons bien sur devoir utiliser la bande passante non réglementée. C’est à dire nous allons devoir construire autour des normes 802.11 et wifi, entre autres, que les lois ne nous empêchent pas d’utiliser. De quelle manière cela va-t-il permettre d’atteindre les plus pauvres ? Quand est-ce que le système de téléphone mobile sera créé pour atteindre  les plus pauvres ? Je ne sais pas. Mais j’ai un petit projet avec des enfants des rues a Bangalore, je suis en train d’y réfléchir.

Il le faut. Nous devons travailler partout. Si nous ne le faisons pas, nous allons détruire tout ça, et on ne peut pas se le permettre.

Q : Professeur Moglen, Je voudrais également vous remercier. Je reviens de « Transforming Freedom » à Vienne, et je peux vous dire qu’il y a quelques années, je vous ai vu parler sur une vidéo internet au Fosdem.  Et je vous avais vu attirer l’attention sur le rôle de Philipp  Zimmermann, que nous avons aussi essayé d’aider. Et à vous écouter aujourd’hui, je vois que c’est trop lent, et trop peu.

Et je suis stupéfait par deux choses  la première est que le système éducatif, celui de l’Europe, a été fondé par Platon et a été fermé par la force environ mille ans plus tard. Le second départ d’une université européenne était aux alentours du XIe siècle. On verra si on réussira à le faire fonctionner aussi longtemps qu’un millier d’années.

Ma question est : pourquoi est-ce que ce n’est pas profondément ancré dans les structures du système éducatif d’aider la cause dont vous avez parlé aujourd’hui ?

Et pourquoi n’avons nous pas des philanthropes aidant des petits projets fonctionnant avec 3-4000 euros ici et là, bien plus efficacement comme par exemple ce que M. Soros essaie de faire ?

R : Il y a quelques années à Columbia, nous avons essayé d’intéresser l’université à l’état de conservation de la bibliothèque, et j’ai vu plus d’intellectuels reconnus, engagés politiquement, dans ma propre université qu’à aucun autre moment pendant mes 25 ans ici. Leur principale inquiétude était le vieillissement du papier sur lequel était imprimé des doctorats allemands du XIXe siècle, qui contiennent plus de recherches philologiques qu’aucun autre endroit sur Terre.

N’est-ce pas ? Mais c’était des livres du XIXe siècle qu’ils devaient préserver.

Le problème avec la vie universitaire, c’est qu’elle est conservatrice par nature, car elle préserve la sagesse des anciens. Et c’est une  bonne chose à faire. Mais la sagesse des anciens est ancienne, et elle ne prend pas nécessairement en compte parfaitement les problèmes du moment. J’ai mentionné l’UOC parce que je pense que c’est important de soutenir l’Université quand elle se déplace vers Internet et qu’elle s’éloigne des formes d’apprentissage qui caractérise les universités du passé.

Pendant le dernier millénaire, nous avons principalement déplacé les intellectuels vers les livres, et l’université s’est développée autour de ce principe. Elle s’est développée autour du principe que les livres sont difficiles à déplacer, alors que les gens sont faciles à déplacer. Donc on y a amené tout le monde. Maintenant nous vivons dans un monde dans lequel il est beaucoup plus simple de déplacer le savoir plutôt que les personnes. Mais la continuité de l’ignorance est le désir des entreprises qui vendent le savoir.

Ce dont nous avons vraiment besoin est de commencer nous-mêmes à aider le système universitaire à se transformer en quelque chose d’autre. Quelque chose qui permet à chacun d’apprendre, et qui permet d’apprendre sans surveillance.

La Commissaire à la Société de l’Information sera ici. Elle devrait parler de ça. Cela devrait être la grande question de la Commission Européenne. Ils le savent, ils ont sorti un rapport d’il y a 18 mois qui dit que, pour le prix d’une centaine de kilomètres de routes, il peuvent scanner 1/6ème de tous les livres des bibliothèques européennes. Cela veut dire que pour le prix de 600 kilomètres de routes, nous pourrions tous les avoir !

Nous avons construit beaucoup de routes dans beaucoup d’endroits, y compris en Grèce, dans les dix dernières années. Et nous aurions pu scanner tous  les livres en Europe pendant ce temps, et nous aurions pu les rendre disponibles pour toute l’Humanité, sans surveillance.

Si Mme Kroes veut construire un monument à son nom, ça ne sera pas en tant que politicienne au rabais. Elle le fera de cette manière. Et vous allez le lui demander. Moi je serai dans un avion sur le chemin du retour à travers l’Atlantique. Sinon je vous promets que je lui aurais demandé moi même. Demandez-lui pour moi. Dites lui, « ce n’est pas notre faute, Eben veut savoir. Si vous devez blesser quelqu’un, c’est lui ». Vous devriez changer l’Université européenne. Vous devriez la modifier en une lecture sans surveillance. Vous devriez mettre en faillite Google Books et Amazon. C’est une manière capitaliste Nord-américaine anglo-saxonne de jouer des coudes.

Pourquoi est-ce que nous ne rendons pas libre le savoir en Europe, et ne nous assurons-nous pas qu’il n’est pas surveillé ? Cela serait le plus grand pas possible, et c’est en leur pouvoir.

Photo d’Eben Moglen, crédit Re:Publica (CC BY 2.0)




Remue-ménage dans le triage (Libres conseils 14/42)

Chaque jeudi à 21h, rendez-vous sur le framapad de traduction, le travail collaboratif sera ensuite publié ici même.

Traduction Framalang : lamessen, Sky, Kalupa, ga3lig, goofy, Astalaseven, okram, KoS, Lycoris, 4nti7rust, peupleLa + Julius22

Penser/Classer

Andre Klapper

Dans la vraie vie, Andre Klapper est maître ès débogage. Pendant sa pause déjeuner ou sa sieste, il travaille à divers trucs sur GNOME (bugsquad, équipe de release, traduction, documentation, etc.), ou Maemo, étudie ou mange de la crème glacée.


Au tout début, je n’avais qu’une seule et unique question : comment imprimer seulement une partie du courriel que j’ai reçu dans Evolution, le client de messagerie GNOME ? J’ai donc demandé sur la liste de diffusion.

Ça faisait exactement un an que j’étais passé sous Linux, frustré de ne pouvoir faire fonctionner mon modem après avoir réinstallé un OS propriétaire plutôt populaire à l’époque.

La réponse à ma question fut : « impossible ». Des petits génies auraient parcouru le code, l’auraient compilé, l’auraient bidouillé pour qu’il se comporte comme voulu, puis auraient soumis un correctif joint au rapport de bogue. Bon. Comme vous l’aurez deviné, je n’étais pas un petit génie. Mes talents de programmeur sont plutôt limités, donc sur le moment je suis resté coincé sur une solution de contournement plutôt lourde pour mon impression. La réponse que j’avais reçue sur la liste de diffusion signalait également que cette fonctionnalité était prévue, et qu’on avait complété pour moi un rapport de bogue — sans préciser où, mais je m’en fichais, j’étais content d’apprendre qu’il était prévu de corriger mon problème prochainement.

Il se peut que je sois resté abonné à la liste de diffusion par simple paresse. Certains mentionnaient le rapporteur de bogues de temps en temps, souvent comme une réponse directe aux demandes de fonctionnalités, alors j’y ai finalement jeté un coup d’œil. Mais les rapporteurs de bogue, en particulier Bugzilla, sont d’étranges outils avec beaucoup d’options complexes. Un domaine que vous préférez normalement éviter à moins que vous ne soyez masochiste. Ils contiennent maints tickets décrivant des bogues ou des demandes de fonctionnalités émanant d’utilisateurs et de développeurs. Il semblait également que ces rapports aient été en partie utilisés pour planifier les priorités (appeler cela « gestion de projet » aurait été un euphémisme ; moins d’un quart des problèmes qui étaient planifiés pour être résolus ou implémentés dans une version spécifique étaient réellement corrigés au bout du compte).

Au-delà d’une vision intéressante sur les problèmes du logiciel et sur la popularité de certaines demandes, ce que j’ai découvert, c’est beaucoup de choses incohérentes et pas mal de bruit, comme des doublons ou des rapports de bogues manquant d’éléments pour pouvoir être traités correctement. J’ai eu envie de nettoyer un peu en « triant » les rapports de bogues disponibles. Je ne sais pas bien ce que cela vous dit sur mon état d’esprit — ajouter ici des mots-clés bidon pour une caractérisation aléatoire, comme organisé, persévérant et intelligent. C’est assez ironique quand on pense à mon père qui se plaignait toujours du bordel dans ma chambre. Donc à cette époque lointaine de modems commutés, j’avais pour habitude de rassembler mes questions et de les faire remonter sur IRC une fois par jour afin de mitrailler de questions le responsable des bogues d’Evolution, qui était toujours accueillant, patient et soucieux de partager son expérience. Si jamais à l’époque il y avait un guide de triage qui couvrait les savoirs de base pour la gestion des bogues et qui exposait les bonnes pratiques et les pièges les plus courants, je n’en avais pas entendu parler.

Le nombre de signalements baissa de 20% en quelques mois, bien que ce ne fût bien évidemment pas grâce à une unique personne qui faisait le tri des tickets. Il y avait manifestement du travail en attente, comme diminuer le nombre des tickets attribués aux développeurs pour qu’ils puissent mieux se concentrer, parler avec eux, définir les priorités, et répondre aux commentaires non-traités de certains utilisateurs. L’open source accueille toujours bien les contributions une fois que vous avez trouvé votre créneau.

Bien plus tard, j’ai pris conscience qu’il y avait de la documentation à consulter. Luis Villa, qui fut probablement le premier des experts en bogues, a écrit un essai titré « Pourquoi tout le monde à besoin d’un expert en bogue » et la majorité des équipes anti-bogues sur les projets open source ont publié au même moment des guides sur le triage qui ont aidé les débutants à s’impliquer dans la communauté. De nombreux développeurs ont débuté leur fantastique carrière dans l’open source en triant les bogues et ont ainsi acquis une première expérience de gestion de projet logiciel.

Il y a aussi de nos jours des outils qui peuvent vous épargner beaucoup de temps quand arrive l’abrutissant travail de triage. Du côté serveur, l’extension « stock answers » de GNOME fournit les commentaires courants et fréquemment usités afin de les ajouter aux tickets en un clic pendant que, du côté client, vous pouvez faire tourner votre propre script  GreaseMonkey ou l’extension Jetpack de Matej Cepl, appelée  « bugzilla-triage-scripts » [2].

Si vous êtes un musicien moyen ou médiocre mais que vous aimez tout de même la musique par-dessus tout, vous pouvez toujours y travailler en tant que journaliste. Le développement de logiciels possède également ce genre de niches qui peuvent vous donner satisfaction, au-delà de l’idée première d’écrire du code. Cela vous prendra un peu de temps pour les trouver, mais ça vaut la peine d’y consacrer vos efforts, votre expérience et vos  contacts. Avec un peu de chance et de talent, cela peut même vous permettre de gagner votre vie dans le domaine qui vous intéresse personnellement… et vous éviter de finir pisse-code.

[1] http://tieguy.org/talks-files/LCA-2005-paper-html/index.html

[2] https://fedorahosted.org/bugzilla-triage-scripts

Crédit photo : Doug DuCap Food and Travel (CC BY-NC-SA 2.0)




Tests contre Bogues : une guerre sans fin (Libres conseils 13/42)

Chaque jeudi à 21h, rendez-vous sur le framapad de traduction, le travail collaboratif sera ensuite publié ici même.

Traduction Framalang : Floxy, ga3lig, goofy, Astalaseven, Slystone, okram, KoS, Lycoris, 4nti7rust, peupleLa, Luc Didry, + Julius22

Même en multipliant les regards, les bogues ne sautent pas aux yeux.

Ara Pulido

Ara Pulido est ingénieure d’essais pour Canonical, d’abord comme membre de l’équipe assurance qualité d’Ubuntu (QA team), et maintenant dans le cadre de l’équipe de certification du matériel. Même si elle a commencé sa carrière en tant que développeuse, elle a vite découvert que ce qu’elle aimait vraiment, c’était tester les logiciels. Elle est très intéressée par les nouvelles techniques d’analyse et tente d’utiliser son savoir-faire pour améliorer Ubuntu.

Les tests maison ne suffisent pas

Je me suis impliquée dans le logiciel libre dès le début de mes études à l’Université de Grenade. Là-bas, avec des amis, nous avons fondé un groupe local d’utilisateurs de Linux et organisé plusieurs actions pour promouvoir le logiciel libre. Mais, depuis que j’ai quitté l’université, et jusqu’à ce que je commence à travailler chez Canonical, ma carrière professionnelle s’est déroulée dans l’industrie du logiciel propriétaire, d’abord comme développeuse puis comme testeuse.

Lorsque l’on travaille au sein d’un projet de logiciel propriétaire, les ressources pour tester sont très limitées. Une petite équipe reprend le travail initié par les développeurs avec les tests unitaires, utilisant leur expérience pour trouver autant de bogues que possible afin de mettre à disposition de l’utilisateur final un produit aussi abouti que possible. Dans le monde du logiciel libre, en revanche, tout est différent.

Lors de mon embauche chez Canonical, hormis la réalisation de mon rêve d’avoir un travail rémunéré au sein d’un projet de logiciel libre, j’ai été émerveillée par les possibilités des activités de test dans le cadre d’un tel projet. Le développement du produit s’effectue de manière ouverte, et les utilisateurs ont accès au logiciel dès son commencement, ils le testent et font des rapports de bogues dès que c’est nécessaire. C’est un nouveau monde rempli de beaucoup de possibilités pour une personne passionnée par les tests. Je voulais en profiter au maximum.

Comme beaucoup de personnes, je pensais que les tests « maison », c’est-à-dire l’utilisation par soi-même du logiciel que l’on envisage de mettre à disposition, était l’activité de test la plus importante qu’on puisse mener dans le logiciel libre. Mais si, selon la formule de Raymond dans La cathédrale et le bazar « avec suffisamment d’observateurs, tous les bogues sautent aux yeux », alors comment se fait-il qu’avec ses millions d’utilisateurs Ubuntu comporte encore des bogues sérieux à chaque nouvelle version ?

La première chose dont je me suis aperçue quand j’ai commencé à travailler chez Canonical c’est que les activités de test organisées étaient rares ou inexistantes. Les seules sessions de test qui étaient d’une certaine façon organisées se présentaient sous la forme de messages électroniques envoyés à une liste de diffusion, manière de battre le rappel pour tester un paquetage dans la version de développement d’Ubuntu. Je ne pense pas que cela puisse être considéré comme une vraie procédure de test, mais simplement comme une autre forme de « test maison ». Cette sorte de test génère beaucoup de doublons, car un bogue facile à débusquer sera documenté par des centaines de personnes. Malheureusement le bogue potentiellement critique, vraiment difficile à trouver, a de bonnes chances de passer inaperçu en raison du bruit créé par les autres bogues, et ce même si quelqu’un l’a documenté.

En progrès

La situation s’améliore-t-elle ? Sommes-nous devenus plus efficaces pour les tests au sein des projets de développement libre ? Oui, j’en suis convaincue.

Pendant les derniers cycles de développement d’Ubuntu, nous avons commencé bon nombre de sessions de test. La gamme des objectifs pour ces sessions est large, elle comprend des domaines comme de nouvelles fonctionnalités de bureau, des tests de régression, des tests de pilotes X.org ou des tests de matériel d’ordinateur portable. Les résultats sont toujours suivis et ils s’avèrent vraiment utiles pour les développeurs, car ils leur permettent de savoir si les nouveautés fonctionnent correctement, au lieu de supposer qu’elles fonctionnent correctement à cause de l’absence de bogues.

En ce qui concerne les outils d’assistance aux tests, beaucoup d’améliorations ont été apportées :

  • Apport(1) a contribué à augmenter le niveau de détail des bogues signalés concernant Ubuntu : les rapports de plantage incluent toutes les informations de débogage et leurs doublons sont débusqués puis marqués comme tels ; les utilisateurs peuvent signaler des bogues sur base de symptômes, etc.
  • Le Launchpad(2), avec ses connexions en amont, a permis d’avoir une vue complète des bogues – sachant que les bogues qui se produisent dans Ubuntu se situent généralement dans les projets en amont, et permet aux développeurs de savoir si les bogues sont en cours de résolution.
  • Firefox, grâce à son programme et à son extension Test Pilot, mène des tests sans qu’on ait à quitter le navigateur(3). C’est, à mon sens, une bien meilleure façon de rallier des testeurs qu’une liste de diffusion ou un canal IRC.
  • L’équipe Assurance Qualité d’Ubuntu teste le bureau en mode automatique et rend compte des résultats toutes les semaines(4), ce qui permet aux développeurs de vérifier très rapidement qu’il n’y a pas eu de régression majeure pendant le développement.

Cependant, malgré l’amélioration des tests dans les projets de logiciel libre il reste encore beaucoup à faire.

Pour aller plus loin

Les tests nécessitent une grande expertise, mais sont encore considérés au sein de la communauté du le logiciel libre comme une tâche ne demandant pas beaucoup d’efforts. L’une des raisons pourrait être que la manière dont on les réalise est vraiment dépassée et ne rend pas compte de la complexité croissante du monde du logiciel libre durant la dernière décennie. Comment est-il possible que, malgré la quantité d’innovations amenées par les communautés du logiciel libre, les tests soient encore réalisés comme dans les années 80 ? Il faut nous rendre à l’évidence, les scénarios de tests sont ennuyeux et vite obsolètes. Comment faire grandir une communauté de testeurs supposée trouver des bogues avérés si sa tâche principale est de mettre à jour les scénarios de test ?

Mais comment améliorer la procédure de test ? Bien sûr, nous ne pouvons pas nous débarrasser des scénarios de test, mais nous devons changer la façon dont nous les créons et les mettons à jour. Nos testeurs et nos utilisateurs sont intelligents, alors pourquoi créer des scripts pas-à-pas ? Ils pourraient aisément être remplacés par une procédure de test automatique. Définissons plutôt une liste de tâches que l’on réalise avec l’application, et certaines caractéristiques qu’elle devrait posséder. Par exemple, « l’ordre des raccourcis dans le lanceur doit pouvoir être modifié », ou « le démarrage de LibreOffice est rapide ». Les testeurs trouveront un moyen de le faire, et créeront des scénarios de test en parallèle des leurs.

Mais ce n’est pas suffisant, nous avons besoin de meilleurs outils pour aider les testeurs à savoir ce qu’ils testent, où et comment. Pourquoi ne pas avoir des API (interfaces de programmation) qui permettent aux développeurs d’envoyer des messages aux testeurs à propos des nouvelles fonctionnalités ou des mises à jour qui doivent être testées ? Pourquoi pas une application qui nous indique quelle partie du système doit être testée ? en fonction des tests en cours ? Dans le cas d’Ubuntu, nous avons les informations dans le Launchpad (il nous faudrait aussi des données sur les tests, mais au moins nous avons des données sur les bogues). Si je veux démarrer une session de test d’un composant en particulier j’apprécierais vraiment de savoir quelles zones n’ont pas encore été testées ainsi qu’une liste des cinq bogues comptant le plus de doublons pour cette version en particulier afin d’éviter de les documenter une fois de plus. J’aimerais avoir toutes ces informations sans avoir à quitter le bureau que je suis en train de tester. C’est quelque chose que Firefox a initié avec Test Pilot, bien qu’actuellement l’équipe rassemble principalement les données sur l’activité du navigateur.

La communication entre l’amont et l’aval et vice-versa doit aussi être améliorée. Pendant le développement d’une distribution, un bon nombre des versions amont sont également en cours de développement, et ont déjà une liste des bogues connus. Si je suis un testeur de Firefox sous Ubuntu, j’aimerais avoir une liste des bogues connus aussitôt que le nouveau paquet est poussé dans le dépôt. Cela pourrait se faire à l’aide d’une syntaxe reconnue pour les notes de versions, syntaxe qui pourrait ensuite être facilement analysée. Les rapports de bogue seraient automatiquement remplis et reliés aux bogues amont. Encore une fois, le testeur devrait avoir facilement accès à ces informations, sans quitter son environnement de travail habituel.

Les tests, s’ils étaient réalisés de cette manière, permettraient au testeur de se concentrer sur les choses qui comptent vraiment et font de la procédure de test une activité qualifiée ; se concentrer sur les bogues cachés qui n’ont pas encore été découverts, sur les configurations et environnements spéciaux, sur la création de nouvelles manières de casser le logiciel. Et, in fine, s’amuser en testant.

Récapitulons

Pour ce que j’en ai vu ces trois dernières années, les tests ont beaucoup progressé au sein d’Ubuntu et des autres projets de logiciels libres dans lesquels je suis plus ou moins impliquée, mais ce n’est pas suffisant. Si nous voulons vraiment améliorer la qualité du logiciel libre, nous devons commencer à investir dans les tests et innover dans la manière de les conduire, de la même façon que nous investissons dans le développement. Nous ne pouvons pas tester le logiciel du XXIe siècle avec les techniques du XXe siècle. Nous devons réagir. Qu’il soit open source ne suffit plus à prouver qu’un logiciel libre est de bonne qualité. Le logiciel libre sera bon parce qu’il est open source et de la meilleure qualité que nous puissions offrir.

1 http://wiki.ubuntu.com/Apport

2 http://launchpad.net

3 http://testpilot.mozillalabs.com

4 http://reports.qa.ubuntu.com/reports/desktop-testing/natty