RECENT ENTRIES
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.
PERL BLOGS