BEGIN:VCALENDAR
CALSCALE:GREGORIAN
PRODID:Data::ICal 0.16
VERSION:2.0
X-WR-CALNAME:YAPC::EU::2005
BEGIN:VEVENT
DESCRIPTION:Ladies and Gentlemen...
DTEND:20050831T100000
DTSTART:20050831T090000
LOCATION:Fotango
SUMMARY:Welcome / Conference Opening
UID:http://conferences.yapceurope.org/ye2005/event/47
URL:http://conferences.yapceurope.org/ye2005/event/47
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Registration Process + Food and Drinks.\n\nTry not to spill the
  drinks over the forms.
DTEND:20050831T120000
DTSTART:20050831T113000
LOCATION:
SUMMARY:Registration / Coffee Break
UID:http://conferences.yapceurope.org/ye2005/event/49
URL:http://conferences.yapceurope.org/ye2005/event/49
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Lunch (on your own\, suggestions provided)
DTEND:20050831T143000
DTSTART:20050831T130000
LOCATION:
SUMMARY:Lunch (on your own\, suggestions provided)
UID:http://conferences.yapceurope.org/ye2005/event/65
URL:http://conferences.yapceurope.org/ye2005/event/65
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Food and drinks.
DTEND:20050831T163000
DTSTART:20050831T160000
LOCATION:
SUMMARY:Coffee Break
UID:http://conferences.yapceurope.org/ye2005/event/68
URL:http://conferences.yapceurope.org/ye2005/event/68
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:We'll take you (walking) to the Bom Jesus.\n\n(if you can't wal
 k and want to go\, please contact the organizers at yapc@perl-hackers.net\
 ; we'll take you by car\, if needed)
DTEND:20050831T210000
DTSTART:20050831T193000
LOCATION:
SUMMARY:Let's walk
UID:http://conferences.yapceurope.org/ye2005/event/76
URL:http://conferences.yapceurope.org/ye2005/event/76
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Where to eat\, how to get into a Portuguese bar\, food to try\,
  drinks to stay away from\, and a couple of random issues too...
DTEND:20050901T102000
DTSTART:20050901T100000
LOCATION:Fotango
SUMMARY:Announcements
UID:http://conferences.yapceurope.org/ye2005/event/71
URL:http://conferences.yapceurope.org/ye2005/event/71
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Food and drinks.
DTEND:20050901T113000
DTSTART:20050901T110000
LOCATION:
SUMMARY:Coffee Break
UID:http://conferences.yapceurope.org/ye2005/event/73
URL:http://conferences.yapceurope.org/ye2005/event/73
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Lunch (on your own\, suggestions provided)
DTEND:20050901T143000
DTSTART:20050901T130000
LOCATION:
SUMMARY:Lunch (on your own\, suggestions provided)
UID:http://conferences.yapceurope.org/ye2005/event/66
URL:http://conferences.yapceurope.org/ye2005/event/66
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Food and drinks.
DTEND:20050901T163000
DTSTART:20050901T160000
LOCATION:
SUMMARY:Coffee Break
UID:http://conferences.yapceurope.org/ye2005/event/69
URL:http://conferences.yapceurope.org/ye2005/event/69
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:The price is included in the registration.\nIf you have a compa
 ny for the dinner let us know in the first day. Unfortunately they will ne
 ed to pay.
DTEND:20050901T223000
DTSTART:20050901T193000
LOCATION:
SUMMARY:Conference dinner (speakers\, atendees\, relatives\, organizers\, e
 tc.)
UID:http://conferences.yapceurope.org/ye2005/event/75
URL:http://conferences.yapceurope.org/ye2005/event/75
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Where to eat\, how to get into a Portuguese bar\, food to try\,
  drinks to stay away from\, and a couple of random issues too...
DTEND:20050902T102000
DTSTART:20050902T100000
LOCATION:Fotango
SUMMARY:Announcements
UID:http://conferences.yapceurope.org/ye2005/event/72
URL:http://conferences.yapceurope.org/ye2005/event/72
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:DHA will be presenting the awards.
DTEND:20050902T103000
DTSTART:20050902T102000
LOCATION:Fotango
SUMMARY:NJAPHs awards
UID:http://conferences.yapceurope.org/ye2005/event/80
URL:http://conferences.yapceurope.org/ye2005/event/80
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Larry Wall answers questions from the attendees.
DTEND:20050902T110000
DTSTART:20050902T103000
LOCATION:Fotango
SUMMARY:Questions and Answers with Larry Wall
UID:http://conferences.yapceurope.org/ye2005/event/78
URL:http://conferences.yapceurope.org/ye2005/event/78
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Food and drinks.
DTEND:20050902T113000
DTSTART:20050902T110000
LOCATION:
SUMMARY:Coffee Break
UID:http://conferences.yapceurope.org/ye2005/event/74
URL:http://conferences.yapceurope.org/ye2005/event/74
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Lunch (on your own\, suggestions provided)
DTEND:20050902T143000
DTSTART:20050902T130000
LOCATION:
SUMMARY:Lunch (on your own\, suggestions provided)
UID:http://conferences.yapceurope.org/ye2005/event/67
URL:http://conferences.yapceurope.org/ye2005/event/67
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Food and drinks.
DTEND:20050902T163000
DTSTART:20050902T160000
LOCATION:
SUMMARY:Coffee Break
UID:http://conferences.yapceurope.org/ye2005/event/70
URL:http://conferences.yapceurope.org/ye2005/event/70
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Greg McCarroll\, our most distinguished auctioneer\, is back...
 
DTEND:20050902T180000
DTSTART:20050902T163000
LOCATION:Fotango
SUMMARY:Auction
UID:http://conferences.yapceurope.org/ye2005/event/64
URL:http://conferences.yapceurope.org/ye2005/event/64
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Goodbye\, see you next year!\n\n"But I'm not done yet..."
DTEND:20050902T183000
DTSTART:20050902T180000
LOCATION:Fotango
SUMMARY:Wrap-up
UID:http://conferences.yapceurope.org/ye2005/event/77
URL:http://conferences.yapceurope.org/ye2005/event/77
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Text-to-Speech is\, normally\, thought to be an hard task. In t
 hese twenty minutes I'll show how you can build a TTS system using just re
 writting rules and the Text::RewriteRules Perl module.
