This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Dear Ranchers, I am a student who is unable to contribute to open-sourced projects, partly due to poor documentation, and mainly due to the high level of complexity in these projects. If you've faced a similar problem, kindly post your experiences. Also, if there are any such threads in the past, please let me know. Regarding the open sourced project frameworks(like hibernate/struts), the configuration needed to keep them working is enough for me to dissuade me from learning them in greater detail/feel confident about them. Please let me know about your views in this regard.
Originally posted by Sumit Bisht: I am a student who is unable to contribute to open-sourced projects, partly due to poor documentation,
Most of the open source projects, usually suffer from poor documentation. Contributing to open source does not only mean writing code. You could even help improve the quality of documentation.
Originally posted by Sumit Bisht: Also, if there are any such threads in the past, please let me know.
Similar questions have been asked before. Some of the points that you might want to keep in mind while contributing to Open Source projects are:
1) Decide "why" you want to contribute to Open Source projects. Possible reasons maybe:
- I want to learn something new. - I like XYZ product very much. I would want to see it grow and provide any possible help. - I want to divert my mind from the daily stuff that i do at work and contributing to an Open Source project allows to do something different. - I want to be popular among my colleagues and i think contributing to Open Source products (which may be used by many in the industry), will help.
Once you know, why you want to contribute to open source, you will be able to narrow down on which project to choose.
2) There are many who at some point in time, want to contribute to open source. But because of various (valid) reasons, they gradually lose interest. One way of trying to retain interest, is to keep yourself updated with any new development in that project(s).
3) Open source projects are usually developed by a group of people spread across the globe. If you want to contribute to an open source project for a long period of time, you should also be mature enough to respect/help everyone (including the users). Remember the " Be Nice" rule (even when you are not at JavaRanch )
4) Being open source product does not mean that the quality of the product is bad. There are various open source products which provide great value as compared to commercial products. As such, the developers in open source projects also ensure that anyone who wants to join the project, is competent enough to keep the quality high. What it means is, becoming a "commiter" in a quality open source project in most cases is not a one day activity. The best way to gain knowledge about how the product works is to get involved in the project's mailing list or forums. Even if you think, you may not be able to answer questions, visiting forums is the best thing to do since it gives you an idea about how the product is being used and also helps you understand how it is being developed. Slowly, you will start gaining enough knowledge to start helping others and also may be contributing to bug fixes or other similar things.
This is not the entire list, but this should atleast give you an idea about how to start.