sethd.org
this is not the blog you're looking for

Resume
LinkedIn

RECENT ENTRIES

Done With Blogging
MetaCPAN
I Am Now On Twitter. World Officially Ends.
More Info About Perl 5.14
Perl 5.14 has been released
The Year of Perl 5.10
PSGI is the Limit
Magical Moose
Accessor Benchmarks
Reviewing Perl Best Practices After 7 Years
Interesting Modules 2011-03-19
Book Blogging: The Uplift War
Book Blogging: Childhood's End
Interesting Modules 2011-02-20
Perl Programming Best Practices 2011
Modern Perl Available For Free
Bloated Perl Applications
Five Test::More Features You Might Not Be Using Yet
Perl.LA
How To Identify A Good Perl Programmer
Interesting Modules 2011-01-11
Hudson's Future
Moose Ecosystem
Shaking Up Subversion Responses
Dist::Zilla Walkthrough
Mailing Lists vs. IRC
Shaking Up Subversion
Module Count Shmodule Count
Book Blogging: The Definitive Guide To Catalyst
Book Blogging: Blackout / All Clear
Interesting Modules 2010-12-04
Book Blogging: Macroscope
Upcoming Perl Books
Use A String Like A Filehandle
Moose and Build
Running the Bases...Quickly
Pennant
Interesting Modules 2010-10-16
Went to Perl Mongers Last Night
Book Blogging: The Many Deaths of the Firefly Brothers
Book Blogging: Rainbows End
Interesting Modules 2010-09-03
36th Birthday
Book Blogging: Startide Rising
Apr 22, 2011

Magical Moose

Last week I completed a project I had been working on for a little more than three months. The project replaced nearly every element of a currently existing system. The release went very well. Not one serious problem. A big reason for this was Moose. Using Moose I was able to create a framework that I used throughout much of the code. I wrote a whole host of tests that exercise the framework as well as each role that the framework can use. Using Moose made this easy-peasy (is that how you spell that?).

One interesting thing that I discovered was that Moose, despite people constantly saying so, does not seem to add a significant startup penalty. A not insignificant part of this project is a suite of command-line tools that people use every day. These tools rely on the previously mentioned framework. Most of these tools consume at least a half dozen roles, if not many more. Moose and various MooseX modules are used liberally throughout this system. Yet my tests show that the startup time is not significantly different from the previous system. More importantly there have been no complaints about startup time from the users. Very impressive.

This was the first major project I have ever used Moose on. Using Moose and other elements of the Modern Perl approach I was able to completely rewrite a non-trivial system, make that system significantly better, and do it in a reasonable amount of time. I cannot be happier with the results.

Tags: , .
[p] Posted @ 23:04 by Seth


This site uses the very simple and easy to use blosxom blogging software.


Advanced Search

PERL BLOGS

PERL RELATED OTHER SITES