It's going to be held on June 14th, 2012 in the AT&T Lounge in the Pyle Center on the University of Wisconsin Madison Campus. It will run from Noon until 4:30pm. This will allow attendees to stop in both during their lunch breaks and during afternoon sessions, whichever is most convenient for them.
We're going to allow outsiders (people who have not purchased a ticket to YAPC itself) to come to the job fair. And we're going to promote it far and wide in the Madison area, to ensure a good turn out. Our reach will include every high school, technical school, college, the University, and every technology-related user group within 50 miles of Madison.
Companies that participate in the job fair will also get to post their Perl related jobs to our blog and can print flyers for us to insert into our attendee registration packet.
Say, you have a function, which takes a string, a pattern, and then
matches the pattern to the string, but with a twist; a (fixed) code fragment is inserted:
sub example {
my ($str, $pattern) = @_;
$str =~ /$pattern(?{ 1; })/;
}
The code block here is trivial, because it's not about the content of
the block, just about its existence.
The above doesn't work, because by default you cannot interpolate a string in a
pattern containing code blocks. So, you have to use re 'eval';:
So. I had 5.12 installed on my MacBook Pro, and wanted to build the latest and greatest perl. Unfortunately, the nm that comes with XCode 4 doesn’t play nice with perl’s Configure script, causing it to wonder if you’re using a Cray. Nice upgrade, but it doesn’t get the perl installed.
Everyone seems to be using perlbrew nowadays and there’s information on how to make perlbrew work under these conditions at http://www.perlbrew.pl/FixLion.html.
If, like me, you want to actually build perl the usual way (i.e. without any brewing), you need to patch your perl source. You could, of course, dig into perl-bleed and work out the needed patch yourself, but that would be work. Quite insufficiently lazy.
I will be arriving in Europe this week-end, at the start of a whirlwind visit to Portugal, Norway, Latvia, and Switzerland. In three of those four countries I will be giving a free talk, which I'd like to invite you to attend if you happen to be in the right place at the right time.
In Lisbon, I'm presenting "Fun With Dead Languages" on Monday August 8, starting at 19:00. Entry is free, but seats are limited, so you do need to pre-register.
In Oslo, I'm presenting "Fun With Dead Languages" (yes, the same talk) on Thursday August 11, starting at 18:15.
In Lausanne, I'm presenting "The Twilight Perl" on Thursday September 1, starting at 19:30. Note that, despite the claim on the website, the talk is completely free.
In between these events I'll be speaking at YAPC::EU as well as offering some public training classes in Oslo, Riga and Zurich.
I hope to see many of you in one or other of these places, especially at YAPC::EU, where there will be a genuine Baltic smorgasbord of fantastic talks, tutorials, and other Perl-related events.
We feel it is our duty as YAPC::NA organizers to do everything we can to bring new people to Perl. After all, without fresh meat, Perl's future wouldn't be very bright.
This year we're doing a whole host of new things to recruit new talent into the Perl community. Collectively, we're calling these programs, Perl: The Next Generation. Here's what we're working on:
This blog will, hopefully, keep you updated on my hackish projects. (Both those involving Perl and otherwise, despite the domain name. Hope you don’t mind overly much. Really, I think most of my hackish projects will grow to include Perl at some point during their lifespan anyway. It’s insidiously useful like that.)
Please, if at any point you find that I’m not updating enough, or I seem to have left behind a project that you are interested in hearing more about / seeing completed, comment. One reason — possibly even the most important reason — I’m starting this is because I want to stop writing so much code that nobody ever sees or uses, and feeling like I never get anything done. If I seem to have dropped a project without telling you why, call me on that, too.
Edit: sorry about the URL; this post was originally going to be about something completely different, which should be the subject of the next post, once I finish writing it.
I'm proud to announce that our dev team has officially gotten ACT (the conference registration system used by YAPC) running on Plack. Check out the github repo. We still have more work yet to do. There's still one test not passing, and lots of features to add, but you can start it with plackup, register, login, change your profile, change your password, etc.
If ever you wished ACT had a feature you thought it was missing, it just became a lot easier to add.
Pod::Plexus development has led me down a slippery slope peppered with boulders and broken glass I thought I could avoid forever.
My inner typographer wants to lay out documentation "just so", which means putting all the POD together, usually at the end of the file. Pod::Plexus and Pod::Weaver move POD around, making this semitypographical exercise a big time waster. All the careful consideration of placing "SEE ALSO" before (or after) "BUGS" matters naught.
Suddenly interleaving POD and code doesn't sound so bad. It doesn't change the finished product. I can also get rid of some of my pre-method comments, since the documentation will do double duty. Smaller distributions and less work for me? What's not to like?
Earlier today a some dev work on MetaCPAN had the unfortunate side effect of dropping the ElasticSearch index. This has effectively forced us to re-index the site from scratch. What makes this particularly painful is that we've lost the author data (including +1) which so many Perl devs have lovingly created over the past few weeks.
The short story is that minicpan should be indexed within a few hours. The rest of CPAN and BackPAN will likely be in the next day or so.
Because we've been looking at adding new features and haven't spent time on a proper backup strategy, we're in a suboptimal place right now. The good news is that this didn't happen several weeks from now with much more author data. Also, we're now forced to find a workable backup solution as our first priority.
I'd like to see more people talk about their successes with Perl. I don't think we do a very good job of promoting successes. So while there are lots of great Perl apps out there, we as a community need to talk about them more. So I'll start, and I hope to hear more from you guys.
The Game Crafter is one that I'm very proud of. It's completely written in Modern Perl using Moose, DBIx::Class, Dancer, ElasticSearch, Image::Magick, and over 100 other modules, and deployed on Perl 5.12 (cuz 5.14 came out just before we launched it).
I have just released
Marpa::XS 0.008000.
With this release the core Marpa algorithm has been converted to C,
vastly speeding it up.
Marpa::XS is still alpha, but the additional development needed
at this point is a matter of packaging
(See Note 1).
It is my hope that Marpa
will become the standard parsing algorithm for problems too
big for regular expressions.
Marpa parses all
classes of grammar that are currently in practical use
in linear time.
(See Note 2).
Marpa is a general BNF parser -- that means if you feed it anything
written in BNF, it "just parses" it.
This includes grammars which are left-recursive, right-recursive and
ambiguous -- even infinitely ambiguous.
Marpa never goes exponential -- worst case, even for highly ambiguous
grammars, is O(n**3), which is considered optimal
(See Note 3).
Limitations and Comparisons
The foremost limitation of Marpa is, of course,
that it is alpha.
Development is well advanced, but the interface remains
subject to change.
Today on the way to work I almost finished off Test::BDD::Cucumber, but didn't quite manage it. So work having finished, I cracked out my MacBook Air and put the finishing touches in!
This entry is mainly about marketing and fundraising for YAPC::Asia Tokyo. Yes, $$. Stuff that artists and engineers don't really care about, but you should. This is also part of my talk from YAPC::NA 2011, "How to run Japan Perl Association"
So let's start out with the core funding: Every year Japan Perl Association (JPA) collets membership fees from its members. We have different levels of membership which vary from $500/yr to $6,000/yr. The expensive plans are actually divided up into two portions. 30% goes to fund JPA operation, and the rest is for YAPC. The sum varies from year to year, but we have worked with our members to collect around $12,000 ~ $14,000 as the core funding to run YAPC.
Edit Notice: I edited this post because of a very valid point made in brian's comment below.
I use perlbrew for managing my Perl installs as I am sure many people do. I was searching around metacpan for helper modules for perlbrew and found
Bash::Completion::Plugins::perlbrew
. I think this might be useful so I install it,
cpan Bash::Completion::Plugins::perlbrew
and I get a “don't know what it is.” error. I changed my cpan urllist to point to http://cpan.cpantesters.org and reloaded the index and still no dice. I am still unsure why this is not working so I decided to try installing just Bash::Completion and it fails during t/05-utils.t .
So now what do I do? I really do not need to install Bash::Completion::Plugins::perlbrew or Bash::Completion but I do not like how they failed to install. Time to submit a test report.