[Toulouse-pm] CR3 (fin)

Michel Rodriguez mirod at xmltwig.com
Wed Jun 18 09:57:05 CDT 2003


Salut,

Version HTML complete: http://www.xmltwig.com/report/yapc_na_2003/cr3.html

  Extreme Programing Tools for Module Authors - Brian Ingerson
    La session d'Ingy est en meme temps que celle de Leon sur "Little
    Languages in Parrot", zut, bon, tant pis, je verrais Leon a OSCON ou
    a Paris.

   Introduction
    Il parle d'abord de kwiki (le kwiki de yapc est a
    http://yapc.kwiki.org/ )

    Il utilise une version de kwiki pour faire les slides de sa
    presentation. Du coup on peut changer les slides pendant la session,
    du moins si on peut se connecter au reseau, ma carte wireless semble
    refuser de se connecter au reseau de la fac aujourd'hui ;--(

    Cool, ca lui permet de zoomer facilement, c'est mieux que
    PowerPoint!

    Il propose de renommer Perl/Pythn/Ruby "Agile languages" (et
    "eXtreme Programing" "Agile Programing", ca evite les problemes de
    marque deposee).

    Il aime ecrire des modules, et il se propose de nous montrer
    quelques un des outils quil utilise pour faciliter le developement.

    Il fait du XP (d'apres lui Ward, "l'inventeur" de XP, fait du Java
    au boulot et dans ses bouquins, mais du Perl a la maison). Ca n'est
    pas que de la programation par paire, pour lui le plus important
    c'est d'ecrire les test d'abord. Aussi important est *"saw
    sharpening"*: des quun tache est repetee, essayer de l'optimiser
    (c'a se rapproche du talk de Damian hier, affuter ses outils),
    *"duplication is the Devil"*

   Les secrets pour quun module ait du succes:
    - facile a installer - le moins de dependance possible (boo de la
    foule) - il doit etre puissant, on doit pouvoir le pousser assez
    loin - un bon nom! - la premiere version doit etre "juste assez
    bonne", cad pas trop de bugs, mais n'a pas besoin d'etre parfait -
    il doit etre OO - si possible pluggable - doit s'integrer bien avec
    d'autres modules - doit marcher sous Windows - beaucoup de doc! si
    possible un cookbook) - faire des presentations du module - avoir
    une mailing liste/wiki/IRC dedie

   CGI::Kwiki
    Tiens, son Mac plante... niark niark...

    Il utilise le wiki pour tout, ecrire des idees, des notes mais aussi
    du code, des tests, bien sur pour collaborer sur des modules. Son
    repertoire de developement est "/web/cgi-bin". On en fait le tour...
    je suis pas tout. C'est tout des fichiers ".pm".

    Il nous montre le code, il est tres simple de passer de CGI a
    mod_perl.

    Maintenant demo de comment ecrire une extension au wiki: personne
    n'est jamais completement satisfait de la maniere dont un wiki
    marche. Donc allons-y, changeons le formateur du wiki.

    On veut pouvoir ecrire *'italiques'*, ''gras"" et *'''gras et
    italique''*, apparement c'est a la mode chez les wikis ce mois-ci.

    On herite du formateur de CGI::Kwiki, histoire d'avoir son
    comportement par defaut. Puis on rajoute un petit handler "bold" qui
    recupere le texte et fait "s{'''(.*?)'''}{$1}g;". bold est une des
    methodes appelees pour le texte, il y en a tout un tas, appelees
    dans l'ordre.

    Un example simplemais qui marche facilement.

   Module::Build
    2 ou 3 fois pendant la session il a tape sur MakeMaker (le module
    qui cree le Makefile pour installer les modules a partir du
    "Makefile.PL").

    Pourquoi utiliser un truc lourdingue et hyper-complique pour generer
    un fichier de config pour un utilitaire ("make") alors quon a Perl
    sous la moin, par definition.

    MakeMaker est si complique (pour pouvoir tourner sur 2 millions de
    plate-formes differentes) quon ne peut plus le modifier facilement.

    Module::Build, de Ken Williams, remplace MakeMaker en eliminant la
    dependance envers "make"

    Il nous raconte l'histoire de CPAN::MakeMaker, qui en gros etait un
    virus qui tentait de remplacer "ExtUtils::MakeMaker". Ce plan
    diabolique a foire quant Andreas Koenig l'a utilise pour CPAN.pm ..
    brefle c'est une longue histoire, mais au bout du compte CPAN.pm
    etait verole.

 Apres cette tentative infructueuse il a commence a utiliser
    Module::Build, bundle avec les modules quil produisait (il n'etait
    pas sur CPAN).

    Au bout du compte il a ecrit Module::Instal permet d'ecrire le
    Makefile.PL de maniere plus simple et plus puissante quavec
    MakeMaker (par exemple pour installer des scripts en plus du
    module), et peut generer ou un Makefile.PL pour MakeMaker ou un
    fichier pour Module::Build... si j'ai bien compris.

    Il faut que je regarde ca de plus pres pour la prochaine version de
    XML::Twig.

   Extraits
    La presentation est plutot rigolote (c'est pas facile pour lui
    d'integrer les anneries que le public poste dans ses slides),
    extraits:

    *"Modules can make you famous"* Quelquun a ajoute "Windows" a la
    phrase "What WindowsXP means to me"... reponse... rien" He wrote his
    last program: he refactored himself out of programing RETUSTATSGOE:
    Ridiculously Easy To Use / Scale To Any Task / Should Be Grokable in
    One Example *"Perl is everywhere, it's probably in the chair under
    your butt"*

  Les Lightning Talks
    Il y avait tellement de monde dans la salle que je n'ai pas pu
    prendre de notes en direct, donc de memoire, les plus marquants:

    Ken Williams, je crois, nous donne 5 choses a faire absolument: "use
    strict", "use DBI", connaitre l'OO, savoir taper vite (tiens, Damian
    sait pas faire ca, (moi non plus) quel looser(s) ;--)

    Tedd Olson a une presentation sur "ajouter la programation de flots
    (stream programing) dans Perl", en gros pouvoir faire des pipes
    (a-la-unix, pas ce que vous croyez...) dans Perl meme, pas seulement
    entre differents process.

    Une autre presentation ou il propose de mettre la ponctuation en
    debut de ligne, pas a la fin:

      $i=1
    ; $i++ unless( $test)
    ; if( $test) {
         $i++
    ;    $i--
      }

    Je trouve ca plutot rigolo... la salle s'agite

    Pierre Denis presente D3D, un package 3D en Perl/Gtk, rigolo, il
    fait tourner des spheres, des pyramides.

    Allison Randal nous fait chanter (comme d'habitude!)

    Tim Maher nous explique que le succes de Seattle.pm est du a son nom
    officiel: SPUG (et surement d'autres trucs mais je rate le debut
    apres la pause).

    D'autres truc que j'ai oublie... presentation de differents modules.

    Liens: http://yapc.kwiki.org/index.cgi?LightningTalks et photos
    bientot.

  Activites du soir
    Donc comme decrits dans mes flashs d'hier soir, ensuite c'est le
    repas (finalement le traiteur envoie des pizzas Domino pour se
    rattraper de s'etre plante de jour) et la mise aux encheres de
    divers bouquins, tablier de cuisine (pour le CookBook) et trucs
    debiles: Un Programing Perl signepar les auteurs parts pour $200,
    Leon Brocard ( http://xmltwig.com/report/yapc_na_2003/acme.jpg ) est
    adjugepour $160 a Jos et Aevil (qui participent par IRC), Piers
    vends la place de Leon dans ses CR de Perl 6 (Leon est mentionne
    chaque semaine dans le CR)... je l'achete... pour Leon, je n'aime
    pas changer les traditions.

    Bref, on s'amuse bien (Piers et Ziggy font du bon boulot:
    http://xmltwig.com/report/yapc_na_2003/ziggy_piers_1.jpg ) et on
    recolte des sous pour The Perl Foundation.

    (note: les photos font 1M chacune, je ferais une galerie propre plus
    tard)

    Ensuite toute la salle se translate jusquau cine du coin ou Kevin a
    loue une salle pour quon puisse voir The Matrix Reloaded. Le film
    est pas brillant (mais bon, c'est pas mon genre non plus) mais les
    commentaires de la salle le rendent au moins amusant.

    Bon, apres au lit, je cause demaing.


Michel Rodriguez
Perl & XML
http://www.xmltwig.com




More information about the Toulouse-pm mailing list