Open Source Contribution HOWTOs Madan U S

Topics
User's Life Cycle General Open Source Guidelines Why should you contribute? Which Project The System The Community The License The Organization Guidelines Indian Context Productivity Tips and Guidelines

User's Life cycle

Hey thats cool! I want to know more Download Untar Read the Install.txt Install

General Guidelines
RTFM Search Archives and ask your friend (Search Engines) IRCs Email - Read the Email guidelines - Watch where you mail - Make it easy to read - Be Nice - Be quiet Be Smart http://www.catb.org/~esr/faqs/smart-questions.html

Why should I contribute?

Which Project?

How can *I* Contribute?
Help Others Learn - Participate In the Mailing Lists - Promote the tool - Link to the project site Maintainance activities - Maintain the website - Monitor the IRC channels and mailing lists Release and Quality - Write unit tests - File Bug reports - Triage and Reproduction - Adding to the build/test farm - Release management - Provide Packages for download Documentation - Wiki and Manuals - Translations

How can *I* Contribute?

Last but not the least Code - Provide patches - Committer Activities

The System
Platform - Website - Docs - Mailing Lists * user * dev * release * announce * archive - IRC Channels * user * dev - Repository with Access Control - Issue Tracker

The Community

Committers and the Layman http://www.webkit.org/coding/commit-review-policy.html Teams and Leads Patience

The License

Copyright and Copyleft Conservatives and Liberals http://opensource.org/licenses/category

The Organization

Non-Profit Corporation Loosely built community Incubated by a For-Profit Corporation Community Look-Alikes

Guidelines
From http://poi.apache.org/guidelines.html Read the rest of the website, understand what POI is and what it does, the project vision, etc. Use POI a bit, look for gaps in the documentation and examples. Join the mailing lists and share your knowledge with others. Get Subversion and check out the POI source tree Documentation is always the best place to start contributing, maybe you found that if the documentation just told you how to do X then it would make more sense, modify the documentation. Contribute examples - if there's something people are often asking about on the user list which isn't covered in the documentation or current examples, try writing an example of this and uploading it as a patch. Get used to building POI, you'll be doing it a lot, be one with the build, know its targets, etc. Write Unit Tests. Great way to understand POI. Look for classes that aren't tested, or aren't tested on a public/protected method level, start there. Download the file format documentation from Microsoft - OLE2 Binary File Formats or OOXML XML File Formats Submit patches (see below) of your contributions, modifications. Check the bug database for simple problem reports, and write a patch to fix the problem Review existing patches in the bug database, and report if they still apply, if they need unit tests atc. Take a look at all the unresolved issues in the bug database, and see if you can help with testing or patches for them Add in new features, see Bug database for suggestions. http://www.apache.org/dev/contributors.html http://wiki.apache.org/nutch/Becoming_A_Nutch_Developer http://www.webkit.org/coding/contributing.html

Indian Context
@ Are you using open source? @ How much do you care? @ Are you *using* open source? @ Are you using your company's resources? @ Have you given a link to your patches in your resume? @ Have you given preferential treatment to employers who are open to Open Source contributions @ Have you spoken to your management about giving back to the community of the tools that you use in the organization?

Productivity Tips
Watch and Learn – Request to shadow your hero Chat Keep your Open Source Desktop always On (Use Virtual Machines) Take the time to learn the tools that help you get your work done faster Use the On and Off Switch

Sign up to vote on this title
UsefulNot useful