Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Suffering from CPAN guilt

by jeyroz (Monk)
on Mar 12, 2005 at 15:49 UTC ( #438932=perlmeditation: print w/replies, xml ) Need Help??

I am suffering from CPAN guilt!

It occurred to me that only about 50% of the code in my applications is my own. The rest just bridges various perl modules (CPAN contributions) and waits for the output.

Anyone else suffering from the resulting guilt of this realization?

author => jeyroz

Replies are listed 'Best First'.
Re: Suffering from CPAN guilt
by davido (Cardinal) on Mar 12, 2005 at 16:01 UTC

    If you have a 50-50 ratio, you're not using modules enough. How's that for guilt!? Think of all that work people have done to hone great modules and you're not even accepting their gift to the community. :) (There are many ways to look at it)

    A module is embodied labor. If your point is that more of the labor should be your own, why arbitrarily draw the line at the labor embodied in modules? Perl itself is a major embodyment of labor. So is the C compiler that compiled it. And so is the operating system that its running on. ...and so is the computer you're using.

    Use the tools that are there for you. When you find a tool missing of which you're qualified to create, forge it, refine it, and contribute it to the collection. And feel good in knowing that you're moving the process ahead.


Re: Suffering from CPAN guilt
by belg4mit (Prior) on Mar 12, 2005 at 15:52 UTC
Re: Suffering from CPAN guilt
by chas (Priest) on Mar 12, 2005 at 20:38 UTC
    One further comment which I don't think has been explicitly made: The people who wrote the modules you use likely did so because they had some use for them and also enjoyed creating something useful. I'm sure it gives them pride and a sense of accomplishment to know others think enough of their work to make use of it. I don't think there is any reason to feel that one needs to "give back" by contributing one's own modules unless you happen to have one to contribute. People contribute in different ways.

      Seeing both sides, I would like to educate readers of this thread on the theory of Gift economics. The idea is that there is a social compulsion to return favours. You do a favour for me, thus I am socially, morally, and/or ethically, bound to return that favour. For example, should a friend invite you over for dinner, you feel compelled to return the favour by inviting them over to your place. In this way, we all feel like contributing members of society (or at least our social groups).

      In this model, people who give receive prestige in return. When there is a deficit of prestige, e.g., when you cannot give as much as is given to you, you feel like a lesser person, while the giver feels like a greater person ("look at all I am able to give!"). (For the Christians out there - this is why Jesus of Nazereth told his followers to give alms in secret, since those who give alms in public have already reaped their reward - which is public prestige.)

      Maybe you feel this compulsion, too, in some situations, but perhaps not in this situation. That's fine, that all depends on your choices.

      Personally, I do try to contribute back what I can - as long as it is not proprietary to my job. But I cannot contribute nearly as much as I receive from CPAN. Perhaps that is part of the reason why I'm so prolific on PerlMonks.

      Side note: I did not actually read the wikipedia page linked to above - my wife took sociology in university, so I'm basing my comments above on what she told me at the time, which stands a good chance of being more accurate than whatever wikipedia has, and any inaccuracies or deficiencies are purely due to my own fingers and memory - more the latter than the former, I suspect.

        For those interested in the whole gift economy notion, there's an interesting story called Down and Out in the Magic Kingdom, that describes a society whose only economy is based on a person's reputation (whuffie), and you gain reputation (whuffie) by doing things for others. The story is available for free under the Creative Commons.

        It might help people to visualize the concept (or it might be interesting to see someone else's concept of how it could work).

        Very interesting page! There are many links to informative related discussions - for example, I hadn't thought a lot about the notions of free vs open source software.
Re: Suffering from CPAN guilt
by jZed (Prior) on Mar 12, 2005 at 15:55 UTC
    I feel almost as guilty as I do driving my car - I didn't strip the rubber for the tires from the rubber trees or build the engine, I just drive it. I am not worthy. I am not worthy.

      You did pay for the car, though, right? (If not, let's pretend you did ;->)

      You paid someone for all the work and materials that went into your car.

      With CPAN modules, you're not paying for it. You're taking from the community. Which is, IMO, ok. Some people feel guilt that they aren't giving back to the community as much as they are taking from the community. Or at least what they may consider a fair ratio of taking to giving.

      Not that I suffer from the OP's affliction here, but I think I at least understand it enough not to use the car analogy. Your analogy would hold better if you got all your materials and information for free, and just had to labour to put it together. Highly unlikely for a vehicle, but common practice with perl and CPAN modules.

      Update: I'd like to reemphasise that I don't suffer from the OP's guilt - as thor points out below, these are modules that are freely given to the community. I do understand, however, the feelings of give and take - if all you do is take, you feel like less of a person than if you give in return.

        But it's free only because the authors made a conscious decision to make it so. They were not forced to make it available for all to use. One should not feel guilty for taking a cookie that was offered to you at church. Likewise, one should not feel guilty for using code that others have made freely available.


        Feel the white light, the light within
        Be your own disciple, fan the sparks of will
        For all of us waiting, your kingdom will come

        Some people feel guilt that they aren't giving back to the community as much as they are taking from the community.
        Good point! And with this minor change I'd agree: s/guilt/sense of responsibility/.
Re: Suffering from CPAN guilt
by castaway (Parson) on Mar 12, 2005 at 16:56 UTC
    What is there to be guilty about? You're getting the job done, in less time that it would have taken if you had done the whole thing by hand; you're re-using code; you're using code thats been tested in various environments.

    Reading the title of this node, I assumed you were feeling guilty that you hadn't posted any of your modules to CPAN, to share with the rest of us..


Re: Suffering from CPAN guilt
by brian_d_foy (Abbot) on Mar 12, 2005 at 21:49 UTC

    Why the guilt? For reusing too much code or not reusing enough? Or for not sharing 50% of your code?

    Figure out if your task is to solve problems or to write code. Each has their own measure, and one of them is not lines of code. :)

    You can also feel guilty about not writing the operating system if you really want to beat yourself up over something.

    brian d foy <>
Re: Suffering from CPAN guilt
by zentara (Archbishop) on Mar 13, 2005 at 13:34 UTC
    An old wise quote amoung educated people:

    "We stand on the shoulders of the giants who preceeded us."

    Perl is built on C, so do you have guilt feelings about using the C libs? I guess the only people who shouldn't feel guilty are "pure assembly programmers", (but they are crazy in other ways :-))

    I'm not really a human, but I play one on earth. flash japh

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://438932]
Approved by davido
Front-paged by hsmyers
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (1)
As of 2023-06-04 15:00 GMT
Find Nodes?
    Voting Booth?
    How often do you go to conferences?

    Results (22 votes). Check out past polls.