Converting ACTUAL commandline tools to Docker

The Problem

So Docker is a thing, and when it works, it is magical – the power to run your code on any system regardless of host operating system, system dependencies, etc. The problem is getting ones software to the point where it is containerized properly and usable. There are some guides about how to do this, but most are about how to deploy your webapp with docker. I, being a bioinformatician, am interested in processing files, not serving a webapp, and this sort of conflicts with the point of Docker. Docker tries very hard to ensure that your docker application can only do what you tell it, and cannot effect the host operating system. This is great, until you want to, say, write an output file to your host operating system.

Abusing Argparse Namespaces in Python

Background

This is my first openly controversion post, as far as I know. I have hestiated to post about it, or to tell my supervisors about it, because on some level, it is embarrassing. This came about when I first went about tring to write some unittest some argument handling for a series of python modules I wrote. I found that the most popular command-line parsing package, argparse, uses a particular type of structure to store what gets set from the commandline: Namespaces. Importantly, argparse is in the standard library.

Summary of adding a python package to conda

A few years ago, I tried out Anaconda for package management. I don’t know whether it was due to my inexperience, or if things have really changed since then, but I hated it. And I that meant I had tp spend a good amount of time trying to purge it from my system.

Gripes: Python's Multiprocessing Package

I am using python’s multiprocessing package for running parralel jobs from within python.