Barbie will give a talk at YAPC::Europe 2012 described as
Labyrinth is a codebase for presenting websites, originally designed and developed in 2002. It's original design goal was to be a "Website In A Box", meaning that it could be installed on a web server ready and complete to server a website. However, it can additionally be extended, providing a framework for those who wish to add their own requirements to the workflow and functionality.
As such, this talk is an introduction to both the web framework and stand-alone aspects of Labyrinth.
In my lightning talk at the end of YAPC, I had mentioned a few details about roommates I've had. This included weird/funny/surprising/scary details.
I'd first like to express (and I tried doing it in the lightning talk even though I was running out of time doing two talks in under 5 minutes) that these are people I respect, and had pleasure meeting and spending time with. Please do not assume for one second that if I could do it again I would do it differently. I wouldn't.
Though many are sticking around to take in all that Madison has to offer, many others are headed back home from YAPC::NA 2012. Safe travels to you all.
[From the YAPC::NA Blog.]
This is a placeholder post to house links to further reading from my YAPC::NA 2012 keynote.
We finally fixed a bug in our voting app, so we were able to vote the talk proposals. We have accepted lots of talks (thanks for the great proposals). Even those talks that have not been accepted yet are not rejected at all. They will be reconsidered in the next round of voting...
So today and in the next few days, you'll see a lot of blog posts introducing the accepted talks.
What is Marpa?
I am very
pleased to announce Marpa::R2
-- "Release 2" of the Marpa parser.
For those unfamiliar,
the
Marpa algorithm
is something new in parsing --
it parses anything you can write in BNF and,
if your grammar is in one of the classes currently in practical use,
it parses it in linear time.
Marpa::R2's parse engine is written in optimized C,
so that Marpa::R2's speed is competitive with parsers of far less power.
An important feature of the Marpa
algorithm is "situational awareness".
Marpa knows at every point in the parse exactly how far it
has progressed in each rule,
and can share this information with the application.
The advantages of this go beyond error detection --
Marpa's situational awareness is accurate, graceful
and fast enough to be used as a parsing technique in its own
right --
Ruby Slippers parsing.
Announcing Marpa::R2
Here's a small script which I whipped up just now. I thought of trying out MetaCPAN::API, but after about 5 minutes of trying to find a way to list an author's distributions (and failed), I resorted to a quick hack using Mojo::DOM.
Here's a sample output:
From guest contributor Dave Rolsky:
There are a ridiculous number of vegan options in Madison at YAPC::NA 2012. Some of the highlights:
- Dandelion is an all vegetarian and mostly vegan food cart on the Library Mall
- Kabul, Buraka, Himal Chuli, Med Cafe, Dobra Tea, and Ian’s Pizza all have vegan options, and are a 5-10 minute walk from the conference
- Further out there are multiple places with vegan breakfast like tofu scrambles, hashes, and biscuits & gravy at Monty’s Blue Plate Diner and Willalby’s Cafe
- The Chocolate Shoppe is an ice cream shop offering at least 6 options (4 sorbets and two soy milk-based flavors). Paciugo has multiple vegan gelato options.
- Vegan desserts are available at The Green Owl, Monty’s, Mother Fools coffee house, Dandelion, Willy Street Co-op, and probably others I haven’t found yet.
I suspect I won’t even scratch the surface before I leave on Saturday, but I’ll do my best.
[From the YAPC::NA Blog.]
Please welcome Webfusion as a silver sponsor of this years' YAPC::Europe.

