Les articles de la catégorie « Anecdotes »

Aaron Swartz

Vendredi, Aaron Swartz, 26 ans, s’est donné la mort. Je ne vais pas mentir : je n’avais jamais entendu son nom avant d’apprendre la nouvelle. Mais il se trouve que je connaissais malgré moi son travail. A 14 ans, il co-écrit la spécification RSS 1.0. A 19 ans, il créé la société Infogami qui sera rapidement fusionnée avec Reddit, dont il deviendra alors un des co-gérants.

Depuis juillet 2011, Aaron Swartz était poursuivi par la Court Fédérale des États-Unis pour avoir téléchargé 4 millions d’écrits académiques du JSTOR via de simples curl sur une connexion publique du MIT. Bien que les plaintes du JSTOR furent abandonnées, il fut persécuté par le procureur du Massachusetts. Il risquait 35 ans d’emprisonnement.

En lisant tous les articles qui fleurissent à son sujet, j’ai particulièrement aimé l’anecdote suivante où il explique comment il a réussi à rejoindre le groupe de travail RDF du W3C à l’âge de 14 ans.

D’abord j’ai demandé aux membres du groupe si je pouvais les rejoindre. Ils ont dit non. Mais je voulais vraiment être dans ce groupe de travail, donc j’ai essayé de trouver un autre moyen. J’ai lu les règles du W3C, qui était l’organisme de standardisation qui dirigeait ce groupe de travail. Les règles stipulaient que s’ils pouvaient rejeter n’importe quelle demande provenant d’un individu, si un organisme qui était membre officiel du W3C demandait d’ajouter quelqu’un dans un groupe de travail, ils ne pouvaient pas refuser. Alors j’ai parcouru la liste des organismes membres du W3C, j’ai trouvé celui qui me semblait le plus amical, et je leur ai demandé s’ils pouvaient me faire rejoindre le groupe de travail. Ils l’ont fait.

 

Littéralement

J’adore les petites erreurs du quotidien, celles qui résultent d’une petite incompréhension ou d’un manque d’interrogation. Je suis retombé sur ma petite collection d’exemples d’erreurs glanées sur le web, issues de demandes prises un peu trop… littéralement.

Comme par exemple, quand vous demandez à un votre collègue d’écrire sur votre camion citerne « Diesel fuel » et « No smoking » en arabe.

Diesel en arabe

Ou quand vous demandez à votre boulanger un gateau avec écrit dessus « Meilleurs voeux Suzanne » et en-dessous de ça « Tu vas nous manquer ».

Meilleurs voeux et en dessous de ça tu vas nous manquer

Ou quand votre collègue devait traduire un panneau anglais en gallois, et qu’il a traduit votre première réponse à son mail de demande du texte à traduire (qui manque de bol était « Je ne suis pas au bureau pour le moment. Envoyez tout message à traduire. »).

Le panneau en gallois

Ou quand vos ouvriers ont creusé un trou dans votre plafond de la forme des nuages de révision d’AutoCAD.

Le nuage de révision

Ou quand vos ouvriers ont pris la flèche vers l’info-bulle de votre plan pour une découpe dans vos escaliers.

L'escalier et la flèche vers sa bulle d'info

Ou quand l’acteur principal de votre série hurle à voix haute la didascalie censée lui indiquer son intonation (en l’occurrence, « disappointed« ).

Hercules - DISAPPOINTED

Des erreurs, ça arrive à tout le monde. Mais celles-là, je prie pour les éviter.

« Je passe une mauvaise journée »

L’année dernière, le National Institute of Standards and Technology a diffusé sur Youtube des heures et des heures de vidéos brutes tournées le 11 septembre 2001 à New York. Assez fasciné et marqué par ces événements, j’étais abasourdi devant un extrait en particulier sur lequel j’étais tombé sur Reddit.

Un journaliste de la CBS se trouvait au coeur même du World Trade Center aux côtés des équipes de pompiers, juste après le crash du second avion sur la tour N°1. Alors qu’il ère aux pieds des tours, il rencontre un rescapé en costume-cravate. Il prend le bon réflexe de lui poser quelques questions, et de lui demander son nom et son lieu de travail. Puis, juste après, il rencontre un autre travailleur (à 17min40 dans la vidéo) :

NIST FOIA: Raw C*B*S 9/11 WTC Footage

– Je peux vous poser quelques questions ?
– Non, je ne préfère pas. Je passe une mauvaise journée.

Il filme ensuite l’homme, s’éloignant seul dans les rues déjà quelque peu assombries, traînant son sac sur le trottoir poussiéreux.

Dix secondes plus tard, la tour N°1 s’effondre dans un vacarme assourdissant. Un nuage de fumée poursuit les pompiers et civils qui tentent de se sauver, et plonge le journaliste dans l’obscurité la plus totale.

