http://qs1969.pair.com?node_id=106003

perigeeV has asked for the wisdom of the Perl Monks concerning the following question:

I admin at a brick and mortar that's soon to become a statistic. As the Keeper-of-Secrets I have had to keep a low profile regarding intellectual property. Since the edge of the cliff is getting near I have begun to wonder about the ability to publicly post code. I'm no wizard, but I may have a few things worthy of CPAN.

The problem I forsee is that I have little time available to me now, and I don't see that changing in the future. I don't want to put up a module and then immediately abandon it. I feel I would have responsibility to maintain code with my name on it. So I ask all you CPAN authors: how much time and resources does your spawn require of you?

Of course all of this presupposes that the masses would come running for the powerful magic I upload :)

Replies are listed 'Best First'.
Re: Module authors & time demands
by mirod (Canon) on Aug 19, 2001 at 15:16 UTC

    I'd say it all depends on the type of module you write (I bet you wouldn't have guessed that!).

    Some modules do one thing, they do it well and there is no reason to change what they do, so once they are out and the bugs are ironed out they pretty much live their life and nobody has to maintain them any more. Case in point: Data::Dumper, current version is 2.101, released on May 1rst 1999: the interface is well-defined, the module works fine, everybody is happy.

    I know I spend a lot of time (way too much according to my SO!) maintaining XML::Twig, as users ask for new features that really have to be included in the module, and as I use it in my day job. As a side note the maintenance effort does not necessarily show up on CPAN, as I release a lot of intermediate versions on my site only, waiting until I have a thouroughly tested (and complete) version to do a CPAN release.

    In between those are modules like DBI, which was stable for a while (one release from june-1999 to march 2001) but went through 4 versions since then.

    So basically it is up to you to figure out how much maintenance a module will need. Will it just need fixing the inevitable bugs revealed by other people using the module? Or does it look like it will have to evolve and encompass a lot more features to be really useful, or just to keep up with other modules it is based on?

    If you think your code is interesting but you will not be able to maintain it you can also put it up on CPAN and explain this in the README, with your email address so potential maintainers can contact you.

    And of course you should also post either the code or a dscription of the module here (an/or in a newsgroup or on a related mailing list) and listen to what people have to say about it.

Re: Module authors & time demands
by bikeNomad (Priest) on Aug 19, 2001 at 22:47 UTC
    It will take less of your time if:
    • The module is simple
    • The module is well-documented
    • The module is unpopular

    If the module is complex, you will probably spend less time in the long run if you provide good documentation, including tutorials. Of course, there's always the users who don't read any documentation you give them, or who don't understand what you've written.

    Of my three CPAN modules, one (Algorithm::Diff) has a (relatively) simple interface, one (Archive::Zip) is complex and has a big interface, and the last (Class::Prototyped has a relatively simple interface, but no one seems to be able to understand its use.

    Of the three, Archive::Zip takes most of my support time (it is also the most popular). I didn't realize how popular it was until CPAN screwed up their index generation and CPAN.pm started telling people to contact me for distributions <g>.

    I would estimate that I have to answer 15 emails per week about the three modules. Occasionally I get one that causes me to have to work (like adding code to Archive::Zip that would repair damage caused by the Sircam virus).

Re: Module authors & time demands
by mugwumpjism (Hermit) on Aug 19, 2001 at 14:49 UTC

    You could always post it to the Craft or Code sections of this site!

Re: Module authors & time demands
by bikeNomad (Priest) on Aug 20, 2001 at 00:06 UTC
    Oh yeah, it probably matters who is going to be using your code. My guess is that there are a lot of casual programmers out there trying to make CGI scripts. Since many people seem to associate Perl with CGI programming, this draws a relatively large proportion of not-exactly-experienced programmers to Perl (as opposed to, say, people taking up Sather).

    So if you make something that will be at all appealing to the newbie CGI'ers, be prepared to do some hand-holding on issues that don't have anything to do with your module (or send 'em here!).

Re: Module authors & time demands
by scain (Curate) on Aug 19, 2001 at 22:16 UTC
    It sounds like you may have already thought of this, but I just wanted to say it "out loud": be careful releasing this code. The IP no doubt belongs to somebody (shareholders most likely), and that somebody could get upset that you are giving away an asset that they could potentially sell to recoup their investment in you company. Make sure you get the ok in writing from somebody like the COO before you do it.

    It never hurts to be a little paranoid,
    Scott