[Israel.pm] Talk proposal: Contributing to an open source (Perl) project

Gabor Szabo szabgab at gmail.com
Sun Jan 16 01:28:08 PST 2011


The following is a proposal for a series of talks for the upcoming Tel
Aviv Perl Mongers meetings.

Contributing to an open source (Perl) project   (documentation, code,
bugs and other things)

In a recent poll conducted by Elizabeth Naramore people were asked
why they don't contribute to open source projects? The 3 most common
answers were
*) I don't have enough time
*) Not sure where or how to contribute
*) I'm not confident enough in my own skills

http://naramore.net/blog/why-people-don-t-contribute-to-os-projects-and-what-we-can-do-about-it

(Ran, thanks for the link)


In the presentations we'll try to overcome all 3 of the problems or at
least to lay down the foundations for this process.

Before helping people to contribute to Open Source projects probably
we'll need to
answer the question

                                            Why?
                                           -----------
Why to contribute?
===============



Yes, really why?



How to contribute?
==============

Originally I thought to have a single talk but as I was writing down
the items I need to talk about I see it is growing well beyond
a single talk. Hence I propose it to be a series of presentations.

The plan is that each presentation can be useful on its own and
that each presentation should give the audience the tools to
start doing something.

Both people who are relatively new to Perl and people who have
more experience in Perl but no experience in contributing
to open source projects.


Some of the items I thought about:

- Picking a project

While most of the talk is generic some aspects are more Perl specific.
For example when trying to get involved in a project one of the first
things you need to do is actually to look for an interesting project.
This can be almost automatic - pick a project you already use -
or this can be a more involved process: looking at various projects
and trying to find something interesting.

As we are mostly interested in Perl based projects I'd recommend
looking at modules on CPAN http://search.cpan.org/ including
full-blown applications http://padre.perlide.org/ (hint hint) or looking
at other Perl based applications listed
on http://www.perlfoundation.org/perl5/index.cgi?applications

(if you don't find your favorite application there, please add it to the list.
It is a wiki after all).


- communicating with other developers
  - mailing list
  - IRC
  - web forum ???
  - Wiki  ???

- Documentation
  For most of the applications helping with the documentation
  requires a similar amount of communication and setup as it would
  be for coding. On CPAN it is easier. You can create an account on
  AnnoCPAN http://www.annocpan.org/ and start adding examples
  and documentation.

- bug tracking systems
  RT
  GitHub
  Trac
  Bugzilla
  - Opening accounts
  - Reporting bug
  - Bug triage


- Version control system
  - SVN
  - Git + GitHub
  - there are others but they are less frequently used
    (e.g. CVS, Mercurial, Bazaar)

- Creating and submitting a patch
  (documentation or code)

- Creating and submitting a unit test

- Build systems
  ExtUtils::MakeMaker
  Module::Build
  Module::Install
  Dist::Zilla

- How to find low hanging fruits?
  This section will be about locating items in open source projects
  that less experienced people can also help resolving but in order
  to explain what is a "low hanging fruit" let me go back to my question
  earlier: Why to contribute?
  I think my aim in this set of presentations isn't to convince people it
  is worth their time to contribute. It is to find the "low hanging fruit" who
  already would like to contribute but has some other obstacles.
  People who already know
  - that they can improve their own skill a lot by contributing
  - that it is a lot of joy to see the fruits of our labor to make
    other people happy.
  - People who already see the value in being active part of
    this community.
  - People who just want to "give back" something after they
    received so much from other open source developers.
  - People who would like to work on things they really enjoy -
    and not only on things they get paid for.


Probably there are other items. I am just thinking aloud
what might be interesting and needed in such
a series of presentations?

What do you think?

Gabor

-- 
Gabor Szabo
http://szabgab.com/


ps. let me also refer you (again) to the document Shlomi wrote about the subject
http://teachingopensource.org/index.php/How_to_start_contributing_to_or_using_Open_Source_Software


More information about the Perl mailing list