There are many ways to contribute.
One of the most important aspects reflecting the quality of an open source project is the availability of high quality documentation. You can help the DocTeam improve documentation and even help to write new documentation.
Like good documentation, code quality is an essential ingredient for success. The Core team is dedicated to making sure high priority bugs are fixed, and we need your help to get an accurate account of oustanding issues.
If you run across an issue with the software release or documentation, or this site, do the following:
While we're making the effort to deliver the most important functionality in CCNx, there are many things that need improvement. Please file a feature request for thing you particularly notice missing. Review our Bug Filing Guidelines, and then proceed to file your request.
As you start to learn about CCNx, you will find that we've only scratched the surface on what can be done. In order to leverage the expertise of the community, we offer this site as a great place to start your CCNx project, to organize your project team, socialize the project, and get support from the community. Creating a project is simple. From the navigation menu, select Create Content->Project Group. Once you've created a project, you can add members to the project, configure the project settings, and start adding new Project Pages. Feel free to upload your important project documents, and share these with the project members as well. Of course, if you need to keep aspects of your project private, you can do this. For hosting any source code, we strongly recommend GitHub, BitBucket, or Google Code (if you must use Subversion).
Another way you can get involved is to help others. A successful Open Source community needs a strong group of domain experts who can help fill in the resource gaps by answering questions and sharing wisdom about the project. While the Core Team will do this as well, it can be a huge way to help provide rapid response to user and developer related questions. As this is a community, we'd ask you review the CCNx Community Principles. Ultimately, mailing lists provide the first level of support for an Open Source project after the docs or the code has failed. Sure, users don't always have a handle key concepts, or haven't read the docs, but we'd like encourage questions with thoughtful answers. No flames or throwing the manual at users. Also, works for me doesn't work as an answer. Usually there is a deeper issue, usually with the environment, but if we can identify new bugs, we'd like to drill down into every problem we find so we can improve the project.
One way to support the CCNx project is to help spread the word. Have something interesting to say about CCNx? Having problems with the latest build? Want to tell people about something interesting you are doing with CCNx? Tweet it. When doing so, use the #ccnx hash tag with your tweets. This helps contextual search and increases the visibility of your posts.
Come across an interesting tweet about Project CCNx? Re-tweet it.
We encourage contributions to the source code, and we are developing a contributor agreement to assure that contributed code may be redistributed consistent with the open source licenses used in Project CCNx.
Ready to sharpen your teeth on some juicy bugs? Have at it. While The Core Dev team won't be allowing write access to the code repository, we will accept patches from the comunity. If you'd like to pick up a bug, we suggest you do the following:
Perhaps you have a feature enhancement that you would like to contribute. As in the case of bug fixes, we ask that you join the mailing list and participate in discussion of potential features before doing a lot of work. You can submit a patch for consideration by the Core Development team. See the Guide To Creating A Patch (Coming Soon) for more information.
If you've been working with the code and feel comfortable with providing your own enhancements, perhaps you'd like to get involved with Core Development. Generally speaking, the Core Development team is made up of individuals who meet one or more of the following criteria:
It may seem like we're asking for a lot, but realistically, it is difficult to jump into any project and get up to speed developing using the technology, much less enhancing existing features. We'd like to encourage everyone who wants to get involved in core development to start with bug fixes, writing docs, submitting a conference paper, or sharing your work by creating a new project under the CCNx.org website.