Ça m’arrive de croire que je passe de mauvaises journées, parce que j’ai eu trop de travail, parce que je n’ai pas réussi à faire ce que je voulais, ou parce que tout ne se passe pas comme je l’avais prévu. Mais depuis que j’ai vu cette vidéo l’année dernière, à chaque fois que j’ai l’impression de passer une mauvaise journée, je repense à cet anonyme des rues de New York qui pensait passer une mauvaise journée, avant même que les tours ne s’effondrent.

Il se trouve qu’en réalité, je n’ai pas vraiment passé de mauvaises journées.

L’enquête

Il y a quelques semaines, j’ai découvert l’histoire de Ronald Opus. C’est l’histoire d’une enquête sur un meurtre racontée par Don Harper Mills (alors président de l’Académie Américaine des Sciences Médico-légales) en 1987 lors de l’ouverture d’un banquet. Attention, accrochez-vous bien.

Le 23 mars 1994, un médecin légiste examina le corps de Ronald Opus and conclut qu’il était décédé d’une blessure par balle à la tête causée par un fusil de chasse. Jusque là, l’enquête avait révélé que le défunt avait sauté du haut d’un immeuble de dix étages avec l’intention de se suicider. (Il avait laissé une note indiquant son désespoir.) Alors qu’il passait devant le 9ème étage au cours de sa chute, sa vie a été interrompue par un tir de fusil de chasse à travers la fenêtre, le tuant instantanément. Ni le tireur ni le défunt n’étaient au courant qu’un filet de sécurité avait été érigé au niveau du 8ème étage pour protéger des laveurs de vitres, et que le défunt n’aurait très certainement pas pu réussir son suicide à cause de cela.

D’ordinaire, une personne qui commence les événements avec l’intention de se suicider parvient finalement à se suicider même si la façon de faire n’est pas celle qu’il avait prévu. Le fait qu’on lui ait tiré dessus en chemin vers une mort certaine 9 étages plus bas ne change probablement pas la cause de sa mort d’un suicide en un homicide. Mais le fait que son suicide n’aurait pas pu être mené à bien a poussé le médecin légiste à déclarer qu’il avait un homicide sous la main.

La poursuite de l’enquête mena à la découverte que la chambre du 9ème étage, d’où le tir de fusil a été émis, était occupée par un vieil homme et sa femme. Il la menaçait avec le fusil à cause d’une dispute conjugale, et il était tellement en colère qu’il n’arrivait pas à tenir l’arme droite. Ainsi, quand il a appuyé sur la gâchette, il a complètement raté sa femme, et les balles de plomb ont traversé la fenêtre, touchant le défunt.

Quand une personne projette de tuer un sujet A mais tue un sujet B lors de sa tentative, celle-ci est coupable du meurtre du sujet B. Le vieil homme était confronté à cette conclusion, mais lui et sa femme étaient catégoriques en déclarant qu’aucun d’eux ne savait  que le fusil était chargé. C’était une vieille habitude du vieil homme de menacer sa femme avec un fusil déchargé. Il n’avait aucune intention de la tuer. Ainsi, le meurtre du défunt est apparue comme accidentelle. C’est-à-dire que l’arme a été accidentellement chargée.

Mais la poursuite de l’enquête a fait apparaître un témoin déclarant que leur fils a été vu en train de charger l’arme approximativement six semaines avant l’accident fatidique. L’enquête montra que la mère (la vieille femme) avait arrêté de supporter financièrement son fils. Et son fils, connaissant la propension de son père à utiliser le fusil de chasse de manière menaçante, a chargé l’arme en prévision que le père tirerait sur sa mère. L’affaire devient maintenant un meurtre, de Ronald Opus par le fils.

Maintenant voici la touche exquise. La poursuite de l’enquête révéla que le fils était devenu de plus en plus déprimé par l’échec de sa tentative de faire tuer sa mère. Cela l’a poussé à sauter de l’immeuble de dix étages le 23 mars, mais à être tué par un tir de fusil de chasse à travers une fenêtre du 9ème étage.

Le médecin légiste classa l’affaire comme un suicide.

Cette histoire, reprise dans le film Magnolia ou un épisode des Experts:Miami, ne s’est pas réellement produite. Don Harper Mills l’a inventée pour montrer l’importance d’avoir toutes les informations, et la différence que cela peut produire.

Mais cette anecdote m’a rappelé mon histoire d’un bug, et plus généralement la difficulté de résoudre un bug sans avoir toutes les informations à sa disposition. Comme je l’écrivais en commentaire d’un très bon article de Nicolas Hoffmann :

Un cas courant que je rencontre qui illustre bien ce problème, ce sont les chefs de projet qui m’envoient une capture d’écran d’un problème recadrée uniquement sur la partie de la page où le problème apparaît. Ça part d’une bonne intention, mais c’est particulièrement gênant car ça m’empêche de comprendre ce qui se passe réellement. Avec une capture d’écran complète, je suis capable de déterminer l’OS de test, le navigateur, la version de navigateur (a peu près), et tout autre phénomène extérieur pouvant jouer un rôle dans l’apparition du bug. J’ai déjà eu plusieurs fois des remontées de bugs qui provenaient en fait de la présence d’un plugin dans le navigateur (Skype, AdBlock, ou Flash).

