La réunion des anciens alcoviques
Un historique de toutes nos réunions
Table des matières
La voix du secrétaire (Jean), avec l'aide de Julien
Présents à la réunion, en fonction de la position autour de la table
- Jérôme,
- David,
- Nicolas,
- Éric (glb),
- Romain,
- Théo,
- Pierre,
- moi,
- Alexandre,
- Charles,
- Julien,
- Benoît,
- et Sébastien.
Comme les mois précédents, nous sommes allés
au Café Indiana, juste à côté de la pharmacie qui remplace la Taverne
République. Nous avons mangé des chimichangas,
des fajitas,
des blue cheese burgers et une entrecôte. Nous avons bu de la bière
(Arfliger ou quelque chose comme ça, Heineken, Blanche) et deux daïquiris (un pour moi,
un pour Pierre).
Nous avons parlé de Perl,
d'Internet,
d'informatique
et d'autres sujets.
-
Romain n'a pas pu participer aux
Journées Perl Francophones 2007
à Lyon.
Il nous demande comment cela s'est passé,
si la nourriture était bonne. Tout de même,
cela se passait à Lyon, capitale de la
gastronomie !
-
Romain me demande ensuite si j'ai refait ma
communication éclair sur les roues.
Éh bien non, je suis passé à l'étape suivante.
Après avoir montré que « réinventer la roue »
était une mauvaise métaphore pour les mauvaises idées,
j'ai présenté une bonne métaphore pour
les mauvaises idées :
« réinventer la brosse à dents ».
J'avais préparé des transparents HTML
avec des photos. Mais je n'ai pas réussi
à les afficher sur le vidéo-projecteur.
Heureusement, j'avais également prévu
de montrer des exemples de brosses à dents,
les unes avec un manche anti-dérapant, les autres
avec un capuchon pour protéger la tête portant les
soies (comme si on ne les rangeait pas à l'abri dans le
placard de la salle de bains).
-
Pierre travaille chez
Red Hat.
Il utilise donc des
RPM
pour installer des
logiciels. C'est pour cela qu'il n'aime pas
installer des modules Perl à partir de
CPAN,
car cela se mélangerait avec les fichiers
provenant des
RPM Perl
stockés dans
/usr/lib/perl/.
Une possibilité consiste à installer le module, puis
constituer un
RPM
pour mieux coller à l'architecture
Red Hat. Une autre possibilité consiste à
installer le module dans un répertoire
personnel, puis à ajouter ce répertoire
à la variable
@INC.
En fait, Pierre ne savait pas que les modules
installés « à la main » depuis CPAN
sont installés dans
/usr/lib/perl/site_perl/,
donc sans marcher sur les pieds des modules
standards.
-
Nous avons parlé d'un GUI très décrié,
Perl/Tk.
Charles apprécie ce GUI, parce qu'il
est portable. Bon, d'accord, il y a
WxWidgets,
mais c'est assez récent. Dans le temps,
le seul GUI portable était Perl/Tk.
C'est également le premier GUI qui
a utilisé un pack manager.
Moi, je trouve que Perl/Tk est
le plus programmer-friendly.
L'initialisation d'une fenêtre avec tous les
widgets qui la peuplent
est nettement plus simple en Perl/Tk qu'en
Gtk.
-
Charles est arrivé à créer une
pendule d'échecs
en Perl/Tk. D'une part il y a
les événements du genre clic de souris
ou appui sur une touche du clavier,
d'autre part la pendule doit également
réagir au temps qui passe, même si
aucun événement ne lui arrive de l'extérieur.
-
Là où Charles et moi divergeons, c'est
sur l'origine de Tk. Pour Charles,
Tk est un développement qui a pris pour
base le GUI de Tcl. Pour moi, Tk est
le GUI de Tcl. Tcl sans Tk,
c'est un pur langage de script, qui
fonctionne avec une ligne de commande
et des fichiers séquentiels en entrée
et en sortie. Pour Charles, Tcl sans
Tk sait déjà dessiner des boutons
et des fenêtres.
Apparamment, le
wiki Tcl francophone
et Wikipedia
semblent me donner raison.
-
Certains ont fait remarquer que la réunion ressemblait
assez à une réunion d'anciens alcoviques
(c'est-à-dire qui ont travaillé chez
Alcove).
En effet, il y a Benoît, Pierre, Alexandre et Julien.
Et en fait, j'ai cru à tort que
Romain et Éric en faisaient partie également, compte
tenu qu'ils étaient déjà en relation avec les
précédents avant de participer aux réunions
de Mongueurs.
-
Il paraît que ma mémoire étonne de nombreuses personnes.
Il y a quelqu'un d'autre qui a une mémoire importante,
le
« bisounours
garou ».
Il garde trace de
tout ce qui a été dit dans son milieu professionnel
et il le ressort au plus mauvais moment. Par exemple,
c'est lui qui insiste pour obtenir enfin la rédaction
de la documentation promise depuis belle lurette.
Ou bien alors, il se rappelle une rebuffade qu'il
a subie, lorsqu'il a voulu déplacer une réunion
pour des raisons professionnelles. En effet, les
réunions ont toujours lieu le lundi en fin d'après-midi,
et « il n'y a pas de raison que cela change ».
C'est ainsi que notre Bisounours se présentera
le lundi 24 décembre pour participer à la réunion.
Il se doute qu'il n'y aura pas grand monde (euphémisme
pour dire « personne ») et il ressortira
la règle intangible à son interlocuteur.
-
Si David n'a pas encore eu le temps de lire
Science of Discworld,
il lit quand même du
Terry Pratchett
en ce moment. Il s'agit de la série
Tiffany Aching, c'est-à-dire une fillette
de 8 ans dans le premier roman, de 14 ans
dans le troisième, issue d'une famille de bergers
mais promise à un avenir de sorcière.
Cette série est destinée aux
« young adults »
(expression politiquement correcte pour
« adolescents » ou « pré-adolescents »).
C'est pourquoi David le lit avec sa fille,
qui est emballée par ces romans.
-
Quelqu'un a vu une vidéo montrant une femme américaine
à qui l'on posait quelques questions de géographie.
Par exemple : « Dans quel pays d'Europe
se trouve
Budapest ? »
La réponse de cette
femme a été : « Parce que l'Europe, ce n'est
pas un pays ? » Après quelques échanges,
la personne a émis l'hypothèse qu'à Budapest
« les gens doivent parler français ».
Cela me rappelle une phrase sortie, vraisemblablement,
de fortune :
War is God's way to teach geography to Americans.
Traduit en français, en tenant compte de la propension
américaine à mettre Dieu partout et de la réticence
française à faire de même :
C'est grâce aux guerres que les Américains apprennent
la géographie.
En effet, tous les Américains peuvent situer le
Viêt-nam et l'Irak sur un planisphère. Mais rares
sont ceux qui peuvent situer, par exemple, la Hongrie.
-
Nous avons évoqué l'histoire de l'euro. Il est difficile
de donner une date exacte de l'apparition de
l'euro.
En effet, pour le commun des mortels, l'euro est
apparu le 1er janvier 2002, avec une
période de quelques semaines où il a cohabité avec
le franc
ou les autres monnaies européennes.
Mais en fait, l'euro était déjà en vigueur depuis 1999 pour
quelques catégories réduites de personnes : les
banquiers et les courtiers en bourse.
D'autre part, si l'Angleterre n'a toujours pas
adopté l'euro, en revanche un pays récent de
l'Union européenne, la
Slovénie,
l'a déjà adopté
comme monnaie.
-
Il y a eu une longue discussion sur l'état de
la démocratie en France et dans le monde.
Je ne donnerai pas les opinions de chacun, car
je ne m'en souviens pas exactement et je ne souhaite
pas trahir la pensée de mes interlocuteurs.
Simplement, lors de la réunion, Charles a
utilisé le terme « royauté » en tant
que contraire de la démocratie, ce qui pour moi
est un contresens. J'ai essayé de placer les
termes « despotisme » et « dictature »
dans la conversation, mais Charles a continué
à affirmer, par exemple, que « la Libye est
une royauté. »
[ Lorsque l'on regarde la CEE puis l'UE,
depuis l'Europe des 6 jusqu'à l'Europe des 15,
on peut remarquer qu'il y a eu quasiment parité
entre les monarchies et les républiques.
J'ai utilisé le terme « monarchie » au
lieu de « royauté » à cause du Luxembourg
et de lui seulement. Cela nous montre ainsi
plusieurs exemples de royautés démocratiques,
où le premier ministre est élu par le peuple, ou
bien nommé en fonction de la majorité du parlement
élu par le peuple.
Ailleurs dans le monde, on trouve d'autres exemples
de monarchies démocratiques ainsi que plusieurs
exemples de républiques dictatoriales.
]
En fait ça illustre les méfaits de l'incantation magique suivante :
Ma base est en UTF-8 donc tout va bien car avec un charset UTF-8 mes pages
s'affichent bien.
Or le client mysql à l'insertion de données ne commençant pas par un SET
NAMES UTF8, il considère qu'il reçoit des données en iso8859-1-sv (si je
me souviens bien des valeurs par défaut de mysql sur Debian). Il les
encode de "latin1 vers charset de la base".
Ainsi « é » => un octet en latin => deux octets en utf8 Atilde + (c) AVANT
TRANSMISSION à la BASE => 4 octets au final APRÈS RÉENCODAGE.
Pourquoi ce code marche en général ?
Parce qu'à la lecture comme il ne spécifie toujours pas le charset, la
même erreur est commise.
Résultat pas de problème, c'est juste que le « é » est stocké sur 4 caractères
et que bizarrement, les fonctions sur les chaînes de la base sont pétées.
Qu'est ce que je fais de travers ?
Je me connecte en utf8 à mysql avec un shell ouvert en putty en charset
utf8 en exportant mes locales en utf8 et en faisant un SET NAMES UTF8 en
SQL et que je leur dit : c'est normal que « Nestlé » soit écrit avec Atilde
copyright ?
Ils me répondent, ben oui, on sait, mais tout le monde sait que ce que tu
vois c'est normal. Quand ça marche pas, tout va bien.
Et c'est là où je suis pété de rire, car mon client est une web agency
connue qui fait du site web international depuis moults années.
Pourquoi mon code foire ?
Par ce que je spécifie toujours explicitement au serveur le même charset,
que celui du client.
Donc par rapport aux habitudes je fais une erreur (+ x - => -). Si je
faisais deux erreurs ça passerait.
L'enfer c'est pas tant utf8 que quand les développeurs plutôt que de
comprendre cherchent à ce que « ça marche », et considèrent comme déviant
toutes techniques qui ne « marchent pas ».
À ton avis, quand 4 développeurs sur 4 disent que j'ai tort, vont-ils
changer leurs habitudes ?
Voici le contenu du pack linux developer survivor kit pour windows :
Bon il y a aussi
ASP
(Active State Perl), mais on ne le cite plus.
HTML 5 - CSS v3
Mongueurs de Paris, le 27 juin 2018
Copyright © The Paris Perl Mongers, 1999-2024