Psst! I've posted some details about my notebook setup here.

On genomic interval notation

Intervals are one of the most common data abstractions used in genome informatics, along with strings and graphs. DNA has an intricate dynamic three-dimensional structure, but for many bioinformatics applications we can get away with ignoring this level of detail and representing the molecule instead as a static linear sequence of symbols. Genomic features—such as genes or transposable elements ...

more…

My tutorial on git banches

I've been trying subtly (and in a few cases not-so-subtly) for years now to convert my colleagues to the gospel of git and GitHub. The git version control system has its quirks no doubt, but there is—in my opinion—no more powerful system for open collaboration on software and science than git and GitHub. A quote I attribute ...

more…

Building a decision tree chart with graphviz

Walking through the process of converting my pen-and-paper sketch of a decision tree into a computer graphic with graphviz.

more…

Formatting C code with clang-format

Found a nifty tool for enforcing formatting styles for C code.

more…

PEP8 and the Atom editor

I tried out the Atom text editor very soon after it came out. For some reason--whether a half-hearted attempt on my part, or the fact that Atom was an unrefined beta--I didn't love it. After only a day or two, I reverted to the Komodo Edit editor I had been comfortable with for several years.

Recently, I heard a ...

more…

Misconceptions about research software

I stumbled across the following question the other day in an email digest from Quora.

I have 5 years of working experience, but I still code very slow. How can I code faster? What should I learn?

Most of the responses don't answer the question directly, but instead make the point that speed is a very poor metric by ...

more…

Shell pipelines in Python

The UNIX shell is an indispensible tool for project organization and data management in bioinformatics. I spend a lot of time in the shell, and having picked up on a lot of time-saving techniques over the years it might just be my favorite computing environment.

The shell has its limitations, however. Piping, the very feature that gives the shell its ...

more…

Filter stderr while piping in UNIX

Permalink: 2015-12-14 by Daniel S. Standage in blog tags: shell

Nifty trick for filtering stderr in the middle of a shell pipeline.

more…

Consortium authors in EndNote

Today I was reformatting a manuscript and changing from a numbered citation style to an author/date citation style. In doing so, I found some issues with my EndNote references library that had gone unnoticed before since they were tucked away in the reference list. One of the issues involved citation of a paper with a single consortium author, designated ...

more…

New lab notebook setup: my motivation

Permalink: 2015-11-17 by Daniel S. Standage in blog tags: meta

My first research blog was a self-hosted Wordpress blog run from an Ubuntu server in our lab. I was initially enamored by the supposed control and flexibility this gave me, but when I changed institutions a year or so later I was not quite as enamored with the work that went into migrating the content, nor the time I spent ...

more…