H. Merijn, un hollandais qui suit une formation à Paris,
Guillaume,
Philippe (Bl),
Emmanuel,
Jérôme,
Eric (glb),
Stéphane,
Charles,
David (le tsar),
BooK,
Nicolas (Chuche),
Kai,
et moi.
Nous avons mangé des oeufs mayonnaise,
des hamburgers, des spaghetti bolognese
avec du persil (hélas), des spaghetti carbonara, des pavés d'autruche ou de kangourou,
des moules au curry, des salades auvergnates, des dames
blanches et une tarte aux pommes.
Nous avons bu de la Beamish Red, de la Stout, de la Blanche,
de la Desperado et autres bières, de l'Orangina et une margarita.
Merijn est venu avec son ordinateur portable et nous a montré
un peu de code. Ses programmes utilisent une base de données SQL
Unify.
Il n'utilise pas
DBI,
mais une variante qui, je crois, n'est hélas pas sur
CPAN.
DBI est puissant et permet, par exemple, de travailler sur
plusieurs bases de données différentes dans un même programme.
Le module de Merijn, lui, ne permet de travailler que sur
une seule base de données à la fois, celle définie par le biais de
variables d'environnement lorsque l'utilisateur
ouvre une session sur sa machine. Du coup, alors
que connect() est peut-être la fonction dont la syntaxe
et l'utilisation sont les plus complexes dans DBI, l'équivalent
chez Merijn se résume à :
DBlogon();
ou parfois :
DBlogon(1);
s'il souhaite une autre variante pour plus ou moins de vitesse
en lecture et plus ou moins de possibilités concernant les
verrous, transactions, etc.
Il nous a montré également une astuce très utile pour tout
programme perl-SQL, l'utilisation de qq;
(l'opérateur connu
qq
suivi du caractère point-virgule).
Il écrit une ligne de code du genre :
$basedonnees->prepexecqq; SELECT toto FROM foo WHERE bar > 0;;
Le point-virgule sur la ligne de la clause WHERE a deux buts :
d'une part, c'est lui qui délimite la fin de la chaîne introduite par
qq; quelques lignes plus haut, d'autre part, cela permet au
programmeur de faire un copier-coller des trois lignes vers un interpréteur
tel que SQL*plus et de lancer la commande sans avoir besoin de l'adapter.
Sur une question de Philippe (Bl), David a évoqué le générateur d'expressions
régulières qu'il avait présenté aux
Journées Perl Francophones.
Cela a conduit à une longue discussion avec Merijn et au noircissement
de plusieurs napperons en papier. Heureusement, nous avions
déjà mangé le plat principal à ce moment.
En faisant l'impasse sur le contexte, disons que David souhaite
générer une expression régulière pour reconnaître des chaînes
de caractères. Soient les chaînes à reconnaître :
abcde
abdfe
abge
Il commence par générer une liste de listes de listes, pour
représenter les concaténations et les alternatives :
['a','b',['c','d','e'],['d','f','e'],['g','e']];
En supprimant les quotes et les virgules et en arrangeant
la disposition, cela donne
[ a b [ c d e ]
[ d f e ]
[ g e ] ]
Puis il génère une expression régulière avec cela,
qr/(?-xism:ab(?:cde|dfe|ge))/
L'exemple
ci-dessus n'a pas été pris totalement au hasard. On remarque
en effet que toutes les chaînes à reconnaître se terminent
pas « e ». David cherche un moyen de savoir,
en examinant la liste de listes, si l'on est dans ce
cas favorable et si oui, comment faire sortir le « e »
de la liste. Merijn donne un moyen d'extraire les caractères
de fin des listes élémentaires. Je n'ai pas noté son code,
mais en installant le module j'ai pu trouver un code qui doit
être équivalent :
my $x = join '', map { ref $_ ? $_->[-1] : '' } @liste;
if ($x =~ /^(.)\1*$/
{ # extraire le dernier caractère en tant que préfixe commun
...
}
Mais je pense que son code
ne fonctionne que si les listes ont un niveau d'imbrication constant.
J'ai essayé avec une chaîne supplémentaire :
abcde
abdfe
abge
abcfe
et j'ai obtenu une liste avec un niveau d'imbrication
supplémentaire :
[ a b [ c [ d e ]
[ f e ] ]
[ d f e ]
[ g e ] ]
et avec ce niveau supplémentaire, le join map ci-dessus
ne fonctionne plus.
Plus généralement au sujet des
expressions rationnelles,
Merijn fait
remarquer que, pour des chaînes élémentaires de longueur 1,
l'alternative
qr/(?:a|b)/
aurait avantage à être remplacée
par une classe de caractères qr/[ab]/. Logiquement c'est la
même chose, mais ce n'est pas traité du tout de la même manière
par le moteur d'expressions rationnelles et la version avec la classe
de caractères peut être optimisée, ce qui n'est pas le cas pour l'alternative.
D'autre part, ne pas hésiter à ajouter des assertions
look-ahead
ou look-behind
portant sur des chaînes fixes de longueur
fixe. Cela ne ralentit quasiment pas l'analyse en cas de succès, ça peut
l'accélérer considérablement en cas d'échec.
Mais comme dit Merijn, « Pour les expression régulières,
Benchmark
est ton ami,
Abigail
est ton ami. » Il raconte également une présentation
où Abigail avait montré comment optimiser une expression
rationnelle. Lors de la réunion suivante, Abigail était
revenu sur ce sujet et avait dit que l'adaptation qu'il avait
présentée ne valait pas le coup. Elle permettait un gain de
temps, mais ce gain était de 0,4 %. Si ça se trouve,
sur une autre machine, ou bien avec une autre version de Perl,
ou en changeant la configuration (avec ou sans threads,
choix du malloc(), etc), le gain pouvait disparaître.
Autant laisser le programme en l'état.
Quelqu'un a tenté récemment d'installer
Attribute::Handlers,
d'Arthur Bergman
en utilisant
CPAN.pm.
Pour une raison obscure, CPAN.pm a tenté d'installer
Ponie,
du même
Arthur Bergman.
Le mongueur a donc été obligé de revenir
à l'ancienne méthode, tar, perl Makefile.PL
et les trois makecible.
Parallèlement à cela, le fait que nous tenions une
rubrique régulière,
ou plutôt
deux,
dans Linux-Mag avec en plus un logo
qui apparaît sur la première page fait que nous avons acquis la
renommée d'un groupe d'experts en programmation Perl et donc
les programmeurs débutants n'osent pas nous contacter ou venir
à nos réunions... alors que nos réunions abordent de nombreux
sujets autres que Perl, voire en dehors de l'informatique.
L'échéance pour le Pie-Thon est quasiment atteinte.
Nous demandons à Stéphane, le mieux informé d'entre nous,
s'il a des pronostics sur l'issue du pari. Stéphane n'est pas
optimiste. Sur les tests qui fonctionnent,
Parrot
s'en tire plutôt bien, mais il en reste qui ne fonctionnent pas.
De plus,
Dan
a des problèmes avec sa machine. Et il y a des problèmes
dans le groupe. De nombreuses personnes participent aux
développements sur Parrot, mais la plupart du temps c'est
pour les tâches annexes, comme l'écriture d'un interprêteur
TCL ou la rédaction de la documentation. Pour la machine
virtuelle à proprement parler, les contributeurs sont nettement
moins nombreux. Il semble que la raison en soit l'attitude de
Leo. En effet, il a tendance à rejeter la majorité des patchs
qui ne viennent pas de lui. Stéphane en a proposé 4 ou 5,
mais Leo en a accepté un seul. Pas étonnant dans ces conditions
que les bonnes volontés se raréfient.
Charles a repris une discussion qu'il avait lancée par messagerie
électronique au sujet des contrats envoyés par
Diamond Editions
à chaque article. Lu à la lettre, le contrat est très restrictif
pour les auteurs d'article (nous). Par exemple, il nous serait
impossible de reprendre les articles pour composer un livre
qui serait l'analogue Perl du
Léa-book.
Nous faisons confiance à Denis Bodor et à Diamond Editions
pour appliquer plutôt l'esprit du contrat, mais qui peut dire
si, dans quelques années, le titre Linux-Mag ne
sera pas vendu à un autre éditeur, voire une autre société
n'aura pas racheté Diamond-Editions ? Et qui peut dire
si les instances dirigeantes de cette nouvelle maison
d'édition ne préféreront pas appliquer la lettre du
contrat plutôt que son esprit ? La discussion se
poursuivra donc sur la liste, en précisant aux lecteurs de
cette liste en général et à Denis en particulier qu'il ne
s'agit pas d'un excès de méfiance contre lui, mais d'une
garantie pour une situation qui n'existe pas à l'heure actuelle
mais qui n'est pas exclue dans l'avenir.
Quelqu'un a apporté un nouveau livre sur Perl,
Perl Medic.
Je ne l'ai pas regardé en détail, mais simplement en le feuilletant,
il semble qu'il soit intéressant.
Philippe (Bl) a apporté, comme promis, le numéro du
Monde Informatique
où il est question de Perl et de Python.
On peut se demander ce qui a poussé la rédaction à illustrer
l'article avec un extrait du code écrit par BooK pour l'OPC
2000, un programme compatible pour un interpréteur Perl et un
interpréteur PostScript. On ne peut pas dire que ce soit
un programme représentatif de ce qu'un programmeur moyen
fait tous les jours. L'article donne également un tableau
comparatif, pour montrer les mérites respectifs et les
handicaps respectifs de langages
comme Perl et Python, comparés à C, Java, C++...
mais aussi Fortran et Cobol. Le contenu de ce tableau
est aussi farfelu que celui qui est paru en février 2003
dans L'Informaticien.
Notamment, nous nous interrogeons sur la signification
de la dernière ligne, « moulinettes ».
L'article comporte une interview
d'Eric (echo)
et certains se demandent comment il a pu laisser passer de telles
contre-vérités lorsque la rédaction lui a demandé de relire l'article.
Les autres pensent que la rédaction a dû lui communiquer seulement
la partie concernant son interview et qu'il n'a pas eu l'occasion de
donner son avis sur le reste.
Au sujet du Monde Informatique,
voici la citation d'un participant à la réunion :
Le Monde Informatique a ceci de commun avec
Playboy :
il nous fait fantasmer, mais personne ne voudrait être surpris en train
de l'acheter.
(lien à éviter si votre chef regarde par-dessus votre épaule :-).
Charles évoque l'un des gros problèmes d'Internet en ce moment, le spam.
Jérôme apporte son témoignage pour dire que l'un des moyens les
plus utilisés pour se procurer des adresses électroniques est le
service whois. Ainsi, il a déposé son nom de famille
comme nom de domaine et dès qu'il a été inscrit et que son nom
a été disponible sous whois, il a commencé à recevoir
du spam. Ensuite, il y a aussi ceux qui épluchent les
groupes de nouvelles et les pages web pour en extraire les
adresses électroniques.
Charles évoque également les virus qui se propagent, entre autres,
dans les messages de spam. Il demande s'il existait des logiciels
anti-virus et je lui répond que les logiciels anti-spam sont
indirectement des logiciels anti-virus, puisqu'ils déroutent
les messages vers un dossier poubelle, donc il est peu probable
que ces messages soient ouverts un jour. Charles raconte
comment certains virus
[ ou plutôt chevaux de Troie ou vers ? ]
bloquent votre machine. Le message comporte en pièce
jointe un fichier zippé protégé par mot de passe.
Le texte du message vous donne ce mot de passe et vous
suggère de dézipper la pièce jointe. Vous constatez
trop tard et à vos dépens que le document zippé était
un document énorme et que, du coup, son dézippage
bloque votre machine.
Il existe d'autres pratiques douteuses, associées aux noms de
domaine. David raconte comment son entreprise a reçu
une facture pour l'enregistrement d'un nom de domaine
dont il ne connaissait pas l'existence. Ce domaine correspondait
à peu près à l'activité de sa boîte, mais David a trouvé
la facture douteuse malgré tout. Il a cherché à savoir à
qui ce nom de domaine était attribué. whois
lui a répondu que ce nom de domaine était libre et qu'il
pouvait l'acquérir...
On cite également l'enregistrement d'un nom de domaine
pour la modique somme de 15 euros par mois.
Ou alors, vous pouvez enregistrer votre nom de domaine pour
une durée d'un siècle
et pour la modique somme de 999$. Reprenant certaines réflexions
de Lauren Weinstein, je fais remarquer qu'un abonnement
de 10 ans peut se justifier, mais pas un siècle car, si nous pouvons
prédire que l'Internet de 2014 aura encore beaucoup de points communs
avec celui de 2004, comment pouvons-nous en revanche avoir une idée
de ce que sera Internet au XXIIe siècle ?
Jérôme répond qu'en 2104, il y aura encore IPv6.
[ Un autre argument porte sur la durée de vie limitée d'un nom.
Peut-on être sûr
qu'« Andersen Consulting »
aura encore besoin du
nom de domaine
andersen-consulting.com ?
Peut-on être sûr que
« Thomson CSF »
aura encore besoin du nom de domaine
thomson-csf.com ?
]
Eric travaille chez un nouveau client depuis quelques jours.
Alors que son travail n'avait rien à voir avec Perl, au bout de
trois jours, quelqu'un est venu lui poser une question sur Perl.
Ensuite, il a appris qu'il était considéré par certains comme
la référence Perl du site. Tout cela parce que quelqu'un a recherché
son nom sur Internet et est tombé sur la
galerie de portraits
des Mongueurs, galerie où il figure avec son prénom et son nom.
Jérôme évoque également un entretien d'embauche où le candidat
et lui ont parlé des sujets habituels pendant la majeure partie
de l'entretien. Puis, à la dernière minute, Jérôme a demandé :
« Qui est Kogan ? » Le candidat était un rôliste et
Kogan [ ou un nom du même style ] est le nom de son
personnage habituel et le principal sujet du site personnel
du candidat. Lequel candidat a pu constater que Jérôme
avait préparé l'entretien !
Dans sa messagerie électronique, Nicolas a reçu quelque chose
qu'il n'avait pas encore vu : un commercial (de chez Oracle)
avait joint sa carte de visite au message. Non pas dans le corps
du texte ou bien en utilisant le format vcard comme
Nicolas aurait pu s'y attendre, mais en scannant une carte
de visite et en envoyant le
fichier GIF
obtenu.
Jérôme a déménagé récemment et, dans son nouveau logement, il avait
des problèmes pour sa connexion ADSL. La hot-line du fournisseur
d'accès n'a pas pu le dépanner. En revanche, il a trouvé sur un
forum quelques indications, dont une lui suggérant de « nettoyer
sa ligne ». En soulevant les caches muraux et en examinant
les branchements, il s'est aperçu qu'à un endroit, la ligne
téléphonique comportait un condensateur entre les deux fils.
Il a supprimé ce condensateur et il a rapidement obtenu
une augmentation du débit.
Certains sites web collaboratifs sont basés en partie sur le
concept de points d'expérience (terminologie
Perl Monks)
ou de points de karma (terminologie
Linux-FR).
Il existe toutefois quelques différences. Lorsque l'on consulte
les contributions des Perl Monks, on n'a aucune
notion du niveau d'expérience du contributeur, à moins
d'aller consulter sa page personnelle ou de le connaître
de réputation. En revanche, dans Linux-FR, un symbole accompagne
le texte de la contribution et l'on sait tout de suite si c'est
un vieux de la vieille ou un petit nouveau. Inévitablement, cela
influence l'opinion que le lecteur se fait du texte. Il a plus
tendance à être attentif à la contribution d'un ancien qu'à celle
d'un néophyte.
Un autre point qui a énervé Nicolas, c'est que pour poster une contribution
ou une réponse sur Linux-FR, il faut avoir un karma de 4 au minimum.
Il lui est arrivé de lire une discussion et de vouloir ajouter
une réponse ou une précision et il s'est fait jeter par le système
parce que son karma était à zéro. Du coup, il ne lit plus le site.
Quelqu'un parle d'un site analogue, spécialisé dans les problèmes
que peuvent rencontrer les administrateurs système travaillant sur
des machines HP.
Au début, tout allait bien, la communauté vivait du partage de
connaissances et chacun progressait en karma à son rythme.
Un jour, HP s'y est intéressé et a donné à son personnel la
consigne de participer à ce site le plus souvent possible.
Il y a donc eu un afflux soudain de nouveaux-venus qui, en
raison de leur activité, ont progressé en karma très rapidement
et ont dépassé les anciens. De quoi déstabiliser une telle
communauté.
Nous avons parlé de cette
installation off-shore
qui met à profit son extra-territorialité pour héberger des
sites web,
notamment pornos, qui seraient en infraction par rapport
aux lois de n'importe quel état de la planête. Les avis divergent
dans les détails. Certains placent cette installation dans la
Manche, les autres en Mer du Nord. Pour certains, il s'agit
d'une plate-forme pétrolière désaffectée, tandis que je pense
à une installation de défense anti-aérienne datant de la
Seconde Guerre Mondiale [ J'étais influencé par l'un des
rares épisodes de
Destination Danger
que j'ai vu. ]
L'installation comporte deux étages, celui du bas contenant les
différentes machines hébergeant les sites web, celui du haut
servant de logement à l'homme qui conduit cette affaire et qui
n'hésite pas à défendre son territoire le fusil à la main !
Nous nous interrogeons sur la façon dont cette installation
est connectée à Internet, surtout compte tenu du débit nécessaire.
Merijn ayant apporté son ordinateur portable pour nous montrer
son code Perl, nous pouvons constater qu'il est un adepte
de
vi,
plus précisément
elvis.
Il nous montre un gadget assez utile. Si vous êtes
en train d'éditer un fichier de données à longueur fixe,
obtenu par exemple par pack "A2A6A4A12",
une commande (que je n'ai pas notée) permet de tracer
en fond d'écran des
lignes verticales discrètes mais tout de même visibles entre les colonnes 2 et 3,
ainsi qu'entre les colonnes 8 et 9, puis 12 et 13, etc. ce qui permet
de matérialiser les champs du fichier.
Merijn, David et Jérôme ont évoqué les mérites des principaux gestionnaires
de base de données. Quand Jérôme a évoqué la possibilité, avec
Oracle, de choisir l'implantation physique des tablespaces
sur tel ou tel disque, histoire de ne pas mélanger les données, les
index et les verrous, Merijn a qualifié cet argument de
bullshit et de humbug,
soutenant que c'est au gestionnaire de base de données de
s'arranger à pouvoir paralléliser les accès aux données, aux index
et aux verrous. Si l'administrateur veut se garantir contre
les crashs disque, il utilise du RAID. Il n'a pas à se préoccuper
de quoi que ce soit d'autre pour l'installation physique.
Merijn nous apprend que, lorsqu'il faut choisir une base de données,
l'administration hollandaise choisit
Oracle.
C'est cher, très cher, ce qui procure à l'administration
un sentiment de sécurité : « si c'est si cher que
cela, c'est que cela vaut le coup ». En revanche, les
clients de la boîte de Merijn ont plutôt tendance à adopter
Unify. C'est aussi pour un sentiment de sécurité, mais basé sur
l'argument suivant de la boîte de Merijn :
Si vous utilisez Oracle, c'est vous qui l'administrez.
Et si la base de données plante, c'est votre problème
et c'est à vous de le régler.
Si vous utilisez Unify, nous sommes disposés
à en assurer l'administration et à corriger les
éventuels problèmes.
Un peu dans la lignée, il a été question de benchmarks pour comparer
MySQL et
PostgreSQL.
Les benchmarks sont toujours à l'avantage de MySQL, mais c'est
biaisé à la base. PostgreSQL sait faire beaucoup plus de choses
que MySQL (transactions, triggers, etc).
On pourrait (on devrait ?) envisager un benchmark demandant
des fonctions évoluées et à ce moment-là, PostgreSQL gagnerait
par abandon de son concurrent.
Quelqu'un a évoqué l'exposé de Jérôme aux
Journées Perl Francophones.
Ce dernier dissipe les doutes pour ceux qui en auraient encore
eu : son exposé sert à se mettre au même niveau que les
chefs (« décideurs »), ce n'est pas son vocabulaire habituel.
Il signale également une certaine parenté entre son exposé
et le businessloto.
Stéphane évoque un livre qu'il a déjà évoqué en réunion il y a longtemps.
Ce livre a été édité à l'occasion des 25 ans d'Unix, au milieu
des années 1990. Alors qu'il exposait le passé, mais aussi l'avenir
d'Unix, l'auteur cite Linux deux fois seulement, il n'a pas su
prédire le rôle que prendrait Linux dans les années qui ont suivi.
[ Remarque : prédire l'avenir est un exercice difficile,
il vaut mieux prédire le passé :-) ]
Et à quoi est due la position privilégiée de Linux parmi les
systèmes Unix de nos jours ? Il y a deux raisons.
La première est que Linux est apparu à une période où
la position des *BSD libres était bancale vis-à-vis
du BSD payant de Berkeley. L'autre raison est visible dans
les préoccupations pédagogiques de Linus et dans
ses rapports avec les autres contributeurs.
Lorsque Linus rejetait la contribution de quelqu'un, il
prenait le temps d'expliquer comment il voyait le développement
du noyau et pourquoi la contribution qu'il venait de rejeter
ne faisait pas avancer le noyau dans la bonne direction.
Certains ont expliqué que MS-DOS a malgré tout quelques
avantages sur Linux. En effet, MS-DOS peut booter sur une machine
qui a moins d'un Mo de RAM, ce qui n'est pas le cas de Linux.
D'autres font remarquer qu'il existait un projet, ELKS,
ou Embedded Linux Kernel System, destiné
à faire tourner Linux sur une configuration très légère.
Ce projet a été abandonné, au grand dam
d'Alan Cox.
ELKS n'a pas vu le jour, mais
MINT,
si. Pour ceux qui ne savent
pas, MINT est un système d'exploitation style Unix pour
remplacer le
TOS
d'Atari. Ah oui, le sigle signifie
Mint Is Not TOS.
Jérôme a évoqué une anecdote semblable à celle que j'ai mentionnée
il y a un an,
mais en plus grave. Le site où il travaillait
à l'époque se trouvait dans une tour, La Défense ou semblable.
La salle des machines se trouvait au huitième étage. La seule
façon de réfrigérer la salle était donc une climatisation
« à eau perdue », c'est-à-dire branchée sur l'eau
du robinet, en circuit ouvert. Un jour, les services généraux
de la tour ont prévenu tous les occupants qu'il y aurait une
coupure d'eau le samedi matin. Pour une raison indéterminée,
Jérôme et ses collègues n'ont pas été avertis. Le lundi matin,
lorsqu'ils sont revenus, ils ont essayé de se connecter aux
différents serveurs et cela ne fonctionnait pas. Ils sont
allés faire un tour en salle machine et ils ont tout de suite
compris la nature (à défaut de la cause) du problème :
la salle machine ressemblait à un sauna thermostaté à 90 degrés.
Un miracle, aucune machine n'a subi de dégradation physique
avec la température.
Une discussion s'est tenue entre Guillaume et Philippe (Bl)
au sujet du packaging des logiciels libres.
Guillaume évoque le cas des auteurs d'un logiciel qui
proposent leur oeuvre directement sous la forme d'une
archive .rpm. Le problème, c'est qu'une archive
.rpm est fortement liée à une distribution.
Ainsi, si cette archive
a été prévue pour une distribution
Red Hat,
elle ne fonctionnera pas sur une
Mandrake
et si elle a été prévue pour une
Mandrake stable, elle ne fonctionnera pas sur une Mandrake
de développement. Guillaume préfère que les
auteurs diffusent leurs logiciels sous la forme d'archives génériques
.tar.gz et que ces archives soient converties en
.rpm par ceux qui savent, c'est-à-dire, dans le cas
de Mandrake, les
employés de Mandrake et les contributeurs bénévoles permanents
de Mandrake.
À propos des problèmes relationnels dans l'équipe Parrot
évoqués ci-dessus,
quelqu'un propose de « forker ». Il y a eu au moins
une occasion où un fork a été couronné de
succès, c'est lorsque X11 a donné XFree.
Nous avons évoqué les
revendications de SCO
au sujet du
format d'exécutable ELF.
Guillaume (je crois) a signalé
l'existence d'un format pour débugguer les exécutables,
le format DWARF.
Est-ce dû à un admirateur de Tolkien ?
Il y a eu également COFF.
[ Dans le lien ci-dessus, cherchez "le retour" et lisez
le paragraphe correspondant. ]
Stéphane a été surpris d'apprendre que le format d'origine pour
les exécutables
était le format a.out. Il croyait que c'était uniquement
le nom par défaut de l'exécutable produit par une compilation,
il ne savait pas que le nom avait été attribué par extension
au format lui-même.
BooK et Eric on discuté d'XP (eXtreme Programming)
et du fait que BooK allait tenter d'utiliser ça sur un petit projet.
En fait, il se contente pour le moment d'un des principes :
Do the simplest thing that could possibly work.
Son idée est d'arrêter de commencer par coder dans les moindres
détails l'utilisation de Getopt::Long avant d'avoir les
fonctionnalités.
Cet exercice a déjà porté ses fruits, comme on a pu le constater sur
la liste articles : Philippe a modifié le script de mise à jour
pour faire marcher la conversion du pod avec coloration syntaxique des blocs
=begin tidy ... =end tidy.
Pendant tout le développement, le nom du fichier source etait
codé en dur et le résultat sortait sur STDOUT... Cela aide à se
concentrer sur l'essentiel, puisqu'il a réussi à faire ce qu'il
voulait beaucoup plus rapidement que s'il avait commencé
par s'intéresser aux petits détails annexes. Et maintenant,
il a même compris une partie du fonctionnement de
Pod::POM.
Lors de la réunion, à je ne sais plus quelle occasion, quelqu'un a dit que
tout pouvait se résoudre avec un niveau d'indirection supplémentaire.
Emmanuel apprend à ceux qui ne le sauraient pas encore
que cela fait partie des
12 vérités dans le monde du réseau,
une RFC Internet
à lire et à conserver en mémoire.
Lire et parler couramment une langue étrangère peut jouer des
tours. C'est ainsi que Stéphane sait exprimer certains concepts
en anglais, mais qu'il ne trouve pas les bons termes en français.
Il demande s'il existe des dictionnaires de traduction anglais-français.
Charles lui propose le
« Grand dictionnaire terminologique de l'office québécois de la langue française »
et d'autres lui suggèrent
Babelfish.
Stéphane semble faire
confiance plutôt à Charles.
Guillaume est allé aux
Rencontres Mondiales du Logiciel Libre
à Bordeaux. Il évoque son retour en voiture. Arrivant à la Porte
d'Orléans, il s'est fait avoir par la signalisation ambiguë et
s'est retrouvé sur l'autoroute du sud. La première sortie qui lui
a permis de faire demi-tour a été la sortie d'Orly. Agréable quand
on a déjà six à sept heures de conduite dans les bras...
Nous avons pu admirer le briquet et le T-shirt d'Eric.
Son briquet présente un dessin sur le côté, lequel
dessin s'éclaire lorsqu'il soulève le cache de la partie
supérieure. Puis, lorsqu'il allume le briquet, après une
seconde ou deux, la flamme vire au vert grâce à un filament
de cuivre. Quant au T-shirt, il représente une scène
du grand classique,
Space Invaders.
Il nous signale qu'il en a un autre représentant
un Space Invader en gros et que c'est
ce T-shirt qu'il mettra le lendemain pour aller travailler.
Eric se fournit chez
Open Stuff.
Nous avons parlé du marché d'occasion du livre. Tout d'abord, les
éditeurs s'inquiètent du fait qu'Amazon se lance dans le
marché d'occasion car, affirment-ils, cela va leur faire
du tort en asphyxiant le marché du livre neuf. Or,
un livre neuf ne reste sur les rayons des librairies
généralistes (FNAC par exemple) que pendant quatre mois
environ. Si l'on s'intéresse à un livre paru il y a
plus de quatre mois et pour lequel on ne connaît pas
de librairie spécialisée, alors le seul recours est
Amazon.
« Faux ! » répond un participant (Jérôme
ou Charles, je ne sais plus). Il existe une librairie
généraliste qui conserve des stocks importants et qui a
un site web avec la possibilité de rechercher l'existence
d'un livre :
Le Furet du Nord.
Et en plus, cela
ne cautionne pas les brevets logiciels. Pour ceux
qui préfèrent pratiquer le lèche-vitrine (ou plutôt le
lèche-rayon dans le cas d'une librairie), le Furet du Nord
est situé géographiquement à Lille.
Ensuite, BooK nous rappelle comment il a réussi à se procurer
un livre d'informatique des années 70.
Il a cherché le titre sur
Google
et il a trouvé deux pages répondant à la requête.
L'une de ces deux pages indiquait que le livre
était à vendre. Philippe a donc contacté l'individu
en question et a convenu d'un rendez-vous.
Il se sont donc retrouvés à la nuit tombante,
sur un quai de la Seine. Ils se sont approchés, se sont
donné le signe de reconnaissance et ont échangé
le livre contre la somme convenue. En fait, si le
récit de BooK semble digne de foi dans les grandes lignes
je ne suis pas sûr que les détails soient tous
véridiques. Peut-être Philippe en a-t-il rajouté
pour faire plus film noir ou film d'espionnage.
[ Philippe : tout est vrai ! ]
Il est question des lois sur les droits d'auteur
et sur le copyright. Au Canada, la durée d'un copyright
est de 50 ans. En France, les droits d'auteur durent
70 ans. Cela a valu des problèmes à certains Canadiens
qui ont cru qu'ils pouvaient mettre à disposition du public
des publications françaises qui dataient d'il y a un petit
peu plus de 50 ans. BooK évoque également le cas de
Charles Trenet. À la fin de sa carrière, il ne disposait plus
des droits de certaines chansons qu'il avait composées à
ses débuts.
Post-scriptum
Guy, un lecteur alerte (pour reprendre l'expression de Dave Barry)
m'a signalé quelques imprécisions dans le texte ci-dessus.
Les 70 ans courent à partir du décès de
l'auteur. Voir
l'article L123-1 du Code de la Propriété Intellectuelle
L'auteur jouit, sa vie durant, du droit exclusif d'exploiter son oeuvre
sous quelque forme que ce soit et d'en tirer un profit pécuniaire. Au décès
de l'auteur, ce droit persiste au bénéfice de ses ayants droit pendant
l'année civile en cours et les soixante-dix années qui suivent.
(il y a même des cas qui allongent cette durée de 70 ans -- voir les articles
L123-8, L123-9 et L123-10).
[ Désolé, l'URL fourni par Guy comportait des informations de session,
ce qui fait qu'il est impossible de poser un marque-page vers les
codes qui vous intéressent. Il va falloir faire la recherche vous-mêmes. ]
BooK évoque également les Cent Mille Milliards de Poèmes.
Je ne donnerai pas ici l'auteur pour des raisons qui apparaîtront
dans la suite. L'auteur de cet ouvrage a composé 10 sonnets
(un sonnet faisant 14 vers) avec les mêmes rimes.
Ensuite, l'imprimeur a composé les poèmes sur des pages
de droite d'un livre avec de larges interlignes.
Ensuite, il a découpé les dix pages en lanières, chaque
lanière correspondant à un vers d'un poème. Le lecteur du livre
soulève un nombre aléatoire de lanières. La combinatoire étant
ce qu'elle est, il existe donc 1014 combinaisons
possibles, donc le lecteur lit un poème que, vraisemblablement,
personne d'autre n'a jamais lu. Tout cela pour dire
que BooK avait repris les poèmes sur une page web et
en avait fait une page CGI, en hommage au poète
disparu une vingtaine d'années auparavant. Un jour, BooK a été prévenu
que le fils du poète cherchait sur Internet qui
utilisait les oeuvres de son père. BooK a rapidement
remplacé les vers du poète par d'autres de sa composition.
Cela lui a évité d'être inquiété pour plagiat
et pour violation des droits d'auteur.
Eric évoque la dernière séquence de
Autant en Emporte le Vent.
Scarlett O'Hara clôt le film avec la réplique :
« Demain est un autre jour. »
Constatant que c'est une phrase de 7 syllabes,
Eric demande si Margaret Mitchell a voulu
caser un haïku dans le roman.
Eric demande également si c'est dans ce film qu'il y a
une chute dans l'escalier. Je confirme que c'est bien
le cas. Quelqu'un d'autre signale qu'il y a une scène
semblable dans
Les Oiseaux se Cachent pour Mourir.
Et par extension, nous évoquons des scènes apparentées,
comme la descente d'escalier en landau, dans
le Cuirassé Potemkine
et dans
les Incorruptibles,
ou bien la chute dans l'ascenseur dans
Friends.
Lorsqu'il a été question de haïku, BooK a évoqué une autre
forme poétique japonaise, le tonka. Il n'a pas pu
nous en dire beaucoup plus et a fini par admettre que
c'était peut-être un
camion-jouet.
Et puisqu'il est question de haïku, je me permets
une digression sur un sujet auquel je n'ai pas pensé lors de la
réunion. J'ai relu récemment
Good Omens
de Terry Pratchett
et deux points m'ont fait penser à un autre admirateur de Pratchett,
Damian Conway.
Parmi les héros du livre, on trouve un ange et un démon.
Cela ne vous fait-il pas penser à la
page perso de Damian Conway
avec ses deux photos arrangées ?
Le livre fait intervenir également une voiture munie d'un appareil à synthèse
vocale et qui, lorsque le réservoir est presque vide ou lorsque vous
avez oublié de boucler votre ceinture, vous prévient par un
haïku :
Late frost burns the bloom
Would a fool not let the belt
Restrain the body?
ou bien
The cherry blossom
Tumbles from the highest tree.
One needs more petrol.
Ces messages d'avertissement ne vous rappellent-t-ils pas un
module du même Damian ?
Un an après, David se souvient encore du evil green stuff
qu'il a bu la veille de
YAPC::Paris.
En revanche, le nom lui échappe. Un nom qui sonne
basque est évoqué (mais je ne l'ai pas retenu). Puis
quelqu'un d'autre suggère « Etorki ». Cela sonne
bien basque, mais cela ne se boit pas et ce n'est
pas vert. Ou peut-être est-ce « Izarra » ?
Il y a eu un duel digne de
Règlement de Compte à OK Corral.
Sauf qu'au lieu d'utiliser un colt, BooK et Eric ont dégainé
chacun leur appareil photo et c'est Eric qui a tiré le premier.
Nous avons vu l'éclair du tir, mais nous n'avons pas entendu la
détonation.
En fin de soirée, un type qui devait se sentir seul a tenté de faire ami-ami
avec nous en offrant des bières aux derniers présents. La difficulté pour
engager la conversation nous a permis de constater que tout compte fait, notre
point commun c'est bien l'informatique et non la bière.