← Back to list

Tech conference experience + Genomics tech stack

I attended my first technical conference in August 2026. It was PyConAU26, and I was lucky that it was in my city and I was aware of it. I…

Halimat Chisom · 2026-08-31 03:56 · 0 claps · 5.4 min read
#bioinformatics #bioinformatics-analysis #tech-conference #research-software #bioinformatics-tools
Open on Medium ↗
Wiki topics: BIN · Bioinformatics GEN · Genomics & Sequencing

Tech conference experience + Genomics tech stack

Some sessions attended at PyconAU26 & RSAA26

Some sessions attended at PyconAU26 & RSAA26

I attended my first technical conference in August 2026. It was PyConAU26, and I was lucky that it was in my city and I was aware of it. I also attended RSEAA26 (for research software engineers), which happened on the same days; yes, I know you cannot be in multiple places at once, and thankfully, RSEAA26 was fully online.

There is a unique feeling you get when you are certain you belong somewhere, and as humans, we are very in tune with that feeling because we love to belong. Sometimes. I got that feeling at PyConAU26, and I am very glad I chose to attend. It was awesome to be part of the jokes, to listen to talks on documentation strategies (which, as you would expect, made me very happy). I also enjoyed talks that introduced me to alternative data types (pydantic), the ethics of caring for software, how and why to cite research software, and plenty of others.

At RSEAA26, strangely, my favourite session was a workshop on the (lack of) diversity, equity, and inclusion in hiring processes and how to include it. Even though I am not hiring, it certainly gave me a perspective on what it looks like when organisations are genuinely trying, and on how to make it easy for them to determine whether I am the right fit on a holistic level. Also, contrary to what one might expect at a tech conference, the conversations around AI were very objective, critical, and unamazed. And very helpful.

There was also a talk on reproducibility and sustainable science that sat with me. I did not get the idea for this piece from it, but I certainly got the encouragement to write it. What you’re about to read is a form of documentation that briefly describes every package I leaned on over the course of my PhD, including my role as a research assistant. On the one hand, I want a tangible list of the breadth of my hands-on experience in genomics software development so far. On the other, I want to acknowledge the giants on whose shoulders I stand. I will not mention every single package, but I will name the most used and the ones that did some real heavy lifting.

Command line and file management

Samtools — for sequence file analysis, viewing, and merging. The everyday “MacGyver” for BAM files: sorting, indexing, filtering, pulling out regions, checking flags. If I spent an hour on the command line, samtools was probably in at least half of it. Side note, I have no idea why I thought of MacGyver while editing this.

Bcftools — the VCF counterpart to samtools, used mostly when I needed to merge variant files or subset them by region or filter.

Bedtools — mostly for intersecting genomic coordinate files to see exactly what they shared, for instance, when I wanted to check whether two tools or two approaches were finding the same regions. I also used its jaccard function, which gives a numerical score of how similar two coordinate files are, which was useful when “do they overlap” was not a specific enough question. Not-so-fun fact: A few times, I would’ve attempted using Python and then remembered somewhere in the middle that bedtools exist for a reason.

Wget — for downloading files directly from databases. Not glamorous, but I did a fair bit of downloads for my project, so it deserves a mention.

Nano — my go-to text editor on the HPC. Not the fanciest choice, but I’ll argue it’s easier to use than vi/vim. This preference might also be a familiarity bias because it was my first text editor.

Git — for version control across every project I touched. The reason my thesis code has a history I can walk backwards through.

Variant and methylation calling

Sniffles — structural variant calling from long-read sequencing. There are others, and I know there is this unwritten (maybe written) rule that with new tools and new tech, even older ones sometimes, it’s best to try multiple and trust the outputs they have in common, but I didn’t do that. That decision was mostly driven by the fact that my analyses don’t work if a variant is false, so I guess, if I missed anything, it would be true variants that the SV caller missed.

ClairS — for single-nucleotide variant calling from long-read sequencing. (Similar comment as above).

ONT-Spectre — for CNV calling from nanopore sequence data. Thanks to reviewer 1.

DSS — an R/Bioconductor package for identifying differentially methylated sites and regions. This is what I used to call haplotype- and sample-specific DMRs for my training-set construction, so it was central to the truth-set piece I wrote earlier.

Parsing, annotation, and coordinate wrangling

Pysam — for sequence and variant file parsing. The library that did the heaviest lifting in my tool. Almost every read-level operation, every tag access, every walk through a CIGAR string went through pysam. I have written about this in more detail in the piece about BAM and VCF in production bioinformatics.

cyvcf2 — another VCF parser. In some cases, easier to manipulate than pysam, particularly when I just needed to iterate through variants quickly without also touching the alignment side. I used both, choosing whichever felt cleaner for the specific job.

bx-python — for interval and intersection management in biological datasets that are often more complex than a typical dataframe can handle cleanly. Useful when I needed to reason about overlapping genomic ranges programmatically rather than shelling out to bedtools.

SnpEff — to annotate variants, and separately for liftover of annotations from hg38 to hs1 for a side project that used the new reference genome.

dNdScv — an R/Bioconductor package for detecting cancer driver genes via dN/dS ratio analysis. Used during the research assistant work rather than the core thesis pipeline.

Python data and scientific stack

NumPy — mostly for creating and managing arrays when splitting sequence data into the small pieces I needed to get down to the atomic level of information the model consumed.

Pandas — for creating my output table structure and for the routine dataframe manipulation that sits between analysis and reporting.

SciPy and statsmodels — for the statistical features I added to the tool to support the interpretability of model predictions.

scikit-learn — for model metrics: accuracy, F1, precision, recall, ROC/AUC. The evaluation layer sitting on top of the PyTorch model.

Matplotlib — the visualisation package I used most, primarily to create the image conversions from sequence data that I used to train my model.

PIL (Pillow) — for managing, editing, and formatting the images that fed into model training.

collections.defaultdict — technically part of the Python standard library rather than an external package, but worth naming because it did a real amount of work managing complex nested dictionaries when I was aggregating read-level information keyed by variant and position.

argparse — for managing command-line arguments. Central to making the tool actually usable by anyone other than me.

logging — the standard library module. For progress reporting and status updates, as the scripts and the software ran. Boring, but essential, especially for abrupt crashes. Also, it’s pretty similar to using print statements, but it feels more sophisticated for sure.

Deep learning

PyTorch — the deep learning framework I chose to build the CNN. I found it easier than Keras, and I honestly cannot fully articulate why.

Visualisation and documentation

Methylartist & IGV — for visualising differential methylation at the read level. My go-to for the manual inspection steps I described in the truth-set piece. They let me colour/group reads by methylation state and eyeball whether a called association actually held up. I also contributed to its documentation via Sphinx.

Sphinx — for building ReadTheDocs-style documentation. I created the first version of the methylartist docs with it, though the package has evolved enough since, and the docs need updating.

Interesting. In my head, I thought the list would be much longer than this. Writing it out puts things in perspective.

In conclusion, no lessons here, unless you were looking for a package I just highlighted, in which case, you’re welcome. Also, attend tech conferences; they’re good for the soul.


메타데이터
post_id
eecbe856ed9b
slug
tech-conference-genomics-tech-stack-eecbe856ed9b
url
https://medium.com/@gearthdexter/tech-conference-genomics-tech-stack-eecbe856ed9b
canonical_url
https://medium.com/@gearthdexter/tech-conference-genomics-tech-stack-eecbe856ed9b
author_url
https://medium.com/@gearthdexter
status
ok
fetched_at
2026-09-04 13:54:51