bioRxiv Science⌕ Search

bioRxiv · 10.1101/321919

A large-scale analysis of bioinformatics code on GitHub

Abstract

In recent years, the explosion of genomic data and bioinformatic tools has been accompanied by a growing conversation around reproducibility of results and usability of software. However, the actual state of the body of bioinformatics software remains largely unknown. The purpose of this paper is to investigate the state of source code in the bioinformatics community, specifically looking at relationships between code properties, development activity, developer communities, and software impact. To investigate these issues, we curated a list of 1,720 bioinformatics repositories on GitHub through their mention in peer-reviewed bioinformatics articles. Additionally, we included 23 high-profile repositories identified by their popularity in an online bioinformatics forum. We analyzed repository metadata, source code, development activity, and team dynamics using data made available publicly through the GitHub API, as well as article metadata. We found key relationships within our dataset, including: certain scientific topics are associated with more active code development and higher community interest in the repository; most of the code in the main dataset is written in dynamically typed languages, while most of the code in the high-profile set is statically typed; developer team size is associated with community engagement and high-profile repositories have larger teams; the proportion of female contributors decreases for high-profile repositories and with seniority level in author lists; and, multiple measures of project impact are associated with the simple variable of whether the code was modified at all after paper publication. In addition to providing the first large-scale analysis of bioinformatics code to our knowledge, our work will enable future analysis through publicly available data, code, and methods. Code to generate the dataset and reproduce the analysis is provided under the MIT license at https://github.com/pamelarussell/githubbioinformatics. Data are available at https://doi.org/10.17605/OSF.IO/UWHX8.\n\nAuthor summaryWe present, to our knowledge, the first large-scale analysis of bioinformatics source code. The purpose of our work is to contribute data to the growing conversation in the bioinformatics community around reproducibility, code quality, and software usability. We analyze a large collection of bioinformatics software projects, identifying relationships between code properties, development activity, developer communities, and software impact. Throughout the work, we compare the large set of projects to a small set of highly popular bioinformatics tools, highlighting features associated with high-profile projects. We make our data and code publicly available to enable others to build upon our analysis or generate new datasets. The significance of our work is to (1) contribute a large base of knowledge to the bioinformatics community about the state of their software, (2) contribute tools and resources enabling the community to conduct their own analyses, and (3) demonstrate that it is possible to systematically analyze large volumes of bioinformatics code. This work and the provided resources will enable a more effective, data-driven conversation around software practices in the bioinformatics community.

Source connections

Explore related subjects

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Russell, P. H., Johnson, R. L., Ananthan, S., Harnke, B., Carlson, N. E.. 2018-05-14. A large-scale analysis of bioinformatics code on GitHub. https://doi.org/10.1101/321919

Cite the original work for its findings. Save a collection to share your selection of sources.

KEEP EXPLORING

Related preprints

Transcript quantification using context-aware MAPQ modeling

Long-read RNA-sequencing enables accurate transcript-level quantification, but prior static filtering of MAPping Quality (MAPQ) can ignore transcriptome-intrinsic ambiguity, and discarding reads on this basis distorts abundance estimates. We present CALMeR (Context-Aware Long-read MAPQ-based Rescuer), which conditions MAPQ filtering on transcript properties rather than a fixed cutoff. CALMeR fits a zero-one inflated beta regression on various transcript and read-level features to model the expected MAPQ distribution for each alignment. Reads whose MAPQ fits this context, such as low-MAPQ reads from multi-isoform genes and paralog families are retained; reads with anomalously low MAPQ are removed as likely artifacts. Retained reads can be summed per transcript or passed to any downstream quantifier. Compared with a MAPQ [≥] 1 filter and expectation-maximization-based transcript quantification methods, CALMeR recovers more spike-in transcripts and better matches known spike-in concentrations. CALMeR is available at https://github.com/sparthib/CALMeR.

bioinformatics↗

Structure-resolved fold annotation of the medicinal-leech salivary-EV cargo: a Ly-6/uPAR three-finger scaffold and a structurally dark fraction

Many proteins that medicinal leeches package into salivary extracellular vesicles (EVs) carry no interpretable sequence annotation, so the least-characterised part of a pharmacologically important secretome lacks even a fold assignment. A companion Astral-DIA study of Hirudinaria manillensis nominated 17 ultra-enriched candidate EV cargo proteins. Here we ask whether structure prediction and structural search can assign folds where sequence methods fail, and which candidates remain unresolved under prespecified criteria. With an offline pipeline (ESMFold, TM-align, Foldseek against AFDB-SwissProt and PDB100, UniRef90 search, protein-to-genome alignment), the candidates separate into intracellular/membrane machinery and a secreted, cysteine-dense fraction of three proteins with no Pfam domain. The predicted structure of the leech Protein-sleepless homolog g21166 supports its assignment to the Ly-6/uPAR three-finger fold (TM 0.58 vs CD59; best significant PDB match Lynx1); no function is inferred. g436 and g20791 returned no match meeting the criterion (alnTM [≥] 0.5, E [≤] 0.05) in either database, g436 even after homolog-informed modelling. Gene structure and splice junctions support a conserved locus for the two-Trypsin-segment model g8114 (catalytic unit not established). A Boltz-2 thrombin pilot did not support target engagement, and a pre-registered nicotinic test was terminated as undecidable. The results yield a structure-informed shortlist for experimental follow-up.

bioinformatics↗

EpiRank: partner-agnostic surface-patch retrieval for epitope prediction of protein binding interfaces

Structure-based interface predictors are normally reported as a single pooled ROC AUC over a residue test set. For a protein designer the operative question is different and much harder: given one target chain, will the top-ranked surface patch be a real binding site? We built EpiRank, a partner-agnostic epitope predictor, on HumanPPI 29,246 predicted human dimers, 12,296 target chains, 4.18 M residues using only single-chain geometry and physicochemistry (170 features, no partner, no sequence search, no structural alphabet), and evaluated it as a retrieval problem with homology- and partner-graph-controlled splits, on the 3,529 chains that survive an explicit partner-contamination filter. The model places a real epitope in its top-ranked patch 64 % of the time. That number is far less informative than it looks. Compact patches placed at random hit a real epitope 41 % of the time under the same rule, so the model's lift is 1.57 x, not 64 %; 54 % of all predicted patches land on nothing; and when the same chains are scored by models trained on a 2,000-chain and an 11,669-chain superset, a substantial fraction change answer while the aggregate barely moves. We document four specific ways this task invites overstatement partner-graph percolation across splits, single-linkage homology percolation at the conventional 30 % identity threshold, a count-only hit rule that rewards spatial smoothing rather than signal, and hotspot precision conditioned on success, which ranks a random baseline above the trained model. Each was hit during development and each inverted a conclusion we had already drawn. We argue that interface-prediction papers should report lift over a geometry-matched random baseline, patch precision, and per-target stability alongside AUC, and we release the evaluation harness that computes them.

bioinformatics↗