Entries are currently listed by descending date; to see them listed by ascending date, click here.

August 19, 2004

Plugin Revisions

Moving to a non-hacked blosxom meant making a few plugin changes. There's no real need for a sorting plugin anymore, but I've come to like the idea of switching views. So, sort_order is out (reserved for the hacked blosxom), and sort_by_date is in. Similar operation, but the sort choices are now by date, by file name, or by category name; de/ascending.

See more ...

August 14, 2004

css overhaul

Hand-in-hand with cleaning up the site was an overhaul of the Waldo css, which had become a bit...cumbersome ;-) The basic two-column layout was retained, but without the messy hacks (Tantek box-model, etc.) — pushin' electrons is so much simpler with robust, viable alternatives to Explorer! Here's some of the nitty-gritty:

The layout is meant to be zero- or low-graphic, with visual color coming from links, heads, and a couple of block classes, and textual color coming from content face, weight, and leading. (For instance, the large navigation "buttons" are purely text-based; no graphics, no pre-loads, easy editing.) Full justification dramatically reduces "text rivers."

See more ...

August 14, 2004


Due to a bone-headed move by someone at the credit union, I lost my car insurance. Then when the car was stolen, I lost all my various ID cards & papers. Add some dire poverty to the mix, garnished with a tainted credit record, and you've got the perfect formula for riding the bus.

It's a hub/spoke system. Every line radiates from a central point — out and back. To keep schedules temporally close, each run tries to be 45 to 50 minutes duration each way, with two busses per spoke. For me, that mean hiking 1,500 steps (really; it paced out to that number three different times), and catching the second-most southern stop in the system. Then a 40-minute ride to the hub. Then a wait of about 20 minutes for the connecting bus. Then a 40-minute ride to the northernmost stop in the system, and a three-minute walk.

See more ...

August 12, 2004

site overhaul

Other than uploading plugin updates, I hadn't touched the site in almost a year; not too much bitrot, but a fair amount of cruft. No fixed abode has too often meant no modern Mac — making it increasingly difficult to test plugins with the site's hacked blosxom. So the first order of business was to convert the blog sections over to stock blosxom:

  1. configure and install a clean blosxom
  2. add entries_cache plugin to fake file modification times
  3. hack entries_cache to do what it should ;-)
  4. process entry files to proper blosxom format:
    • title on first line (was date)
    • mod time meta- tag on second line (was title)
    • blank third line to conform to meta plugin standard (unneeded, but standard)
    • modify story templates to use blosxom's $mo, $da, and $yr vars (was my hacked $dato)
    • modify .dl templates to mimic the old name-based hack
  5. write a fulldatenames plugin to get full month names
  6. fiddle with load order

It was all quite tedious, but I just kept tellin' myself, "This makes it easier. This makes it easier. This makes it...." Geez, this better make it easier! ;-)

See more ...

August 31, 2003

Writer's blok

Flew solo today...20 lines or so, without having to check the book. LOL! Got a suggestion from the Blosxom plugins page to add Windows line-end conversion to blox; just one line. But that presented a small quandary...the Pascal Protestant in me worried about crossing a line between attaining Perl's laziness and rewarding damnable ignorance. (On the Mac at least, Pascal's pearly gates bear a sign: "You must be able to generate at least this much machine language to ride this code." ;-)

And I mean, Great Bog...knowing about formatting text with newlines is as fundamental as knowing which side of the road to drive on. One of those underlying pieces of infrastructure that defines the world of multi-platform diversity. Isn't it? Or is there a new day coming when anyone can be (and should be) be a user, and lusers will only exist due to bad design or poor documentation? Does every specific convenience carry with it this cost of obscuring broader knowledge? Which is it -- can of worms, or slippery slope?

See more ...

August 24, 2003


Even though my eyes were closed, I remember the whole thing as though I had been looking on from the ceiling, in the farthest corner of the room from the door.

Don had just shut his eyes and danced up the aisle, turned at the desk, and shot right to the doorway. I wasn't very good at most of the games we played, but I didn't see what could be so hard about this. I was eager to try.

I didn't understand Don's dance until sometime after I was in the hospital. I didn't figure that the whirling arms and legs were helping him find where the desks were, and that jumping around like he was doing the boogaloo kept his legs apart and limber, more stable in case he started to trip. Maybe he didn't figure this either -- maybe he just closed his eyes and made it to the door without looking.

I closed my eyes and started out.

See more ...