Established in 1997, Webfusion is one of the UK's leading web hosting groups. We offer cost-effective, feature-rich hosting packages for everyone from businesses, web developers, designers and hobbyists. With 24/7 technical support, robust Firewall server protection and a state-of-the-art UK based data centre with Webfusion your website is always in safe hands.
www.webfusion.co.uk
HTML-Tree has long been a source of memory leaks for programmers who weren’t very careful with it. Because it uses circular references, Perl’s reference-counting garbage collector can’t clean it up if you forget to call $tree->delete when you’re done.
Perl added weak references (a.k.a. “weakrefs”) to resolve this problem, but HTML-Tree has never taken advantage of them. Until now.
HTML-Tree 5.00 (just released to CPAN) uses weak references by default. This means that when a tree goes out of scope, it gets deleted whether you called $tree->delete or not. This should eliminate memory leaks caused by HTML-Tree.
Unfortunately, it can also break code that was working. Even though that code probably leaked memory, that’s not a big problem with a short-running script. The one real-world example I’ve found so far is pQuery’s dom.t. In pQuery 0.08, it does:
Inspired by http://www.slideshare.net/c9s/perlhacksonvim I wrote (well ... copied for the larger part) a script to open the Module currently under the cursor in vim.
Typing \fm will lookup the first Module found in available Perl library paths (plus current working directoy . '/lib')
I did search for some time and read a bit about ctags and pltags but ended up confused.
add this to your vimrc
""""""""""""""""""""""""""""""""""""
" find module in perl INC and edit "
""""""""""""""""""""""""""""""""""""
function! GetCursorModuleName()
let cw = substitute( expand(""), '.\{-}\(\(\w\+\)\(::\w\+\)*\).*$', '\1', '' )
return cw
endfunction
function! TranslateModuleName(n)
return substitute( a:n, '::', '/', 'g' ) . '.pm'
endfunction
function! GetPerlLibPaths()
let out = system('perl -e ''print join "\n", @INC''')
let paths = split( out, "\n" )
return paths
endfunction
function! FindModuleFileInPaths()
let paths = [ 'lib' ] + GetPerlLibPaths()
let fname = TranslateModuleName( GetCursorModuleName() )
for p in paths
let f = p . '/' . fname
if filereadable(f)
exec "edit " . f
return 1
endif
endfor
echo "File not found: " . fname
endfunction
nmap fm :call FindModuleFileInPaths()
CAVEATS
- returns only the first found module
- "local" modules not found unless current working directory has the lib/ dir as child
Apparently the receipt that dorm dwellers receive from the University doesn’t tell them they need to go to Chadbourne Hall. So I wanted to announce it far and wide in case anybody else gets hung up by that.
Chadbourne Hall
420 N. Park Street
Madison, WI 53706-1489
Chadbourne Desk: (608) 262-2688
[From the YAPC::NA Blog.]
Thanks to tinita! She started a Wiki page where you can find a list of restaurants that offer vegan / vegetarian food:
http://act.yapc.eu/ye2012/wiki?node=Food
It is with great pleasure that we officially announce a new sponsor for the CPAN Testers Project. Webfusion have provided us with Managed Hosting, for us to use with some of the supporting websites. As such, we will be using it for the Analytics and Matrix websites, as well as a secondary failover site for the Static Reports site.
Webfusion are the latest corporate sponsor to support CPAN Testers. If your company would like to support CPAN Testers, please get in touch. You can also donate to the project via the CPAN Testers Fund, managed by the Enlightened Perl Organisation.
For further details, please see the CPAN Testers Blog.
I cannot decide if I was too harsh. I try not to let the usual drone of noobs on SO to get to me. My problem was that the OP is being both ignorant AND demanding. Read the post and let me know, I'm back and forth between being enraged and contrite.
Kip Hampton will give a talk at YAPC::NA 2012 described as:
Developing for the Web shouldn’t be hard. Yet, many smart developers make it more difficult than it needs to be by choosing tools and frameworks that do not fully take advantage of all that HTTP has to offer. This talk demonstrates how projects at all levels— from the simplest brochureware site to the most advanced Hypermedia APIs—can be made simpler by getting back to the basics of HTTP. We introduce Tamarou’s internal application development and publishing framework, Magpie (scheduled for public release to coincide with YAPC::NA) and step through a series of real-world examples to show how its resource-oriented approach to development keeps simple things simple and makes hard things easier.
Topics include:
* Why MVC is the wrong way to think about Web development.
* Why most frameworks that claim to be RESTful aren’t (and how that makes life harder)
* An brief introduction to Resource-oriented development.
* A series of production-tested Magpie recipes covering the gamut of Web-dev from simple templated sites through advanced Hypermedia applications.
[From the YAPC::NA Blog.]
We welcome urbia.com AG as a Silver Sponsor of this years' YAPC::Europe.

urbia.com AG (a company of Gruner + Jahr AG & Co KG) operates the web community www.urbia.de targeting young families with topics like pregnancy, birth, baby and parenting at its core. www.urbia.de attracts 6,5 million visits and 2,3 million unique users per month which makes us the market leader in the parenting segment in Germany.
Perl has been proudly powering our platform since 1998. In the meantime we migrated our code base to Modern Perl making use of the Catalyst MVC framework, DBIx::Class, Template::Toolkit, Moose and tons of other wonderful CPAN modules without which we would have never been so successful. To thank the excellent community and show our continuing support, we decided to sponsor this year's YAPC::EU in Frankfurt. If you're interested in joining our team in Cologne, go to http://www.urbia.de/allgemein/jobs to check out our open positions and/or contact us at jobs@urbia.com.
May proved quite an interesting month. Firstly, I got several confused emails relating to the Status page on The CPAN Testers Reports site. Secondly, we ran out of slots in the namespace for Amazon. And then thirdly a very involved discussion on versions on the mailing list.
YAPC::NA’s talks for Day 3 begin at 9am, with the plenary starting at 8:40am. Yesterday was a big success, but now it’s sort of sad that we’re already to day 3. Oh well, there’s always next year! Here’s to hoping that we go out with a bang in day 3.
Don’t forget that you can watch live on the web for free:
[From the YAPC::NA Blog.]