Article publié dans Linux Magazine 91, février 2007.
Copyright © 2006 - Sébastien Aperghis-Tramoni
Revenant cette année à Paris, les Journées Perl 2006 se déroulent à nouveau à la Cité des Sciences et de l'Industrie de la Villette, dans l'espace consacré aux nouvelles technologies.
Si on peut reprocher une chose aux organisateurs, c'est bien le manque de transparence et de communication. Initialement prévue plus tôt dans l'année, elle a finalement été repoussée jusqu'à fin novembre, son organisation se faisant cahin-caha mais dans une grande opacité. Elle a malgré tout réunit plus de 70 personnes, qui ont pu choisir parmi une trentaine de présentations différentes.
Ce matin du premier jour débute comme il se doit par l'inscription de chaque participant. Chacun reçoit la désormais traditionnelle sacoche en tissu à l'effigie du logo officiel des Mongueurs, contenant cette année un exemplaire du dossier de Linux Magazine France consacré à Perl, un bloc-notes, un stylo et des brochures Talend ainsi que des brochures et goodies Red Hat. Les t-shirts de la conférence, eux aussi avec le logo des Mongueurs, sont de couleur beige pâle pour les participants et orange pour les organisateurs (à croire qu'un Léon Brocard est passé par là...)
Sans surprise, c'est avec du retard que David Elbaz ouvre la conférence, et invite chaque participant à se présenter. Il remercie par avance les personnes qui se sont déplacées pour venir assister aux nombreuses présentations proposées.
Laurent Gautrot débute en montrant comment installer sa propre version de Perl sur Nokia 770, une tablette internet qui tourne sous Debian GNU/Linux (cf. GLMF n°81). Comme l'installation normale de Perl est trop grosse à son goût, il lui fait subir une cure d'amaigrissement assez radicale.
Puis vient mon tour et j'explique comment écrire du code Perl relativement moderne mais compatible avec les anciennes versions du langage, par l'utilisation judicieuse de modules et éléments de syntaxe compatibles.
Xavier Caron enchaîne en montrant comme améliorer la qualité de son code
Perl. Propagande CPAN-iste, protocole TAP, couverture de code et couverture
fonctionnelle.. Xavier semble vouloir tout expliquer, et je me demande ce
qu'il me restera à dire ! Surtout qu'il brosse rapidement mais doit
certainement allécher plus d'un programmeur ;-)
Le déjeuner consiste en un couscous géant dans un restaurant pas loin de
la Cité des Sciences. L'après-midi va être somnol^W
studieuse !
Après ce consistant repas, Olivier Mengué commence par une courte
présentation des notions de base sur les ORM (Object Relational Mapper),
ces briques logicielles qui permettent de piloter une base de données
comme une collection d'objets, évitant ainsi l'écriture de code SQL.
Olivier enchaîne ensuite sur l'ORM de Django (Python), et est suivi
de Noël Rocher qui parle d'Hibernate (Java), puis de Nicolas Chuche
qui aborde ActiveRecord (Ruby) et enfin de Laurent Gautrot qui présente
Class::DBI
(Perl !). La plupart utilisent comme exemple la base
de données d'une association de randonneurs, autorisant ainsi le public
de facilement comparer la mise en application d'une même base avec ces
différents ORM et langages.
Pendant ce temps, dans l'autre salle, Arnaud Assad montre tout l'intérêt
qu'il y a à utiliser QPSTMPD, le mod_perl du mail. Il rappelle entre autres
que bien qu'il soit écrit en Perl, ses performances n'ont rien à envier
aux autres logiciels existants puisqu'il gère plus de 2 millions de mails
par jour sur apache.org
, et un nombre guère moins conséquent sur
perl.org
.
Michaël Scherer parle de manière curieuse de Djabberd, un serveur Jabber écrit en Perl, en illustrant avec des photos incongrues.
Ingrid Falk, chercheuse au CNRS, explique ensuite comment elle utilise
Perl pour générer un lexique syntaxique, utilisant pour ce faire plusieurs
modules Perl (XML::LibXML
, Parse::RecDescent
, Graph
). Le but étant
d'automatiser la production du lexique LDAL du projet SynLex, dans le cadre
des systèmes de traitement automatique du langage (TAL).
Suit Thierry Hamon qui présente le projet ALVIS, un moteur de recherche spécialisé dans l'intégration d'informations sémantiques par une analyse linguistique des documents au travers d'une plate-forme exploitant des outils de TAL.
De retour dans la salle undef
, on continue sur le sujet de ORM avec une
présentation de DBIx::DataModel
par Richard Gerber, Laurent Dami n'ayant
pu venir à Paris. Ce module est encore un autre ORM, mais avec une vision
orientée UML de la base de données. Nicolas Rennert termine sur ce sujet
avec son ORM à lui, PerlPersistentObject
.
Viennent alors deux présentations sur les environnements web avancés en Perl, avec Damien Krotkine qui introduit Mason de manière amusante, et Erik Colson qui montre les bases de Catalyst.
La soirée se passe au restaurant La Pouchla, découvert pendant les réunions alternatives de Paris.pm.
Pour ouvrir cette seconde journée, c'est Christian Aperghis-Tramoni qui
commence salle undef
par parler de Parrot, la machine virtuelle qui
servira à exécuter le bytecode Perl 6. Il montre tout l'intérêt que
cette machine virtuelle offre par son assembleur bien plus propre que les
assembleurs machine (et en particulier de l'infâme dialecte Intel x86).
Suit Stéphane Payrard qui reprend une présentation d'Audrey Tang à propos de Pugs, de son évolution et de celle qu'il a induite dans les avancées simultanées de Perl 6 et Perl 5, comme le projet 6-on-5 qui consiste à traduire le code Perl 6 en Perl 5 afin de pouvoir l'exécuter avec l'interpréteur Perl5 actuel.
Il est suivi de Jonathan Worthington, un programmeur Parrot britannique, qui présente (en anglais) la théorie derrière les langages de programmation. Comment un code source est analysé et validé au travers d'une grammaire (qui définit le langage utilisé), convertit en un arbre de syntaxe abstrait (AST, Abstract Syntax Tree) et enfin exécuté ou convertit en assembleur ou bytecode pour machine virtuelle.
Pendant ce temps, salle Talend, David Morel essaye (un peu laborieusement de son propre aveu) de montrer toute la puissance et la richesse que Catalyst met à disposition de ses utilisateurs par la très grande quantité de modules d'extension disponibles sur le CPAN.
J'enchaîne avec une présentation sur les conséquences de traîner sur IRC,
ce lieu de perdition moderne. Par exemple, les bots comme purl
, babel
,
meta
, assemble
. Par exemple, les défis comme le code pour mettre à
jour la liste de Phalanx 100. Par exemple, les modules du core que certains
porters vous proposent gentiment d'en prendre la maintenance. Enfin,
des défis plus effrayants comme l'écriture de Lingua::FR::Inflect
.
En sortant de la salle, votre serviteur a la surprise de découvrir qu'une
thésarde en sociologie était venue pour assister à la conférence, et
semble-t-il plus spécifiquement à cette présentation afin d'étudier la
socialisation des geeks. L'ayant raté, je lui montre les slides et une
discussion s'engage entre elle et quelques conférenciers sur ce sujet.
Nous ignorons si elle a obtenu les informations qu'elle pensait trouver ;-)
Après la pause déjeuner, Stéphane Payrard commence en parlant des règles, les remplaçantes des expressions régulières en Perl 6, et d'une de leurs (nombreuses) applications, le filtrage par motif.
J'enchaîne avec une présentation basique sur les tests qui reprend certains des points abordés dans l'article paru dans le GLMF n°88.
Pendant ce temps, salle Talend, Philippe Bruhat expose son nouveau module,
Net::Proxy
, qui propose certaines fonctionnalités amusantes comme le
support de deux services (HTTPS et SSH) sur un même port TCP.
Suit Richard Gerber qui passe là aussi une présentation que Laurent Dami avait faite à YAPC::Europe 2006 à Birmingham, cette fois sur la publication sur le net des décisions de la justice genevoise.
Retour en salle undef
pour la dernière présentation de la conférence par
David Landgren qui explique les nouveautés de Perl 5.10. Suivant le sujet
d'assez près, il est intarissable et parlera pendant plus de 50 minutes sur
l'opérateur defined-or //
, les variables d'état state $var
,
le smart match ~~
pour comparer des éléments complexes,
le moteur d'expression régulière qui a été dérécursé par Dave Mitchell et
étendu avec de nouvelles fonctionnalités par Yves Orton. Sans compter les
gains substantiels en terme de mémoire, d'occupation disque et de rapidité.
Vient l'heure des présentations éclair, sous l'œil des gros bras de
la conférence, Arnaud Dupuis et Emmanuel Seyman ;-)
Philippe Bruhat commence en parlant de son module Acme::MetaSyntactic
sur fond de musique de la série Batman. Olivier Thauvin enchaîne sur
VFSSimple
, une couche d'abstraction d'accès aux fichiers. Puis j'expose
de manière très directe les Règles de Sys::Syslog
. Vient ensuite
Christian Aperghis-Tramoni qui montre l'enseignement Perl qu'il donne
dans différents endroits du globe, et les groupes de mongers qui
commencent à s'y créer. Suit la présentation de Talend, l'un des sponsors,
qui embauche des développeurs Perl et Java.
Puis David Landgren parle (trop) rapidement de Regexp::Assemble
(voir
la Perle de Mongueurs de ce numéro pour une présentation de ce module).
Jonathan Worthington propose ensuite l'organisation d'un hackathon Perl
européen, sur le modèle de celui qui s'est tenu à Chicago, USA.
Paul Gaborit monte alors pour parler de son bien utile projet de traduction
de la documentation de Perl.
Vient alors David Elbaz qui résume l'activité du groupe de travail Articles
des Mongueurs de Perl, et indique qu'il me passe la main comme nouveau
coordinateur. Suit la présentation de Red Hat, un autre sponsor, qui
embauche aussi. Puis Stéphane Payrard explique la thématisation, un mécanisme
que Perl 6 a emprunté au japonais et utilise des exemples prévus pour
m'embarrasser ;-)
Jean Forget enchaîne en expliquant de manière amusante en quoi c'est une bonne chose de réinventer la roue. Puis David Landgren revient pour parler cette fois-ci des résumés de la liste Perl5 Porters dont il assume actuellement la rédaction. Enfin, Philippe Bruhat termine avec sa présentation sur la « vérité » des faits qui se sont produits à Braga lors de YAPC::Europe 2005.
David Elbaz remercie les conférenciers qui ont fourni autant de présentations, et sur des sujets aussi divers et intéressants, le public qui est venu assez nombreux malgré la publicité qui ne fut pas aussi importante que d'autres fois et sur ces mots termine les Journées Perl 2006. Bien que cela ne soit pas officiellement confirmé, les milieux autorisés laissent entendre que les Journées Perl 2007 se dérouleront peut-être à Lyon.
Au final, cette conférence aura fourni dans le fond la profusion qui fit défaut à la forme. Beaucoup de présentations, sur des sujets très variés, y compris en dehors de Perl, montrant que l'activité autour de Perl est loin de s'être tarie, et ce à tous les niveaux. Enfin, de nombreux projets publics ou secrets sont en cours d'élaboration, entre autres pour relancer la conquête du monde par notre langage favori.
Avec la sortie de Perl 5.10 et probablement d'une béta de Perl 6, l'année 2007 promet d'être riche et intéressante !
Les Journées Perl 2006 - http://conferences.mongueurs.net/fpw2006/
Les supports des présentations - http://conferences.mongueurs.net/fpw2006/talks
Les nombreuses photos de la conférence publiées sur Flickr - http://flickr.com/photos/tags/fpw2006/interesting/
QPSMTPd - http://smtpd.develooper.com/
DJabberd - http://www.danga.com/djabberd/
LORIA SynLex - http://www.loria.fr/~gardent/ladl/
ALVIS - http://www.alvis.info/
DBIx::DataModel
- http://search.cpan.org/dist/DBIx-DataModel/
Mason - http://www.masonhq.com/
Catalyst - http://www.catalystframework.org/
Parrot - http://www.parrotcode.org/
Pugs - http://www.pugscode.org/
Copyright © Les Mongueurs de Perl, 2001-2011
pour le site.
Les auteurs conservent le copyright de leurs articles.