August 19, 2003


There are times when I just can't get to sleep, and the only thing that helps is a warm cup of coffee. I have no idea why this works...but it does. It can't be hot coffee, where you have to puff-sip, puff-sip. It's needs to be right around body temperature, and the cup, too. I'll sit for a minute, letting my hands take heat from the cup, and then put the coffee down in two or three big draughts. Within a couple of minutes, everything's slowing down, drowsing...and I know it won't be long until the black velvet slides over my eyes and takes me to morning.

I'm not sure why this works. The "warm" part makes sense -- warm is comfort, and shelter, and nuzzling. But the "coffee" part...all I can figure is that the caffeine acts like that just-a-bit-too-loud ruckus coming from the kids' room that makes mom call out, "Okay, that's enough now! Go to sleep. I don't want to hear any more noise coming out of there!" The caffeine is just enough energy to snap all those restless pieces of me out of their fidgeting, and let the sleepy take over.

There are other times, when I can't really get awake. Usually the depression is like a typical schoolyard bully -- mostly bluster and taunts, but little real danger...its major impact is in its persistence, not its punch. But once in a while, the depression comes on with fists flying, a hot young boxer lookin' to make a mark. I get so beat up that I feel like even taking care of myself is out of reach; I can't even get to the ropes, let alone leave the ring.

So I go mow an old lady's yard. You're always welcome to mow an old lady's yard, and she'll thank you with tea and hard candy and whatever stories or complaints she has ready; she really appreciates the time. For me, it's a chance to call out to the boxer, and tell him, "That's enough! -- let all those fidgeting pieces wake up; they've got things to do now."

See more ...

August 18, 2003


Jaguar first impressions (new to X, too ;-)
A couple months ago, I installed 10.2.6 on the iMac(CRT)/600...figured that using the Apache server would be much more convenient than uploading endless Perl files to a host during script debugging ;-) So far my uses for X have only been Apache, IE, Moz, Safari, BBEdit, Photoshop, iTunes, Terminal, and Sys Prefs. As far as the system goes, it's fine.

But lord, that Finder sucks.....

See more ...

August 11, 2003

Perl-handled Revolver

Finally feeling like I have the tiniest grip on Perl. Finally! Almost as bad as trying to learn French....
After seeing that Blox 0.9 was just not going to treat <PRE> tags with any kind of grace, I started adding a means to block Blox from operating on a file. To my Pascal-ish mindset, this meant adding an if/then statement, as in: IF a blox-blocker exists for this file, THEN don't run blox on this file.

Looks like this in Perl:

