[Toulouse-pm] YAPC::EU - Mercredi
Michel Rodriguez
mrodrigu at ieee.org
Wed Sep 15 10:25:58 CDT 2004
-------------- next part --------------
YAPC::EU 2004
Salut, c'est reparti!
Mercredi
Ici Belfast donc. Hier soir la premi?re soir?e ?tait bien sympa, et
assez arros?e (surtout pour certains membres de London.pm!), au pub
local (situ? rue Amelia!), avec un entracte kebab/indien pour la
partie culinaire.
La grande salle est vraiment magnifique, on est dans un genre
d'?glise, derri?re Kasei qui parle il y a un orgue, des vitraux, un
balcon en bois fait le tour de la salle... la classe!
State of the Carrot
*Allison Randal*
Ben ouais, quand on croise un Camel avec un Parrot, on r?cup?re une
Carrote. En plus les carrotes c'est orange, ce qui fait plaisir ?
Leon.
Elle liste les 13 versions de Perl/Parrot/Ponie sortie l'an dernier.
Juerd lui rapelle que Perl 1 a aussi ?t? ressorti.
Elle nous fait quelques blagues d?biles (*what is orange and sticky?
a carrot stick*)
Elle d?taille les nouvelles versions, passe sur CPAN, Perlmonks,
perl.org
Perl White Magic
*Jose Alves Castro*
Un talk sur les options de Perl (command line switches) et les
variables sp?ciales. Je devrais conna?tre, on va voir! Il a un
article l?-dessus sur perl.com, mais comme le r?seau ne marche pas
je vous laisse le trouver vous-m?mes.
Il commence par un programme assez verbeux pour compter le nombre de
mots par ligne, puis le simplifie pour finalement en faire un
one-liner. Il utilise $., je pense jamais ? m'en servir.
Puis un bout de code qui ajoute un "commit" toutes les 100 lignes
dans un fichier qui ins?re des enregistrements dans une BD. Bon,
celui l? il se sert de "-i", "-n" (et toujours de $.), c'est pas
trop compliqu?.
Il est assez rigolo comme speaker, il nous passe une photo de
l'audience sur laquelle il a test? sa pr?sentation: son gamin ?clat?
de rire...
On attaque plus de variables sp?ciales, $/, $\, "-l", qui est plus
compliqu? qu'on ne le croit g?n?ralement.
Maintenant il explique "-a", pour faire un autosplit sur les
entr?es, pour que Perl se comporte un peu comme "awk" (les champs se
retrouvent dans @F).
Il nous montre qu'il nous a expliqu?? peu pr?s 10 options, il en
reste 50 ou 100...
Conseil final: *soyez curieux!*
La salle est aussi magnifique, on dirait une salle de tribunal.
Interlude
Du coup j'ai rat? le talk de BooK, mais je suppose que quelqu'un
d'autre pourra en faire un compte rendu. Ca a du ?tre rigolo, le
r?seau ne marche pas bieng et il en avait besoin, il avait l'air un
peu affol?...
A midi je mange avec Ben Holzman et avec Mock (cf
http://xmltwig.com/report/yapc_eu_2003.html#network_tricks_with_perl
) qui maintenant bosse pour une bo?te qui fait... de l'anti-spam!
Comme quoi les gens changent.
Interoperating Perl and the .NET framework
*Jonathan Stowe*
Non pas que .NET m'int?resse vraiment, mais le speaker est le
London.pm-eur mentionn? un peu plus haut. Donc ?a devrait ?tre
rigolo.
Une autre salle, on dirait l'int?rieur d'une ?glise.
Il nous explique .NET en 2 mots: un environnement runtime pour
diff?rents languages, la d?finition du bytecode, une librairie
standard. Le but est que tout c'a soit interop?rable
Ben Holzmn, qui parle apr?s lui, corrige un slide. Ca promet.
Pourquoi essayer de construire des syst?mes interop?rables? Entre
autre parce que ?a plait aux chefs. Mais aussi parce que c'est cool.
Comment .NET aide ? l'interop?rabilit?:
XML .NET repose ?norm?ment sur XML (Yipee! ;--), pour les donn?es
(datasets), pour s?rialiser des objets, pour les fichiers de
config (version XML des .INI).
On peut donc utiliser les outils XML de Perl (pas de noms!) sur
tout ?a.
SOAP
On peut utiliser SOAP::Lite, sauf si le code .NET utilise
"MarshallByRef", auquel cas on r?cup?re juste la r?f?rence de
l'objet et non pas l'objet lui m?me.
Bien s?r aussi des objets un peu compliqu?s ("tie"-?s par
exemple, ou avec des coderefs) ont du mal ? ?tre ?chang?s.
Web Services
Idem, on peut utiliser SOAP::Lite. On peut aussi simplement
?changer le SGML, sans avoir ? le caser dans une enveloppe SOAP.
Son conseil g?n?ral: s'en tenir ? des structures de donn?es simples:
tableaux, hashes ? un seul niveau.
Ben il a bieng tenu,sa voix aussi, d?cevant... ;--(
Inlink::C
*Ben Holzman*
Comment lier des librairies externes en C ? Perl en utilisant
Inline::C
Il fait ?a ? partir d'un example. Cool!
Il nous montre donc une petite librairie en C appel? "dualVar" qui
impl?ment une structure ?-la-Perl-variable (la variable ? une valeur
num?rique et une valeur de cha?ne).
Son conseil: utiliser des path absolus a l'init de "Inline::C" pour
?tre s?r de savoir o? vont tous les fichiers. Il utilise "Cwd" pour
?a. (genre "LIBS => '-L' . cwd() . '-ldualvar'")
Il nous explique ensuite les TYPEMAPS, notamment "T_PTROBJ" qui
mappe un pointeur vers une structure.
Ne pas oublier d'?crire un "DESTROY" qui lib?re la m?moire.
Les trucs chiants avec Inline::C:
quand Inline::C ne reconnait pas la signature d'une fonction, il
l'ignore silencieusement, utiliser INFO, NOCLEAN (pendant le
developement) et NOISY
quand la librairie change, Inline::C ne recompile pas
Discovering your network neightbourood
*Sebastien Apherghis-Tramoni*
Comment d?couvrir tout ce qui est pr?sent sur le r?seau local, par
IP et adresse MAC, la topologie du r?seau, plus les services
offerts.
Utiliser le module NetworkInfo::Discovery
(http://search.cpan.org/dist/NetworkInfo-Discovery/) pour r?cup?rer
les infos.
Il a ?crit Net::P0f, qui sera disponible tr?s bient?t, une interface
? la commande "p0f", que je ne connaissais pas (mais que je suis en
train de t?l?charger): http://freshmeat.net/projects/p0f/
Net::NbName (http://search.cpan.org/dist/Net-NBName/) donne plus
d'infos avec NetBIOS. Pour Rendezvous, il existe Net::Rendezvous
(http://search.cpan.org/dist/Net-Rendezvous/).
Pour chaque module il nous montre un court example de code et les
r?sultats qu'il produit, qu'il explique.
Building a mail server with Apache and mod_perl
*Mock*
Donc il explique qu'il voulait ?crire un syst?me anti-spam, sans
trop se fatiguer. Stas (Beckman) lui a dit que ?a pouvait marcher...
donc il s'y est mit.
Matt Sergeant a fait ?a aussi, avec QPSMTPD. POE avait l'air trop
compliqu?. Senmail et Milter... plus jamais sendmail! Il a r?cup?r?
des bout de... arghh! j'ai rat? le nom, un module Perl qui fait
?a,ah oui, Net::Server::Mail
En r?utilisant Apache comme plate-forme, ?a lui donne plein de
trucs: mod_ssl, mod_gzip, t?t mod_throttle (son biniou tourne en
Apache 2.0, sur lequel mod_throttle n'est pas encore port?),
Apache::DBI pour des connections persistentes ? une BD...
Il a donc ?crit Apache::TieBucketBrigade, qui lui permet de "tie"-er
un "IO::Handle" ? un BucketBrigade. Cel? lui permet notament de
faire des "select" sur des BucketBrigade pour faire de l'IO
non-bloquant.
Pour l'instant ?a s'appelle Apache::SMTP
(http://search.cpan.org/dist/Apache-SMTP/) mais le nom devrait
changer procha?nement.
Il a du mal ? tester, *bizarrement les d?veloppeurs de Apache::Test
sont partis du principe que le module serait utilis?pour tester des
serveurs Web*, donc ?a n'est pas vraiment adapt? ? son probl?me.
Il pense qu'il serait possible d'utiliser ?a pour d?velopper
d'autres types de serveurs (POP3, IMAP), qui donc r?utiliseraient
l'infrastructure offerte par Apache. Peut-?tre qu'il va merger avec
QPSMTPD.
Ca semble un projet int?ressant en tout cas.
Bon, ben c'est tout pour aujourd'hui! A demaing.
More information about the Toulouse-pm
mailing list