DTEND:20050901T104000
DTSTART:20050901T102000
LOCATION:Sapo
SUMMARY:Rewritting text to speech
UID:http://conferences.yapceurope.org/ye2005/talk/55
URL:http://conferences.yapceurope.org/ye2005/talk/55
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Perl would be a rather boring and not very useful language if i
 t wasn't for the nifty function called "use". And while "use" seems to be 
 rather simple and straight-forward ("use Some::Module\;") it is a very pow
 erful tool if used right.\n\nWe will take a very close look at what happen
 s during a simple "use Some::Module":\n\n* Compile Time vs. Run Time\n* Co
 nversion of module name to filename\n* %INC\n* @INC\n\nWe will also look a
 t various ways to alter @INC (push\, lib\, FindBin).\n\nAfter those basics
  we turn our attention to the code beeing used\, i.e. the "import" functio
 n and various implementations of it (Exporter\, Exporter::*)\n\nThe fun be
 gins with custom written "import" functions. We'll take look at several...
 \n\nAnd if there's some time left it is going to be spend with coderefs-in
 -@INC.\n\nIf all of this doesn't sound too interesting\, you should visit 
 my talk anyway\, if only to hear me trying to say "Waak::Gorshle" (there a
 in't no "foo" in my talk!)
DTEND:20050901T110000
DTSTART:20050901T102000
LOCATION:Fotango
SUMMARY:Using use
UID:http://conferences.yapceurope.org/ye2005/talk/82
URL:http://conferences.yapceurope.org/ye2005/talk/82
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:CPANTS is an acronym for CPAN Testing Service. (I assume everyo
 ne knows that CPAN stands for Comprehensive Perl Archive Network).\n\nThe 
 goals of the CPANTS project are to provide some sort of quality measure ca
 lled Kwalitee and lots of metadata for all distributions on\nCPAN.\n\nResu
 lts are available from the CPANTS website which is currently located at ht
 tp://cpants.dev.zsi.at\n\nCPANTS is not about running the test suite that 
 most distributions\nship with. This is done by the CPAN testers: http://te
 sters.cpan.org/\n\nOne big limitation of CPANTS is that it cannot actually
  execute any code: The module might not run on the machine doing the testi
 ng\, it might have third-party dependencies\, etc. CPANTS can only gather 
 data and Kwalitee by looking at files\, source code etc. Thus results shou
 ld not be taken all to seriously.\n\nThe slides of my talk will be availab
 le here:\nhttp://domm.zsi.at/talks/2005_braga_cpants
DTEND:20050831T160000
DTSTART:20050831T154000
LOCATION:Fotango
SUMMARY:CPANTS
UID:http://conferences.yapceurope.org/ye2005/talk/83
URL:http://conferences.yapceurope.org/ye2005/talk/83
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Debugging is a cumbersome and tiring task\, especially with a d
 ynamic language like Perl. You've tried print statements\, you were scared
  off by the built-in Perl debugger\, what if there was another solution? C
 ome learn about superior technology\, AJAX\, and a cute kitten: Devel::ebu
 g -Making it easier to debug.
DTEND:20050901T165000
DTSTART:20050901T163000
LOCATION:Fotango
SUMMARY:Debugging Perl
UID:http://conferences.yapceurope.org/ye2005/talk/102
URL:http://conferences.yapceurope.org/ye2005/talk/102
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Perl was originally discovered in the Land of Sysadmin.\nDiscov
 ered\, not created\, as it has been around for much longer. This\ntrip thr
 ough history shows how (and where) perl crops up\, with reference\nto its 
 complicity in some of the greatest conspiracies of all time.\n\nDescriptio
 n:\n\nWell\, as I am sure you have gathered by now\, not an overly serious
  talk.\nAlthough\, given the rise in interest in global conspiracy theorie
 s as\nexpounded (wrongly\, in most cases) by Dan Brown and his DaVinci Cod
 e\,\nmost of this can be explained away using perl. Perhaps. (This talk is
  an\nextension/reworking/redoing of the one I never gave at YAPC last year
 \,\ndue to being elsewhere. That one was Perl for Fun and Prophecy\, IIRC.
 )\n\nExtensive use of slides with pretty pictures\, scripted and ad-lib ga
 gs\,\nall pandering to the conspiracy theorist perlmonger in all of us. :)
 
DTEND:20050902T121000
DTSTART:20050902T115000
LOCATION:Fotango
SUMMARY:Perl Everywhere: From the Bible to Necronomicon (and beyond)
UID:http://conferences.yapceurope.org/ye2005/talk/103
URL:http://conferences.yapceurope.org/ye2005/talk/103
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:This talk will focus on how we are using Perl Applications in P
 ortugal Telecom\n to run our core Authentication for ADSL and\n rating Int
 ernet traffic by several criteria (like separating International from nati
 onal  traffic) for\nmore than 400K users.\n\nSorry\, not much sysadmin stu
 ff here. Real Perl apps that have to handle all the ADSL authentication an
 d accounting\, how to manage more than 160 GB of netflow data per day\, ra
 te traffic and bill accordingly.
DTEND:20050902T123500
DTSTART:20050902T121500
LOCATION:log
SUMMARY:High availability Perl Apps on a large ISP
UID:http://conferences.yapceurope.org/ye2005/talk/104
URL:http://conferences.yapceurope.org/ye2005/talk/104
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Teaching assembly language is not easy since many problems must
  be\nsolved before asking students to write the first program.\nTake care 
 and present structure and constraints of the real machine.\nConsider the s
 tructure and the syntax of the assembly instructions.\nParrot offers us an
  easy to use machine\, only registers.\nAssembly language is close from Pe
 rl 5 an other language our students\nare using.\n\n   *     We have now a 
 first experience of teaching parrot.\n   *     We have been surprised to s
 ee how studends did apreciate\n     programmation on such a platform.
DTEND:20050901T153500
DTSTART:20050901T151500
LOCATION:Fotango
SUMMARY:Using Parrot machine as a pedagogic platform
UID:http://conferences.yapceurope.org/ye2005/talk/105
URL:http://conferences.yapceurope.org/ye2005/talk/105
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Perl is frequently used in server side web development.  Unfort
 unately\,\nadequate thought is not always given to preventing a malicious 
 user from\n(ab)using the script to access or modify data they should not b
 e able to\,\ndeface the website involved\, execute arbitrary code or gathe
 r information\nuseful in mounting other attacks against the system.  The t
 alk would\ncover a number of common security vulnerabilities along with\ns
 uggestions for avoiding them.\n\nMAIN POINTS\nTopics covered in the talk w
 ould include:\n* The importance of validation\n* The dangers of "open" - d
 irectory traversal\, inserting pipes\, etc\n* SQL Injection - what it is\,
  how to avoid it\n* Mail header injection attacks\n* Cross site scripting 
 attacks\n* Multi-user issues\n* Areas where arbitrary code execution could
  slip in
DTEND:20050831T180000
DTSTART:20050831T174000
LOCATION:Fotango
SUMMARY:Perl In Secure Web Development
UID:http://conferences.yapceurope.org/ye2005/talk/107
URL:http://conferences.yapceurope.org/ye2005/talk/107
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:I have been doing some work on how to store and enable easy man
 ipulation of\nmathematical expressions in Perl.  The talk would look at th
 is topic\,\ndemonstrating some CPAN modules that I have authored relating 
 to this area\nand showing how using a different internal representation fo
 r something can\ngreatly simplify its manipulation\, a principle more wide
 ly applicable.  I\nwill also show how reducing expressions to a representa
 tion using basis\nfunction might provide a way of demonstrating the equiva
 lence of two\nexpressions\, something I'm currently working on.\n\nNote th
 at some of this was covered in an article I wrote for "The Perl\nJournal" 
 in February 2005.\n\nMAIN POINTS\n* Why analytical manipulation instead of
  numerical manipulation might be\nuseful\n* Forming an internal representa
 tion (in this case\, a non-strict binary\ntree)\n* Introducing Math::Calcu
 lus::Expression\n* How the internal representation makes manipulation easy
 \n* Example of subclassing Math::Calculus::Expression to do various bits o
 f\nmanipulation\n* Testing expression equivalence by looking to representa
 tion in basis\nfunctions
