Open Source
Everybody is welcome to contribute with plugins, patches, bug reports, tutorials, documentation, and artwork.
The SciJava ecosystem is strongly committed to open-source software development. This software is not an open source software product—it is an open-source software project following an open-source development process. There are public source code repositories, public communication channels, public project management resources, and of course, this community editable website. See the Philosophy page for more information.
Why open source?
One core principle of the scientific method is repeatability: the ability to continually retest and refine hypotheses. As computer software plays an increasingly large role in science, it is vital that that software be fully transparent and available to researchers: software is simply too complex to be easily reproduced from scratch by every research group. In contrast, closed source software presents a barrier to open research, because the implementation details of algorithms cannot be freely modified or even necessarily verified.
The Science Code Manifesto provides a clear and succinct list of five principles surrounding scientific software. There have also been a number of publications in recent years discussing these issues and ideas:
- Ten Simple Rules for the Open Development of Scientific Software (PLOS Computational Biology, Dec 2012)
- A call for bioimaging software usability (Nature Methods, Jun 2012)
- Current challenges in open-source bioimage informatics (Nature Methods, Jun 2012)
- Publish your computer code: it is good enough (Nature, Oct 2010)
- Metadata matters: access to image data in the real world (Journal of Cell Biology, May 2010)
Further, we strive for ImageJ to be a community driven project. It is not merely an open source product, but an open source process. ImageJ follows open development practices, and provides open development tools online:
- Public source code repositories including complete development history.
- Public issue trackers.
- Public communication channels for open discussion.
- Public wiki for community contributed content.
- Travis CI, ImageJ's public continuous integration system.
- Public Maven repository for ImageJ binaries.
Using these resources, you can always observe the latest progress of the project, get an idea of where the project is heading, contribute code to the project yourself using GitHub, or write documentation, tutorials and other information on the wiki.
See also LOCI's Open Source in Science article.