Présents à la réunion, en fonction de l'ordre d'arrivée approximatif :
Laurent (B),
moi,
Patrick (un nouveau qui est venu à OSDC.fr),
Dam's,
Sara,
Steve,
Richard,
Nils,
Laurent (G),
Nicolas,
Éric,
Théo,
David (L),
et Olivier.
Nous avons mangé des salades composées aux magrets de canard, aux lardons ou au poulet et au curry,
et des plats principaux plutôt pour l'hiver, comme du hachis parmentier ou une andouillette.
Nous avons bu diverses bières, dont de la bière Orval et de la Martins, ainsi que de la vodka,
un Perrier-menthe et un Ricard.
La conférence OSDC.fr
est terminée. Et la réunion de debriefing sur IRC
s'est passée la veille, le mardi 13. Cela s'est globalement bien
passé. Il y a eu quelques hics, certains visibles des participants,
comme l'oubli du sucre pour le café, d'autres que seuls les organisateurs
ont vécu, comme les problèmes pour accéder à la Cité des Sciences
avant 9 heures.
Un problème auquel je n'ai pas été sensible, mais que Laurent a
remarqué, c'est celui des affiches de la
Cité des Sciences
destinées à diriger les participants vers le
lieu de la conférence. Ces affiches comportaient le logo
de la conférence avec une taille plus petite que les
logos des trois principaux langages. Laurent aurait préféré
privilégier le logo de la conférence.
Un autre problème a concerné la prise d'images dans la salle
« Agora ». Le serveur destiné à traiter les images
rebootait toutes les demi-heures. D'accord, dans les
conditions d'utilisation du Wifi de la Cité des Sciences,
il est écrit qu'il est interdit d'utiliser le wifi
pour du streaming vidéo et autres activités
à haut débit. Cela ne s'applique
pas à la caméra et au serveur installés dans la salle de
régie de l'Agora, car ils sont reliés à Internet par une liaison
filaire permettant un débit suffisant. Donc, pourquoi
ces incidents à répétition ?
Il n'y avait pas que
Perl,
Python
et Ruby.
Il y a eu notamment deux exposés sur
Smalltalk,
par Stéphane Ducasse,
sur Seaside
et Pharo.
Dans Pharo, j'ai bien aimé le
method-finder. Vous indiquez
à cet utilitaire les valeurs des paramètres en
entrée et la valeur du résultat, puis le
method finder vous propose
les méthodes qui permettent de passer de l'un à
l'autre. Par exemple, vous soumettez des paramètres
1 et 3 avec un résultat 4, le method finder
vous répondra en proposant l'addition.
Et à la suite de la conférence, il y a eu la polémique
du pratiquant de
Java,
qui s'est plaint du mauvais traitement réservé
à son langage favori. On peut remarquer que les
habitués de la liste ont abouti rapidement à un consensus
pour désamorcer le conflit et faire progresser l'argumentation
dans un sens un peu plus positif.
Sara
a toujours la même activité
qu'il y a neuf ans,
dans une société de conseil spécialisée dans la géographie
ou plus précisément dans les
GIS,
c'est-à-dire les systèmes d'information géographiques.
À certaines occasions, elle a travaillé à l'étranger,
par exemple en Serbie, si j'ai bien compris.
Laurent (B) a voulu installer le module
d'Olivier
pour obtenir la date de la prochaine réunion des Mongueurs de Paris,
Acme::PM::Paris::Meetings.
Mais comme je l'ai expliqué
dans mon exposé sur les dates et les heures
à propos de Bundle::DateTime::complete,
certains modules de dates ont de très nombreuses dépendances.
Et comme je l'ai remarqué en installant Bundle::DateTime::complete
avec CPAN.pm, il demande à plusieurs reprises s'il faut installer le
prérequis DateTime::Format::Builder
ou le prérequis DateTime::Set.
En fait, il semblerait que les dépendances de ces modules soient
encore plus importantes que celles, par exemple, de
Moose.
À ce propos, quelqu'un a raconté une anecdote sur le changement
d'heure d'été.
La date des changements d'heure est définie
par les autorités nationales de chaque pays avec un horizon
de, si je me souviens bien, trois ans en général.
Cela veut dire que la
base de données Olson
et le module DateTime::TimeZone
doivent être mis à niveau régulièrement.
L'anecdote concerne un pays arabe (la
Tunisie,
si j'ai bien compris), qui, une année, a décidé de modifier
la date du passage à l'heure d'été le jour-même, pour des
raisons de synchronisation avec le Ramadan.
Du coup, cela a répandu le chaos dans plusieurs domaines du
commerce et de l'industrie.
Par exemple, les compagnies aériennes avaient émis des billets
avec l'heure locale en tenant compte du changement d'horaire ancienne version,
mais avec la modification de la date du changement d'horaire,
de nombreux billets n'étaient plus valables.
Patrick demande quels sont les moyens en Perl de traiter
les exceptions avec try ... catch par exemple.
Il y a plusieurs extensions comme
Exception::Class
qui renvoie un objet de type Exception::Class
au lieu d'une simple chaîne de caractères contenant
le message d'erreur.
Sinon, le mécanisme standard est de faire un
eval
avec un
die
puis en testant le contenu de
$@.
Sinon, il faut savoir que les modules proposant du sucre
syntactique avec try et catch sont de fait
incompatibles entre eux ainsi qu'avec les autres modules utilisant
ces deux mots-clés.
Patrick demande également quelle est la meilleure interface
graphique en Perl. Nous évoquons les différents
modules connus et déjà présentés :
Tk,
qui oblige le programmeur à écrire avec un style
TCL
et une syntaxe Perl,
Qt,
qui oblige le programmeur à écrire avec un style
C++
et une syntaxe Perl,
Gtk2
qui, pour moi, oblige le programmeur à trop
de code administratif
et WxWidget,
qui semble présenter le meilleur compromis
entre l'élégance graphique et la simplicité
de programmation.
Et il faut ajouter à tout cela
Curses,
avec la présentation de Dam's à OSDC.fr.
Mais en fait, de nos jours, on tend à écrire
les applications en mode web, de façon que la
plupart des navigateurs puisse l'afficher.
Et ce n'est pas une technique aussi récente que
cela, même en HTML 1.0, on disposait déjà
des formulaires.
Un des avantages de Gtk2 et de WxWidgets, c'est
l'existence de
Glade
et de WxGlade.
Ces deux outils permettent de construire une interface
utilisateur en la desssinant avec la souris et avec
des palettes proposant les différents widgets
disponibles. Ensuite, le programme génère un fichier
XML pour mémoriser la dsecription de cette interface utilisateur.
Ultérieurement, si vous voulez modifier cette interface,
vous pouvez reprendre le fichier XML et le charger
dans Glade ou WxGlade, sans qu'il y ait de conflit avec
le code Perl que vous avez déjà tapé, puisqu'il se trouve
dans un autre fichier.
Cela nécessite, évidemment, que l'interface soit
suffisamment statique : pas de widgets
qui apparaissent, disparaissent, changent
de dimensions ou d'aspect, etc.
Quelqu'un a posé la question de quel était l'intérêt
de Chrome
du point de vue de
Google.
Certains y voient la volonté de Google
de réduire la part du système d'exploitation
dans le vécu de l'utilisateur.
Une autre réponse semble être que cela permet à
Google de disposer d'un logiciel sur les postes
clients et de rassembler des informations
sur ledit poste client, notamment d'identifier
l'émetteur d'une requête. C'est ce qui est marqué
dans les conditions d'utilisation de Chrome
ou de la
barre d'outils Google
(dont le but pour Google est identique) : « Des informations
d'installation pourront être collectées par
Google. »
J'évoque les affiches de publicité que j'ai
vues récemment sur les quais des gares
SNCF. Un site web,
OOdoc,
propose d'acheter des documents dont vous
n'avez plus l'utilité pour les vendre sur
Internet : thèses, rapports, mémoires,
etc. Une tentative pour faire du
data-mining
d'un nouveau genre ?
Nous avons évoqué le
problème
récent de T-Mobile.
Le principe de l'abonnement à T-Mobile
est que les abonnés disposent d'un espace
de stockage largement supérieur aux capacités
de leur téléphone, car leurs documents personnels
sont stockés sur les serveurs T-Mobile.
Ou plutôt, sur les serveurs d'un prestataire
de T-Mobile. Et chaque fois que les abonnés consultent
leur agenda, leur carnet d'adresses, leurs photos,
ceux-ci sont téléchargés depuis les serveurs.
Or, les données ont disparu des serveurs.
« Pas de problème, nos disques sont en RAID,
donc nous avons une sauvegarde. » se sont dit
les admins du prestataire. Sauf que le RAID constitue
une solution de secours uniquement pour les défaillances
matérielles des unités de disque. Si les fichiers sont
détruits par un programme ou par le système d'exploitation,
cet effacement est fidèlement répliqué d'un disque
sur un autre.
[ Il semblerait que le problème soit dû à un
sabotage...
]
Donc, il faut bien vérifier le fonctionnement
des sauvegardes. Et vérifier que l'on peut
restaurer des fichiers à partir de ces
sauvegardes. Et certains ont évoqué des problèmes
vécus à propos des sauvegardes. Par exemple, une
erreur de syntaxe dans un fichier pour
cron
qui faisait que la sauvegarde avait lieu toutes
les deux heures au lieu de toutes les
vingt-quatre heures. Et pour tout arranger,
ce fichier crontab avait été répliqué sur
de nombreux serveurs du site. Et comment rétablir
une situation normale ? En se connectant en
ssh
pour faire un kill sur les
processus de sauvegarde en trop ? Sauf que ces
processus de sauvegarde fonctionnent en
rsync via ssh, donc cela ne fait
guère qu'une connexion ssh de plus noyée
dans la masse... D'où la solution plus radicale
consistant à débrancher l'alimentation du serveur !
Quelqu'un évoque la capture de fichiers vidéos
transmis par Wifi. Compte tenu de la qualité de
la liaison sans-fil, des trames se perdent de
temps en temps. Mais si le récepteur sait
compenser la disparition d'une trame vidéo,
il ne sait pas le faire pour une trame audio.
Donc, le son se désynchronise peu à peu de l'image.
Apparemment, c'est indépendant du format
utilisé (Ogg, Theora, autre) et cela vient bien
du Wifi, car le problème n'existe pas avec
une liaison filaire.
Richard se pose un autre problème au sujet
des vidéos. Les films passent au cinéma en
24 images par seconde, alors que les
télévisions européennes fonctionnent en
25 images par seconde. Comment se fait
la conversion ? Il a essayé de prendre
un fichier vidéo à 24 im/s et, dans ce fichier,
répéter chaque image dont le numéro est divisible
par 24. Donc l'image se fige pendant 4 centièmes
de seconde. Cela a beau être très bref,
l'œil humain détecte quand même que l'image
se fige pendant ce court intervalle de temps.
En cherchant un peu plus loin, Richard a appris
ce que je savais déjà, que la télévision diffuse
les films tels quels en 25 im/s, donc légèrement
accélérés, avec une durée réduite de 4 %.
Comme la bande-son est synchronisée avec l'image,
elle est elle aussi accélérée, ce qui fait que les
sons sont légèrement plus aigus. Par exemple, au
lieu de produire un son à 440 Hz, un diapason
produirait un son à 458 Hz. Mais là,
ajoute Richard, il existe des algorithmes de traitement
du signal qui permettent de réduire la fréquence et
de retomber sur un véritable « la »
à 440 Hz malgré le passage en 25 im/s.
Sara et Steve visitent Paris en tandem. Il s'agit d'un
tandem assis
(recumbent tandem).
Ils l'ont démonté avant de prendre l'avion, emballé les pièces dans deux
valises, puis remonté à l'arrivée en France.
Et depuis, ils sillonnent les rues de la capitale sur
leur tandem. Hélas, l'un des éléments est cassé et il n'y
a personne en France pour réparer, il leur a fallu commander
la pièce manquante aux États-Unis pour la réparation.
Ils préfèrent visiter Paris en tandem que visiter Amsterdam,
les gens sont plus accueillants à Paris. Cela nous a étonnés,
connaissant la réputation pro-vélo d'Amsterdam.
Il y a eu une discussion que j'ai manquée quasiment en totalité
sur l'avantage du vélo assis par rapport au vélo classique
(presque debout, les fesses sur une selle). J'ai juste entendu
David expliquer que l'on peut pédaler plus efficacement
lorsque l'on est assis sur un siège que lorsque l'on est
perché sur une selle.
[ Mais si l'on compare les photos de
Bryan Allen
sur le Gossamer Condor
et sur le Gossamer Albatross,
on peut se demander si la posture du cycliste a
une grande importance.
]
Laurent a parlé de la
Japan Expo
dont on voit la publicité dans les couloirs du métro.
Il a ensuite enchaîné vers le cinéma japonais
[ hélas, pour avoir suivi une conversation sur
le même thème avec Sébastien (maddingue) lors d'OSDC.fr,
je risque fort de mélanger les deux conversations
]
Il a évoqué notamment l'œuvre de
Miyazaki,
avec des films tels que
Mon Voisin Totoro,
Princesse Mononoke
ou Le chateau dans le ciel.
Il a évoqué également
Evangelion.
L'un des films tirés de cette série est sorti
dans des conditions déplorables. En France, il est sorti
dans 5 salles (cinq !), à raison d'une
séance par jour et il a été retiré de l'affiche
après deux semaines d'exploitation.
Comment faire plaisir aux amateurs de la série
dans ces conditions ?
Nous avons parlé d'un film récent,
District 9
mais le seul d'entre nous qui l'ait vu (Nils
ou Richard ?) a immédiatement fait dériver
le sujet en racontant que le film lui avait fait
penser à
Starship Troopers.
Et nous nous sommes remémorés les scènes d'anthologie
de ce film, comme les nombreuses publicités de propagande
qui émaillent le film. Il y a aussi la scène où un bidasse
ôte son casque pendant un exercice
[ ou
lors d'un forage
comme le dit une ancienne version de
l'article de la Wikipedia francophone,
les anglophones apprécieront
]
Il y a également la scène où un journaliste se fait
embrocher par un arachnide, tandis que son caméraman continue
à le filmer, plus intéressé à obtenir un film qui fera peut-être
date dans l'histoire du journalisme qu'à sauver la peau de
son collègue. Il y a également la scène finale, lorsque les
héros arrivent à mettre la main sur un arachnide-cerveau
et sortent la réplique à double sens :
We have a brain!
Le ton général du film est d'autant plus déroutant que le
roman
dont il est tiré est un
roman
sérieux de Robert Heinlein.
Les images numériques se répandent de plus en plus dans
les salles obscures. Mais parfois, on a des surprises.
Richard est allé voir un film, sans se préoccuper de
savoir s'il passait en numérique ou en analogique.
Les publicités arrivent et, ô bonheur, elles sont
en numérique. Mais quand vient le tour du film d'occuper
l'écran, Richard constate amèrement qu'il esit
en analogique, à l'inverse des publicités qui le précèdent.
Nous avons également parlé du film
Avatar,
qui sortira au mois de décembre mais dont on peut déjà
voir quelques extraits. Ce film sera en numérique
et en 3D. Au sujet des films en 3D, je signale
avoir vu deux films en 3D avec des lunettes
polarisantes :
Jaws 3D
(où le « 3 » représente à la fois le nombre de dimensions
spatiales et le rang du film dans la série) et
Le Crime était presque parfait.
Dans les deux cas, j'ai eu très vite mal à la tête
et j'ai continué à regarder le film d'un seul œil.
Nous avons parlé de l'apprentissage du japonais.
Pour la phonétique, c'est relativement simple pour nos
oreilles et nos cordes vocales. Mais pour l'écriture,
c'est une autre paire de manche.
Il faut apprendre les
kanji :
tracé, prononciation et signification.
Laurent (B) nous annonce fièrement qu'il maîtrise le
romaji.
Et il y a d'autres subtilités auxquelles nous ne
sommes pas habitués. Par exemple, les termes à utiliser
ne sont pas les mêmes selon le niveau
dans la hiérarchie sociale
de l'interlocuteur ou des personnes citées dans la
conversation.
Enfin, un dernier exemple dont j'étais déjà au
courant pour avoir lu
Number Words and Number Symbols
de Karl Menninger,
[ d'ailleurs, les exemples ci-dessous sont tirés du livre ]
le comptage d'objets concrets est déroutant.
La langue japonaise ne se contente pas d'accoler le mot désignant
l'objet avec le mot désignant le nombre, il en faut
un troisième qui varie avec le type d'objet compté.
Par exemple, pour évoquer « 4 tables »,
il faut accoler le mot japonais pour « table »,
le mot japonais pour « 4 » et le mot
kyaku, qui s'applique à tous les objets
munis de pieds. Pour 4 arbres, il faut utiliser
« arbre », « 4 » et hon
et pour des poèmes, il faudra accoler
« poème », « 4 » et shu.
L'apprentissage du chinois
est aussi ardu que celui du japonais pour ce qui
est des idéogrammes, mais beaucoup plus difficile
pour la phonétique.
En effet, c'est une langue tonale, c'est-à-dire
que la hauteur d'un phonème varie lorsqu'on le prononce,
que cette variation a de l'importance pour la signification
de ce phonème et qu'en particulier, elle permet de différentier
ce que nous considérerions comme des homonymes, mais qui n'en sont pas
vraiment, à cause de cette tonalité. En fait, lorsque l'on
parle du chinois, c'est un peu simplificateur, puisque
cela confond plusieurs langues, dont le mandarin qui
possède 5 tons et le cantonais qui en possède 9.
Il est bien connu que le quartier chinois se trouve
dans le 13e arrondissement. Il est bien connu
également que ce quartier chinois héberge également
une communauté vietnamienne et une communauté
thaïlandaise importantes. Mais il n'y a pas
(ou peu) de japonais ni de coréens. En effet,
ceux-ci ont plutôt tendance à se grouper
du côté de l'Opéra et de l'avenue éponyme.
Ce n'est pas le même standing
social. Mais également, les immigrés japonais
et coréens ne proviennent pas des mêmes classes
sociales que les immigrés des autres pays asiatiques.