|Think about Loose Coupling|
Alternatives to Module::Starterby Xiong (Hermit)
|on Jan 14, 2012 at 15:28 UTC||Need Help??|
First: Who uses module-starter? Who copies an existing project and throws away most of it, then edits what's left? Who has another method? Please think about this and include your answer in any reply.
I'm deeply unhappy with module-starter and Module::Starter*. I started using them because there is indeed a lot of boilerplate that needs to be created for each project. It seemed better to set this up programmatically than by copy-edit; and I still believe this. But I've started my last several projects by hand.
I'm aware h2xs has been used for this purpose. I'm agin it, on principle: not the primary purpose of the tool.
Here are a few issues I'd like to clear up:
I suppose I can subclass and redefine the guts to do what I want. This is the approach taken by Module::Starter::Plugin::Template and Module::Starter::PBP. I don't feel it's worthwhile to cram a new tool into a difficult API.
I'm thinking seriously of starting work on a replacement. This will use the widely respected Template::Toolkit as backend for placeholder substitution and Config::Any to allow developers to edit multiple config files in their choice of YAML, JSON, INI, Perl, or what-have-you. There will be the expected lengthy command line interface but also interactive setup of configuration. And the whole thing must be kept simple! This is, after all, a way to start a Perl project; at some point you have to go to work and write code.
Before I roll, I'd like to hear what alternatives make other Monks happy.
I'm not the guy you kill, I'm the guy you buy. —Michael Clayton