I use Anaconda managing my computational software environments. Here are some pragmatic tips for making conda environments easier to deal with.
Dependencies are complicated for computational biologists. Adapting a different development strategy can help your end users.
Here is a reason why I like the Rust language and community, but also why developers may not like them.
Relying on first hand evidence is important for building an argument. Here I discuss how citation limits in journals may entice readers to read the review papers and not the original articles, but that doing this diligent work is important for research.
This blog post is an experiment in running the web monetization protocol on this blog. If you don't have web monetization enabled in your browser, you won't see the contents of this post.
Scientific writing is about communication. Colour is an effective visual communication tool, but tough to use well in scientific figures. Here are some notes on how to do it well, what tools to use, and what examples to use as inspiration.
Emacs is a text editor that has a lot of history and a lot of functionality. Because of its history and the philosophy behind it, it can be hard to find the "right" way to do anything with it. In this post, I want to compile some information that I've found over time, and things that have worked for me.
The PATH environment variable is key for getting software to run on your computer. Sometimes you have to edit it by hand for your development purposes. Here is a tool to make that process a little more sane.
Command line utilities are great. Here are a few of my favourites.
I took many notes throughout my undergraduate degree in mathematical physics at the University of Waterloo. Once I finished my last exam, I decided to digitize all of my notes and discarding the physical copies. Below, you can find all my notes from all of my classes at the time.