Pea Cool Yar

In one point in this here writing endeavour, I noted that it would certainly demonstrate my Peculiar Perspective. Occasionally I become aware of some particular behavior in myself that really emphasizes that peculiarity, and I feel obliged to share it with you.

We have family coming to town in the next few days, and that means big clean-up plans around the hacienda. So, naturally, rather than just starting to work, I sat down at the computer and downloaded Graphviz. There is, of course, an explanation: I really felt motivated to chart out my assignments. Seriously. It seemed obvious to me that there was a certain order in which the tasks should be done, taking account of the weather, the need to purchase supplies, the benefits of minimizing travel, the varied areas needing work (deck, dock, garage, yard, trail, etc.) and other interactions.

Graphviz is a tool that turns an ordered text list into a graphical representation. It was created by some geniuses in AT&T Labs, and is now available by open source license. I’ve used it for work, but never at home. Fortunately, there’s a Mac OS X version, which kept me from having to buy another computer. (Just kidding. I think.)

I used Graphviz for the first time quite a few years ago. Since then, as open source projects tend to do, it has grown to have many more cool capabilities than I’ll ever use, but my humble domestic requirements were met by its basic functions.

I simply fed it this set of relationships (FYI, digraph is short for “directed graph”, meaning the nodes are connected with arrows rather than plain lines) …

digraph G {
SATURDAY -> lowesout;
TBD -> SATURDAY -> satdeck;
SATURDAY -> SUNDAY -> sungar;
SUNDAY -> lowesin ->sunin;
lowesout -> nearout;
TBD -> longout;

sunin -> assemblecrib -> Movecribs -> PaintPrepMon;
sunin -> MaTcabinetdoor;
lowesin -> MountKitTV;
sunin -> desk -> Taxes -> PayBills -> Insuranceform;

satdeck -> Removeoldgate -> Hangplaque -> Washwroughtiron;

nearout -> frontyard -> Tillholly -> mailboxarch;
lowesout -> Sealswing;
nearout -> Rakemulchontotrail -> Cleantreeline -> Distributenewmulch -> Installbabyswing;
nearout -> dock;
dock -> Removethorn -> Prepswingpad -> Prepswingtrail -> Moveswing -> Reattachrail;

longout -> ProcureRailtubing;
longout -> PlanBoatStorage;

sungar -> PaintWroughtIron -> cleanoutsidegarage;

}

… and it drew this graph for me (click to enlarge):

Graphviz Chart

Graphviz Chart

Now, admittedly, I did have to ponder a bit to get the relationships right. I had to think through which tasks had to precede which other tasks, and why. As I mentioned, I incorporated the weather prediction (sunny and windy on Saturday, rainy on Sunday), and what I needed to buy at Lowe’s, both for the inside work and the outside work. And divided some of the tasks into longer-term versus near-term.

You’ll note that, in my haste, I didn’t take time to figure out how to add spaces to the text (hint: it’s “label”), so all of the words run together.

But seeing my work laid out in all its graphical splendor allowed me to confirm my predecessor relationships, and tweak it on the fly.

Makes sense, eh? Probably took less than half an hour, including downloading the software.

And even though I haven’t finish all of the tasks yet, I’m sure this organizational tool has already saved that much in efficiency.

If Graphviz sounds like just the kind of tool you need,

  1. look no further than http://www.graphviz.org/Home.php, and
  2. you, too, may be a peculiar person.

Leave a Reply