I don't think there is a standard practice here for that yet. ;-) Nominally, we point to CPAN for stuff, but if you've not posted it there, yet, there goes "standard practice" ;-)
Of course, the other question is, why not post it to CPAN? There is the concept of Release Early, Release Often. which may be a useful idea here ;-) GrandFather once wondered about this. Once you put it on CPAN, you can polish it up and release newer and newer versions, and also link to it from here easily.
| [reply] |
| [reply] |
Thanks for bringing CPAN up in this discussion because I have never been too clear if CPAN is only for libs/modules, or for complete applications.
For example, this little TkMailer app that I recently posted. I don't plan to maintain it but I think it might help other people. Is this really a candidate for CPAN? If so, I have a few questions:
-
Where can I get a newbie how-to on packaging it for CPAN?
-
How does one know how to clasify it on CPAN?
-
Who defines name spaces in CPAN? Is there a guide for this?
| [reply] |
Personally, my preferred method would be to:
- Refactor it to no longer be standalone, but an API that others could use and embed into their own Tk applications.
- Modify the script so that it used the API to create the TkMailer window to send whatever you already do.
- Put this whole package on CPAN.
You can ship scripts with your modules on CPAN. The focus on the modules, however, is a focus that allows for code-reuse in other applications, which is one of the strengths of perl and CPAN, IMO.
How to on packaging: check ExtUtils::MakeMaker or Module::Build - I think they both talk about how to use them to package your modules.
How to classify: you can ask here. I've seen that done a few times. To give you a headstart, if you do as I suggested above, I'd classify it under "User Interfaces" since it'll be tied closer to Tk than to SMTP.
Who defines - we all do, but if you check PAUSE, they have a section on this.
Hope that helps. It's actually a lot less daunting than it looks. Especially the second time. ;-)
| [reply] |