My current Perl Ironman Challenge status is: My Ironman Badge

Wednesday, February 10, 2010

POE and its infinite awesomeness

For the past couple of years, I have been one of the very few to actually mention or discuss POE specific technologies at any of the various Perl conferences or workshops. This makes me sad.

POE is a fantastic framework with a very well defined and mature API. As a project it is... wise. It isn't old. It isn't dead. I would argue that POE is one of the longest lived, and thriving Perl projects on CPAN. And in fact, POE handles many mission critical apps on the backends for several companies. You just don't see it.

With the advent of newer modules that claim to be the messiah of asynchronous events, POE has developed a sort of marketing problem. POE doesn't release as often because of how mature the framework is. In addition, several other factors contribute to POE not grabbing the spot light. This leads people to believe POE is old school, or that it is too big to be used for their one off projects. I'd like to fix that. I'd like to educate people on why POE is very much still alive and what that means when you have asynchronous requirements for your heavy-lifting backends.

That said, this YAPC::NA, I am attempting to organize enough speakers to speak on the topic of POE (Intro, Core, Extentions, Next-Gen POE technologies, Application specific successes) that the conference organizers will have no choice but to give us a significant block of time on one of the tracks. This will involve a lot of work. There is a core group of us meeting in irc:// to make this happen. We have a lot of code to write.

So please, if you use POE and have an interest in seeing the next evolution of POE work, come join us. We won't bite. Promise.


  1. The main complaints with POE aren't that it's old.

    It's that it's slow and very hard to program for.

  2. Benchmarks, please. And second, that is completely subjective. I guess because things are slow and very hard to program we should just give up and go have ice cream. Sorry Moose. Sorry Catalyst.

  3. Perl is slow (by comparison to Assembler) and hard to program for (by comparison to Java). It has a huge learning curve. We should just all use Go.

  4. POE works on *NIX, OSX, and Windows... Is there anything else on CPAN that offers roughly the same set of features _and_ is cross-platform?