I have been in the software development industry since 2010, working on enterprise product development using ADF. I am usually keen on learning about software design and emerging technologies. You can find me hanging around in the JavaRanch Forums where I am one of the moderators. Apart from Java, I am fascinated by the ease of use and simplicity of Ruby and Rails. Mohamed is a DZone MVB and is not an employee of DZone and has posted 53 posts at DZone. You can read more from them at their website. View Full User Profile

What it Takes to Participate in Open Source Projects

  • submit to reddit

There was a query on Javaranch regarding participating in Open Source projects and I made an attempt to provide a somewhat elaborate reply to it. I thought of putting up  the reply on my blog as well and may update it further to help of others.

Participating in Open Source projects would take a lot of effort and dedication. It's because one has to:

  1. understand how the code works,
  2. play around with it,
  3. explore the documentation,
  4. understand the code and not get bogged down by the volume of code
  5. be active on the mailing list,
  6. go through the bug list to see if something you can fix,
  7. submit a patch for the bug, hope it gets accepted,
  8. repeat 6-7 until core members of the project start recognizing you and possibly trust you with the permission to directly merge the fixes to the codebase.

One has to understand the coding guidelines for each project because each of them can possibly have a different approach. So confirming to the guidelines of the project is a MUST.

If you are considering a low activity projects then it would be that the project is abandoned and no longer actively managed or that there are very few developers working on it and the possibility of you getting help faster would be less. If there are more people working on a project and its more active then you can find lot of people trying to help you out with your queries. But before asking the questions you should have read all the manuals/documentation otherwise the reply would be RTFM.

Having SCJP is not counted as a criteria for participating in open source projects, its an indication that you have some basic understanding of Java. I have seen lot of Non IT people participating big time in open source projects, its just the interest and dedication that is required. You dont do it for adding them to your resume or for projecting yourself as a more suitable candidate for some interviews. All these come as the after effects of your participation in the projects.

If at all you find it difficult to participate in open source projects, then there are other options like participating in programming competitions. For example you can find lot of such opportunities on TopCoder, Programmable Web contests.

Published at DZone with permission of Mohamed Sanaulla, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)


Andy Jefferson replied on Thu, 2012/03/29 - 12:30pm

  • 9. Develop a thick skin to counteract the behaviour of some users of that software who will spend their time criticizing (unconstructively) and putting nothing in themselves, expecting you to design their application for them.
  • 10. Develop ideas for how you want to take that software forward, rather than just fulfilling the original scope. Without this the software will ultimately become disused/unmaintained and die.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.