Hi Gabor (and all),

On Thursday 27 May 2010 14:33:53 Gabor Szabo wrote:
> When I teach Perl people keep asking me why do all these
> people spend their free time on writing modules and
> uploading them to CPAN?
> 
> I usually tell them because it is fun and that they get the
> appreciation of fellow programmers - something IMHO
> you rarely get in the corporate environment.
> 
> Then we - the CPAN authors and other contributors - have these
> discussions on various mailing lists and blog posts on how much we are
> supposed to care about the "user experience": writing docs, not breaking
> backward compatibility, fixing bugs... etc. Some people say we have to do
> this other say be happy with what we already contributed. It was a gift.
> That's not the question now.
> 
> This whole thing makes me wonder, why do *you* really contribute to CPAN?
> 

Well, before I answer this question, I refer everybody to an explanation I 
wrote in a mailing list post on why I license most of my code under the 
MIT/X11 Licence:

http://www.mail-archive.com/linux...@cs.huji.ac.il/msg56378.html

It gives some history and motivation for that.

> Is it for the fun of writing code? - You don't need to distribute your
> code for that.

Well, you don't need to distribute most other types of creative work (human-
readable text, music, video, etc.) if you enjoy creating it either, but still 
a large percentage of creative people still enjoy distributing it because they 
want many people to experience it. I can relate to that, out of being an 
essayist and a writer of creative fiction.

So there's also the aspect of making your code available to the public.

> Is it to participate in the community?

Well, I don't think too much of participating in the community when I do CPAN 
work. I enjoy that when it happens, but it's not on top of my mind.

> Is it to get a virtual pat on the shoulder (or a beer in the bar) from
> other programmers?

Well, such encouragements are nice but they are not the prime motivation that 
I have.

> Is it to make other people happy by letting them do their job easier?

Well, I enjoy hearing from people when my code works for them (or in case they 
ran into a problem with it, which indicates they tried to use it and found it 
of use.). But again, I'm not sure if I actively think about it when putting 
new code on CPAN.

> Is it because you feel obligated as you are using other peoples code
> free of charge?

I should note that some of the modules I've written were written to scratch an 
itch, and/or because I got paid for writing them. For example, I've written 
http://search.cpan.org/dist/Test-WWW-Mechanize-Mojo/ (originally span-off from 
Test-WWW-Mechanize-Catalyst) because I needed it for my work on a Mojolicious 
project which I had nothing adequate to test with. While I could have kept 
them for myself, putting them on CPAN will make them of bigger utility, allow 
for more code reuse, and will allow me to get more input if they do or do not 
work.

So why do I release code to CPAN? Part of the reason I don't put it elsewhere 
is because I know most clueful people will look in CPAN first, and not in 
other places for useful Perl code (and from my experience Google often returns 
CPAN results for not-particularly-Perl-related queries). I also think that 
releasing code as open-source "shrinkwrap" requires more effort and discipline 
than just keeping it to yourself or using it in-house, but is worth it, 
because your code becomes of better quality (both elegance and functionality) 
as a result, and it proves to be of much higher utility.

Maybe I'll think of other reasons in the future.

Regards,

        Shlomi Fish
 
> 
> I would run a poll asking this question but I am not even sure in the
> possible answers and I'd be happy in more descriptive answers.
> 
> So why do *you* contribute to CPAN?
> 
> regards
>    Gabor

-- 
-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
What Makes Software Apps High Quality -  http://shlom.in/sw-quality

God considered inflicting XSLT as the tenth plague of Egypt, but then
decided against it because he thought it would be too evil.

Please reply to list if it's a mailing list post - http://shlom.in/reply .

Reply via email to