If you're looking for something to do, read up on the relevant documentation, then try to understand any of our existing code. Subscribe to the reefknot-devel mailing list and watch for a while. Or, if you're feeling adventurous, delurk and tell us what you're interested in working on. We'll be happy to help you find something to do.
If you're looking for somewhere easy to start, read the POD documentation and see if it makes sense to you. If it doesn't, write better documentation and send us a patch. We'll appreciate you for it. Special karma goes to people who look in Net-ICal/t and write more unit tests and regression tests for the modules we have. You can also look at pretty much any TODO file and do something from that list.
If you come up with a new feature or a correction to existing code or documentation, feel free to send reefknot-devel a patch against CVS by using cvs diff -u. We like unified diffs because they're easier to read. Please give a good, detailed description of what your patch does if you want it to be accepted.
Reefknot uses a voting system for patch approval. Any major patch has to be approved by 3 developers with CVS access. Major patches are anything that breaks an API. Patches from non-CVS developers also use the same approval process. Possible votes from CVS developers are:
When a patch gets three +1 votes, the CVS developer who suggested it can commit it, or a CVS developer will commit patches from non-CVS developers. If any CVS developer votes -1, the patch won't be accepted. If you vote -1, you should explain your reasons so that the patch author can rewrite and resubmit a better patch.