Or just use an open source library and, when you find a bug, report it and (try to) fix it. Pay attention to the coding style, write a test case that reproduces the bug, and send/submit the patches to the author.
As a library user, you'll have the incentive to have the bug fixed. You'll also know exactly how to reproduce it, which will help you to locate and fix it and write a test case.
Even if you never touch that project again, you will have (a) helped yourself, (b) helped the project and (c) learned something.
As a library user, you'll have the incentive to have the bug fixed. You'll also know exactly how to reproduce it, which will help you to locate and fix it and write a test case.
Even if you never touch that project again, you will have (a) helped yourself, (b) helped the project and (c) learned something.
See also: Write and Submit your first Linux kernel Patch (FOSDEM 2010 talk): http://archive.fosdem.org/2010/schedule/events/linuxkernelpa...