if ($$body_ref =~ s/^$skipper\n//) {
  return 0;
elsif ($use_noblox_file) {
 if ($blox_ref{"$datadir$path/$filename.$file_extension"} == 1) {
   return 0;

Very much und ordnung; terraced fields; checklists; CS 101.

See more ...

August 09, 2003

Jesus Jenny

Went back to Texas on December 24, depressed as hell. Picked up a couple of teens, boy- and girlfriend, hitching on US 57 in Illinois. They were running away (as it turned out), financing their escape to New Orleans by selling acid.

Very bad acid, apparently. The girl was trying to sleep in the back but kept waking up, with small brown men crawling out of her vagina and ears, scrambling all over her, pinching and tearing. I got the impression the little men looked like the primitives from Escher prints... she would wake, fight them off, sleep, wake, sleep. But once, they wouldn't go away. I "asked" her beau if maybe he didn't want to go back there and smooth her out, talk to her, help her. He said, "Huh?...Oh sure," called to her, and when she sat up, getting closer to him, he backhanded her; knocked her out cold. Then he turned back to me and tried to sell me some of the acid. Right.

See more ...

August 06, 2003


We were two days in Texas. My friend David and I had set out from Michigan with no clearer mission than escaping the great Northern Recession of 1974, aftermath of the Arab oil embargo. We were equipped with one car each, sharing $80 in cash and $80 in food stamps, a few bags of books and a desire.... We had seen Atlas shrug, up north. Now we wanted to be kidnapped by John Galt. Fueled by the Texas oil boom, lubricated by our dreams of unfettered, honest work, we slid down through the Interstate system like shit through a goose.


Our first view of Texas was a city on the eastern boundary of the state called Beaumont. The brown sky, the unusually large mosquitoes -- we could have easily mistaken the countryside for New Jersey. Beaumont is a chemical town. A "primary chemical" town. Here raw earth and rock are rendered into elements and simple compounds. Where in Michigan you would see railroad cars announcing yet another load of "Cotton from the King of the South" or a tanker of "hydrochloroflourocarbon-24" out of Midland, the rails in Beaumont carry gondolas loaded with "Methane" and "Sulfur." While the rest of the nation's factories push the electronic heroin and V-8 cocaine of industrial society, Beaumont deals in 21st century poppies and coca leaves.

See more ...

August 03, 2003

Buried Alive

When I first awoke, I was buried alive inside my mother. I kicked and pushed, and eventually a rescue team of doctors and nurses released me.

But then, for the next several years, I was buried alive in my parents; pretty much my whole world was everything they said and did. Then a rescue team of teachers released me.

But then, for the next several years, I was buried alive with a bunch of other kids in a school house; pretty much my whole world was everything the teachers said and did. One or two tried to rescue us via underground explorations, but the weight of the school house always crushed our escape tunnels.

See more ...

August 01, 2003

Harbor Master

When I was 12, they made me the yacht club's Harbor Master: keep track of boats from other clubs tying up to our piers; collect a little rent; extend the glad hand. I have no idea why they let me do this...p'bly because I was hanging around so much, looking so eager to do something, being a pain in the ass ;-)

One of the worst things about being smart is how much bigger it makes your stupidity look. This was certainly my summer for being "smart".... From the scant records that accompanied the Harbor Master's cashbox, it was obvious that the position had been ignored for a couple of years. The tiny budget had apparently been spent at the bar, and there had obviously been no attempt to systematically collect slip fees. So, time to whip things into shape....

Collecting fees was fun -- I got to meet every boat that came in, talk to the skippers, ogle the gear (and any young daughters ;-), and act as first-tier tour guide to folks who had never visited before. For big events -- regattas of 50 or more boats, for instance -- I started a registry, and made up a dopey "rule" that no one could use the bar until their boat had "reported" (i.e. paid a slip fee) to the Harbor Master. It became a cute little thing -- the bartender would point new arrivals to an old wooden keg at the end of the bar, where they dropped in their money and signed the register. Later, I would visit the boat with a "Hello" and a simple safety look-see, and check their mooring.

The regattas were so cool... due to not enough piers, we often had to raft boats out from the main breakwall in front of the club. For some events this meant rafting people six or seven boats out, which was a total headache in terms of getting boats in and out. But the lights at night, the laughter, the music, the rhythms of people crossing bows to get from ship to shore to ship... that was magical.

See more ...

July 28, 2003

Walking Men

There's a new guy at the group home, and I don't think he's going to make it.

About four blocks away from one of the print shops I service is a group home for psychologically disabled men. They're all "walkers" -- all day long, they walk. A couple of guys have relatively short circuits; you can see them pass the shop every hour or so. Others have longer circuits, taking up to three hours before they pass through the four-way stop that I use as a lap counter. The new guy's circuit is around six hours.

Quite a few guys go through the group home; maybe one a month. If they can adjust to the income, accomodations, and comrades, then they've got a good place to live. If not, they're gone, and someone else gets to try out their slot.

One guy who didn't make it had problems crossing certain intersections. He would start crossing, then stop, then try to "push" against some unseen (by me) barrier. On a good day, he could best whatever it was he saw that was blocking his path. It might take three or four pushes, during which time cars would honk and people would stare, but he wouldn't know it -- he was all smiles from having made it across, from having a good day.

See more ...

July 25, 2003

Todd-ie Boy

No more Todd Mundt Show; brunchtime just got a little bit duller on UoM Radio. And that's saying a bit, because the show could be pretty... dull.

Sometimes it was Todd -- computer news was dominated by Wintel franchises; nothing about Macs, little about linux... just Windows stuff. Sometimes Todd channeled an Iowa Boy Scout ("I mean, would a large American corporation really do something like that?"); at other times he seemed to try too hard. But there weren't too many clinkers; only a handful in the last three years.

Usually, if a show went bad, it was from bad guest-age. Scientists who couldn't say, "Yes," without eating up 45 seconds of air time were always a favorite (and still are on Science Friday ;-). The "well-coordinated" guest -- frquent on Todd's show -- was also a treat. These folks are well-prepared, well-spoken, and will always interject at some point, "Oh, that's a good question." After a while, you could sense a well-coordinated guest's presence early in the show, and then spend your time waiting for the, "that's a good question," outburst (almost like a drinking game, if you don't mind having only one or two drinks a day ;-).

See more ...

July 18, 2003

Second Plugin

It's been awhile since I've considered the documentation to be the enemy, but this Perl stuff puts me in a mood.... I've just finished my second Blosxom plugin, and the frustration with Programming Perl mounts. Gotta get me a reference book by someone a bit less ADHD ;-)

This second plugin is every bit as lazy as the first.... I would just as soon write as few html tags inside these entry files as possible. Since the biggest tagging chore is marking each "paragraph" (or blockquote or dfn or whatever the main format is for the entry text) with an open tag and a close tag... why not let a plugin do it?

(Well, one reason not to let a plugin do it is trying to figure out how to make a plugin do it, when all you've got to read are chatty reference works by the Larry crew; about as speedy a guide as the Dictionary of the Khazaars....)

Since this plugin just makes a couple of substitution runs through an entry, its results aren't very sophisticated; we're not talking Tiki territory here. But for a mindless tool, it's not too bad....

See more ...

July 13, 2003

Summer Mice

The winter mice are usually quiet and reserved. They don't scamper around at night, they practically use a litterbox for droppings, and they're usually not very streetwise -- a winter mouse traps in a day.

The summer mice, though, are entirely different. The weather is fine, life is good, and for a mouse who's willing to climb a little, the eating is grand. These buggers are lookin' for the high life. All-night soccer matches, turds everywhere, and now they've licked the peanut butter out of the traps three times. This last time, both traps sprang, but too late. Arrrgh!

So now I've put a canvas thread in the peanut butter. The thread wraps the bait platform, and with any luck (for me), the mouse will have to tug a bit on the thread to get the peanut butter off.

Summer mice are almost always field mice. You'd think (at least, I think) that they'd mellow out once they're inside... less of a predator-eats-mouse world in here, and the chance to kick back a bit would seem welcome.

But it's just the opposite. These summer mice carry on like there's no tomorrow; living in some sort of cargo-cult dream. Yet, they're still wary and agile... they're hooligans.

See more ...

July 12, 2003

Vinyl Stones

Wow...I'm old ;-) I was ripping the 40 Licks Stones comp album in iTunes, watching the frequency distribution display... and I saw an old familiar pattern: low freq levels in the left channel were around 3dB higher than in the right. Consistently; anything released in the '60s and '70s had this skew to its levels.

This goes back to the nature of record players. As the stationary needle tracks along the revolving platter, it is accelerated inward -- it presses harder to the inside than to the outside. Your basic "record player" could do nothing to counter this force (called the "skating force"), and so a record with balanced bass on both channels would sound weaker in the left channel, because the left channel was the "outer" groove on the record.

Or, it's just the other way around; I never could keep it straight ;-)

See more ...

July 07, 2003

One Hand Speaking

A friend's father was hospitalized, following a coronary. A triple bypass was scheduled; routine enough, but always a risk. On the phone, as she was telling me about it, I could hear the unvoiced words you just know are in there somewhere -- "What if he dies?" There was also a wispy hint of ambivalence in the manner of conversation; like a recap on the news... "Well, he had a heart attack; it's pretty bad; surgery's scheduled; everybody's busy; gotta go."

When my dad died, we were effectively estranged. One day I knew he was sick; three days later I knew he was dying; two days later he was dead. I had been trying to make peace with him for a couple years (not very successfully, perhaps because I wasn't doing it very well), and had walked away in frustration only months before. I didn't like him, but I was afraid of losing him.

See more ...

July 06, 2003


After slogging through a few plugins and much hand-waving over the reference books, I've got Blosxom tuned up to where I like it. I've replaced the sort routine with code to sort by filename (not mod date). The "seemore" plugin is being used to break up long entries and link to their permanent address for complete viewing. Not sure how seemore is supposed to work, but I modified it to use a distinct template flavour ("loner") for these links; works fine. Permanent links are provided in the entry title H1 heads.

And that's about it for Perling right now...gotta deal with WinXP in the shop this week, and I'm already weak ;-) Once I find a good syntax ref/cookbook, learning Perl might even be a bit of fun... despite all the irregular verbs.

(Actually, I'm so ashamed for the way I'm butchering the Blosxom scripts, I'll p'bly go overboard on Perl, obsessing until the day I can write a functional plugin ;-) But for now, the css is good, the js is good, the content is good. Just gotta keep tellin' myself, "It's good [enough]; its good [enough]; it's ...."

See more ...