We are welcoming every kind of contribution. Here are a few ways to contribute to Brian. You might also want to have a look at our developers mailing list.
Publish your code
The simplest way to contribute is to publish the code you used for your articles in a public database (for example, ModelDB). It increases the impact of your work and it is useful for the community. You can cite our introductory paper: Goodman DF and Brette R (2008) Brian: a simulator for spiking neural networks in Python. Front. Neuroinform. doi:10.3389/neuro.11.005.2008. We would be glad if you sent us an email when you publish Brian code.
Contribute to Brian’s library
Brian includes a model library, and we hope to include users contributions. For example, the library currently includes a number of integrate-and-fire models and models of synaptic currents. We would like to have for example more models of ionic channels. If you wrote some code that you think would be useful for other users, we can include it in the next release (check the existing files for style conventions).
Send bug reports
If something is wrong, you can file a bug report on the trac page, and you can also attach files.
Help other users
If you are comfortable with Brian, you could help other users on the forums. If you solved a non-trivial problem, such as installing Brian on an iPhone, you could also post a message in the forums to explain how you did it.
Contribute to external libraries
If you want to contribute code that is not specific to Brian, you could consider contributing to one of the packages that Brian is using or might be using in the future:
- Scipy: the main scientific package
- Pylab: the main package for graphics
- Sympy: symbolic computation
- PyNN: a Python interface to several simulators
- Neurotools: miscellaneous Python tools to analyse simulation results (works with PyNN)
Join the project
We are seeking collaborators to join the Brian project.
Tell us what you would like to see in Brian
Help us prioritize the future features by telling us what is most important to you (e.g. parallel computing, plasticity, compartmental modelling…).