Tender Is The Byte

Blog posts

Styling plots in base R graphics to match ggplot2 classic theme

May 9, 2021 | Updated:

The ggplot2 package makes some really nice looking plots. In this post, we give a step-by-step guide to styling plots, including moving the legend outside the plotting area, to match the ggplot2 classic theme using base R graphics.

Computational lab notebooks using git and git-annex

May 7, 2021 | Updated:

Managing a computational lab notebook can be tricky. Here I discuss a workflow and command line app for helping you to set up and manage your lab notebook with git and git-annex.

divnet-rs: A Rust implementation for DivNet

Jan 18, 2021

DivNet is an R package for estimating diversity when taxa occur in an ecological network. Here I talk about why you may want to use DivNet, introduce my Rust implementation of the algorithm, and compare its performance to the original R package.

A simple dashboard for COVID-19 case counts

Dec 30, 2020

Introducing the COVID-19 dashboard I made to compare case counts across U.S. counties.

Virome Bytes: Microdiversity of Mediterranean Sea Viruses

Feb 29, 2020

In today's edition of Virome Bytes, Amelia Harrison discusses a paper looking at the microdiversity of Mediterranean Sea viruses!

Beginning Bioinformatics: What's a terminal? What's the command line?

Dec 15, 2019

If you're new to bioinformatics and just getting started, you're going to need to learn a lot of background info before you can really get started analyzing your data. In this post, we go back to the basics talking about terminals and the command line.

Using Sass in Clojure Ring apps

Dec 12, 2019

So you want to use Sass instead of plain CSS in your Clojure Ring web app, but you're not sure how to get it set up? No problem! Let's walk through it together.

Virome Bytes: Prophages in Lactobacillus

Nov 25, 2019

In today's edition of Virome Bytes, I talk about a couple of new papers looking at prophages in Lactobacillus!

Notes from the Messyverse: How to tidy nested lists in R

Nov 2, 2019

You've got nested lists in R. In fact, you've got lists of nested lists, but ggplot wants data frames or tibbles. Have no fear, this post will show you how to tidy up your nested lists by converting them to data frames!

Making charts with ClojureScript, Reagent, and React-vis

Oct 9, 2019

An introduction to making sweet charts with ClojureScript, Reagent, and React-Vis!

Spell Checking in Emacs

Jun 9, 2019 | Updated:

Super simple guide to setting up spell checking in Emacs.

Running MMseqs2 on CPUs with SSE4.1 or AVX2 instruction sets

May 21, 2019

MMseqs2, a program for searching and clustering proteins, requires a CPU with either AVX2 or SSE4.1 to run. In this post, we walk through writing a script to automatically determine the instruction set on your computer and run the correct version of MMseqs2.

Learn Rust: Parsing command line arguments with StructOpt

May 8, 2019

A beginners guide to using StructOpt for parsing command line arguments.

Rotating axis labels in R plots

Apr 25, 2019 | Updated:

A detailed look at how to rotate axis labels in base R plots.


COVID-19 Dashboard

Track and compare COVID-19 confirmed cases across US counties.

Exploring MGS Bias

Bias affects observed MGS composition. Check out this app to learn more!

R Packages Included in Rocker Version-Stable Docker Images

Rocker version-stable Docker images come preloaded with a variety of R packages. Check out this app to explore which packages are included in the various Rocker images.