DTEND:20050901T180000
DTSTART:20050901T174000
LOCATION:log
SUMMARY:Mathematical Expression Handling With Perl
UID:http://conferences.yapceurope.org/ye2005/talk/108
URL:http://conferences.yapceurope.org/ye2005/talk/108
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:With the release of CPANPLUS 0.50\, all cpansmoke script suppor
 t within\nthe distribution has been dropped. As a consequence Robert Rothe
 nberg\nbegan to code a more integrated cpansmoke script. The result was\nC
 PAN::YACSmoke. Following it's release to CPAN\, Robert and I have been\nwo
 rking to expand the capabilities of the distribution and its plugins.\n\nT
 his talk is an introduction to CPAN Testing and CPAN::YACSmoke. The\ntalk 
 will feature some examples of how to perform cpan-testing with\nCPAN::YACS
 moke\, a request for ideas to better serve cpan-testers and\nsome self pro
 motion of the yacsmoke SourceForge project.
DTEND:20050831T154000
DTSTART:20050831T152000
LOCATION:Fotango
SUMMARY:Project: yacsmoke
UID:http://conferences.yapceurope.org/ye2005/talk/109
URL:http://conferences.yapceurope.org/ye2005/talk/109
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Having been the principle cpan-tester on Windows (2003-2004)\, 
 there were\nmany gotchas that CPAN authors fell foul of during the cpan-te
 sting\nprocess\, once they had uploaded their distributions. Most gotchas 
 dealt\nwith the prepare\, build and test processes.\n\nThis talk lists a f
 ew of those gotchas\, plus some quick examples of how\nbest to avoid them\
 , to hopefully get authors proactively thinking about\ncross-platform impl
 ementations.
DTEND:20050831T173500
DTSTART:20050831T171500
LOCATION:log
SUMMARY:Preparing For CPAN
UID:http://conferences.yapceurope.org/ye2005/talk/110
URL:http://conferences.yapceurope.org/ye2005/talk/110
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Phrasebooks are a part of life. Travelling from country to coun
 try\, a\nhandy phrasebook can be a lifesaver in getting yourself understoo
 d. The\nsame is true of computing. Having a phrasebook to translate error 
 codes\nto meaningful descriptions or websites text into specific languages
 \, can\nsave a lot of time and effort for the programmer and user. Phraseb
 ooks\ncan enable programmers to abstract their data\, so that their code c
 an be\nmore generic and readable.\n\nThis talk will look at some common us
 es for phrasebooks and how they can\nbe implemented using the Data::Phrase
 book framework.
DTEND:20050902T130000
DTSTART:20050902T124000
LOCATION:Fotango
SUMMARY:"Wyt ti'n medru siarad Saesneg?" And Why You Need A Phrasebook
UID:http://conferences.yapceurope.org/ye2005/talk/111
URL:http://conferences.yapceurope.org/ye2005/talk/111
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Tangram is an object-relational mapper that has been in use for
  a\nwhile\; see http://www.utsl.gen.nz/. This new iteration\, codenamed T-
 3\,\nis much more ambitious. It is being developed in Perl\, C++ and\nJava
 . It supports persistence in XML files and relational databases\,\nmulti-d
 imensional arrays\, stereotypes (not just classes but also\ne.g. unions). 
 Moreover\, T-3 is architectured as a framework that\nattempts to simplify 
 the creation of generic object manipulation\ntools\, related to persistenc
 e or not. The presentation focuses on the\nPerl implementation. It ends wi
 th a walkthrough of a simple\nobject-to-html mapper.\n\nThis conference ha
 s already been presented at the FOSDEM. You can find\nthe slides here: htt
 p://www.soundobjectlogic.com/FOSDEM2005.html
DTEND:20050901T121000
DTSTART:20050901T113000
LOCATION:log
SUMMARY:Tangram T-3: Building Object Persistence (and more)
UID:http://conferences.yapceurope.org/ye2005/talk/112
URL:http://conferences.yapceurope.org/ye2005/talk/112
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:PerlUnit is a port of the JUnit framework written by Erick Gamm
 a and\nKent Beck. It is easy to use and based on a small set of sound\,\nw
 ell-defined concepts. I'll present how I use it (along with the\n"mixin" t
 echnique) to test Tangram.\n\nThis conference has already been presented a
 t the FOSDEM. You can find\nthe slides here: http://www.soundobjectlogic.c
 om/FOSDEM2005.html
DTEND:20050831T151000
DTSTART:20050831T143000
LOCATION:Fotango
SUMMARY:Object-Oriented Unit Testing with PerlUnit
UID:http://conferences.yapceurope.org/ye2005/talk/113
URL:http://conferences.yapceurope.org/ye2005/talk/113
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:The presentation is here: http://centopeia.com/nbarr/presentati
 on_yapc.pdf
DTEND:20050901T130000
DTSTART:20050901T113000
LOCATION:Sapo
SUMMARY:Web Developing with HTML Mason and CSS Layout
UID:http://conferences.yapceurope.org/ye2005/talk/115
URL:http://conferences.yapceurope.org/ye2005/talk/115
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Breaking news from Parrot development\, mainly about but not re
 stricted to:\n* String charsets and encoding\n* MMD - Multi Method Dispatc
 h\n* PIC - Polymorphic Inline Cache
DTEND:20050901T151000
DTSTART:20050901T143000
LOCATION:Fotango
SUMMARY:News about Parrot
UID:http://conferences.yapceurope.org/ye2005/talk/116
URL:http://conferences.yapceurope.org/ye2005/talk/116
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:5 minute talks by many different people.\n\nYou know you want t
 o.\n\nFollowing in the footsteps of Belfast last year the plan is to have 
 two one hour sessions of Lightning Talks to start the day on September 1 a
 nd 2. This could give us as many as 22 talks.
DTEND:20050901T100000
DTSTART:20050901T090000
LOCATION:Fotango
SUMMARY:Lightning Talks - Session 1
UID:http://conferences.yapceurope.org/ye2005/talk/117
URL:http://conferences.yapceurope.org/ye2005/talk/117
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:5 minute talks by many different people.\n\nYou know you want t
 o.\n\nFollowing in the footsteps of Belfast last year the plan is to have 
 two one hour sessions of Lightning Talks to start the day on September 1 a
 nd 2. This could give us as many as 22 talks.
DTEND:20050902T100000
DTSTART:20050902T090000
LOCATION:Fotango
SUMMARY:Lightning Talks - Session 2
UID:http://conferences.yapceurope.org/ye2005/talk/118
URL:http://conferences.yapceurope.org/ye2005/talk/118
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:See PDF
DTEND:20050901T110000
DTSTART:20050901T102000
LOCATION:log
SUMMARY:CGI::Forge - Integrated Web development framework
UID:http://conferences.yapceurope.org/ye2005/talk/120
URL:http://conferences.yapceurope.org/ye2005/talk/120
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:HTTP::Proxy is a web proxy written in pure Perl.\n\nIt lets one
  modify the content of web requests and response on the fly\, thanks to a 
 system of filter stacks.\n\nAfter almost a full year with any updates\, de
 velopment started again. This talk will present the proxy itself\, the new
  features added since March 2005 and what the future holds.\n\nTentative o
 utline:\n- history of the project\n- internal architecture of the proxy\n-
  standard filters\n- fun proxy examples\n- useful proxy examples\n- new fe
 atures since 0.14\n- performance improvements\n\nNote: The link points to 
 the presentation made at YAPC::Europe 2004.
