Strings, OsStrings, and PathBufs in Rust

In Rust, I have always had trouble dealing with paths and how they differ from strings. Here, I want to break down how these types are related to each other, why they're different, and how to convert between them.

Notes, tasks, and planning with Org mode

This post is about Org mode, an exemplary Emacs package, and why I think so many people love this piece of software.

Illumina flow cell teardown

For many computational biologists, their work starts with sequencing data. But that data obviously doesn't appear out of nowhere. To bring that side of molecular biology a bit closer to home, I got my hands on an old flow cell and take it apart to see what it's made of.

Is your null hypothesis, or your model, more likely to be rejected?

Science and statistics are hard. There are lots of reasons that can make things go wrong, and it's important to remember that when looking at p-values and hypothesis tests.

Running Linux GUI applications on Windows

This post is a walkthrough of how to get these Linux GUI applications running on Windows using the Windows Subsystem for Linux.

"Buying" music sucks

My friend, Finn M-K, makes music for a living. I wanted to buy his most recent album and keep the MP3 files. The process was miserable and the easiest route was to pirate it. This is not a sustainable ecosystem for musicians.

Understanding file permissions

Here is a brief rundown of file permissions on Unix systems and how to change them.

General purpose Anaconda tips

I use Anaconda managing my computational software environments. Here are some pragmatic tips for making conda environments easier to deal with.

A solution to dependency hell: static binaries by default

Dependencies are complicated for computational biologists. Adapting a different development strategy can help your end users.

Why I like Rust - and why it's annoying

Here is a reason why I like the Rust language and community, but also why developers may not like them.


See all blog posts