Find your way to Apache Contribution Sagara Gunathunga ASF Commiter/PMC member | Tech Lead at WSO2
Can I contribute to Apache ?
Q/A Engineers Business Analyst System Admins SoftwareEngineers Tech Writers Web DevelopersIT Students Researchers
How can I find right project for me ?
You can find lot of contribution opportunitieson Apache Incubator projects.
Visit the project web site and go through the documentation.
Subscribe to user and dev mailing lists.
Download the binary distribution andspend some time with samples, tutorialsand user guide.
Found issue while running samples ?• Documentation may be out dated.• No proper guide exists.• Mentioned steps are not clear.• An issue with sample or project code.
Get some helps from blogs, mailing list archive, forums or write to mailing list. http://mail-archives.apache.org/http://markmail.org/ http://www.nabble.com/
• Try to fix broken samples, improve existing samples or provide new samples.• Update or correct documentation, write a blog to share your experience.Attach your works as a SVN patch in theJIRA project.
Most of the Apache project use SVN to manage source codes and JIRA to manage issues. You can find those locations from project web site SVN : http://svn.apache.org/repos/asf/hadoop/common/trunk/ JIRA : https://issues.apache.org/jira/browse/HADOOPSVN : http://svn.apache.org/repos/asf/axis/axis2/java/core/trunkJIRA : https://issues.apache.org/jira/browse/AXIS2
Check out source codes and build theproject locally. Maven and Ant are some ofthe most popular build systems used byApache projects.
Use SVN command line tool , graphical toolor IDE plug-in to generate patches.
Attach your patch to appropriate JIRAissue. It can be source code patch ordocumentation patch.
Few references for patching process. • http://www.apache.org/dev/contributors.html • http://httpd.apache.org/dev/patches.html • http://jakarta.apache.org/site/contributing.html • http://pushpalankajaya.blogspot.com/2011/09/docum entation-patch-submission-for.html
Keep your eye on project user mailing listand help others to solve their issue.• One of the best approach to learn project internals and start your contribution.• If you know the answers dont hesitate to reply.• May be you can find a new issue, you can fill a new JIRA issue and fix it.• Others will recognize your effort !!
Participate to discussions on project devlist regularly. • Participate to discussion on dev list with your opinions/arguments. • If something difficult to understand dont hesitate to ask questions. • Suggest your new ideas dont spend time for self judgment.
Go through the JIRA project and find asimple issue to work on.• Try to reproduce the issue using provided samples and configuration.• Read previous comments and spend some time for background reading.• If you need more inputs or clarifications ask them by commenting on JIRA or dev list.• Attach your current works as a patch and ask community to review your works.
Study some of the important programmingtechniques. • Debugging • Unite testing • Remote debugging • Profiling • Memory analysis
Expose your experience and ideas to others. • Do you have a blog ? Maintain a blog regularly. • Usually we have seen lot of revolutionary ides from users and new contributors. • If you are a student, GSoC is the best way to start your contribution ( with some privileges). • Write to dev list asking possible GSoC project ideas or come up with your own ideas.
Project specific contribution • Most of the Apache projects maintains their own new contribution guides. • Look for "New contributor guide", " How to contribute guide", "developer guide" etc. • Dont hesitate to ask on the community development mailing list visit http://community.apache.org/.
Apache communities• Try to organize small events like MeetUps and BarCamp in your town , office or university.• We have volunteers and resources to help you.• What do you need to care ? • Venue - better to find a free venue. • Refreshments • Ask to bring laptops. • Notify among your local communities. • Contact ASF.Small event list : email@example.comApache event LK list : http://groups.google.com/group/apache-event-lk
Thank You !firstname.lastname@example.org://ssagara.blogspot.com