contributing to mlpack
mlpack is an open-source project, so anyone is welcome to become a part of the community and contribute. There is no need to be a machine learning expert to participate—often, there are many tasks to be done that don't require in-depth knowledge.
mlpack also participates in Google Summer of Code; for more information on that, see this page.
A good place to start is to download mlpack, compile it from source (tutorial), and set up a development environment. Once you've done this, it would probably be useful to get a feel for some of the algorithms mlpack implements by using some of the command-line programs (man pages) or Python bindings (documentation) to perform some machine learning tasks.
At this point, you're probably ready to jump in and start contributing. Development is done on Github, so you'll need an account there, and you can submit patches or contributions via pull requests. Below are some useful links and tips:
- You can find a bug to solve on the issues list. Issues (generally) have a difficulty label, which may help in selecting an issue that is interesting to you.
- Read the design guidelines to get insight on how to structure your contributions and to learn what your code should look like when you submit it.
- Subscribe to the mlpack discussion mailing list to receive (or send) emails about mlpack.
- You may find it useful to subscribe to the mlpack-git mailing list to receive updates on git commits and Github issues (warning: can be high-traffic).
- We maintain a development blog where you can read about the progress of Google Summer of Code projects and other updates.
- The #mlpack IRC channel on freenode (webchat, channel logs) is a good place to ask for help or discuss mlpack with other members of the community.
- Are you interested in a more long-term project? See the list of ideas we maintain for Google Summer of Code, and maybe that can provide a good starting point.
Still not sure, or have some questions? Get in touch via IRC, the mailing list, or any other way.