How to learn from open source projects
Students ask this question frequently steps or methodology to learn from open source projects. There is no single answer or steps available. I listed the steps which i follow and i hope this will help for few.
Consider a java programmer wants to access database via ORM tools like Hibernate. In this case pick any open source projects which use database. The choice could be content management system or forum software. Among that pick Java projects and see which all use Hibernate to connect to database. Shortlist one or two and download their source. Search the source for hibernate related keywords. Most of the projects are object oriented and only one or two class will be responsible to access it to the database. Pick the class and learn the code. Reuse if possible.
If you want to learn anything related to generating charts, then pick projects related to reporting and analyze its source. If you want to learn any PHP based framework, then pick a CMS project which uses that.
Again this is should be a one time task. If you search, when there is a urgent requirement then you will waste more time in searching projects. This should be a like a habit, learn about one open source projects once a day or a week. Read their site and learn their design. What all the components they use to build their projects. Download the source and peep in to the lib directory to get the list of dependency. There are many small libraries which could make our life easier. Bookmark it and use whenever required.
Please feel to add your comments and write how would you learn.