DTEND:20050902T121000
DTSTART:20050902T113000
LOCATION:log
SUMMARY:HTTP::Proxy\, nipping and tucking the web
UID:http://conferences.yapceurope.org/ye2005/talk/122
URL:http://conferences.yapceurope.org/ye2005/talk/122
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:See PDF File
DTEND:20050901T153500
DTSTART:20050901T151500
LOCATION:log
SUMMARY:GALA: General Accounting as a Language API
UID:http://conferences.yapceurope.org/ye2005/talk/128
URL:http://conferences.yapceurope.org/ye2005/talk/128
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:This is a tutorial on how make Perl run faster\, without having
  to use C or XS. In it you will learn ways I've found to make your trouble
 some slow scripts go faster\, and how you can try to avoid some problems i
 n the first place.\n\nThe tutorial starts with ways to cheat and duck the 
 whole optimising problem\, as that's usually a much better solution. I pre
 sent a systematic approach to optimising in general\, and show the Perl to
 ols available to help you carry it out. By explaining why the cause of slo
 wness in perl programs often differs from your experience of compiled lang
 uages\, you will gain a better feel for the right types of trade-offs to m
 ake to gain speed.\n\nThe second half presents a smogsabord of optimising 
 ideas to try out\, and speed traps to locate and avoid. From clean grand p
 lans to messy micro-optimising hacks\, there is something for everyone\, a
 nd bound to be at least one you've never seen before that will set your mi
 nd racing\, thinking about your own code will benefit.\n\nThe tutorial wil
 l demonstrate the techniques using specific real code as examples\, showin
 g code before and after. Running this interactively will give a feel for w
 hat sort of results can be achieved.\n\nHealth warning - after attending t
 his tutorial you may have trouble sleeping as you brain explores how to ap
 ply these ideas to your own code.
DTEND:20050831T173000
DTSTART:20050831T143000
LOCATION:Sapo
SUMMARY:When Perl is not quite fast enough
UID:http://conferences.yapceurope.org/ye2005/talk/130
URL:http://conferences.yapceurope.org/ye2005/talk/130
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:RunApp is a Perl module developed by Fotango that streamlines\n
 application development and deployment process.  It can be used to\nconfig
 ure multiple components that is required for an application.\n\nThis talk 
 will talk about the problem for Perl-based web application\ndeployment pro
 blems\, and how you can solve them with RunApp.  There\nwill also be examp
 les demonstrating 10-second deployment of RT and Kwiki.
DTEND:20050901T173500
DTSTART:20050901T171500
LOCATION:Fotango
SUMMARY:Streamlining WebApp development and deployment with RunApp
UID:http://conferences.yapceurope.org/ye2005/talk/132
URL:http://conferences.yapceurope.org/ye2005/talk/132
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:svk is a decentralized version control system written in Perl w
 ith the\nSubversion file system.  svk just reached 1.00 release and is use
 d by\nreal-world projects such as RT\, Pugs\, Catalyst\, and more.  The ma
 in\nadvantages are offline commits and smart merges.\n\nThe talk will demo
 strate daily development process with svk in\ndifferent scenarios to show 
 how complicated tasks can be streamlined.\nIt will also discuss the design
  and the future of svk.
DTEND:20050831T171000
DTSTART:20050831T163000
LOCATION:log
SUMMARY:Distributed version control with svk
UID:http://conferences.yapceurope.org/ye2005/talk/133
URL:http://conferences.yapceurope.org/ye2005/talk/133
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:GTK+\, http://www.gtk.org/ the GIMP Toolkit is a multi-platform
  framework for developing graphical user interfaces.\n\ngtk2-perl http://g
 tk2-perl.sourceforge.net/\nis the Perl bindings for GTK+.\n\nIn this intro
 ductory talk you'll learn how to build a GUI using this toolkit. This will
  especially fit for people with no GUI building background but Perl/Tk dev
 elopers might also benefit from attenting it.
DTEND:20050902T160000
DTSTART:20050902T152000
LOCATION:Fotango
SUMMARY:Introduction to GTK+
UID:http://conferences.yapceurope.org/ye2005/talk/136
URL:http://conferences.yapceurope.org/ye2005/talk/136
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Even when using Windows sometimes you have repetitive task. The
  only problem is that Windows is mostly GUI based and you don't always hav
 e a programatic interface.\n\nThen you just have to sit there\, move the m
 ouse\, click buttons\, fill in forms and so on. Very boring.\n\nThis talk 
 is a short introduction to Win32::GuiTest.
DTEND:20050901T165000
DTSTART:20050901T163000
LOCATION:log
SUMMARY:Automating Windows application
UID:http://conferences.yapceurope.org/ye2005/talk/138
URL:http://conferences.yapceurope.org/ye2005/talk/138
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:CSS (Cascading Style Sheets) are a very cool standard made by t
 he W3C. They allow for a clear and sane separation between structure (HTML
 ) and presentation (CSS). \n\nWhat's the connection with Perl? CSS can be 
 simple or quite cryptic\, and allow for very nice visual (and non-visual) 
 effects\, all while keeping the HTML  and the CSS to a minimal size.
DTEND:20050902T145000
DTSTART:20050902T143000
LOCATION:log
SUMMARY:CSS Crash Course
UID:http://conferences.yapceurope.org/ye2005/talk/141
URL:http://conferences.yapceurope.org/ye2005/talk/141
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:The Register http://www.theregister.co.uk/ is the UK's leading 
 IT news web site.  Almost all our software is written in Perl\, which we c
 hose for its flexibility\, expressiveness\, and (of course) for CPAN.  Thi
 s talk briefly outlines how The Reg is put together\, and in particular th
 e use we make of Perl.
DTEND:20050831T173500
DTSTART:20050831T171500
LOCATION:Fotango
SUMMARY:Perl at The Register
UID:http://conferences.yapceurope.org/ye2005/talk/142
URL:http://conferences.yapceurope.org/ye2005/talk/142
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Protecting your Web Applications With The DNS\n================
 =============================\n \nA 20 Minute talk\n \n \nPublicly availab
 le web applications are increasingly vulnerable\nto the attentions of crac
 kers and spammers\, especially when the\nopportunity to present "spamverti
 sing" via guestbooks\, wikis and\nmessageboards in a relatively risk free 
 manner presents itself.\n \nIn order to protect their internet connectivit
 y these spammers\nwill use open proxies and other exploited systems\, fort
 unately these\nare becoming increasingly well known among the anti-spam co
 mmunicty.\n \nThis talk will outline a relatively simple mechanism by whic
 h you\ncan protect your web applications from being exploited by spammers\
 ,\nusing information that has been collected by anti-spam groups in order\
 nto protect e-mail servers from spam.\n \n \nAuthor BIO\n==========\n \nJo
 nathan Stowe is a systems architect specializing in the integration of\nIS
 P billing systems. He maintains a number of modules on CPAN.
