Blog Articles 41–45

The Tenure-Killer

I must not fear.
Fear is the mind-killer.
Fear is the little-death that brings denial of tenure.

— Litany Against Fear, from Dune by Frank Herbert, adapted by yours truly.

There are a a couple pieces of advice, or rather a piece of advice and a short manifesto, that have stuck with me throughout my academic career.

The first was given at orientation when I began grad school, I believe by Loren Terveen. He said, about selecting an adviser, that “who you work with is more important than what you work on”. To this day I believe this is completely true.

The second is from Matt Might, in his article HOTWO: Get tenure, which I read in my first year as a tenure-track professor:

Travel and Talks — Belgium and the Netherlands

I’m travelling next week to Belgium and the Netherlands, and have several talks scheduled; I’d love to see you at one of them.

These last three talks will be variants of my Recommending for People talk, updated from the version I gave at Albany if you want a preview.

If you are in one of these general areas and would like to connect while I am in town — drop me a line.

Dynamic Dispatch is Control Flow

In 2010, I saw a tweet that changed how I think about programming. I do not remember who tweeted it, and I have been unable to locate it again, but its gist was “The Tao of OOP is that dynamic dispatch is control flow”.

This is true, and it creates an entirely different way of thinking about designing objects. I also find it applies somewhat to functional programming.

Let’s start with a small, contrived example:

if (shape.isFilled()) {
} else {


My productivity system is working fairly well at a few levels: I feel like my day-to-day and weekly tactical planning are in good shape, as well as my pipeline management and some medium-term planning. However, there are a couple of notable holes that I’m still looking to fill.