Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: Responsibilities of a module author

by BrowserUk (Pope)
on Nov 23, 2005 at 18:11 UTC ( #511194=note: print w/ replies, xml ) Need Help??


in reply to Responsibilities of a module author

Take this with as big a handful of salt as you feel it deserves given my non-CPAN author status. It's just the thought that went through my mind.

How about making it possible to move individual cpan modules into a "community branched state".

That is, if say three or more users register themeselves as interest parties to a given module, and there is a high degree of consensus amongst those registered for the application of a patch that the author has either refused or failed to respond to, then the module gets forked on cpan into a community maintained subgroup, with a pointer from the author's version to the community maintained version.

The registered interested parties take responsibility for approving and supplying patches.

If the author of the package decides to merge the versions back together, the community maintained version gets expunged.

If the author chooses to relinguish or co-own with one or more of the interested parties, then the author version gets expunged.


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.


Comment on Re: Responsibilities of a module author
Re^2: Responsibilities of a module author
by mifune (Sexton) on Nov 27, 2005 at 21:55 UTC

    With a meta-grain of salt, I'd have to say that I agree with BrowserUk's general idea of a standard, non-hostile, non-emotionally charged protocol for continuing the evolution of a CPAN module when its original author has expressedly or de facto suspended the support for it.

    I also agree with Perl Mouse when he says that "CPAN is just a repository. The great thing is that anyone can contribute any code to it.". Precisely, IMHO, it should be possible to contribute any code to solve any given problem, not just problems where no author before has planted its flag.

    In this sense, I feel that thought could be given to a natural and agile way (built into the structure of CPAN) of branching or evolving a given module, a way that automatically took care of authorship, copyright and and other important formalities. That is, so that every bit of work by any author (no matter the level of it's original author's involvement after it is released) would be completely shared with the other authors and users.

    Of course, this solution might not be simple (I'm pretty sure it wouldn't be (if it is possible, in the first place)), but that is precisely why I think it should be addressed in a formal and standarized (and agreed upon) way.

    Then again, one might be told to "go make your own repository if you don't like CPAN as it is". That'd be unkind response, but a valid one.

      In this sense, I feel that thought could be given to a natural and agile way (built into the structure of CPAN) of branching or evolving a given module, a way that automatically took care of authorship, copyright and and other important formalities.
      I don't think this should be build in the structure of CPAN. The ability to fork is a licensing issue - most open source licenses allows you to fork. It's totally indepent of the existance of the module on CPAN.
      That is, so that every bit of work by any author (no matter the level of it's original author's involvement after it is released) would be completely shared with the other authors and users.
      That's not the task of CPAN. CPAN should not dictate what rights authors must be willing to give up for distributing a module via CPAN. The only restrictions CPAN should put on authors are those that keep CPAN from doing its work, as such, the restrictions for authors is that their work should be freely distributable.

      Adding the requirement that outsiders may take over authorship and copyright of a module isn't a good thing in my opinion. You'll lose people contributing code to CPAN. Not to mention all the resources you have to pour in to work out the legal details of this.

      Perl --((8:>*
        Adding the requirement that outsiders may take over authorship and copyright of a module isn't a good thing in my opinion.

        I'm at a loss to see where anyone suggested that this could/would or should happen?

        I'll restate that I was not suggesting anyone should be able to "take over authorship and copyright". All existing copyrights and licences would remain in place and sacrosanct, as with any other OS code.

        The idea was to provide a somewhat formalised mechanism for the extension and improvement of modules through the collaborative efforts of it's users, that maintained a continuity between the developments that would aid both the original authors; and existing and future users.

        If the original author is unable to accommodate changes that users require for their use of the module, whether through

        1. being uncontactable;
        2. unable to continue maintenance for whatever reason;
        3. sees the requested changes having undesired affects upon other users of the module;
        4. or simply that they take the module in directions he never intended it to go;

        A somewhat formalised mechanism for forking the development would ensure not only that the collaborating users could find each other and achieve their needs; it would also ensure continuity of both authorship and licencing of the original elements of the module.

        Not only does this help ensure that you don't get half a dozen unilateral forks by disparate individuals; it also allows future users to find and follow the developments rather than their being spread all over the Internet, (or worse, unavailable publicly!). It could also allow the original author to "keep a watching brief" on where the fork is going, and even offer consultative advice to it's progress.

        There was no intent to impose extra restrictions upon authors, nor in any way diminish their rights. Just to formalise those rights and procedures already in place--to everyones benefit.


        Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
        Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
        "Science is about questioning the status quo. Questioning authority".
        In the absence of evidence, opinion is indistinguishable from prejudice.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://511194]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (18)
As of 2014-10-23 14:01 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (125 votes), past polls