DTEND:20050902T151000
DTSTART:20050902T145000
LOCATION:log
SUMMARY:Protecting your web applications with the DNS
UID:http://conferences.yapceurope.org/ye2005/talk/145
URL:http://conferences.yapceurope.org/ye2005/talk/145
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:APR is capable of abstracting more than just TCP connections.  
 With a\nsimple patch to Apache\, mod_perl can be used to serve UDP based p
 rotocols\,\nsuch as DNS.\n\nMotivation\n  BIND has always been the standar
 d for serving DNS.  However BIND is not\n  very modular\, and is quite res
 trictive about the architectures one can\n  choose when serving DNS.  As w
 ell\, it would be nice to be able to modify\n  DNS responses based on arbi
 trary characteristics\, ideally using a\n  scripting language like perl.  
 By making Apache serve UDP\, and then\n  attaching that to a DNS server wr
 itten in perl\, all the advantages of\n  the Apache and mod_perl platform 
 can be brought to DNS.\n\nMaking it Work\n  A detailed explanation of how 
 to work with UDP based protocols from within\n  mod_perl is given.  Integr
 ation with Net::DNS is shown\, as well as\n  an example of proxying DNS tr
 affic.\n\nWhat's it Good For?\n  Some examples of useful behaviour from a 
 DNS server integrated into Apache\n  are given.  Including better load bal
 ancing based on DNS\, web service based\n  control of DNS\, DNS proxying\,
  and serving DNS from non zone file sources.\nPerformance\n  A comparison 
 is made between mod_perl based DNS implementations\, pure perl\n  implemen
 tations of DNS (such as Net::DNS::Nameserver) and C based\n  implementatio
 ns such as BIND\, djbdns\, and MyDNS.
DTEND:20050902T154000
DTSTART:20050902T152000
LOCATION:log
SUMMARY:Serving DNS with mod_perl and Apache
UID:http://conferences.yapceurope.org/ye2005/talk/146
URL:http://conferences.yapceurope.org/ye2005/talk/146
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:The presentation will be based on a small training I gave on a 
 portuguese advertising company to introduced them to Bricolage\, as it is 
 their new content manager system. In these small presentation(s) I intend 
 to presente in a very summarized way the main Bricolage features\, and wha
 t on can accomplish with it. I expect the presentation to cover the follow
 ing topics:\n\n	# Why a content manager? Problems and Solutions from Brico
 lage point of view\n	# Main aspects of Bricolage Architecture\n	# Bricolag
 e Introduction:\n		# Introduction to Bricolage web interface\n		# Document
  types and relation between existing documents and bricolage own format\n	
 	# Element creation\n		# Templating\, from templating types to templating 
 systems available\n		# Bricolage SOAP interface\n\nIf theirs the possibili
 ty of being able to present more than one small presentation\, some of the
 se topics will be further explored\, in particular the templating system a
 nd the SOAP interface. The later being presented as a great way to extend 
 Bricolage own features.
DTEND:20050831T171000
DTSTART:20050831T163000
LOCATION:Fotango
SUMMARY:Content Management (in Perl) with Bricolage
UID:http://conferences.yapceurope.org/ye2005/talk/147
URL:http://conferences.yapceurope.org/ye2005/talk/147
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Coming from Windows\, migrating to Linux\, having to read custo
 mer\nsheets? You'll notice soon enough that the available CPAN modules to\
 nread spreadsheets all have different interfaces\, and that it is not\neas
 y to mix them\, let alone convert scripts that used\nSpreadsheet::ParseExc
 el (Microsoft Excel) to Spreadsheet::ReadSXC\n(OpenOffice). This new modul
 e tries hard to make that easy.
DTEND:20050901T171500
DTSTART:20050901T165500
LOCATION:log
SUMMARY:Spreadsheet::Read - Give yourself a uniform interface to all the sp
 readsheets you want to work with
UID:http://conferences.yapceurope.org/ye2005/talk/148
URL:http://conferences.yapceurope.org/ye2005/talk/148
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:The "Satfoto" software is a web-based satellite image archiving
  system on\ndisk\, targeted to replace CD\, DVD and Tape archives in large
  companies\nand organizations.  It is built from a cluster of cheap PCs an
 d fully\nwritten in Perl.\n                                               
                                  \nThe distributed nature of the applicati
 on (a cluster of PCs) \, the huge\nsize of the images (usually over 500MB 
 each)\, and the limited (financial\nand time) resources for development ar
 e a real challenge.\n                                                     
                            \nOn the moment\, the development cluster of PC
 s provides about 7 TeraByte\nof storage on two physical locations.  In tot
 al\, over 35\,000 scenes\n(pictures) from various satellites are viewable 
 within seconds.\n                                                         
                        \nThe presentation will discuss some design decisio
 ns and their outcome.\nIt certainly pays off to avoid 'hype' thinking\, tr
 ying to be efficient.\nMany common practices are extremely inefficient\, a
 nd can better be\navoided.  When time\, the system will be demonstrated in
  action.
