Join, or align with, a community that is related to your software type or language. Their standards and guidelines will often help make your software findable and citable.
How?
Using a Nextflow computational workflow as an example, there are effectively three levels of community involvement:
- Just adopting Nextflow, as it is a popular and well maintained workflow language.
- Following community defined (i.e. nf-core) workflow development best practices.
- Joining the nf-core community and contributing a workflow directly to their existing maintained collection.
Examples
- R: Visit Bioconductor (Huber et al., 2015)
- Python: Visit the community page to learn more
- BioContainers (Da Veiga Leprevost et al., 2017)
- CWL: Visit this community effort focused on developing CWL workflows
- Galaxy Project: The Galaxy project has many communities that address software. The most prominent include:
- Intergalactic Utilities Commission (IUC): software
- Intergalactic Workflows Commission (IWC): computational workflows
- There are also many domain specific communities as well, including for example, microGalaxy community and Galaxy Proteomics (Galaxy-P) (Sheynkman et al., 2014).
- Nextflow: nf-core (Ewels et al., 2020) is a significant effort in this space, and there are talks, training and hackathons you can join. Check out their
join nf-core
page to find out how to get involved. - Snakemake (Mölder et al., 2021): Visit this community effort focused on developing Snakemake workflows and don’t forget to check the different ways you can get support.
Tip: Are you not sure which community to join? You could start by joining one of the many RSE societies that exist globally. These communities address many of the challenges faced by creators of research-centric software, including visibility of their contribution to research.
A selection of community guidelines and standards for software
Practice | IWC (Galaxy | nf-core (Nextflow) | Snakemake-workflows + guidelines + distribution & reproducibility | FAIR4RS (Barker et al., 2022) | ELIXIR SMP (Alves et al., 2021) |
---|---|---|---|---|---|
Automated testing | Yes | Yes | Yes | No | Yes |
Versioning | Yes | Yes | No | Yes | Yes |
Documentation | Yes | Yes | Yes | Yes | Yes |
Changelog | Yes | Yes | No | Yes | Yes |
Licence | Yes | Yes | Yes | Yes | Yes |
Repository layout | Yes | Yes | Yes | No | No |
Metadata (e.g., author) | Yes | No | No | Yes | Yes |
Coding style | No | Yes | No | No | No |
Containerization | No | Yes | No | No | Yes |
References
- Huber, W., Carey, V. J., Gentleman, R., Anders, S., Carlson, M., Carvalho, B. S., Bravo, H. C., Davis, S., Gatto, L., Girke, T., Gottardo, R., Hahne, F., Hansen, K. D., Irizarry, R. A., Lawrence, M., Love, M. I., MacDonald, J., Obenchain, V., Oleś, A. K., … Morgan, M. (2015). Orchestrating high-throughput genomic analysis with Bioconductor. Nature Methods, 12(2), 115–121. https://doi.org/10.1038/nmeth.3252
- Da Veiga Leprevost, F., Grüning, B. A., Alves Aflitos, S., Röst, H. L., Uszkoreit, J., Barsnes, H., Vaudel, M., Moreno, P., Gatto, L., Weber, J., Bai, M., Jimenez, R. C., Sachsenberg, T., Pfeuffer, J., Vera Alvarez, R., Griss, J., Nesvizhskii, A. I., & Perez-Riverol, Y. (2017). BioContainers: an open-source and community-driven framework for software standardization. Bioinformatics, 33(16), 2580–2582. https://doi.org/10.1093/bioinformatics/btx192
- Sheynkman, G. M., Johnson, J. E., Jagtap, P. D., Shortreed, M. R., Onsongo, G., Frey, B. L., Griffin, T. J., & Smith, L. M. (2014). Using Galaxy-P to leverage RNA-Seq for the discovery of novel protein variations. BMC Genomics, 15(1), 703. https://doi.org/10.1186/1471-2164-15-703
- Ewels, P. A., Peltzer, A., Fillinger, S., Patel, H., Alneberg, J., Wilm, A., Garcia, M. U., Di Tommaso, P., & Nahnsen, S. (2020). The nf-core framework for community-curated bioinformatics pipelines. Nature Biotechnology, 38(3), 276–278. https://doi.org/10.1038/s41587-020-0439-x
- Mölder, F., Jablonski, K. P., Letcher, B., Hall, M. B., Tomkins-Tinch, C. H., Sochat, V., Forster, J., Lee, S., Twardziok, S. O., Kanitz, A., Wilm, A., Holtgrewe, M., Rahmann, S., Nahnsen, S., & Köster, J. (2021). Sustainable data analysis with Snakemake. F1000Research, 10, 33. https://doi.org/10.12688/f1000research.29032.1
- Barker, M., Chue Hong, N. P., Katz, D. S., Lamprecht, A.-L., Martinez-Ortiz, C., Psomopoulos, F., Harrow, J., Castro, L. J., Gruenpeter, M., Martinez, P. A., & Honeyman, T. (2022). Introducing the FAIR Principles for research software. Scientific Data, 9(1), 622. https://doi.org/10.1038/s41597-022-01710-x
- Alves, R., Bampalikis, D., Castro, L. J., Fernández, J. M., Harrow, J., Kuzak, M., Martin, E., Psomopoulos, F. E., & Via, A. (2021). ELIXIR Software Management Plan for Life Sciences [Preprint]. BioHackrXiv. https://doi.org/10.37044/osf.io/k8znb
Page resources
Skip tool tableResource | Description | Page(s) | Links to related information |
---|---|---|---|
Bioconductor | Packages for software, annotations, data, workflows etc. Mainly written in R.
|
Register Join or align with a c... | FAIRsharing |
BioContainers | An infrastructure that provides guidelines and processes to support the creation, management and distribution of bioinformatics containers.
|
Register Join or align with a c... | bio.tools |
CWL | Common Workflow Language (CWL).
|
Join or align with a c... | Community |
Galaxy Project |
|
Have an ORCID Join or align with a c... | bio.tools Training |
Galaxy Proteomics (Galaxy-P) | A community focused on the use of Galaxy for proteomics.
|
Join or align with a c... | |
Intergalactic Utilities Commission (IUC) | A community effort to create, test and share high quality Galaxy tool wrappers.
|
Join or align with a c... | Documentation or Guide |
Intergalactic Workflows Commission (IWC) | A community effort to create, test and share high quality Galaxy workflows.
|
Have publicly accessib... Join or align with a c... | |
microGalaxy community | A community focused on the use of Galaxy for microbial data analysis.
|
Join or align with a c... | |
Nextflow | Workflow management system.
|
Join or align with a c... | Community |
nf-core | Community effort focused on developing Nextflow workflows.
|
Select a suitable licence Join or align with a c... | |
Python | Python programming language.
|
Join or align with a c... | Community |
R | R programming language.
|
Join or align with a c... | bio.tools |
Snakemake | Workflow management system.
|
Select a suitable licence Join or align with a c... | Community |