BEGIN:VCALENDAR CALSCALE:GREGORIAN PRODID:Data::ICal 0.16 VERSION:2.0 X-WR-CALNAME:YAPC::Europe 2008 BEGIN:VEVENT DESCRIPTION:Welcome\, and practical information DTEND:20080813T085000 DTSTART:20080813T083000 LOCATION:Aud S.01 SUMMARY:Welcome\, and practical information UID:https://www.yapceurope2008.org/ye2008/event/336 URL:https://www.yapceurope2008.org/ye2008/event/336 END:VEVENT BEGIN:VEVENT DESCRIPTION:YAPC::Europe Foundation presents the venue for the next year's conference. DTEND:20080813T085500 DTSTART:20080813T085000 LOCATION:Aud S.01 SUMMARY:YAPC::Europe 2009 announcement UID:https://www.yapceurope2008.org/ye2008/event/374 URL:https://www.yapceurope2008.org/ye2008/event/374 END:VEVENT BEGIN:VEVENT DESCRIPTION:Keynote DTEND:20080813T101000 DTSTART:20080813T091000 LOCATION:Aud S.01 SUMMARY:Keynote (Larry Wall) UID:https://www.yapceurope2008.org/ye2008/event/350 URL:https://www.yapceurope2008.org/ye2008/event/350 END:VEVENT BEGIN:VEVENT DESCRIPTION:Coffee break DTEND:20080813T104000 DTSTART:20080813T101000 LOCATION: SUMMARY:Coffee break UID:https://www.yapceurope2008.org/ye2008/event/338 URL:https://www.yapceurope2008.org/ye2008/event/338 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080813T112000 DTSTART:20080813T111000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/339 URL:https://www.yapceurope2008.org/ye2008/event/339 END:VEVENT BEGIN:VEVENT DESCRIPTION:Lunch break DTEND:20080813T125000 DTSTART:20080813T115000 LOCATION: SUMMARY:Lunch break UID:https://www.yapceurope2008.org/ye2008/event/340 URL:https://www.yapceurope2008.org/ye2008/event/340 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080813T133000 DTSTART:20080813T132000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/341 URL:https://www.yapceurope2008.org/ye2008/event/341 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080813T141000 DTSTART:20080813T140000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/342 URL:https://www.yapceurope2008.org/ye2008/event/342 END:VEVENT BEGIN:VEVENT DESCRIPTION:Coffee break DTEND:20080813T151000 DTSTART:20080813T144000 LOCATION: SUMMARY:Coffee break UID:https://www.yapceurope2008.org/ye2008/event/343 URL:https://www.yapceurope2008.org/ye2008/event/343 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080813T155000 DTSTART:20080813T154000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/344 URL:https://www.yapceurope2008.org/ye2008/event/344 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080813T163000 DTSTART:20080813T162000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/345 URL:https://www.yapceurope2008.org/ye2008/event/345 END:VEVENT BEGIN:VEVENT DESCRIPTION:Welcome back\, and practical information DTEND:20080814T085000 DTSTART:20080814T083000 LOCATION:Aud S.01 SUMMARY:Welcome back\, and practical information UID:https://www.yapceurope2008.org/ye2008/event/346 URL:https://www.yapceurope2008.org/ye2008/event/346 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080814T090000 DTSTART:20080814T085000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/348 URL:https://www.yapceurope2008.org/ye2008/event/348 END:VEVENT BEGIN:VEVENT DESCRIPTION:Keynote DTEND:20080814T101000 DTSTART:20080814T090000 LOCATION:Aud S.01 SUMMARY:Keynote (Damian Conway) UID:https://www.yapceurope2008.org/ye2008/event/364 URL:https://www.yapceurope2008.org/ye2008/event/364 END:VEVENT BEGIN:VEVENT DESCRIPTION:Coffee break DTEND:20080814T104000 DTSTART:20080814T101000 LOCATION: SUMMARY:Coffee break UID:https://www.yapceurope2008.org/ye2008/event/347 URL:https://www.yapceurope2008.org/ye2008/event/347 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080814T112000 DTSTART:20080814T111000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/349 URL:https://www.yapceurope2008.org/ye2008/event/349 END:VEVENT BEGIN:VEVENT DESCRIPTION:Lunch break DTEND:20080814T125000 DTSTART:20080814T115000 LOCATION: SUMMARY:Lunch break UID:https://www.yapceurope2008.org/ye2008/event/351 URL:https://www.yapceurope2008.org/ye2008/event/351 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080814T133000 DTSTART:20080814T132000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/352 URL:https://www.yapceurope2008.org/ye2008/event/352 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080814T141000 DTSTART:20080814T140000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/353 URL:https://www.yapceurope2008.org/ye2008/event/353 END:VEVENT BEGIN:VEVENT DESCRIPTION:Coffee break DTEND:20080814T151000 DTSTART:20080814T144000 LOCATION: SUMMARY:Coffee break UID:https://www.yapceurope2008.org/ye2008/event/354 URL:https://www.yapceurope2008.org/ye2008/event/354 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080814T155000 DTSTART:20080814T154000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/355 URL:https://www.yapceurope2008.org/ye2008/event/355 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080814T163000 DTSTART:20080814T162000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/356 URL:https://www.yapceurope2008.org/ye2008/event/356 END:VEVENT BEGIN:VEVENT DESCRIPTION:Social event DTEND:20080815 DTSTART:20080814T183000 LOCATION: SUMMARY:Social event UID:https://www.yapceurope2008.org/ye2008/event/371 URL:https://www.yapceurope2008.org/ye2008/event/371 END:VEVENT BEGIN:VEVENT DESCRIPTION:Welcome back\, and practical information DTEND:20080815T085000 DTSTART:20080815T083000 LOCATION:Aud S.01 SUMMARY:Welcome back\, and practical information UID:https://www.yapceurope2008.org/ye2008/event/357 URL:https://www.yapceurope2008.org/ye2008/event/357 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080815T090000 DTSTART:20080815T085000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/358 URL:https://www.yapceurope2008.org/ye2008/event/358 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080815T094000 DTSTART:20080815T093000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/359 URL:https://www.yapceurope2008.org/ye2008/event/359 END:VEVENT BEGIN:VEVENT DESCRIPTION:Coffee break DTEND:20080815T104000 DTSTART:20080815T101000 LOCATION: SUMMARY:Coffee break UID:https://www.yapceurope2008.org/ye2008/event/360 URL:https://www.yapceurope2008.org/ye2008/event/360 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080815T112000 DTSTART:20080815T111000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/361 URL:https://www.yapceurope2008.org/ye2008/event/361 END:VEVENT BEGIN:VEVENT DESCRIPTION:Lunch break DTEND:20080815T125000 DTSTART:20080815T115000 LOCATION: SUMMARY:Lunch break UID:https://www.yapceurope2008.org/ye2008/event/365 URL:https://www.yapceurope2008.org/ye2008/event/365 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080815T133000 DTSTART:20080815T132000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/366 URL:https://www.yapceurope2008.org/ye2008/event/366 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080815T141000 DTSTART:20080815T140000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/369 URL:https://www.yapceurope2008.org/ye2008/event/369 END:VEVENT BEGIN:VEVENT DESCRIPTION:Closing session DTEND:20080815T143500 DTSTART:20080815T141000 LOCATION:Aud S.01 SUMMARY:Closing session UID:https://www.yapceurope2008.org/ye2008/event/367 URL:https://www.yapceurope2008.org/ye2008/event/367 END:VEVENT BEGIN:VEVENT DESCRIPTION:Next year orgas present the venue. DTEND:20080815T144000 DTSTART:20080815T143500 LOCATION:Aud S.01 SUMMARY:YAPC::Europe 2009 presentation UID:https://www.yapceurope2008.org/ye2008/event/375 URL:https://www.yapceurope2008.org/ye2008/event/375 END:VEVENT BEGIN:VEVENT DESCRIPTION:Break DTEND:20080815T145000 DTSTART:20080815T144000 LOCATION: SUMMARY:Break UID:https://www.yapceurope2008.org/ye2008/event/373 URL:https://www.yapceurope2008.org/ye2008/event/373 END:VEVENT BEGIN:VEVENT DESCRIPTION:Auction DTEND:20080815T165000 DTSTART:20080815T145000 LOCATION:Aud S.01 SUMMARY:Auction UID:https://www.yapceurope2008.org/ye2008/event/368 URL:https://www.yapceurope2008.org/ye2008/event/368 END:VEVENT BEGIN:VEVENT DESCRIPTION:- Why you should care about your Errors\n- How to turn errors i nto exceptions\n- Exception::Class DTEND:20080814T154000 DTSTART:20080814T151000 LOCATION:Aud 2.02 SUMMARY:die Perl\, die! UID:https://www.yapceurope2008.org/ye2008/talk/1084 URL:https://www.yapceurope2008.org/ye2008/talk/1084 END:VEVENT BEGIN:VEVENT DESCRIPTION:You've published a book. You wish to allow readers search onlin e through it. From search page you not only want to get the list of pages which contain the word or phrase\, but also a screenshot of a particular p age where found words are highlighted. \n\nYou have to solve a number of h ard tasks to obtain cool result. I will cover some of them on a live examp le.\n\n* Working with book layout and converting it into a suitable format .\n* Extracting paragraphs\, phrases and words from the layout.\n* Underst anding the importance of separate words.\n* Thinking of how to restore the word order if the source had damaged it.\n* Restoring words split with hy phens.\n* Indexing the text of a book.\n* What is better for index: dictio nary or morphology engine?\n* Building the cloud of popular words.\n* Gene rating previews and thumbnails.\n* Highlighting words that are found.\n* C aching search results.\n* Adding hot word lists to search results. DTEND:20080814T111000 DTSTART:20080814T104000 LOCATION:Room 2.07 SUMMARY:How to make Google Books at home UID:https://www.yapceurope2008.org/ye2008/talk/1087 URL:https://www.yapceurope2008.org/ye2008/talk/1087 END:VEVENT BEGIN:VEVENT DESCRIPTION:Git::FastExport is a module that parses the output of\ngit-fast -export and allows one to modify it to produce\na different history.\n\nSt arting from a use case we had at work (merging the history\nof several dis tinct directories previously managed with CVS\nin a single git repository) \, I'll explain the simple format\nused by git-fast-export\, show the issu es encountered when\ntrying to stitch two commit trees together and show s everal\nsimple tricks one can use to change the history of a repository.\n \nThe module will be on CPAN before YAPC starts. \;-) DTEND:20080815T111000 DTSTART:20080815T104000 LOCATION:Aud 2.02 SUMMARY:Messing with Git history using Git::FastExport UID:https://www.yapceurope2008.org/ye2008/talk/1088 URL:https://www.yapceurope2008.org/ye2008/talk/1088 END:VEVENT BEGIN:VEVENT DESCRIPTION:This talk is an explanation of how the TPF Grants committee wor ks and the kind of projects that are likely to be accepted. It will includ e some examples of successful TPF grants. DTEND:20080815T111000 DTSTART:20080815T104000 LOCATION:Aud S.01 SUMMARY:TPF Grants Committee UID:https://www.yapceurope2008.org/ye2008/talk/1089 URL:https://www.yapceurope2008.org/ye2008/talk/1089 END:VEVENT BEGIN:VEVENT DESCRIPTION:This talk presents SMOP\, a Perl 6 runtime attempting to suppor t the Perl 6 Object Model from the bottom up. The aspects of the Perl 6 Ob ject orientation leading to it's design will be explained and it's low lev el implementation introduced. DTEND:20080815T132000 DTSTART:20080815T125000 LOCATION:Aud 2.01 SUMMARY:Perl 6 is just a SMOP UID:https://www.yapceurope2008.org/ye2008/talk/1090 URL:https://www.yapceurope2008.org/ye2008/talk/1090 END:VEVENT BEGIN:VEVENT DESCRIPTION:In the fall of 2007 Nordaaker started building a photo diary si te called phiary.com. We decided to build it on the Amazon Web Services pl atform. Based on what we've learned\, we will look at how you can easily d eploy Catalyst apps on EC2\, use S3 for storage in your apps\, as well as leverage the other unique benefits of the Amazon platform. DTEND:20080813T162000 DTSTART:20080813T155000 LOCATION:Aud 2.01 SUMMARY:Building Catalyst apps on the Amazon Web Service Platform UID:https://www.yapceurope2008.org/ye2008/talk/1091 URL:https://www.yapceurope2008.org/ye2008/talk/1091 END:VEVENT BEGIN:VEVENT DESCRIPTION:Basic auth for your web services sucks for several reasons. OAu th is a standard protocol for doing token based auth\, similar to how flic kr auths their desktop apps. OAuth is also an ideal companion to openid\, as it doesn't require a local username/password. In this talk we'll take a closer look at how OAuth is built up\, as well as look into how you can easily use OAuth for your own APIs\, with examples in Catalyst well as Jif ty and pure mod_perl. DTEND:20080813T140000 DTSTART:20080813T133000 LOCATION:Aud 2.01 SUMMARY:Web Services with OAuth UID:https://www.yapceurope2008.org/ye2008/talk/1092 URL:https://www.yapceurope2008.org/ye2008/talk/1092 END:VEVENT BEGIN:VEVENT DESCRIPTION:Schedule:\n\nLambda-SMTP\nSay hello to Kephra\nWhat's New in DB D::Oracle\nTranslating human language with computer grammar\nInstrumenting Web-Services with SOAP::WSDL\nProtecting Perl using obfuscators. Stunnix Perl-Obfus. Alternatives.\n\nSurprise Announcement\nDon't\nGoing dark - ge tting stuff done away from a network connection\nThis is how vee do perl i n FRANCEUU\nSecret operators\nYou Aren't Good Enough\n\nWhy Would You Want to do a Lightning Talk?\n\nMaybe you've never given a talk before\, and y ou'd like to start small. For a Lightning Talk\, you don't need to make sl ides\, and if you do decide to make slides\, you only need to make three.\ n\nMaybe you're nervous and you're afraid you'll mess up. It's a lot easie r to plan and deliver a five minute talk than it is to deliver a long talk . And if you do mess up\, at least the painful part will be over quickly.\ n\nMaybe you don't have much to say. Maybe you just want to ask a question \, or invite people to help you with your project\, or boast about somethi ng you did\, or tell a short cautionary story. These things are all intere sting and worth talking about\, but there might not be enough to say about them to fill up thirty minutes.\n\nMaybe you have a lot of things to say\ , and you're already going to give a long talk on one of them\, and you do n't want to hog the spotlight. There's nothing wrong with giving several L ightning Talks. Hey\, they're only five minutes.\n\nOn the other side\, pe ople might want to come to a lightning talk when they wouldn't come to a l ong talk on the same subject. The risk for the attendees is smaller: If th e talk turns out to be dull\, or if the person giving the talk turns out t o be a really bad speaker\, well\, at least it's over in five minutes. Wit h lightning talks\, you're never stuck in some boring lecture for forty-fi ve minutes.\n\nStill having trouble picking a topic\, here are some sugges tions:\n\n 1. Why my favorite module is X.\n 2. I want to do cool proj ect X. Does anyone want to help?\n 3. Successful Project: I did project X. It was a success. Here's how you could benefit.\n 4. Failed Project: I did project X. It was a failure\, and here's why.\n 5. Heresy: People always say X\, but they're wrong. Here's why.\n 6. You All Suck: Here's what is wrong with the our community.\n 7. Call to Action: Let's all do more of X / less of X.\n 8. Wouldn't it be cool if X?\n 9. Someone nee ds to do X.\n 10. Wish List\n 11. Why X was a mistake.\n 12. Why X look s like a mistake\, but isn't.\n 13. What it's like to do X.\n 14. Here's a useful technique that worked.\n 15. Here's a technique I thought would be useful but didn't work.\n 16. Why algorithm X sucks.\n 17. Compariso n of algorithms X and Y. \n\nOf course\, you could give the talk on anythi ng you wanted\, whether or not it is on this list. If we get a full schedu le of nothing but five minutes of ranting and raving on each topic\, a goo d time will still be had by most. DTEND:20080813T173000 DTSTART:20080813T163000 LOCATION:Aud S.01 SUMMARY:Lightning Talks\, part 1 UID:https://www.yapceurope2008.org/ye2008/talk/1093 URL:https://www.yapceurope2008.org/ye2008/talk/1093 END:VEVENT BEGIN:VEVENT DESCRIPTION:Some Perl operators have colorful nicknames\, like the spaceshi p or diamond operators.\n\nDuring their never ending search for obscurity and shortness\, obfuscators and golfers have discovered new Perl "operator s"\, commonly known as the Perl "secret operators".\n\nThis light-hearted talk will present some of them\, with example of use. Come and learn every thing you never wanted to know about the inchworm-on-a-stick\, the spacest ation\, the baby cart and many others! DTEND:20080813T115000 DTSTART:20080813T112000 LOCATION:Aud 2.01 SUMMARY:Perl (secret) operators UID:https://www.yapceurope2008.org/ye2008/talk/1138 URL:https://www.yapceurope2008.org/ye2008/talk/1138 END:VEVENT BEGIN:VEVENT DESCRIPTION:WxWidgets is a mature GUI-Toolkit\, build for professional appl ication development. That includes a much broader feature set\, than many might expect. Even if some of that functionality is already present in oth er CPAN modules\, it might be educating to explore what else has WxPerl t o offer beside the usual stuff like menus\, toolbars\, buttons\, boxes and dialogs. This talk is about experience with HTMLWindows\, Drag and Drop\, printing\, advanced text controls\, XRC (GUI abstraction layer) and much more. DTEND:20080815T132000 DTSTART:20080815T125000 LOCATION:Room 2.07 SUMMARY:WxPerl beyond Frames and Buttons UID:https://www.yapceurope2008.org/ye2008/talk/1159 URL:https://www.yapceurope2008.org/ye2008/talk/1159 END:VEVENT BEGIN:VEVENT DESCRIPTION:The Perl community has done some amazing things. It provides in frastructure\, it runs conferences\, it gives grants. It brings people tog ether to enable them to write great software.\n\nIn this talk\, we'll look at some of the things that makes the Perl community so great and give you a number of good reasons to be proud to use Perl. DTEND:20080815T101000 DTSTART:20080815T094000 LOCATION:Aud S.01 SUMMARY:Proud to Use Perl UID:https://www.yapceurope2008.org/ye2008/talk/1175 URL:https://www.yapceurope2008.org/ye2008/talk/1175 END:VEVENT BEGIN:VEVENT DESCRIPTION:London.pm was the first European Perl Mongers group and it star ted ten years ago. So let's get nostalgic and look back over what has happ ened in that time.\n\nWhat did we do right? What did we get wrong? Why did we bother? Have we learned any lessons?\n\nThere will be nostalgia\, anec dotes and embarrassing photos. What more could you ask for?\n\np.s. About those embarrassing photos. I am\, of course\, completely open to bribes if anyone wants to ensure that any particular photo is not shown :-) DTEND:20080815T140000 DTSTART:20080815T133000 LOCATION:Aud S.01 SUMMARY:Ye Compleat History of Ye Perle Mongers of Olde London Towne (Part 1) UID:https://www.yapceurope2008.org/ye2008/talk/1176 URL:https://www.yapceurope2008.org/ye2008/talk/1176 END:VEVENT BEGIN:VEVENT DESCRIPTION:Well the same as last years just a few updates for the newer ve rsions of DBD::Oracle.\n\nI haven't done the update yet DTEND:20080814T144000 DTSTART:20080814T141000 LOCATION:Aud 2.01 SUMMARY:Basic DBI with DBD-Oracle UID:https://www.yapceurope2008.org/ye2008/talk/1185 URL:https://www.yapceurope2008.org/ye2008/talk/1185 END:VEVENT BEGIN:VEVENT DESCRIPTION:We are from the internet - we know the value of open source. Ha rdware and storage is unfortunately real\, but you can outsource it all. T his talk will guide you through how to exploit cloud computing today to ma ke you happier and more efficient. DTEND:20080814T132000 DTSTART:20080814T125000 LOCATION:Aud S.01 SUMMARY:Working in the cloud UID:https://www.yapceurope2008.org/ye2008/talk/1189 URL:https://www.yapceurope2008.org/ye2008/talk/1189 END:VEVENT BEGIN:VEVENT DESCRIPTION:Regexp::Common is in the process of being rewritten\, to make u se of the features 5.10 is giving us.\n\nThis talk will discuss what's new . DTEND:20080814T132000 DTSTART:20080814T125000 LOCATION:Aud 2.02 SUMMARY:Regexp::Common\, the next generation. UID:https://www.yapceurope2008.org/ye2008/talk/1193 URL:https://www.yapceurope2008.org/ye2008/talk/1193 END:VEVENT BEGIN:VEVENT DESCRIPTION:In this mini tutorial\, we will explore character classes. From the simple dot to user defined classes\, and anything in between. There w ill be something to learn for everyone. DTEND:20080815T101000 DTSTART:20080815T094000 LOCATION:Aud 2.02 SUMMARY:Regexp mini tutorial: Character Classes UID:https://www.yapceurope2008.org/ye2008/talk/1194 URL:https://www.yapceurope2008.org/ye2008/talk/1194 END:VEVENT BEGIN:VEVENT DESCRIPTION:Your web project is growing. More features\, more business requ irements. Do you have a time to think about future? Future of your project \, at least?\n\nI will cover many things related to project development in Perl (from developer and manager point of view) which could be suitable t o start refactoring\, changing and extending your project codebase. Make y our old perl project fresh and new!\n- test driven development\, how to in troduce it (all people are talking about it but how we can just start doin g it?)\n- introducing mental changes in your company. You can do it\, you are not alone\n- project releasing and agile\n- modularization\n- switch t o modern approaches\, libraries and frameworks (OOP\, Catalyst)\, satisfy your business and save world... err... money\n- from CGI and mod_perl to C atalyst\n- why people are afraid about changes?\n- breaking stability or i mproving quality?\n- make your perl beautiful\, make your work better. Get more for less.\n\nTechnical short summary:\nshell scripts\, Makefile\, pe rl-critic\, Test::*\, Catalyst DTEND:20080813T154000 DTSTART:20080813T151000 LOCATION:Aud S.01 SUMMARY:do { "TDD and refactoring" } or die "trying" UID:https://www.yapceurope2008.org/ye2008/talk/1208 URL:https://www.yapceurope2008.org/ye2008/talk/1208 END:VEVENT BEGIN:VEVENT DESCRIPTION:It's been quite some time since I last talked on CPANTS\, and t here have been a lot of improvements.\n\nI will discuss:\n* what CPANTS is about\n* how it's implemented (overview)\n* current metrics\n* future met rics (and take suggestions)\n* cpants.perl.org DTEND:20080813T140000 DTSTART:20080813T133000 LOCATION:Aud 2.02 SUMMARY:CPANTS UID:https://www.yapceurope2008.org/ye2008/talk/1226 URL:https://www.yapceurope2008.org/ye2008/talk/1226 END:VEVENT BEGIN:VEVENT DESCRIPTION:Making some text appear in a browser is quite easy\, but making a webpage that validates is not too hard either.\n\nThis talk is a quick guide to things you should do and not do\, when writing markup. DTEND:20080813T115000 DTSTART:20080813T112000 LOCATION:Room 2.07 SUMMARY:the web\, html and all that stuff UID:https://www.yapceurope2008.org/ye2008/talk/1249 URL:https://www.yapceurope2008.org/ye2008/talk/1249 END:VEVENT BEGIN:VEVENT DESCRIPTION:How I maintain Text::CSV_XS\, implement new features\, and in t hat process found a way to make the parsing up to 10 times faster using DB I-like bind_columns syntax. DTEND:20080815T140000 DTSTART:20080815T133000 LOCATION:Aud 2.02 SUMMARY:Speed up Text::CSV_XS UID:https://www.yapceurope2008.org/ye2008/talk/1261 URL:https://www.yapceurope2008.org/ye2008/talk/1261 END:VEVENT BEGIN:VEVENT DESCRIPTION:The Chronicle of Matthew of Edessa is a twelfth-century Armenia n\nhistory that survives in 43 manuscripts\, held in ten libraries in\neig ht countries. My task is to create a definitive text that is based\non al l of them. I will talk about the problems of medieval text\nediting\, the ways in which Perl and phylogenetics have come to my\nrescue\, and show a few pretty pictures of manuscripts DTEND:20080815T115000 DTSTART:20080815T112000 LOCATION:Aud S.01 SUMMARY:101011 manuscripts: Perl and the Chronicle of Matthew of Edessa UID:https://www.yapceurope2008.org/ye2008/talk/1288 URL:https://www.yapceurope2008.org/ye2008/talk/1288 END:VEVENT BEGIN:VEVENT DESCRIPTION:As a developer you will often encounter old systems that are ou t of touch with current technology of which has certain limitations. The t alk focuses on some of the techniques that can help you "escape" older sys tems and regain your development momentum. \n\nThe talk will focus on the skills and methodologies that are useful to know when attacking a large/o ld system. DTEND:20080814T111000 DTSTART:20080814T104000 LOCATION:Aud 2.02 SUMMARY:Making (large) legacy systems beautiful UID:https://www.yapceurope2008.org/ye2008/talk/1309 URL:https://www.yapceurope2008.org/ye2008/talk/1309 END:VEVENT BEGIN:VEVENT DESCRIPTION:After a Unicode Tutorial talk\, and several Unicode related ran ts in lightning talks\, I've summarized things into a list of best practic es.\n\nThe audience is assumed to be familiar with Perl's string model\, a s explained in perlunitut and YAPC::Europe 2007's Perl Unicode Tutorial. DTEND:20080814T162000 DTSTART:20080814T155000 LOCATION:Aud S.01 SUMMARY:Unicode Best Practices UID:https://www.yapceurope2008.org/ye2008/talk/1313 URL:https://www.yapceurope2008.org/ye2008/talk/1313 END:VEVENT BEGIN:VEVENT DESCRIPTION:I run RPM-based Linux distributions on all of my servers. And a few years ago I realised that mixing CPAN modules that were installed usi ng RPM with CPAN modules that are installed using the standard CPAN tools was a recipe for disaster. So I decided that from then on I'd only use RPM s on my servers. And because only a tiny proportion of CPAN modules are av ailable as RPMs\, that meant I had to learn how to create RPMs from CPAN m odules. This is what I learnt. DTEND:20080815T115000 DTSTART:20080815T112000 LOCATION:Room 2.07 SUMMARY:Perl in RPM-Land UID:https://www.yapceurope2008.org/ye2008/talk/1314 URL:https://www.yapceurope2008.org/ye2008/talk/1314 END:VEVENT BEGIN:VEVENT DESCRIPTION:Noone likes to change a database schema. It's scary.\n\nBut som etimes you have to change the schema\, either because the code is so close ly mapped to it\, or because you're refactoring legacy code\, or you need to make it faster\, bigger\, better.\n\nSeveral techniques are presented t hat let you change the schema sensibly and with control\, and keep track o f what is going on. How do you share these changes with other developers w ith their own sandboxes? What about deploying to production? DTEND:20080814T162000 DTSTART:20080814T155000 LOCATION:Aud 2.01 SUMMARY:Modifying databases - changing the schema in a controlled way UID:https://www.yapceurope2008.org/ye2008/talk/1316 URL:https://www.yapceurope2008.org/ye2008/talk/1316 END:VEVENT BEGIN:VEVENT DESCRIPTION:Continuing from last year (with a quick recap) I will look at h ow the systems\, development practices and tools we have at our disposal h ave changed\, what is now available and how it makes life/work easier.\n\n In no particular order I'll cover: Server configuration\, Load balancing h ttp\, Testing\, Performance\, Image/application serving\, Caching\, Web Fr ameworks\, Server maintenance\, Object relational mapping and Cloud Comput ing.\n\nAll of these are pointers to concepts and tools which you may or m ay not be aware of\, and how they can fit together. DTEND:20080814T115000 DTSTART:20080814T112000 LOCATION:Room 2.07 SUMMARY:Evolving Architecture - further UID:https://www.yapceurope2008.org/ye2008/talk/1317 URL:https://www.yapceurope2008.org/ye2008/talk/1317 END:VEVENT BEGIN:VEVENT DESCRIPTION:I'm trying to index every distribution ever uploaded to PAUSE. From that\, I want to release the data so people can build new CPAN applic ations with the data. I cover how PAUSE indexes distributions\, how I'm do ing it differently\, and the current state of my efforts. DTEND:20080815T132000 DTSTART:20080815T125000 LOCATION:Aud S.01 SUMMARY:Indexing BackPAN UID:https://www.yapceurope2008.org/ye2008/talk/1319 URL:https://www.yapceurope2008.org/ye2008/talk/1319 END:VEVENT BEGIN:VEVENT DESCRIPTION:Over the past two years\, we've built Hiveminder.com - a Web 2. 0 collaborative task manager. Along the way\, we've built dozens of cool t ools you can uses as part of your own product. We'll walk through everythi ng from Shipwright (our build system) to Hiveminder's amazing feedback box .\n\nTopics we'll cover include:\n\n* Streamlining your CSS and Javascript distribution\n* Painless date parsing\n* Jifty::DBI\, an Object Relationa l Mapper with style\n* Halos for your web framework\n* Tools to get better feedback from your users\n* Shipwright\, a tool to version\, package and distribute your application and its dependencies\n* A new IMAP server desi gned for custom applications\n* Ways to integrate your application with th e tools your users actually use\n* The Jifty web framework DTEND:20080813T132000 DTSTART:20080813T125000 LOCATION:Aud 2.01 SUMMARY:Everything but the secret sauce UID:https://www.yapceurope2008.org/ye2008/talk/1321 URL:https://www.yapceurope2008.org/ye2008/talk/1321 END:VEVENT BEGIN:VEVENT DESCRIPTION:Prophet is a new 'distributed database' designed for post-web-2 .0 applications. \n\nWith Prophet\, it's easy to build custom database app lications and synchronize their data with your friends and coworkers - all without a central server. \n\nProphet supports arbitrary topology synchro nization and has an advanced conflict resolution database which helps make sure that the entire database 'network' works its way to consistency even when disconnected users make conflicting choices about conflict resolutio n.\n\nIn this talk\, Jesse will present the Prophet architecture and demon strate how to build an adaptor to synchronize Prophet with a web 2.0 datab ase-backed application. DTEND:20080814T132000 DTSTART:20080814T125000 LOCATION:Aud 2.01 SUMMARY:Step 3: Prophet - A peer to peer replicated property database UID:https://www.yapceurope2008.org/ye2008/talk/1322 URL:https://www.yapceurope2008.org/ye2008/talk/1322 END:VEVENT BEGIN:VEVENT DESCRIPTION:How do you get thousands of perl modules to play nicely with th ousands of debian packages?\n\n The debian-perl group integrates perl s ource code from CPAN into the wider debian distribution allowing users to easily handle dependencies and installation. Relying on a relatively stand ardized interface (CPAN) the group uses tools\, often written in perl\, to create packages that not only fit the debian policies with regard to 'fre edom' and license but also that are easy to manage. Active maintenance and bug tracking are included in this process allowing debian to be up-to-dat e with a wide selection of packaged perl modules. DTEND:20080815T101000 DTSTART:20080815T094000 LOCATION:Room 2.07 SUMMARY:The debian - CPAN interface UID:https://www.yapceurope2008.org/ye2008/talk/1323 URL:https://www.yapceurope2008.org/ye2008/talk/1323 END:VEVENT BEGIN:VEVENT DESCRIPTION:Perl is a weakly typed language with dynamic variable binding a nd that opens the door to a number of small programming mistakes that beco me bothering when software matures. A way to compensate for Perl's lack of type checking is to use some ideas from the programming by contract parad igm.\n\nDuring this talk\, we will go through the main ideas from the prog ramming by contract paradigm and see how they are implemented by various P erl modules.\n\nWe will focus in particular on the module Sub::Contract th at offers a simple and pragmatic implementation of the most useful aspects of contract programming. DTEND:20080814T132000 DTSTART:20080814T125000 LOCATION:Room 2.07 SUMMARY:‎Pragmatic Contract Programming in Perl UID:https://www.yapceurope2008.org/ye2008/talk/1326 URL:https://www.yapceurope2008.org/ye2008/talk/1326 END:VEVENT BEGIN:VEVENT DESCRIPTION:This is a tech talk about an existing ETL system used at Nestor ia.co.uk (vertical search engine\, 4 countries). It's the processing piece between arrived data and database insert.\nhttp://en.wikipedia.org/wiki/E xtract%2C_transform%2C_load\n\nLots of Perl folks have written ETL systems in the past\, lots will have to write one in the future. There is often n o way around a custom solution.\n\nWe will look at some best practices aro und 24/7 availability\, monitoring\, data cleansing\, data quality\, i18n\ , scaling\, dealing with failures and changes ... and of course CPAN modul es.\n\nNestoria had to integrate dozens of different formats (flatfile\, d atabase dumps\, XML\, custom)\, delivery methods (fetch\, crawl\, FTP) and update methods (complete\, incremental\, partial\, custom). We thought we were prepared for everything\, but over the years we learned some valuabl e lessons about corrupt files\, failing servers\, data quality\, i18n issu es and performance. DTEND:20080813T111000 DTSTART:20080813T104000 LOCATION:Aud 2.02 SUMMARY:Low maintenance data integration (ETL) UID:https://www.yapceurope2008.org/ye2008/talk/1330 URL:https://www.yapceurope2008.org/ye2008/talk/1330 END:VEVENT BEGIN:VEVENT DESCRIPTION:There are many async I/O libraries in the wild\, but not many a re lucky enough to combine the concept with the ease of use. Module IO::La mbda features techniques from functional programming\, and offers new solu tions for the old problems. DTEND:20080814T140000 DTSTART:20080814T133000 LOCATION:Aud 2.02 SUMMARY:‎IO::Lambda - async I/O shouldn't be that complex‎ UID:https://www.yapceurope2008.org/ye2008/talk/1336 URL:https://www.yapceurope2008.org/ye2008/talk/1336 END:VEVENT BEGIN:VEVENT DESCRIPTION:In this talk full of practical advice I take a real-life Perl p rogram and walk through how to polish it into a beautiful module ready for CPAN. I show how a sort-of paint-by-numbers process is not difficult at a ll\, but eases future software maintenance and can improve quality\, or at least kwalitee. Topics include how to set up a development environment\, how to make code testable that was not written with testing in mind\, and which traps to avoid. DTEND:20080813T162000 DTSTART:20080813T155000 LOCATION:Room 2.07 SUMMARY:From an idea to CPAN UID:https://www.yapceurope2008.org/ye2008/talk/1338 URL:https://www.yapceurope2008.org/ye2008/talk/1338 END:VEVENT BEGIN:VEVENT DESCRIPTION:Interchange is a mature open source online shop platform consta ntly developed since 1995. Perl as implementation language allows Intercha nge to be a robust\, secure and very flexible application. \n\nThis talk s tarts with an introduction on the architecture and capabilities of Interch ange.\nIt continues with a detailed description how the beauty of Perl hel ped to evolve Interchange into a software which drives high traffic e-comm erce sites.\nPractical programming examples and an overview about new deve lopments in Interchange will be at the end of the talk. DTEND:20080813T111000 DTSTART:20080813T104000 LOCATION:Room 2.07 SUMMARY:Interchange - The Open Source Online Shop Platform UID:https://www.yapceurope2008.org/ye2008/talk/1339 URL:https://www.yapceurope2008.org/ye2008/talk/1339 END:VEVENT BEGIN:VEVENT DESCRIPTION:This is intended as an introductory talk about using Perl embed ded in Nginx. Nginx (nginx.(net|ru)) is a high-performance free HTTP proxy /server which just starts to show up in Netcraft reports. Nginx is happily used by more than a million websites all over the world. The now common H TTP setup of lightning-fast frontend and feature-rich backend fits it nice ly and directly threatens Apache dominance. DTEND:20080814T162000 DTSTART:20080814T155000 LOCATION:Room 2.07 SUMMARY:Perl inside Nginx UID:https://www.yapceurope2008.org/ye2008/talk/1341 URL:https://www.yapceurope2008.org/ye2008/talk/1341 END:VEVENT BEGIN:VEVENT DESCRIPTION:CoSAIR.org provides a central\, open\, internet-based Game AI d evelopment platform for teaching and research.\n\nThe system provides a ga me engine\, a bot API and coding support. Users can upload their code and immediately test it and compare it to competitors. The fact that code from multiple people runs on a central machine and interacts with each other l eads to a series of challenges and possibilities that are adressed in this talk:\n\n- how to secure the system against malicious code using Safe.pm\ n- how to rudimentarily test and debug your code on a remote machine?\n- h ow to provide controlled access to databases\, game data files and externa l AI modules?\n- how to handle large statistical evaluations in the backgr ound?\n- how to allow usage and sharing of foreign code?\n- ideas how to e nable different programming languages to be used with Inline.pm?\n\nThese aspects of social coding communities are relatively new and we do not prov ide complete solutions for each of them\, but also have some problems left open. DTEND:20080813T154000 DTSTART:20080813T151000 LOCATION:Room 2.07 SUMMARY:CoSAIR.org - Making of a Game AI Programming Platform UID:https://www.yapceurope2008.org/ye2008/talk/1342 URL:https://www.yapceurope2008.org/ye2008/talk/1342 END:VEVENT BEGIN:VEVENT DESCRIPTION:Parrot is the virtual machine intended to run Perl 6 and other dynamic languages efficiently and effectively. The tools used to build “Ra kudo” (Perl 6 on Parrot) are powerful and general enough to host other lan guages on Parrot effectively. This talk explains how they work and demonst rates how to start running your own language on Parrot—and to use other co de targeting Parrot without writing it yourself. DTEND:20080813T132000 DTSTART:20080813T125000 LOCATION:Aud S.01 SUMMARY:Building Compilers with the Parrot Compiler Toolkit UID:https://www.yapceurope2008.org/ye2008/talk/1343 URL:https://www.yapceurope2008.org/ye2008/talk/1343 END:VEVENT BEGIN:VEVENT DESCRIPTION:“Rakudo” is the new name for the Perl 6 compiler targeting the Parrot virtual machine. Building Rakudo has required development of a numb er of tools and methodologies (as well as revisions to the Perl 6 language specification itself)\, and things are progressing nicely.\n\nThis talk w ill report on the overall status and implementation of the Rakudo Perl com piler\, outline what is working (and what is not working) in Rakudo\, and demonstrate how to get started writing Perl 6 programs. The talk will also cover the design of the compiler itself\, focusing on the overall archite cture\, the structure of the Perl 6 test suite\, and provide specific deta ils that will enable others to become involved and to directly contribute to the remaining work of building Rakudo. The talk will end with a “road m ap” to completion of a production Perl 6 compiler on Parrot. DTEND:20080813T115000 DTSTART:20080813T112000 LOCATION:Aud S.01 SUMMARY:Rakudo: Perl 6 on Parrot UID:https://www.yapceurope2008.org/ye2008/talk/1344 URL:https://www.yapceurope2008.org/ye2008/talk/1344 END:VEVENT BEGIN:VEVENT DESCRIPTION:Ernst is a framework for describing Moose classes. In this tal k\, I'll show you what class descriptions are and how to use them to make building applications easier. We'll see how Ernst allows you to write a s ingle class that can render itself as a web form (or REST-accessable objec t) and act as a DBIC row object\, all without writing any code. We'll als o see how to write Ernst interpreters\, that adapt Ernst-described classes to your specific needs. DTEND:20080815T111000 DTSTART:20080815T104000 LOCATION:Aud 2.01 SUMMARY:Describing classes with Ernst UID:https://www.yapceurope2008.org/ye2008/talk/1345 URL:https://www.yapceurope2008.org/ye2008/talk/1345 END:VEVENT BEGIN:VEVENT DESCRIPTION:Release of the latest version of AsciiO. Presentation of new fe atures. Discussion around releasing modules DTEND:20080814T162000 DTSTART:20080814T155000 LOCATION:Aud 2.02 SUMMARY:AsciiO version 1.0 UID:https://www.yapceurope2008.org/ye2008/talk/1346 URL:https://www.yapceurope2008.org/ye2008/talk/1346 END:VEVENT BEGIN:VEVENT DESCRIPTION:Helios is a system for building asynchronous distributed job pr ocessing applications. Applications that need to process millions of smal l units of work in parallel can use the Helios system to scale this work a cross the multiple processes and servers that form a Helios collective. H elios may also be used to improve the user experience on websites. By uti lizing the framework's asynchronous job processing services\, potential ti meout issues can be eliminated and response times decreased for larger tas ks invoked in response to user input. The web server application can "fir e and forget" in the background\, immediately returning control to the use r. Using Helios\, simple Perl applications can be written to distribute w orkloads throughout the Helios collective while still retaining centralize d management.\n\nThe Helios package is freely available on CPAN under the same licensing terms as Perl itself. It is built on a free/open source so ftware foundation\, including Perl\, TheSchwartz\, and MySQL. The Helios framework builds on the excellent TheSchwartz job queue library to form a system designed to handle generalized processing needs. Helios's API cont ains functions that provide logging\, centralized configuration\, and proc ess control. Because of its generic underpinnings\, it should run on most *nix-like operating systems to which Perl has been ported. To date it ha s been tested successfully on several GNU/Linux distributions\, including Debian Etch and Ubuntu\, and even Apple Mac OS X.\n\nWith the Helios frame work\, developers define worker classes to accomplish specialized tasks. These are written in Perl and implement the functionality of a particular job type. The Helios API provides functions to perform logging\, to parse XML-formatted job arguments\, to access configuration parameters\, and to manage processes. This API also defines a set of basic exception classes to signal processing failures and warnings. There are several run modes available to enable the caching of data\, database connections\, and othe r resources. This enables their use across multiple jobs. Once a worker class has been created\, it can be loaded by Helios daemons on as many sys tems as necessary. Helios daemons manage available processes for a partic ular worker class\, launching new worker processes as necessary to handle jobs submitted to the system. Jobs may be submitted via an HTTP POST requ est or from the command line.\n\nHelios also includes a web interface that provides a central point of control for all of the workers and jobs in th e system. This web interface can be used to track jobs through the system and manage workloads on a per worker class and per host basis. Available workers may be increased or decreased as necessary\, tuned to match avail able resources. Worker classes may be brought online\, or taken offline\, independently. Similarly\, hosts may be added or taken out of the collec tive without affecting other Helios hosts.\n\nHelios is a flexible solutio n for distributed job processing. It provides a framework where applicati ons may be deployed across multiple servers\, running multiple jobs in par allel. Because of its flexibility\, users can create Helios applications easily and deploy them to a server farm or small "cloud" of machines\, whi le at the same time centrally manage their workload processing via its web interface. DTEND:20080814T140000 DTSTART:20080814T133000 LOCATION:Aud S.01 SUMMARY:Asynchronous Distributed Job Processing with Helios UID:https://www.yapceurope2008.org/ye2008/talk/1349 URL:https://www.yapceurope2008.org/ye2008/talk/1349 END:VEVENT BEGIN:VEVENT DESCRIPTION:Many business applications and most of new communication protoc ols use XML as message syntax. Without a formal structural definition\, X ML is just a hollow shell\, like paper without lines. XML-Schemas are the most popular way of specifying the structure of the XML messages. Schema's are horribly complex.\n\nXML::Compile makes you life simple in many ways: it hides most of the complexity of the schemas by generating translators from XML messages into Perl structures and reverse\, obeying the strict ru les of the schema's. All complex schema features are supported\, and hidd en to our *beautiful simple Perl* programs.\n\nThe presentation will give an overview on the XML::Compile suite\, and how they are used\; mostly in two or three lines.\n\nThen\, it will be shown how the schema of KML can b e used to generate GoogleEarth data. The small steps which are needed to w rap the schema's into a CPAN distribution is demonstrated. DTEND:20080813T154000 DTSTART:20080813T151000 LOCATION:Aud 2.02 SUMMARY:From XML Schema to Application UID:https://www.yapceurope2008.org/ye2008/talk/1353 URL:https://www.yapceurope2008.org/ye2008/talk/1353 END:VEVENT BEGIN:VEVENT DESCRIPTION:Probably most people pick Perl to program just because of this huge free software archive CPAN. CPAN makes that complex tasks are simple in Perl.\n\nIn the previous three years\, a lot of effort was put in reth inking CPAN. How can we support the software modules produced for Perl6 a nd other Parrot derivates with an archive as useful as our beloved CPAN? Which new technologies are useful to incorporate in our infrastructure? Af ter a while\, it became clear to me that such generalized archive implemen tation could have a much wider application.\n\nA few large core components of the CPAN6 infrastructure are implemented as general purpose modules. T he user interface is the main remaining hurdle. Challenges in the impleme ntation (using XML) will be shared\, and some examples of future developme nts shown.\n\nSome script can convert any Perl5 module into CPAN6. This wa y\, the experimental CPAN6 implementation has access to a sufficiently lar ge and realistic data-set. DTEND:20080815T140000 DTSTART:20080815T133000 LOCATION:Room 2.07 SUMMARY:CPAN6 Under Construction UID:https://www.yapceurope2008.org/ye2008/talk/1354 URL:https://www.yapceurope2008.org/ye2008/talk/1354 END:VEVENT BEGIN:VEVENT DESCRIPTION:XML is really useful. But nobody loves to manipulate complicate d DOM.\nWhy don't you manipulate DOM by Wiimote like playing Wii?\n\nThis talk is powered by Wiimote and Gainer.\nWiimote is\, you know\, remote con troller of Wii game console.\nGainer is a tiny chip connected via USB to h andle its external digital and analog I/O interfaces.\nDevice::Gainer is a Perl module which is developed on the CodeRepos.\n\nBoth techs of "Wiimot e over HTTP" and "Gainer over HTTP" let ajax apps manipulate such devices via the Internet.\nIn this session\, you'll see the Japanese cutting-edge tech of real device web service. DTEND:20080814T111000 DTSTART:20080814T104000 LOCATION:Aud S.01 SUMMARY:DOM manipulation by Gainer/Wiimote over HTTP UID:https://www.yapceurope2008.org/ye2008/talk/1355 URL:https://www.yapceurope2008.org/ye2008/talk/1355 END:VEVENT BEGIN:VEVENT DESCRIPTION:Sometimes we need to input a lot of data into a GUI\, either fo r testing it\, or for future usage of that data. CPAN module X11::GuiTest allowed me to implement that objective and created a wonderful situation w hen I was chatting with people elsewhere at the time on my workstation the mouse cursor was moving and clicking\, and data appeared in text input fi elds. The customers stopping around to see it occurring were quite taken a back. DTEND:20080813T115000 DTSTART:20080813T112000 LOCATION:Aud 2.02 SUMMARY:Computer working by itself - Beautiful\, isn't it. UID:https://www.yapceurope2008.org/ye2008/talk/1357 URL:https://www.yapceurope2008.org/ye2008/talk/1357 END:VEVENT BEGIN:VEVENT DESCRIPTION:Software Art is art where software\, programming code\, or soft ware concepts play a significant role. It's closely related to Net Art.\nS ome software artists use Perl to create their art\, and true to the spirit of open source\, often include the source code as part or alongside the a rt.\nSome observations on such art works will be discussed\, the relation between code (material) and artworks\, links to related concepts in other art forms. DTEND:20080813T111000 DTSTART:20080813T104000 LOCATION:Aud 2.01 SUMMARY:Perl in Software Art UID:https://www.yapceurope2008.org/ye2008/talk/1358 URL:https://www.yapceurope2008.org/ye2008/talk/1358 END:VEVENT BEGIN:VEVENT DESCRIPTION:CPAN Testing is an effort to set up a Quality Assurance (QA) te am for CPAN modules\, comprised\nof a globally diverse group of individual s\, maintained a diverse collection of operating environments.\n\nThis tal k aims to illustrate the processes and mechanisms associated with CPAN smo ke testing\,\nas experienced by a veteran CPAN Tester\, including the foll owing topics:\n\n - What is CPAN Testing?\n - The tools of CPAN Testing\n - How do we know what modules to test?\n - The problems and dangers of CPA N Testing\n - Scaled up CPAN Testing \n - Future developments\n\nA CPAN Te sters BOF is planned to provide a longer discussion time for testers. DTEND:20080813T144000 DTSTART:20080813T141000 LOCATION:Aud 2.02 SUMMARY:Rough Guide to CPAN Testing UID:https://www.yapceurope2008.org/ye2008/talk/1359 URL:https://www.yapceurope2008.org/ye2008/talk/1359 END:VEVENT BEGIN:VEVENT DESCRIPTION:A paper by Donald E. Knuth investigates a number of NP-complete problems that can be treated jointly as "exact cover problems". This pape r discusses options for implementing Knuth's algorithm in Perl. An alterna tive way of representing the boolean matrix that represents the search spa ce in its stepwise reduced form is proposed and compared by running variou s tests.\n\nOne application of this algorithm deals with pentominoes where the classic problems is defined by the 12 pentominos in all distinct tran sformations being placed on all possible squares of the area to be covered . (Typical areas are the rectangles: 6x10\, 5x12\, 4x15 and 3+20\, and 8x8 squares reduced by 4 unit squares.) A simple Perl/Tk canvas produces nice images.\n\nAs the algorithm does not make any assumptions the covering pi eces\, also three (or more) dimensional covering problems may be attacked. The Soma cube (invented by Piet Hein) is the other problem used for illus trating the algorithms.\n\nIt has to be admitted that this class of proble ms is hard on Perl\, which is\, after all\, an interpreted language. Never theless\, it pays to investigate an algorithm like this with Perl\, where both procedural and object oriented paradigms can be applied to investigat e algorithmic variants. DTEND:20080814T140000 DTSTART:20080814T133000 LOCATION:Room 2.07 SUMMARY:A Backtracking Algorithm UID:https://www.yapceurope2008.org/ye2008/talk/1360 URL:https://www.yapceurope2008.org/ye2008/talk/1360 END:VEVENT BEGIN:VEVENT DESCRIPTION:Getting the most out of a YAPC.\n\n"What's going on\, where\, w hen\, who\, how? What do I do? Which way do I turn? Should I talk to that person? But I'm so shy. Can anyone help me?"\n\nYes\, we can :-) DTEND:20080813T091000 DTSTART:20080813T085500 LOCATION:Aud S.01 SUMMARY:How to get the most out of a YAPC UID:https://www.yapceurope2008.org/ye2008/talk/1361 URL:https://www.yapceurope2008.org/ye2008/talk/1361 END:VEVENT BEGIN:VEVENT DESCRIPTION:I have more than 70 modules on the CPAN and I haven't yet given a talk about most of them. I'll pick 10 useful but less-known modules of mine and give 2 minute introduction to each of those. DTEND:20080815T140000 DTSTART:20080815T133000 LOCATION:Aud 2.01 SUMMARY:10 modules I haven't yet talked about UID:https://www.yapceurope2008.org/ye2008/talk/1363 URL:https://www.yapceurope2008.org/ye2008/talk/1363 END:VEVENT BEGIN:VEVENT DESCRIPTION:The third annual Microsoft Scripting Games took place from Febr uary 15th to March 3rd 2008. This year\, Microsoft introduced a Perl divis ion\, alongside VBScript and Windows PowerShell.\n\nThis talk walks throug h the Perl solutions for two of the events\, and shows how you can take ad vantage of the new features of Perl 5.10 in a real-world situation. DTEND:20080814T115000 DTSTART:20080814T112000 LOCATION:Aud S.01 SUMMARY:Perl at the Microsoft Scripting Games 2008 UID:https://www.yapceurope2008.org/ye2008/talk/1364 URL:https://www.yapceurope2008.org/ye2008/talk/1364 END:VEVENT BEGIN:VEVENT DESCRIPTION:"What would you get if you crossed a camel and a snake? Cake\, of course!"\n\nIn this talk I'm going to compare and contrast Perl and Pyt hon solutions to the same problem\, looking at coding style and readabilit y to see what Perl can learn from "the dark side".\n\nP.S. No snakes will be harmed during the presentation of this talk :-) DTEND:20080815T115000 DTSTART:20080815T112000 LOCATION:Aud 2.01 SUMMARY:The Camel and the Snake UID:https://www.yapceurope2008.org/ye2008/talk/1365 URL:https://www.yapceurope2008.org/ye2008/talk/1365 END:VEVENT BEGIN:VEVENT DESCRIPTION:This paper outlines techniques that are highly useful for a cla ss of programs\, their common characteristic being that they process their input data while being driven by a set of commands\, The general idea is\ , of course\, to translate the set of commands into Perl code\, and to use Perl's capability of extending a running program\, at any time\, with the eval function being the basic workhorse. This article reports some experi ences and techniques in connection with this approach that were gained whi le implementing sed\, cut\, lex\, m4 and od in Perl.\n\nThe main part of t he paper deals with various programming techniques: managing alternatives\ , separating compile time and runtime variables\, avoiding loops\, etc.\n\ nThe author's implementations of cut\, od and sed are compared with the C versions on Linux. Are the C implementations always faster? DTEND:20080813T140000 DTSTART:20080813T133000 LOCATION:Room 2.07 SUMMARY:Generate and Execute: A Paradigm for Perl Programs UID:https://www.yapceurope2008.org/ye2008/talk/1366 URL:https://www.yapceurope2008.org/ye2008/talk/1366 END:VEVENT BEGIN:VEVENT DESCRIPTION:In the early days of computing\, networks and servers were left more or less open to anyone\, as everyone looked after the machines they used\, never maliciously doing any damage. Then someone decided that it wo uld be "fun" to try and break things. Today there are hundreds of thousand s of malware threats\, many of which now borne over email. This talk looks at the many different types of malware (including virus\, spam and phishi ng) and provides some clues to help those of a more technical nature\, wis hing to filter and stop these threats reaching their inboxes. DTEND:20080814T114000 DTSTART:20080814T104000 LOCATION:Aud 2.01 SUMMARY:Understanding Malware UID:https://www.yapceurope2008.org/ye2008/talk/1369 URL:https://www.yapceurope2008.org/ye2008/talk/1369 END:VEVENT BEGIN:VEVENT DESCRIPTION:Some processes are not easy to be programmed from scratch for p arallel machines (clusters)\, but can be easily split on simple steps.\n\n Makefile::Parallel is a Perl tool which lets users specify how processes d epend on each other\, in a beautiful way. DTEND:20080814T144000 DTSTART:20080814T141000 LOCATION:Room 2.07 SUMMARY:Makefile::Parallel - Dependency Specification Language UID:https://www.yapceurope2008.org/ye2008/talk/1370 URL:https://www.yapceurope2008.org/ye2008/talk/1370 END:VEVENT BEGIN:VEVENT DESCRIPTION:We all know how good Perl is at munging text. But what do you d o when your Perl text-munging code isn't fast enough for what you're tryin g to do?\n\nWe needed to extract useful information from tens of gigabytes of web-server log files. Our Perl code was simple and obvious\, but not f ast enough for our purposes. When profiling revealed a frequently-executed regex as the bottleneck\, we tried several things to make it faster.\n\nT his talk looks at what we did to speed up our regex-heavy code (by a facto r of well over 100 in some places)\, identifying a few general-purpose opt imisation techniques on the way. DTEND:20080814T154000 DTSTART:20080814T151000 LOCATION:Aud S.01 SUMMARY:Faster Regexes: What to do when text matching is your bottleneck UID:https://www.yapceurope2008.org/ye2008/talk/1372 URL:https://www.yapceurope2008.org/ye2008/talk/1372 END:VEVENT BEGIN:VEVENT DESCRIPTION:The SVK distributed version control system based on Subversion recently introduced branch management features. This talk will cover:\n\n * Pitfalls of Subversion's branches\n* Managing Branches with SVK\n* Featu re-branch based development model with SVK\n* Release Management with SVK' s branch management DTEND:20080815T115000 DTSTART:20080815T112000 LOCATION:Aud 2.02 SUMMARY:Branch Management with SVK UID:https://www.yapceurope2008.org/ye2008/talk/1373 URL:https://www.yapceurope2008.org/ye2008/talk/1373 END:VEVENT BEGIN:VEVENT DESCRIPTION:Declare subroutine signatures without using a source filter! a dd type-contraint\, name-based calling convention\, without a source filte r\, benchmarked faster than traditional hash passing!\n\nThis is a Perl 5 talk. come learn how to use the new features inspired by perl6 and how th e pieces are put together within a week of hacking. DTEND:20080814T144000 DTSTART:20080814T141000 LOCATION:Aud 2.02 SUMMARY:prototype::signatures UID:https://www.yapceurope2008.org/ye2008/talk/1374 URL:https://www.yapceurope2008.org/ye2008/talk/1374 END:VEVENT BEGIN:VEVENT DESCRIPTION:MySQL is a very popular DBMS. Or rather\, it's very widely used \, which is not necessarily the same thing. It has quite a few quirks\, be haviour that many people wouldn't expect and which if you aren't aware of can be the cause of much frustration\, pain\, and data loss.\n\nIn the hop e that more people being aware of these infelicities will reduce the damag e they can do\, a collection of them is presented here\, along with tips a nd techniques for dealing with them.\n\nThere's also an examination of why so often the MySQL feature is tantalizingly only available in one version higher than the one you're running. DTEND:20080814T154000 DTSTART:20080814T151000 LOCATION:Aud 2.01 SUMMARY:When MySQL Bites: Quirks to Watch Out For UID:https://www.yapceurope2008.org/ye2008/talk/1376 URL:https://www.yapceurope2008.org/ye2008/talk/1376 END:VEVENT BEGIN:VEVENT DESCRIPTION:HTML is evolving\, with a working group* currently designing th e HTML 5 standard (including XHTML 5). This is obviously of interest to P erl hackers who work on web-based systems or otherwise generate or parse H TML. More widely it's also relevant to anybody who has a website for thei r project\, company\, or lolcats.\n\nSo this talk gets you up to speed wit h HTML 5\, answering questions such as:\n\n• Why is there a need for HTML 5?\n• What changes will HTML 5 bring? Can I ignore it?\n• Who is behind H TML 5? Can I get involved?\n• When will it affect me? Is there Perl supp ort for it?\n• How can I find out more?\n\nIt _isn't_ a detailed examinati on of various bits of HTML 5 syntax ‒ that would be quite boring\, and is much better done by perusing the docs.\n\nThe talk also covers the various controversies so far encountered in designing HTML 5\, highlights some of the hard problems that need addressing\, and takes a brief look at the pr ocess of creating the HTML 5 standard ‒ which is quite different from the typical ways of working in the Perl community.\n\n* Actually that isn't qu ite true: for political reasons that are _two_ working groups simultaneous ly designing HTML 5! DTEND:20080813T154000 DTSTART:20080813T151000 LOCATION:Aud 2.01 SUMMARY:HTML 5: What's that all about? UID:https://www.yapceurope2008.org/ye2008/talk/1377 URL:https://www.yapceurope2008.org/ye2008/talk/1377 END:VEVENT BEGIN:VEVENT DESCRIPTION:In this talk I'll be covering the topics that I find are most o ften greeted with "that's cool\, I didn't know I could do that"] by DBIx:: Class users when presented as a solution to their problem on IRC\, mailing lists or on-site:\n\n- custom resultsources for 'virtual view' creation\n - resultset subclassing to produce customised collections\n- database depl oyment and versioning via SQL::Translator support\n- transparent query res trictions via the RestrictWithObject extension\n- digests and password enc ryption with the EncodedColumn extension\n- complex relationships and cust om join conditions\n- efficient bulk insert and update operations\n- using DBIx::Class against view-based OODB schemas DTEND:20080814T140000 DTSTART:20080814T133000 LOCATION:Aud 2.01 SUMMARY:DBIx::MasterClass UID:https://www.yapceurope2008.org/ye2008/talk/1378 URL:https://www.yapceurope2008.org/ye2008/talk/1378 END:VEVENT BEGIN:VEVENT DESCRIPTION:Reaction is an application metamodel built using the Catalyst M VC web framework and the Moose metaprotocol and object system.\n\nComponen t-based UI models work for the desktop but how do you apply them to the we b? Can continuation based design help and what do you do about human frien dly bookmarkable URLs and minimising stored state? Why are we dependent on scaffolds and can reflection and a metaprotocol help? Matt presents one p ossible set of answers and the thought process behind the implementation. DTEND:20080813T144000 DTSTART:20080813T141000 LOCATION:Aud 2.01 SUMMARY:Elegant^Elegant: Web application metaprogramming with Reaction UID:https://www.yapceurope2008.org/ye2008/talk/1379 URL:https://www.yapceurope2008.org/ye2008/talk/1379 END:VEVENT BEGIN:VEVENT DESCRIPTION:Open Flash Chart (http://teethgrinder.co.uk/open-flash-chart/) is a popular tool for creating beautiful charts for online applications\; however\, it's Perl interfaces are not strongly supported or documented. This talk will provide real-world examples on how to make Open Flash Chart play well with your Perl code. DTEND:20080815T132000 DTSTART:20080815T125000 LOCATION:Aud 2.02 SUMMARY:Open Flash Chart and Perl UID:https://www.yapceurope2008.org/ye2008/talk/1381 URL:https://www.yapceurope2008.org/ye2008/talk/1381 END:VEVENT BEGIN:VEVENT DESCRIPTION:Over the last several months\, I have been helping to implement the Perl 6 object model in Rakudo - the Perl 6 on Parrot implementation. In this talk I will discuss the range of features that are implemented so far\, explaining how to use them and providing some (working) code example s. Along the way\, you'll see:\n\n* The new syntax for classes\, attribute s\, methods and inheritance\n* Object initialization\n* Proto-objects\, ob ject auto-vivification\n* Roles: what they are and a little on how to use them\n* Introspection through the meta-class DTEND:20080813T140000 DTSTART:20080813T133000 LOCATION:Aud S.01 SUMMARY:Object Orientation\, The Perl 6 Way UID:https://www.yapceurope2008.org/ye2008/talk/1383 URL:https://www.yapceurope2008.org/ye2008/talk/1383 END:VEVENT BEGIN:VEVENT DESCRIPTION:Perl 6 allows you to add type constraints to variables\, parame ters and attributes. In this talk\, I will look at:\n\n* What are types\, anyway\n* What you can use as types in Perl 6\n* How you can define your o wn refinement types\, to do dependent-typing style stuff\n* Type parameter ization\n* Where the Rakudo implementation is currently at (yes\, we actua lly have some of this implemented)\n* The roadmap for further implementati on DTEND:20080813T144000 DTSTART:20080813T141000 LOCATION:Aud S.01 SUMMARY:Putting Types To Work In Perl 6 UID:https://www.yapceurope2008.org/ye2008/talk/1384 URL:https://www.yapceurope2008.org/ye2008/talk/1384 END:VEVENT BEGIN:VEVENT DESCRIPTION:Let's face it: Application deployment is both a tedious exercis e and critical to the success of your work. Having the right deployment st rategy can save effort\, money\, and - most importantly - hair.\n\nThis ta lk is about a few approaches using the PAR modules which might suck a litt le less than the alternatives.\n\nPAR itself is well known as a tool to as semble stand-alone executables from Perl programs and their dependencies. Maybe you also heard of the "PAR is for Perl what JAR is for Java" mantra: PAR can create archive files which contain everything needed to run a Per l program.\n\nAfter covering strategies for application deployment\, the t alk will explore some of the lesser known PAR features and tools\, such as automatic generation of binary packages from CPAN distributions and their dependencies. DTEND:20080814T144000 DTSTART:20080814T141000 LOCATION:Aud S.01 SUMMARY:Application deployment and dependency management with PAR UID:https://www.yapceurope2008.org/ye2008/talk/1389 URL:https://www.yapceurope2008.org/ye2008/talk/1389 END:VEVENT BEGIN:VEVENT DESCRIPTION:There are a number of different profiling modules on CPAN\, so many that it might be hard to select which is the right tool for your job. In this talk\, I will go over the most mature projects and discuss their relative merits and identify which is right for what kind of optimization work. Will also give a quick discussion on new development in this area. DTEND:20080813T144000 DTSTART:20080813T141000 LOCATION:Room 2.07 SUMMARY:Profiling Modules - A Survey UID:https://www.yapceurope2008.org/ye2008/talk/1390 URL:https://www.yapceurope2008.org/ye2008/talk/1390 END:VEVENT BEGIN:VEVENT DESCRIPTION:There are many CPAN modules for generating log messages. Most o f them implement a similar pattern: each call to generate a log message ha s a numeric level\, the magnitude of which determines whether the message is actually logged or not. I will give examples of this using several CPAN modules\, comparing their differences\, and clarifying some potentially c onfusing differences between their terminologies. DTEND:20080813T132000 DTSTART:20080813T125000 LOCATION:Room 2.07 SUMMARY:Perl Logging Practices UID:https://www.yapceurope2008.org/ye2008/talk/1391 URL:https://www.yapceurope2008.org/ye2008/talk/1391 END:VEVENT BEGIN:VEVENT DESCRIPTION:The culture of testing is now well established within the Perl community\nas a whole. It has a similar status within a number of other d evelopment\ncommunities\, or at least it is moving in that direction. Cod e coverage\nhas become well established as an important testing tool.\n\nI 'll provide a brief introduction to code coverage and then focus on how\nt o effectively use the Perl code coverage tool\, Devel::Cover.\n\nTopics to be covered include:\n\n * Coverage criteria\n * Integrating coverage into your development flow\n * Dealing with code that cannot be covered\n * Se lecting files to cover\n * Covering XS and C code\n * Coverage reports DTEND:20080813T132000 DTSTART:20080813T125000 LOCATION:Aud 2.02 SUMMARY:Effective Code Coverage UID:https://www.yapceurope2008.org/ye2008/talk/1392 URL:https://www.yapceurope2008.org/ye2008/talk/1392 END:VEVENT BEGIN:VEVENT DESCRIPTION:Stream oriented processing with DSlib\n\nDSlib provides an open framework for writing data processing components with well defined interf aces. Some of the advantages provided are easier reuse\, since the compone nts can be chained together in any number of ways and early type checking\ , which saves processing time.\n\nWorking with this framework\, one quickl y realizes that it is useful to write a bunch of archetypical classes that eases some of the most repetetive tasks for the developer. This includes classes that creates streams from various sources\, serializes them again\ , throws and catches exceptions and much more. I'll provide a quick overvi ew of those classes at my talk. DTEND:20080814T154000 DTSTART:20080814T151000 LOCATION:Room 2.07 SUMMARY:Stream oriented processing with DSlib UID:https://www.yapceurope2008.org/ye2008/talk/1393 URL:https://www.yapceurope2008.org/ye2008/talk/1393 END:VEVENT BEGIN:VEVENT DESCRIPTION:Every day new programming languages and paradigms emerge\, as t hey struggle\, in an eternal battle since the beginning of times\, for a p lace of honor in the halls of computer languages. From the wisdom of great sorcerers in the Perl community\, among others\, and following the Perl l egacy\, which has proven that programming is more than a computer science\ , it's an art - and such a beautiful one - a shift in the virtual oblivion shaked the foundations of low level programming and a new giant contestan t for the likes of many was created. For many winters it has been feed the knowledge of the wises and it has grown. And soon\, it will be ready to w ander the world in beautiful interpretations of previous compiled tales.\n \nParrot is a virtual machine designed to efficiently compile and execute bytecode for dynamic languages. It was initially created to run the newly improved\, and community driven\, version of Perl: Perl\, but soon matured and grew into a project of it's own. Currently\, a small number of langua ges already have at least\, a working sub set of features in a compiler\, or interpreter\, that runs on Parrot. Built in garbage collection\, multi- method dispatch\, multiple concurrency models\, a complex object and class model or exception systems are some of the advanced features that are pro ne to get your attention. The project also maintains a set of tools\, Parr ot Compiler Tools for example\, that can be used to easily implement and d evelop a wide range of multipurpose compilers.\n\nThis talk aims to briefl y introduce Parrot and it's core features\, and the use of the Parrot Comp iler Tools to craft compilers. We also take a short glimpse at some of the most advanced features and approach other interesting issues like perform ance and maintainability. Finally we demonstrate the use of this architec ture to quickly create a compiler. DTEND:20080813T111000 DTSTART:20080813T104000 LOCATION:Aud S.01 SUMMARY:Beautiful Parrot UID:https://www.yapceurope2008.org/ye2008/talk/1394 URL:https://www.yapceurope2008.org/ye2008/talk/1394 END:VEVENT BEGIN:VEVENT DESCRIPTION:Communities and language developers continuously struggle for i mproving their language features. Stability and speed are two of the most valuable assets languages can aim for in nowadays. Perl has quite a good r eputation on both of them. It can be a very reliable and stable interprete r\, and doesn't fall much behind in performance when compared with compile d languages. But where do we draw the line which divides the slowest from the fastest? And who has the authority to make this decision? Why should I trust another one's opinion\, a possible competitor? These are some uncle ar issues that hoover around this matter.\n\nBenchmarking is a very common technique used to figure out which computing languages\, or algorithms\, are faster and which are slower. As every procedure\, it is not a flawless one\, but when used wisely it can assert very accurate results. In this t alk we introduce a couple of simple benchmarking techniques and illustrate them with some practical benchmarks that compare Perl to other programmin g languages\, both compiled and interpreted. Needless is to say\, that all results are quite positive for Perl. DTEND:20080813T162000 DTSTART:20080813T155000 LOCATION:Aud 2.02 SUMMARY:Is Your Script Fast Enough? UID:https://www.yapceurope2008.org/ye2008/talk/1395 URL:https://www.yapceurope2008.org/ye2008/talk/1395 END:VEVENT BEGIN:VEVENT DESCRIPTION:Over two years in the making\, and involving dozens of patches to the\nPerl Core and the CPAN toolchain\, Strawberry Perl has reached the first\nproduction release.\nThis is an introductory talk on Strawberry Pe rl by the current\nStrawberry Pumpking\, Adam Kennedy.\nStarting from very beginning\, the talk ranges over issues like:\n- Why it finally became po ssible to create a fully Open Source Win32\nPerl distribution.\n- The tria ls and tribulations of forming a development team and a community.\n- The politics and drama of bullying the Perl 5 Porters and CPAN\nIlluminati int o making changes.\n- How we balanced the (endless) demands of Win32 Perl u sers with the\nlimited time of developers to achieve a stable and reliable product.\nThe talk also provides a brief overview of the Perl::Dist toolk it that\nwas used to build Strawberry Perl\, and how to use it to create\n customized Perl distributions.\nFinally\, the talk will cover the future p riorities of the project and\nthe new advances being added to meet the nee ds of the highly varied\nuserbase. DTEND:20080815T111000 DTSTART:20080815T104000 LOCATION:Room 2.07 SUMMARY:Strawberry Perl - Achieving Win32 Platform Equality UID:https://www.yapceurope2008.org/ye2008/talk/1401 URL:https://www.yapceurope2008.org/ye2008/talk/1401 END:VEVENT BEGIN:VEVENT DESCRIPTION:Reprising his original "Nothing Can Possibly Go Wrong" talk fro m\nYAPC::NA 2006 (and mixing in some of the best bits from the first one n obody in Europe saw)\,\nAdam will once again attempt to provide an antidot e to all the positive\nconference talks\nby taking the audience on a whirl wind tour of failure\, disaster\, and\nseductive traps.\n\nSecond time aro und\, appropriately\, the focus is on iterative systems\,\nwith a mixture\ nof lessons from psychology\, evolution\, ecology and economics. DTEND:20080813T162000 DTSTART:20080813T155000 LOCATION:Aud S.01 SUMMARY:Nothing Can Possibly Go Wrong... Again UID:https://www.yapceurope2008.org/ye2008/talk/1402 URL:https://www.yapceurope2008.org/ye2008/talk/1402 END:VEVENT BEGIN:VEVENT DESCRIPTION:For such a small amount of code\, the ::Tiny family of modules\ nhave caused a large amount of controversy (and flame wars).\n\nAlthough s tarted by accident with Config::Tiny\, patterns have\nemerged as the colle ction has grown\, and a surprising accumulation\nof research is showing ho w\, where and why these small chunks of\ncrippled code are so successful.\ n\nIn this talk\, discover the next iteration of Less is More. DTEND:20080814T115000 DTSTART:20080814T112000 LOCATION:Aud 2.02 SUMMARY:Tiny UID:https://www.yapceurope2008.org/ye2008/talk/1403 URL:https://www.yapceurope2008.org/ye2008/talk/1403 END:VEVENT BEGIN:VEVENT DESCRIPTION:Schedule:\n\n\nNovember\nfixed-time\nBBBike @ CPH - A Route Pla nner for Cyclists for Copenhagen\nNordic Perl Workshop 2009\nAll the Perl conferences in the world\n\nAbusing Unicode to do illustrations\nPadre\nTe st::Kit\nI can haz compiler?\nAcme::EyeDrops - Perl made Beautiful\n\np3rl \nAcme::ReturnValue\n$_ is my bitch\nLightning Talk TBA\nLightning Talk TB A\n\n\nWhy Would You Want to do a Lightning Talk?\n\nMaybe you've never gi ven a talk before\, and you'd like to start small. For a Lightning Talk\, you don't need to make slides\, and if you do decide to make slides\, you only need to make three.\n\nMaybe you're nervous and you're afraid you'll mess up. It's a lot easier to plan and deliver a five minute talk than it is to deliver a long talk. And if you do mess up\, at least the painful pa rt will be over quickly.\n\nMaybe you don't have much to say. Maybe you ju st want to ask a question\, or invite people to help you with your project \, or boast about something you did\, or tell a short cautionary story. Th ese things are all interesting and worth talking about\, but there might n ot be enough to say about them to fill up thirty minutes.\n\nMaybe you hav e a lot of things to say\, and you're already going to give a long talk on one of them\, and you don't want to hog the spotlight. There's nothing wr ong with giving several Lightning Talks. Hey\, they're only five minutes.\ n\nOn the other side\, people might want to come to a lightning talk when they wouldn't come to a long talk on the same subject. The risk for the at tendees is smaller: If the talk turns out to be dull\, or if the person gi ving the talk turns out to be a really bad speaker\, well\, at least it's over in five minutes. With lightning talks\, you're never stuck in some bo ring lecture for forty-five minutes.\n\nStill having trouble picking a top ic\, here are some suggestions:\n\n 1. Why my favorite module is X.\n 2. I want to do cool project X. Does anyone want to help?\n 3. Successfu l Project: I did project X. It was a success. Here's how you could benefit .\n 4. Failed Project: I did project X. It was a failure\, and here's wh y.\n 5. Heresy: People always say X\, but they're wrong. Here's why.\n 6. You All Suck: Here's what is wrong with the our community.\n 7. Call to Action: Let's all do more of X / less of X.\n 8. Wouldn't it be cool if X?\n 9. Someone needs to do X.\n 10. Wish List\n 11. Why X was a m istake.\n 12. Why X looks like a mistake\, but isn't.\n 13. What it's li ke to do X.\n 14. Here's a useful technique that worked.\n 15. Here's a technique I thought would be useful but didn't work.\n 16. Why algorithm X sucks.\n 17. Comparison of algorithms X and Y. \n\nOf course\, you coul d give the talk on anything you wanted\, whether or not it is on this list . If we get a full schedule of nothing but five minutes of ranting and rav ing on each topic\, a good time will still be had by most. DTEND:20080814T173000 DTSTART:20080814T163000 LOCATION:Aud S.01 SUMMARY:Lightning Talks\, part 2 UID:https://www.yapceurope2008.org/ye2008/talk/1422 URL:https://www.yapceurope2008.org/ye2008/talk/1422 END:VEVENT BEGIN:VEVENT DESCRIPTION:This talk will start with a quick introduction to Moose the Met a Object system for Perl5. It will cover basic syntax\, type constraints\, delegation\, and roles.\n\nAfter familiarizing ourselves with Moose's bas ic offerings we'll look into utilizing the richness of metaprogramming in real code. DTEND:20080815T101000 DTSTART:20080815T094000 LOCATION:Aud 2.01 SUMMARY:Moose introduction UID:https://www.yapceurope2008.org/ye2008/talk/1453 URL:https://www.yapceurope2008.org/ye2008/talk/1453 END:VEVENT BEGIN:VEVENT DESCRIPTION:Shall a camel pass through the eye of a needle?\nHas an oyster ever delivered a square pearl?\nCan an onion dry up your tears?\nWill Dami an be able to finish a talk in only 30 minutes? DTEND:20080815T093000 DTSTART:20080815T090000 LOCATION:Aud S.01 SUMMARY:Mini Keynote UID:https://www.yapceurope2008.org/ye2008/talk/1470 URL:https://www.yapceurope2008.org/ye2008/talk/1470 END:VEVENT END:VCALENDAR