DTEND:20050901T151000
DTSTART:20050901T143000
LOCATION:log
SUMMARY:Terabytes of Satellite Images with Perl
UID:http://conferences.yapceurope.org/ye2005/talk/149
URL:http://conferences.yapceurope.org/ye2005/talk/149
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:WSDL (web service description language) documents contain struc
 tured descriptions of web services. For the developer of the client softwa
 re they are useful because they among other things contain information abo
 ut parameters and return values of the service's messages. Due to their ri
 gid structure it is even possible to automatically generate client stubs i
 ncluding classes representing complex types used for parameters and return
  values. The apache axis project provides the means to do this for Java an
 d C++.\n\nSince perl is a dynamically typed language\, SOAP-based communic
 ation between web services written in perl and perl clients gets along nic
 ely without a structured description of the service\, provided the client 
 programmers knows\, which types to pass to and receive from the service's 
 messages. Generating a client stub is not really necessary\, since SOAP an
 d escecially SOAP::Lite go a very long way in handling the messy details.\
 n\nBut what if the client of the web service is written in a statically ty
 ped language lika Java? Then of course it is still possible to get along w
 ithout a WSDL\, but if the developer want to use axis\, having a WSDL make
 s it a lot easier to write the client. Here the advantage of dynamic typin
 g in perl gets somewhat in the way since it is very hard or even impossibl
 e to extract information from perl code about the types or even the number
  of parameters and return values of methods used in a web service server (
 assuming one has access to that perl code at all).\n\nSo the idea of Pod::
 WSDL is to put the necessary information in the pod preceding a subroutine
 \, like\n\n  package My::Service\;\n\n  =begin WSDL\n\n  _IN foo $String T
 he foo for mySub\n  _RETURN @My::Bar The array of My::Bars\, mySub returns
 \n\n  =end WSDL\n\n  sub mySub {\n      my $foo = shift\;\n      # do some
 thing with foo\, return array of My::Bar\n  }\n\nWith something like \n\n 
  my $pod = new Pod::WSDL('package' => 'My::Service'\, \n    targetNS => 'h
 ttp://localhost/My/Service'\,\n    pretty => 1)\;\n\n  print $pod->WSDL\;\
 n\nPod::WSDL will parse the pod\, find the subroutine name and generate th
 e WSDL code for it:\n\n  <!-- a lot of things before this left out -->\n  
 <wsdl:message name="mySubRequest">\n    <wsdl:part name="foo" type="soapen
 c:string" />\n  </wsdl:message>\n  <wsdl:message name="mySubResponse">\n  
   <wsdl:part name="mySubReturn" type="typens:ArrayOf_My_Bar" />\n  </wsdl:
 message>\n  <!-- a lot of things after this left out -->\n\nIf it finds co
 mplex types that are not in the standard repertoire of SOAP encoding - for
  instance a My::Bar - Pod::WSDL will look for the My::Bar module and gener
 ate a type description even for this (using pod again here) which is then 
 included into the WSDL.\n\nPod::WSDL combines a simple OO interface with t
 he means provided by perl standard documentation. The overhead of having t
 o specify parameters and return values separately in pod is balanced by ea
 se of use and predictability of the outcome.\n\n\nREFERENCES\n\n* Axis: ht
 tp://ws.apache.org/axis/\n* SOAP: http://search.cpan.org/~kbrown/SOAP-0.28
 /\n* SOAP::Lite: http://search.cpan.org/~byrne/SOAP-Lite-0.65_5/\n* WSDL: 
 http://www.w3.org/TR/wsdl
DTEND:20050902T130000
DTSTART:20050902T124000
LOCATION:log
SUMMARY:Pod::WSDL - Generating WSDLs Using pod Markup
UID:http://conferences.yapceurope.org/ye2005/talk/150
URL:http://conferences.yapceurope.org/ye2005/talk/150
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Larry will speak [That should be enough for this abstract].
DTEND:20050831T111000
DTSTART:20050831T100000
LOCATION:Fotango
SUMMARY:Opening Keynote
UID:http://conferences.yapceurope.org/ye2005/talk/151
URL:http://conferences.yapceurope.org/ye2005/talk/151
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:In this talk\, I will discuss my 10 year relationship with Perl
 \nobjects.  I will show the problems that traditional\, hash based\,\nPerl
  objects have.  Over the years\, various techniques have been\ndeveloped t
 o solve the problems\, eventually leading to inside-out objects\n(recommen
 ded in Damian's new book\, "Perl Best Practises")\, and the module\nLexica
 l::Attributes\, which hides the implementation of inside-out objects\nbehi
 nd syntax borrowed from Perl6.
DTEND:20050902T130000
DTSTART:20050902T113000
LOCATION:Sapo
SUMMARY:Lexical Attributes
UID:http://conferences.yapceurope.org/ye2005/talk/164
URL:http://conferences.yapceurope.org/ye2005/talk/164
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:A talk about the module Regexp::Common\, which provides a repos
 itory\nof many common (and uncommon) regular expressions. We will show whi
 ch\nregular expressions are available\, how the module can be used\, how\n
 the available regular expression can be configured. We will also show\nsev
 eral lesser known features\, and we will show how to add patterns to   \nt
 he repository.
DTEND:20050902T160000
DTSTART:20050902T143000
LOCATION:Sapo
SUMMARY:Regexp::Common
UID:http://conferences.yapceurope.org/ye2005/talk/167
URL:http://conferences.yapceurope.org/ye2005/talk/167
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Whilst some Web site owners have opened up their information\, 
 either through REST or SOAP interfaces\, many have not.  Screen scraping r
 emains the only viable approach to gather information from such Web sites.
 \n\nMy talk will explore how Perl\, WWW::Mechanize and XPath can make gath
 ering information from such sites easier and more robust\, even when worki
 ng with badly formed HTML.  I will compare the XPath approach to the more 
 commonly used tokenising technique used by HTML::Parser.\n\nI will also di
 scuss other tools that help developers gather information from sites lacki
 ng public interfaces and how to use these tools to write simple\, flexible
  Perl code.
DTEND:20050902T160000
DTSTART:20050902T154000
LOCATION:log
SUMMARY:Using Perl to Gather Information from the Web
UID:http://conferences.yapceurope.org/ye2005/talk/170
URL:http://conferences.yapceurope.org/ye2005/talk/170
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Devel::Cover - An Introduction\n\nIn recent years\, many people
  have become aware of code coverage\, and especially how it can be used wi
 th Perl.  This is due in no small part to an increased focus on testing wi
 thin the Perl community and Devel::Cover's integral role in the Perl QA ef
 fort and use in Phalanx (http://qa.perl.org/phalanx/).\n\nThis talk is a b
 rief introduction to Devel::Cover.\n\nTopics to be covered include:\n\n - 
 a short introduction to code coverage basics\n - how to run Devel::Cover\n
  - how to view and interpret the results
DTEND:20050901T171500
DTSTART:20050901T165500
LOCATION:Fotango
SUMMARY:Devel::Cover - An Introduction
UID:http://conferences.yapceurope.org/ye2005/talk/171
URL:http://conferences.yapceurope.org/ye2005/talk/171
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Since I first released Devel::Cover some four years ago it has 
 come into reasonably common use. This talk focusses on some of the more ad
 vanced techniques available for serious testing of real world modules.\n\n
 Topics to be covered include:\n\n - how to integrate Devel::Cover into the
  build process\n - how to control which modules to cover\n - how to simula
 te error conditions\n - how to mark code as uncoverable\n - how to run Dev
 el::Cover with mod_perl\n - how to get coverage of XS code
DTEND:20050901T180000
DTSTART:20050901T174000
LOCATION:Fotango
SUMMARY:Advanced use of Devel::Cover
UID:http://conferences.yapceurope.org/ye2005/talk/172
URL:http://conferences.yapceurope.org/ye2005/talk/172
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:For the last five years\, a Perl/Tk program called SureSpell ha
 s been used in a very successful teaching programme helping dyslexic child
 ren improve their reading and language skills.\n\nThis talk gives a brief 
 overview of the both the teaching programme and the SureSpell program.\n\n
 Topics to be covered include:\n\n - what dyslexia is\n - methods which can
  help dyslexic children to learn\n - how SureSpell works\n - brief demo\n 
 - technical details of the program\n - cross platform problems\n - program
 me success rate
DTEND:20050901T110000
DTSTART:20050901T104000
LOCATION:Sapo
SUMMARY:SureSpell - Teaching Dyslexic Children Language Skills
UID:http://conferences.yapceurope.org/ye2005/talk/174
URL:http://conferences.yapceurope.org/ye2005/talk/174
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:When companies look at the application software\, they don't te
 nd to choose a Perl solution first and foremost. Perl is perceived to be a
 rcane and tricky\, requiring the right kind of technical specialist to get
  it up and running\, whereas with Java et al\, applications tend to work o
 ut of the box. This talk explores ways of packaging a Perl application - s
 o that the end user does not know\, or need to know\, it's a Perl applicat
 ion.
DTEND:20050831T180000
DTSTART:20050831T174000
LOCATION:log
SUMMARY:Packaging Perl Applications
UID:http://conferences.yapceurope.org/ye2005/talk/176
URL:http://conferences.yapceurope.org/ye2005/talk/176
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:In the theme of "Perl Everywhere"\, OpenGuides is a package of 
 wiki software that contains extra geographical functionality. This talk is
  about the history of the OpenGuides project\, the technical challenges\, 
 and some valuable lessons learned.
DTEND:20050901T160000
DTSTART:20050901T154000
LOCATION:log
SUMMARY:OpenGuides - coming to a city near you
UID:http://conferences.yapceurope.org/ye2005/talk/177
URL:http://conferences.yapceurope.org/ye2005/talk/177
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:The Camelbones framework allows you to use Cocoa to write nativ
 e GUI applications for Mac OS X with Perl.  This forty minute talk covers 
 the basics of what a Perl programmer needs to know to use the developer to
 ols to create a simple standalone installable Mac application.
DTEND:20050902T151000
DTSTART:20050902T143000
LOCATION:Fotango
SUMMARY:Camelbones - Perl and Cocoa
UID:http://conferences.yapceurope.org/ye2005/talk/179
URL:http://conferences.yapceurope.org/ye2005/talk/179
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:You start a job\, you start hacking\, then you get asked to loo
 k at some code. You read the code a little and to your horror\, it's undoc
 umented\, unreadable and you suspect the developer was on hooked on smokin
 g camelcrack. We can all be presented with situations like this\, but it's
  hard to predict how long it will take to produce the results your superio
 rs are after\, wether you kludge the change or rewrite it.\n\nSo what is t
 o be done? There's introducing tests\, documentation\, refactoring and the
  like\; however these can be unnessecary. To work with the codebase you ne
 ed to start analysing and tracking it.\n\nI'll cover how to start managing
  your legacy code to help boost productivity\, reproducability and predict
 ability. This talk might sound a bit like a managment talk\, but it's for 
 hackers too... this stuff can make your life easier!
DTEND:20050831T130000
DTSTART:20050831T122000
LOCATION:Fotango
SUMMARY:The legacy of Perl
UID:http://conferences.yapceurope.org/ye2005/talk/181
URL:http://conferences.yapceurope.org/ye2005/talk/181
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:This presentation will show how XS4ALL Internet is using MIMEDe
 fang\n(http://www.mimedefang.org/) to filter e-mail. As the mimedefang\nwe
 bpage explains: "MIMEDefang is a framework for filtering e-mail. It\nuses 
 Sendmail's "Milter" API\, some C glue code\, and some Perl code to\nlet yo
 u write high-performance mail filters in Perl."\n\nThis talk will give a s
 hort introduction to mimedefang and the\nsurrounding mail architecture\, a
 nd will focus on the filters we\ndeveloped at XS4ALL to filter our mail fl
 ow.\n\nSpecifically\, we have first developed a framework to make the perl
 \nfilters modular\, which allows for easier testing and maintenance of\nth
 e code. We have then added several modular components of the filter\,\nfor
  example to check against DNS blacklists\, to verify sending domains\nbeyo
 nd what sendmail does by default\, to check for quota exceeded situations\
 nearly in the SMTP conversation\, to do reliable virus scanning\, and last
 \nbut not least to do spamfiltering using spamassassin.
DTEND:20050831T122000
DTSTART:20050831T120000
LOCATION:log
SUMMARY:Email filtering with MIMEDefang
UID:http://conferences.yapceurope.org/ye2005/talk/182
URL:http://conferences.yapceurope.org/ye2005/talk/182
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Sometimes it's necessary to maintain or add features to code wr
 itten                                                                by ot
 her people\, and sometimes that code is not exactly up to the standard we'
 d like.  This talk suggests practical ways of dealing with the situation.\
 n\nOften the second reaction is that the whole thing needs rewriting (the 
                                                              first reactio
 n\, of course\, is to run away screaming)\, but usually that is not practi
 cal\, especially if the existing program is running acceptably.\n\nOther p
 eople's Perl can be so far from following best practices that it's hard to
  make your additions in a style you'd normally program\, and it's easy to 
 end up compounding the problem.                                           
                                         \n                                
                                                                           
                            \nThis talk offers hints and tips for what to d
 o\, with strategies for adapting your good practices into existing code. S
 omewhat surprisingly these often involving doing things you'd never do whe
 n writing a new Perl program from scratch\, such as using strict in just o
 ne function.\n\nBy following this advice you should be able to add in new 
 features while smugly knowing you're incrementally improving the quality o
 f the code.
DTEND:20050831T122000
DTSTART:20050831T120000
LOCATION:Fotango
SUMMARY:Maintaining Bad Perl
UID:http://conferences.yapceurope.org/ye2005/talk/183
URL:http://conferences.yapceurope.org/ye2005/talk/183
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:When debugging a problem in an application\, people generally r
 esort to scattered print's throughout the code.\nThose ad-hoc print's (or 
 even home grown logging systems) sometimes do the trick\, but they are not
  scalable\, configurable or in any way manageable for large\, complex proj
 ects.\nI will talk about how to use logging modules to accomplish easier d
 ebugging\, in particular using Log::Log4perl.\nLog4perl is the Perl implem
 entation of the log4j(ava)\, a logging infrastructure that is really well 
 thought out\, in use for years with numerous projects\, and available for 
 the major languages.\n\nLog::Log4perl addresses the shortcomings of typica
 l ad-hoc or homegrown logging systems by providing mechanisms to control t
 he amount of data being logged and where it ends up at:\nLevels: allow you
  to specify the priority of log messages. Low-priority messages are suppre
 ssed when the configuration allows only higher priority messages.\nCategor
 ies: define which parts of the system will have logging enabled. Category 
 inheritance allows to elegantly reuse and override previously defined sett
 ings on different parts of the category hierarchy.\nAppenders: allow to ch
 oose which output devices the log data is being output to.\n\nOn top of th
 at\, Log4perl completely differentiates the logging code from the logging 
 configuration. If you want to add the ability to send an email or write to
  system messages each time a critical error happens\, you only have to add
  that to the configuration (provided you already have the logging code on 
 place of course).\nIf you are having problems with some module\, you can t
 urn full debug on for it (using only the configuration files)\, while leav
 ing the rest of the program with the default log level. Later you can rest
 ore the default behavior.\n\nOther logging systems exist for Perl\, but no
 ne that I know of has such a powerful API\, but easy to use nonetheless\, 
 and available for other languages.\n\n\nThe layout for a 40 min. talk woul
 d be:\n\n*Intro\nEasy logging: use Log::Log4perl qw(:easy)\n\n*The whole p
 icture\nConfiguration: Code configurations vs configuration files\nCategor
 ies: Inheritance\nAppenders: Screen\, File\, DBI\nLayouts: Default and cus
 tom layouts\n\n*Advanced\n Log::Dispatch: Sending messages to strange plac
 es\n Performance: How to minimize the impact of logging on performance
DTEND:20050831T130000
DTSTART:20050831T122000
LOCATION:log
SUMMARY:Logging for fun & profit
UID:http://conferences.yapceurope.org/ye2005/talk/184
URL:http://conferences.yapceurope.org/ye2005/talk/184
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:People don't talk about Perl as much these days\, even on some 
 popular Perl mailing lists.\nThere don't seem to be as many Perl jobs adve
 rtised and many programmers who\nused to write in Perl have taken jobs in 
 other disciplines.\n\nAre we hearing less about Perl because it's less pop
 ular than before?  Or is it\njust that nobody needs to mention it because 
 it's everywhere? Or are people less\ninterested in languages and more inte
 rested in end results?
DTEND:20050902T115000
DTSTART:20050902T113000
LOCATION:Fotango
SUMMARY:The Decline of Perl?
UID:http://conferences.yapceurope.org/ye2005/talk/185
URL:http://conferences.yapceurope.org/ye2005/talk/185
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:www.template-toolkit.org says "The Template Toolkit is a fast\,
  powerful and\nextensible template processing system. It is ideally suited
  to the production\nand maintenance of web content and other dynamic docum
 ent systems."\n\nTemplate Toolkit is an excellent system for web content\,
  but it is also really\nuseful for many other tasks.\n\nIf you've thought 
 about using the m4 macro language to help manage your system\nconfiguratio
 n files\, but you didn't like it\, you should try Template Toolkit.\nIf yo
 u need to run a mail merge but you hate Windoze and/or Word\, you should t
 ry\nTemplate Toolkit.  If you're being forced to use Java and your IDE won
 't write\nat least half your code\, you should try Template Toolkit.  Or i
 n Perl\, if h2xs\nand ModuleMaker don't do it for you\, you should try Tem
 plate Toolkit.\n\nThis talk will explain how to use Template Toolkit in th
 e above situations.
DTEND:20050831T160000
DTSTART:20050831T152000
LOCATION:log
SUMMARY:Template Toolkit for Non-web Applications
UID:http://conferences.yapceurope.org/ye2005/talk/186
URL:http://conferences.yapceurope.org/ye2005/talk/186
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Perl is not the only language with .pl files.  One of the other
 s is Prolog\, and\nit is very different from Perl and most other programmi
 ng languages.  In this\ntalk Marty will provide an introduction to Prolog 
 for Perl programmers.
DTEND:20050902T123500
DTSTART:20050902T121500
LOCATION:Fotango
SUMMARY:The Other .pl
UID:http://conferences.yapceurope.org/ye2005/talk/187
URL:http://conferences.yapceurope.org/ye2005/talk/187
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Just as we were all beginning to lose hope in Perl6\, Autrijus 
 Tang released\na working implementation of an ever-growing Perl6 subset ca
 lled Pugs\, written in\na purely functional language called Haskell.  A lo
 t of Perl people are now\ninterested in Haskell\, and a lot of people who 
 are interested in Haskell are\nconfused or frightened by "Monads".  But Mo
 nads aren't scary or even\ncomplicated.\n\nIn this talk Marty will briefly
  explain what a monad is\, why they are used in\nHaskell\, and what they w
 ould look like in Perl.  As a side-effect (not that we\nwant any of those)
  you should be able to understand the Main module of Pugs\nafter listening
 .
DTEND:20050901T160000
DTSTART:20050901T154000
LOCATION:Fotango
SUMMARY:Kick in the Monads
UID:http://conferences.yapceurope.org/ye2005/talk/188
URL:http://conferences.yapceurope.org/ye2005/talk/188
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Everything you always wanted to know about Obfuscation and Golf
 ing\, some strange techniques and odd operators many are not aware of\, th
 e three rules of Obfuscation and many more.\n\nAlso\, everything you *neve
 r* wished to know about Obfuscation and Golfing\, some even stranger techn
 iques and even odder operators many wished the were *not* aware of.\n\nAll
  the slides that didn't fit the 45 minutes I got the other times.\n\nAn im
 proved section on Golfing.\n\nA brand new section on Secret Operators.\n\n
 Oh\, and a guy trying to keep at less than 6 seconds per slide.
DTEND:20050901T130000
DTSTART:20050901T113000
LOCATION:Fotango
SUMMARY:Perl Black Magic - once and for all - Obfuscation\, Golfing and Sec
 ret Operators
UID:http://conferences.yapceurope.org/ye2005/talk/194
URL:http://conferences.yapceurope.org/ye2005/talk/194
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:It is possible to see a filesystem as a grammar (remember those
  YACC grammars?). \n\nIn this talk I'll present a tool - DAG - to recursiv
 elly process directories guided by\na attributed grammar:\n\n - Terminal s
 ymbols -- files\n - Non terminal symbols -- directories\n - attributes -- 
 new files to be calculated\n - productions -- specify directory organizati
 on\n - attribute rules -- how to process files and directories
DTEND:20050901T173500
DTSTART:20050901T171500
LOCATION:log
SUMMARY:Directory Attributed Grammars
UID:http://conferences.yapceurope.org/ye2005/talk/202
URL:http://conferences.yapceurope.org/ye2005/talk/202
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:A whirlwind tour of the past 12 months of Perl. New and improve
 d\, and 100% carrot joke free!
DTEND:20050831T113000
DTSTART:20050831T111000
LOCATION:Fotango
SUMMARY:State of the Carrot 2004 - 2005
UID:http://conferences.yapceurope.org/ye2005/talk/205
URL:http://conferences.yapceurope.org/ye2005/talk/205
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:If you write Perl applications for the web\, you need to know a
 bout Maypole.                                                             
     \n\nMaypole is a framework which makes your job really\, really easy. 
 So easy\, in                                                              
    fact\, that we're going to build two applications - one simple\, and on
 e much more complex - live on stage in the course of this tutorial.\n\nAt 
 the same time\, we'll also be looking at an overview of how Maypole operat
 es\, the various                                                          
          \ntechnologies you need to know to make the best of it\, and the 
 current state of                                                          
     \nMaypole best practices.
DTEND:20050901T173000
DTSTART:20050901T143000
LOCATION:Sapo
SUMMARY:Maypole Tutorial
UID:http://conferences.yapceurope.org/ye2005/talk/206
URL:http://conferences.yapceurope.org/ye2005/talk/206
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:Catalyst is a new MVC framework for Perl. It has been under rap
 id development\, but the core API is now stable\, and a growing number of 
 projects use it. Catalyst borrows from other frameworks\, such as Ruby on 
 Rails and Apache Struts\, but its main goal is to be a flexible\, powerful
 \, and fast framework for developing any type of web project in Perl. \n\n
 In this introduction we will go through the most important features of Cat
 alyst\, then proceed to make a simple application.
DTEND:20050831T151000
DTSTART:20050831T143000
LOCATION:log
SUMMARY:An Introduction To Catalyst
UID:http://conferences.yapceurope.org/ye2005/talk/207
URL:http://conferences.yapceurope.org/ye2005/talk/207
END:VEVENT
BEGIN:VEVENT
DESCRIPTION:As a part of the development strategy Module::Build has been ch
 osen as the preferred build\, test and deployment system by the speaker.\n
 \nHaving used Module::Build for a few CPAN modules and finding out how eas
 y it was to extend - experiments where begun to see how well it scaled and
  the experiment has been nothing but a success.\n\nModule::Build lets you 
 tweak where it is necessary without having to send patches to its author.\
 n\nModule::Build is now used as Build\, Test\, Configuration and Deploymen
 t system for everything from module size and up.\n\nThe presentation will 
 go over the general use of Module::Build and how to extendit with practica
 l and real-life examples taken from current project from the \nspeakers po
 rtfolio.\n\n- Extending Module::Build being the the standard\n    - subcla
 ssing\n    - overloading\n\n- Influencing build proces behaviour\n    - ar
 guments and omnipresence\n\n- A few hacks and other small things\n\nThe pr
 esentation will not be a walk through of the Module::Build source\, since 
 the speaker is not its author\, but will be an introduction to use of Modu
 le::Build and extending Module::Build still using the standard Module::Bui
 ld.
DTEND:20050901T130000
DTSTART:20050901T122000
LOCATION:log
SUMMARY:Module::Build for Build\, Test\, Configuration and Deployment ~ a t
 our of Module::Build
UID:http://conferences.yapceurope.org/ye2005/talk/208
URL:http://conferences.yapceurope.org/ye2005/talk/208
END:VEVENT
END:VCALENDAR