Être un bon intégrateur, c’est aussi être un bon détective.

Des M&M’s dans votre cahier des charges

Dans les années 1980, une légende urbaine racontait que le groupe Van Halen exigeait avant chaque concert d’avoir dans leur loge un bol rempli de M&M’s, mais ne devant contenir aucun M&M’s marron. Il se trouve que cette légende (racontée notamment dans Wayne’s World 2) est belle et bien réelle. Mais il ne s’agit pas du tout d’une excentricité du groupe, et il y a une raison bien rationnelle derrière tout cela. Il y a quelques années, Jim Cofer expliquait sur son blog :

Van Halen était un des premiers groupes de rock à faire des concerts vraiment énormes dans des villes moyennes comme Macon, en Géorgie. Les équipes des scènes dans ces petites villes étaient habituées à ce que des groupes viennent en ville avec, au plus, trois semi-remorques pleins d’équipement. L’équipement de Van Halen demandait jusqu’à 9 semi-remorques. Il y avait beaucoup de matériel, et les équipes dans ces lieux étaient souvent submergées. Et quand les gens sont sous l’eau, ils font des erreurs. A un concert de rock, « faire une erreur » pendant l’installation a un grand nombre de conséquences possibles. Certaines erreurs n’auront aucun effet. D’autres erreurs rendent le son du groupe horrible, ce qui n’affecte que l’image du groupe. Mais certaines erreurs sérieuses peuvent tuer des gens… et c’est exactement ça dont le groupe avait peur.

Au coeur de n’importe quel concert majeur, il y a un contrat. Une grande partie des textes de ces contrats sont des mentions légales standards passe-partout, mais chaque groupe peut y ajouter des demandes spécifiques via quelque chose appelé un « avenant ». La plupart des contrats impliquant des concerts dans des lieux importants sont bourrés d’avenants, dont la plupart évoquent des détails techniques spécifiques à la mise en scène du groupe. Par exemple, un avenant pourra dire « Article 148 : Il y aura 15 prises de courant séparées de 6 mètres, espacées de manière identique, fournissant 19 ampères au total, sur des poutres suspendues au plafond, qui doivent pouvoir supporter un poids total de 2500 Kg chacune, en étant suspendues à au moins 9,5 mètres de hauteur, mais pas plus de 11,5 mètres, au dessus de la scène« . Les contrats des concerts de Van Halen avaient plusieurs centaines de demandes similaires, et leurs contrats finissaient par ressembler, comme le disait le chanteur David Lee Roth, à des « Pages Jaunes chinoises ».

Les équipes des lieux importants dans les grandes villes étaient habituées à des spectacles techniquement complexes comme ceux de Van Halen. Le groupe jouait dans des lieux comme le Madison Square Garden de New York ou l’Omni à Atlanta sans le moindre incident. Mais le groupe remarquait souvent des erreurs, parfois des erreurs significatives, dans l’installation de la scène dans les plus petites villes. Le groupe avait besoin d’un moyen pour savoir que leur contrat avait bien été lu en entier. Et voilà comment est arrivé le « bol sans M&M’s marron ». Le groupe avait ajouté une clause au beau milieu du jargon technique d’autres avenants : « Article 126 : Il n’y aura aucun M&M’s marron dans la zone backstage, sous peine d’abandon du spectacle, avec réparation intégrale. » Ainsi, le groupe pouvait simplement entrer dans un stade, et chercher un bol de M&M’s dans leur loges. Pas de M&M’s marron ? Quelqu’un a lu le contract en entier, donc il n’y a probablement pas d’erreur majeure avec les équipements. Un bol de M&M’s avec des bonbons marrons ? Pas de bol de M&M’s du tout ? Arrêtez tout le monde et vérifiez le moindre petit truc, parce que quelqu’un n’a pas pris la peine de lire le contrat.

Si vous déléguez une tâche et que vous voulez vous assurer qu’elle est bien exécutée, vous devriez toujours demander un « bol de M&M’s sans marrons » dans votre cahier des charges. J’ai trop souvent eu écho de chefs de projets ou référenceurs insatisfaits parce que telle demande ou telle préconisation n’avait pas été prise en compte, bien qu’écrite noire sur blanc dans le cahier des charges.

Dans le cas d’un référenceur, on pourrait imaginer la demande d’ajout d’une balise <meta name= »mms » content= »nobrown » /> sur une page spécifique, noyée au milieu de toutes les autres préconisations. Ainsi, pour vérifier si le travail a été fait, il suffira de commencer par vérifier la présence de cette balise.