Illustration by Jason Crane.
My new Yak Shaving Expert t-shirt is fitting, and not only because it's the right size. For instance, today I wanted to start backing up my email, so I found offlineimap to my taste, so I went to pkgsrc to install it and saw that we're a couple releases behind, so I updated the package. Sometimes it turns out that in order to do what you want, it's necessary that you first go shave a yak. Maybe I'll get to try backing up my email tomorrow.
In software development, it's pleasing when any desired change proves easy to make. When a change proves prohibitively difficult, we have to decide what to do: either to stop wanting it, or to want it anyway. In neither case will we be able to know the full cost of our decision. But our choice can and should be informed by our need for predictable cost of delivery in the future and our willingness to delay gratification in the present. It's sort of like insurance. If over our product's lifetime we need to minimize the frequency with which we have to stop everything and shave an entire yak, then we know the discipline required.
I've felt mildly and persistently overwhelmed since the great server crash of late 2008. First I had time to deal with the fallout, but no money; then money, but no time. Not having all my personal data organized and available has meant that for any given task, I've learned to assume I can't just go and do it; instead, I'll have to first figure out what I need, then go digging to find it all. Then, and only then, can I hope to complete the task. So the act of getting started has been harder than usual, the list of tasks has grown large, the cycle has been self-sustaining, and the effect of five years of this drip-drip-drip on my cognitive capacity has been noticeable, at least to me.
My personal yaks have finally come home to roost. (Yes, they've evolved the ability to roost.) I have money, time, grand ideas, and some clippers. Where to start? A few weeks ago I guessed I'd want to answer that only after refining my enormous backlog a bit. Now I think whichever item I feel like doing next is what I'll do next. Why try to impose an ordering, when I know full well it's yaks all the way down?