The idea here, cribbed from Bryan Cantrill’s talk on oral traditions in software development, is the importance of making as clear as possible your intentions when you do things. Often I feel as though intention gets a bad rap. The road to hell, and what-not. But the reality is that, if you are doing something, it is best to do it with intention. God help us the things we do impulsively or emotionally. Sometimes they work out alright, but it’s usually best to go back and see if we can learn why it happened. That’s still applicable when doing things intentionally, but because there was forethought, we are already a step ahead.

Of course, what this really means is that we also need to make sure we document our intentions. This is where we come back to Bryan’s talk. It’s not enough to solve a problem, or build a product. You have to document the process that got you there. In software, you leave your intentions via comments, documentation, blog posts, podcasts, talks, or just conversations with co-workers and friends. But one way or another, you should document what you set out to do and whether you accomplished it. In the absence of this, we are really just throwing darts. I’d wager dollars to donuts that few significant works were created by throwing darts.

I’m currently reading the book Sing, Unburied, Sing by Jesymn Ward. The most disturbing aspect of one of the characters in Ward’s brilliant story is the complete lack of intention in her actions. Her internal governor appears to be fueled entirely by impulse and emotion, leaving those around her hurt, confused, angry and afraid. When humans act without intention, the results tend to appear brutally selfish, even if the underlying logic is not. When we impulsively shoot off an email, we have, by definition, not given it any thought. The repercussions of such an action are hard to understand.

Thus, while the road to hell may indeed be paved with good intentions, it’s probably better than the road that’s paved with impulsive and emotional outbursts.