Ex Bibliotheca

The life and times of Zack Weinberg.

Thursday, 28 March 2002

# 12:15 AM

I keep making up magic for Shadowrun, and then discovering that the official rulebook has a spell with the same name. In this case, Ball Lightning. Except this time the official version doesn't actually do ball lightning; it's an "area-effect Lightning Bolt", which makes no freakin' sense. Well, I suppose you could have a whole bunch of lightning strikes in one area, but why would that be called ball lightning?

There's also a "Dream" spell, which is fortunately much less flexible than my "Dreamwalking" metamagic, so I can just ignore it.

# 12 AM

Just when I think things are going my way:

tgtsvr.ex (t0@taltos): Wed Mar 27 11:34:55 2002
    Connecting to target agent... succeeded.
    Attaching C++ interface... succeeded.
    Attaching elf OMF reader for PPC CPU family... succeeded.

    Error: rpccore backend client RPC: Can't encode arguments
    Error: Error performing target core file checksum.
    Warning: Core file checksums do not match.

Which boils down to "forget trying to get the board to say hello world today."

Andronico's doesn't have Passover matzah. They have several varieties of matzah that all say "not for Passover" on the box, though. WTF?

Wednesday, 27 March 2002

# 11:50 PM

I celebrated the Passover tonight, with Shweta and Nathaniel. It worked out really well, except next time I need to make the main course be less bland and doughy. (Substituting spinach for zucchini was a mistake.)

Tomorrow, I'm off to Minicon 37. When I get back, there will be a report. The computer's getting turned off now, and I won't be reading mail for the next five days (the horror! the horror!)

Tuesday, 26 March 2002

# 6 PM

Once again I put off doing dishes until they're all dirty, then can't fit them all into the drying rack at once.

# 3:30 PM

I just said "m3 t00" on the gcc mailing list.

# 3 PM

Spent the past two hours or so dealing with various bureaucratic chores, such as getting my car smog-checked, paying a bunch of bills, and so on. Disappointed to discover that the auto shop I liked (Bay Auto, in front of Bing Wong Wash Center on Telegraph) has gone out of business, but there was someone onsite who recommended me to a competent gas station and service center down on Claremont, so that was okay.

social exception handling

Another thing I did was mail a letter of notice to the landlord, informing them that they had better pull their corporate finger out and clean the damn basement on a regular basis. This causes me to reflect on just how much general social infrastructure we have, as a species, for dealing with what might plausibly be described as error conditions. The situation with my landlord is common enough that there's an entire website (run by the Rent Stabilization Board) detailing the legal ritual to follow when it happens. First you do this; if that doesn't work, you escalate to doing that; etc. etc. until in extremis one winds up in court.

Then there's the infrastructure which exists purely to support the error handling rituals. For instance, certified mail. Certified mail exists to provide nonrepudiation: the sender gets positive confirmation that the recipient got the letter, and is presumed to have read it. This can be used as evidence if they later deny having ever seen the letter. Which is just what you want when trying to negotiate with a landlord who may not be above "accidentally" losing things.

To give another example, one of the bills I paid was the quarterly car insurance renewal. The whole concept of insurance is about error recovery. If you distill the core out of an insurance policy it reads something like "You give me a relatively small amount of money on a regular basis, and I promise that I will give you a large amount of money if something unlikely and bad happens." Neither party to the agreement wants or expects the something-bad ever to happen, but we (collectively) recognize the need for a defensive measure.

# 9:45 AM

Debian now has crypto in the main archive.

Monday, 25 March 2002

# 9 PM

The web version of TurboTax refuses to work with Mozilla for Linux. I was a bit leery of the whole notion of having my personal financial info stored on some web server somewhere; on the other hand, it would have been nice not to have to go to the hassle of getting the traditional edition, dusting off the Windows partition that exists solely for doing taxes, etc. etc.

Wonder if it's worth complaining at them. Probably not.

Behold: very funny semi-blog of one man's experiences with MacOS X. Lots of instructive criticism of user interface.

# 6:30 PM

I can now speak to my test board. It apparently does not understand hardware flow control. Now I have to rewire my local network so that there's a fast comms channel to download code to it over. (It is theoretically possible to do everything over the serial line, but at 9600 bps I'd never get a test run completed.)

Shweta took my dreamwalking rules, turned around and inflicted them on the hapless PCs in our game. Who have no clue that these things are possible. I should know better than to be so bloody clever.

book reviews

John Varley's Titan: A space expedition comes across a mysterious moon-sized spaceship orbiting Saturn--or at least, they think it's a spaceship. The reader is aware from the beginning, since it says so clearly on the front cover, that the entire ship is one intelligent life-form. Ten points for concept, ten points for thinking through most of the consequences, minus five for unnecessary sex geared to shock readers in 1979. Good book but I am not going to run out and buy the second two-thirds of the trilogy.

Fritz Lieber's Conjure Wife: I'm not going to say a word about the plot, because I want you to read it yourself and have the realization slowly dawn on you, too. Find this book and read it now. (Long out of print, but republished by Tor/Orb in 1999, so it should be findable.)

Saturday, 23 March 2002

# 11:30 PM

Got the aforementioned source code to build. Now I must find out why typing at the serial console of the test board I'm supposed to test with, causes precisely nothing to happen. (I get its boot prompt, so there's something alive at the other end of the null-modem cable.)

More magic: the Sons of Nikola Tesla, shamanic soul retrieval, and some metamagical techniques especially for physical adepts. Also, lots o' tweaking for game balance. Oh, and performatives. Mustn't forget performatives.

Friday, 22 March 2002

# 10 PM

I spent much of the afternoon trying to build the source code for my current project for work. This is a gigabyte or so of proprietary software, which has never before been built outside of the client's internal development environment, and hoo boy does it show. There are hardwired paths all over the place, often hardwired to some engineer's home directory, which of course I don't have a copy of. And it probably wouldn't do me any good if I did, because it would be executables that only work on a SPARC running Solaris whereas I need it on a PC running Linux. In some places, the code itself has embedded assumptions that are only true of Solaris, or only of the ancient buggy compiler they've used to compile the "host-side tools" to date. (This thing, the "native compiler," is even older than the old compiler I've been complaining about all along. It's 2.7 era GCC, which means its C++ implementation dates to when nobody was even talking about standardizing the language.)

So it was not a terribly enjoyable afternoon.

On the up side, I got to rip out more floating point gunk, including the infamous do_float_handler (well, okay, not that infamous).

Thursday, 21 March 2002

# 12:15 PM

pocket veto

The flame war has died out. Its last gasp was kind of amusing:

ZW:So I think that we should do X, as a defensive measure against this problem coming up again.
RK:What's the point? No one should ever get into the situation that caused the problem in the first place. In fact, we should prevent it by doing Y.

To which I carefully did not respond, despite the fact that I think he's completely wrong to assert that no one should ever get into the situation, and that Y is a horrible idea. Because, see, the only way Y will ever happen is if I write the patch; no one else wants to go anywhere near that part of the code. So all I have to do is drop the subject, and Y will never happen. The actual bug has gotten fixed, and I can live without defensive measure X.

(Well, at least, a patch for the actual bug has been proposed. If it doesn't get checked in in a few days I will "accidentally" apply it myself.)

what on earth is that thing

At the corner of Ellsworth and Parker streets there is a large white object, sitting on the sidewalk. It could once have been a chunk of foam padding, folded up, except that foam doesn't get partially dissolved in the rain. Its surface looks like what happens to a roll of toilet paper that falls under the shower when it's running.

Maybe it used to be some sort of biodegradable foam that was made out of starch...

Wednesday, 20 March 2002

# 5 PM

So I hear loud hammering from downstairs, and go to look. There are two people boarding up various windows and openings into the basement.

Me:Hi, I live upstairs, I heard the hammering; what are you doing?
Guy:We'll be done in twenty minutes.
Me:I asked what you were working on, not when you would be done.
Guy:The black men.
Guy:There were black men living in the basement.
Me:Oh, you're talking about the homeless people. I saw them.
Guy:Yeah, them. They broke down the window. We have to board these up.
Me:Okay. Have fun.

I'm glad there won't be homeless people living in the basement anymore; it was filthy down there, and that was partially their fault. It was more the fault of the landlord being too cheap to have someone clean the basement regularly, but I digress. But c'mon, "black men"? Why is that the defining characteristic of the people who were living in the basement? Wouldn't you be boarding up the basement just the same if they had some other skin color?

I failed to avoid getting into a flame war on the gcc list. Argh.

Sunday, 17 March 2002

# 11 AM

Once again I'm backdating diary entries.

For the first time in weeks I can sleep in in the morning. I'm not sure whether it's because the new bed is much more comfortable so I can stay asleep longer, or there's no immediate stressor to deal with, or having bicycled six miles and sailed for two hours yesterday, or what.

Had a dream last night in which I had to infiltrate an Aztechnology office complex by pretending to sign up for a job interview, then sneak into a restricted area and rescue someone. The guy driving the getaway car had his baby son in the backseat. I think it was his wife I was trying to rescue. There was a talking dog at one point.

To paraphrase the sleazy procurer character from Face/Off: "No more Shadowrun for that man."

Right now I'm drinking hot cocoa and listening to the rain.

Saturday, 16 March 2002

# 11:50 PM

Shweta, Nathaniel, and I went to see the Michael Brecker Quartet perform at Yoshi's on Jack London Square. I'm not a jazz fanatic, but it was really good music. Oddly I remember the piano and drum players' stylings better than Brecker himself on the saxophone.

# 4 PM

Went to the Cal Sailing Club's Saturday morning lessons. While waiting around for my turn in a boat, I helped the people in their boatyard repair damaged centerboard slots, mostly by moving boats around so they could be worked on conveniently. I was told I was going to get to put on a full dust-protection suit, crawl inside the hull, and grind down the damaged fiberglass, but the sailing instructor called me first.

The sailing itself was kind of an exercise in realizing how much I'd forgotten in the year since I was last in a boat. I used to be able to come about smoothly.

Now I'm thoroughly worn out—which probably has more to do with having bicycled down to the marina and back, about six miles round trip, than the sailing itself. It was totally worth it, though. I'm definitely going back next week.

Friday, 15 March 2002

# 10:30 PM

I have a new bed, and the futon has been moved out to the living room, where it makes a respectable couch. The living room got rearranged quite a bit, and is now (I think) quite a bit friendlier. A coffee- table-like object might be nice, but it's good as is.

Random statistic: the month is half over, and there's 2,411 messages in the "gcc development lists" mailbox.

# 12:20 PM

I managed to spill enough tea on my keyboard this afternoon that it got into the contacts and made the shift key be permanently stuck on. Have you ever tried to do anything on a Unix machine, with its case-sensitive everything, with shift stuck on? You can't even type "shutdown", because it comes out "SHUTDOWN", which is Not The Same Thing as far as the shell is concerned.

When I took the keyboard apart to dry it out I discovered two years' worth of crumbs, hair, and other gunk, so it became a huge project where I dismantled it down as far as it would go and cleaned all the pieces thoroughly. Putting it back together was a bit of an adventure... I got the top row of the number pad in the wrong order, and the interface board upside down, the first time.

It all works now, except that for some reason the right-hand shift key has turned into a control key. As I don't ever use the right-hand shift key, I don't particularly care.

I've got nine messages in my inbox which are all replies to something I wrote this morning. They are, collectively, informing me that three months ago when certain people said some things that I took for agreement that things would be done properly in the future, those people thought they were just making casual statements that things had been done properly to date, implying no agreement to keep doing them properly.

I want to flame the crap out of these people, but that will only make the thread drag on and reduce the chance of beating a real agreement out of them. So I'm not going to respond until there's a chance I can come across as not being righteously pissed off, despite in fact being righteously pissed off.

Thursday, 14 March 2002

# 11:45 AM

I have gotten my inbox down to twenty-three messages that I may need to respond to. Of course, some of those date to last September.

You can tell it's a rough week when that's the achievement of the day.

Wednesday, 13 March 2002

# 11 PM

further furniture-shopping follies

I have a chest-of-drawers now. One that all my clothes fit in. It wasn't cheap, but it's not going to fall apart ever, so I don't feel too bad about spending real money on it.

Still need a new bed, which is proving an utter pain to figure out. It boils down to there's no good way to tell the difference between the $200 mattress, the $400 mattress, and the $900 mattress, without sleeping on each for a month. The sales people understandably will not let you do this, so how on earth to choose?

linux 2.4 still doesn't work

It's getting close now, at least it doesn't eat your filesystem or crash regularly. However, it does lock up on boot on my machine due to a silly mistake in the hardware-fault-reporting code, which makes one wonder if anyone even tried it before they shipped it. And the driver for my sound card fails to recognize that there is a sound card there.

FreeBSD looks better every day.

excuse me, you seem to be stuck in 1300 AD

From MEMRI, Special Dispatch No. 354: Saudi Government Daily: Jews Use Teenagers' Blood for 'Purim' Pastries.

Put that next to the Saudi peace proposal and smoke it.

Monday, 11 March 2002

# 11:30 PM


Pyrex drinking glasses are nice in a lot of ways. They take heat well; they stand up to abuse well. However, eventually they decide that the next time someone looks at them funny they're going to fragment violently.

I just had both my Pyrex glasses shatter, mostly on the kitchen counter, but quite a few shards were flung outward to land on the kitchen floor and even into the hallway. It's a horrible, razor-edged mess. I'm not even trying to clean it up now. I swept all the shards on the floor into a pile under the sink, which will prevent me from gashing my feet tomorrow morning while I'm blearily trying to make breakfast. The rest of it can wait. I'm going to bed.

To make matters worse, while I was trying to deal with this disaster, the sink faucet started dribbling continuously, and I had a brief moment of panic... one of these days the hot water tap will become impossible to turn off, again, and it would have been just so perfect for it to happen now. It turned out that I just hadn't shut off the cold tap properly, thank ghod.

# 10:30 PM

No furniture shopping for me. Had to wait hours for the damn CDs; by the time I got to leave Wind River, they were all closed. And I didn't even get all the data I needed. The remainder is downloading now; it'll take a couple hours, but it'll work.

Loaded up goodwill.com in Mozilla to see what it looks like with a browser that understands kanji. I still couldn't read it, of course, but somehow it seems really cool that the computer has no trouble splatting a bunch of Japanese text onto the screen, as text, not pictures—I can select it and paste it into Emacs, and Emacs understands it too.

# 7:30 PM

Oi, anyone know how to do crossed out text so that Netscape 4 renders it properly, but without using deprecated HTML tags? It doesn't know what <del> means, and <strike> is deprecated.

I wonder if <span style="text-decoration: line-through"> will work... hey, it does, cool; pity it's about ten times the typing.

# 7 PM

Good furniture has not yet been bought, although I mean to stop at IKEA on the way back from work just in case they have something which is exactly what I want. However, crap furniture has been gotten rid of. The people at Bed Bath and Beyond were very polite and helpful. "No, we don't mind that you had to put the cabinets together before you discovered they were too small."

I also dropped off a bunch of old clothes at Goodwill, and a bunch of old computer hardware at the Alameda County Computer Resource Center. It's amazing how much lighter I feel not having these things anymore.

Right now I'm sitting in my office at Wind River, waiting for some CDs to be burned, so that I can take them home and start on the next big project.

(While link hunting for this entry I discovered that goodwill.com is some Japanese concern with pictures of people in hard hats on its front page. No idea what they actually do, the site is entirely in Japanese. Well, little square boxes. I am just assuming it's Japanese because some of the links are images of kanji.)

# 2 PM


Six hours of sleep just doesn't cut it. Even with caffeine. I've got to chase all over town taking back crap furniture and getting better furniture, but ugh.

I'd like to know how Perl has managed to get by for so damn long without real file handle variables. Yah, there's IO::Handle, but if you look, it's just creating references to uninterned symbols and feeding them to open. I understand this will be fixed in Perl 6; maybe in another decade or so I'll be able to write for that language and ignore backward compatibility. But I'm not optimistic here.

# 12:30 PM

my sister the interior decorator

Dara came up and spent the weekend here, mostly helping me clean up the apartment in ways that I should have done when I moved in. For instance, on Friday the living room closet was crammed full of cardboard boxes containing things I'd neglected to unpack after moving in. Now all the things are unpacked and either put away or queued to be put away. (I have to sort through some of them still.) The closet is being used to store organized and accessible stuff. The junk is on its way to junk stores and/or recycling centers.

She also gave me a bunch of advice about how to reorganize the apartment to make it more livable. We didn't have time to implement most of it; for instance, I did not buy a new bed and turn the futon into a sofa. I've got interesting pieces of fabric to hang on the bare walls in the bedroom, ideas for rearranging the living room and kitchen, and a few more things besides.

I did not actually clean the apartment. That's for after everything gets put away properly. Hopefully I can get all the work done in time to throw a party next weekend, as has been contemplated.

culture clash

We didn't spend the entire weekend rearranging my apartment; we went to see Culture Clash at the Berkeley Repertory Theatre. This was their new show, Culture Clash in Americca, which is a rapid-fire tour of the country taking a look at various marginalized and not-so-marginalized groups of people, by cariacture. It's really amazingly good. I don't think I can do a coherent explanation, and unfortunately this was the last weekend of the show, so I can't exactly tell you all to go see it yourselves. Oh well.

shoddy furniture

One of the things my sister insisted I do was replace the metal IKEA "closet organizer" rack (which seems to have been discontinued, feh) that I'd been using as a clothes bureau, with a Real Clothes Bureau. I kinda liked the closet organizer. It wasn't ever going to fall apart on me, and I could get most of my clothes in it no problem. Dara decided it was too ugly to be seen out in public (not that anyone but me ever goes into the bedroom, but it's the principle of the thing). So we went to find a bureau. One case of sticker shock later, we wound up buying a pair of "Stackable Organizer Cabinet" kits from Bed Bath and Beyond. This was a mistake.

First off, they turn out to be a lot smaller than the display model made us think. In toto there are four drawers, each of which can barely hold the same amount of material as a standard paper grocery bag. This is roughly the same as the IKEA rack, but that had six drawers. So, I now have a more aesthetically pleasing bureau, but a permanent pile of clothes next to it.

Second, well, it's cheap particle board, and having put it together I have no confidence that it won't fall apart in short order. The drawer bottoms are fiberboard, nailed in place, from the bottom so you can be utterly certain that they'll tear out under load. The frame is screwed together, but only weakly; they seem to have tried to make the poor customer's life easier by drilling the screw holes so large that the threads just barely bite into the boards. And of course the nails split the particle board every single time.

The $250 Cost Plus bureau that gave us sticker shock is starting to look like a good deal at this point.

hey zack, how do you get thousands of foam peanuts into a beanbag chair?

With great difficulty. Not quite as much difficulty as the last time I did this, but only because I sort of know the drill this time.

If you look closely at a block of styrofoam, you can see it's made of thousands if not millions of foam pellets all stuck together. Imagine them not stuck together; that's what's inside a beanbag chair. After about a year of continuous use, they get squashed, and the chair becomes limp. Then you go to the friendly local foam-padding store and ask for a refill, which is just a big sackful of pellets. These pellets are bigger, about a centimeter in diameter instead of 2mm like the originals. I think this is so people don't go totally insane trying to clean them off the floor when, not if, they spill.

Okay, you have your beanbag with its double zipper open, and you have your sack of fresh pellets. Your mission is to get all the pellets into the beanbag. There are several hurdles. First, the pellets have effectively zero mass and accumulate static like electrons were about to be discontinued. This means they stick to everything, except, of course, the inside of the beanbag. Second, the opening in the refill sack is much larger than the opening in the beanbag. Therefore, you cannot simply stuff the sack's mouth into the beanbag and pour. (It only now occurs to me that I could have cut a smaller hole in the bottom of the sack.) Third, the pellets do not flow; they pile up wherever they land. It is therefore necessary to shake the bag while pouring, to prevent them from backing up into the opening.

My technique is to roll an old poster into a cone and use it as a crude funnel. This works relatively well. I have to stop every so often to shake the bag, but at least they don't spill all over the floor. I still don't have a good way of forcing the last few dozen pellets, firmly stuck to the sides of the sack by static, out.

this bears repeating

Patrick Neilsen Hayden, posting commentary on Cory Doctorow's weblog:

I've found it very useful, when sorting out what I think of some administration policy in the military or diplomatic realm, to ask myself:

  1. If I can easily imagine this being done by President Gore,
  2. How I would feel about it if it had been, and
  3. What I would do if I woke up tomorrow and found I had been transformed into a gigantic insect President of the United States.

(And no fair answering (3) with "Well, I wouldn't have got us into this position in the first place!" Current political leaders don't get to blow off tough decisions with that, so neither should I.)

Friday, 8 March 2002

# 10 AM

I started the previous entry at 4 PM yesterday, and finished it now. There was a long hiatus when Shweta came over and distracted me with amusing quiz answers from the class she's TAing, then helped me do laundry. By the time she left it was time for bed. Total writing time was maybe an hour.

Today, off to Wind River again, hopefully to pick up some snapshot CDs so I can start on the next, more interesting project: bringing them up to GCC 3.x (probably x=1).

Thursday, 7 March 2002

# 4 PM

Warning: You are about to be subjected to a rant.

but first, some context

UC Berkeley has a program called "De-CAL" which allows students to create and teach their own courses, which count for units toward graduation. Some of these courses have been running for years. Two of the more popular courses are "Male Sexuality" and "Female Sexuality" (no surprises here) which by a sober account seem to be thoughtful and constructive.

About two weeks ago, the Daily Cal ran an exposé of the male sexuality course, in which it was alleged that some of the students, including some of the student-preceptors, arranged in class to hold orgies at a student's house after hours. It is not clear whether this actually happened. All the articles on the Daily Cal's website (exhibits A, B, C, D) are foaming at the mouth too much for me to consider them trustworthy sources. However, the UC administration has flipped out and is considering abolishing the entire DeCAL program, or at least subjecting courses to closer faculty scrutiny.

I'm sure you are all shocked, shocked to hear that college students are having sex, with each other even. What's the world coming to? To be fair, there might have been some power-differential abuses going on, and closer faculty involvement is probably not a bad idea. Still, it's pretty clear that the administration is over-reacting. But this is not what I'm going to rant about.

the rant

So today I'm walking through Sproul Plaza and there are a bunch of activists with megaphones calling for the abolition of the UC administration, the abolition of the nuclear family, and a complete socialist revolution. Because, you see, the wig-out that the administration has pulled is just a symptom of the fundamental brokenness of our culture, and we have to throw it away and start over.

Now this is complete nonsense. Understand that I am the last person to argue that there is nothing wrong with the society we've got. However, that does not mean we have to throw it away and start over. Let me draw a dubious analogy to the world of software engineering. It is common to discover that some chunk of code does not work. However, one then considers carefully before rewriting it from scratch. The only good reason to do so is if the design is fundamentally flawed, such that no change to the implementation will correct the problem. Even then, there may be no known algorithm which works better.

It's not possible to make a definitive statement that a culture is or is not flawed by design, but there are several things that might be diagnostic. One way I'd believe it would be if there were no mechanism to correct implementation problems. But look aroundyou; you will see plenty of them. The day before yesterday we had an election. Looking through the returns, I see that all of the propositions which were good ideas passed (the margin on the modern-voting-equipment bond measure is a bit disappointing, but it got through), and the proposition which was a bad idea was rejected. The proposition that was a dubious idea (stricter penalties for chiropractic insurance fraud) also passed, and some people who shouldn't have been re-elected (such as the mayor of Oakland) were re-elected. So there; three problems were fixed, one problem may have been introduced, a couple of existing problems failed to go away. On average we're doing fine.

Of course, there are plenty of problems that cannot be addressed with elections. In fact, the current cultural attitude toward sex is one of them. But the people on Sproul advocating the destruction of the nuclear family are part of the problem, there. Their attitude is that certain modes of sexual expression (i.e. heterosexual monogamy, with consequent children) are ungood, because they lead to negative effects on the society at large. Now suppose that I replace the above (i.e. ...) phrase with "homosexual promiscuity"; different target, exact same rhetorical position, exact same toxic effect on civil society.

You see, the problem with the current cultural attitude toward sex is not, at its root, that it stigmatizes certain modes of sexual expression. That's a symptom. The real problem is that sex is assigned a cultural importance which is way out of proportion to its true significance. We should be trying to make sex ordinary. It has consequences and side effects which require people to be cautious about when, how, and with whom, but the same is true of driving cars. People have different tastes, but the same is true of food, art, etc. Overall, it's just another thing that most of us do in the course of their lives.

Once that's done, then we can talk about whether family structures are oppressive, and if so which ones, and what ought to be done about it. Right now it's intractable to separate the society's sexual obsession from the question, so any argument is unconvincing.

a closing observation

Right next to the activists with megaphones was a man at a card table giving away free Fair Trade coffee, if you took a flyer too. I'd like to hold this man and his organization up as an example of positive activism. The Fair Trade people have identified a genuine problem; determined that it can be solved within the capitalist framework; and mounted a solid campaign to implement their solution. They're dealing civilly with people who propose alternate solutions. The man at the card table thought of a clever, effective way to advertise it. The crowd on Sproul were hurrying past the people with megaphones and stopping to talk to him.

# 9 AM


This was an interesting one on a couple of counts. I was reading a book, and "watching" the events of the book as one imagines doing while reading. The protagonist was some sort of a travelling bard, or in training to be a travelling bard, and one evening he found himself in a poetry circle with some Fair Folk. He recited a poem for them about the three kinds of love, which are iron, gold, and silver in that order, and they liked it so much they offered to take him under hill and teach him magic. He accepted.

There was then this funky scene transition involving riding a horse into darkness and toward a line-art face which grew to fill my visual field, bam, I'm walking toward the box office of a theater. Ahead of me in line is a woman who I went to high school with, name of Corey. She recognized me as the bard from the previous scene. I said no, I was just his simulacrum which he sent to take his place while he was under hill. She said she was a simulacrum too, for the same reason. Then we had a discussion about which tickets to buy; they ranged from about $10 to about $150, and somehow this had something to do with the aforementioned kinds of love. I discovered I only had three dollars in my wallet. Then I woke up.

I haven't seen Corey in going on seven years now. Wonder where she is.


By way of Forwarding Address: OS X, by way of Electrolite, comes a reference to Blosxom, which is, finally, my kind of a weblog automation script. You throw HTML fragments in a directory, one per entry, and it glues them all together in reverse order of creation date. You also get to write the header and footer. No muss, fuss, magic, or typing into p web forms.

The downside is that it's customizable only by hacking up the Perl script, which is nice and short but severely non-idiomatic (well, by my idea of idiomatic Perl, anyway; TMTOWTDI). I spent a couple of hours on it yesterday and it generates the right kind of HTML now, but in the process I broke the date-selection code.


Today is Piet Mondrian's birthday, according to Google.

Gav's girlfriend's name is Hanna. I should have thought to look at his website earlier.

# 12 AM

Today I am twenty-four.

It was promising to be a nice solid rainy day when I woke up, but now it's just overcast. Grr. We haven't had a good continuous several-days downpour all season.

Fixed some bugs for Wind River. Now to run off to NTL meeting.

Tuesday, 5 March 2002

# 3 PM

thank you county of alameda

I went to vote and discovered that my name was not on the list of registered voters. In fact, they still had the two people who used to live at my address on the list. The pollworkers were very nice about it, and there is fortunately an official procedure for this problem. I went ahead and voted, then they put my punchcard in a special envelope, I wrote my name and address on the outside and signed it, and the whole thing went in the box. This does ruin the anonymity of the ballot, but it's not exactly a high stakes election so I'm not bothered. Still, it does not inspire confidence in the system when a registration supposedly processed last June hasn't made it to the database yet. And I did get a confirmation slip back.

Yes, California does still use those same punchcard machines that caused so much trouble in Florida, at least in some counties. I've never had trouble with dimpled chads, but I imagine California takes better care of the things. One of the ballot initiatives was a bond measure to fund voting machine upgrades; hopefully it will pass, and they'll have the sense not to use all-electronic systems.

# 9:20 AM

to whichever supernatural entity is in charge of these things

Premonitory dreams are ever so much more helpful if I can remember them in the morning. It is also useful for them to make some sort of sense.

All I can say is, it had better not have been important.

this project deserves your support

Martus is a project to construct a reliable, secure bulletin board system for use by human rights activists. They need your help. Go write them some code. See also the Cult of the Dead Cow's Hacktivism Panel discussion of how computer hackers can support activism. (Mostly has to do with human rights enforcement, but some of the techniques apply to any agenda.)

Monday, 4 March 2002

# 9:30 PM

My kettle has sprung a leak. Considering how much tea I drink, this does not make me happy. It probably happened when I accidentally left the whistle off and boiled out all the water, then dumped it in a tub of cold water when I discovered what I'd done (to make it safe to touch again).

My kitchen faucet is also leaking again. It's been threatening to do this for weeks—the trail of rust down the wall from the hot water fitting is an excellent clue that something's wrong, as are bits of valve washer and chunks of rusted metal clogging the aerator. I was hoping to be able to leave it until the leak from the fitting was severe enough that the handyman would be forced to replace the hot water pipe, which he ought to have done the last time. Now, however, it's starting to drip from the spigot in earnest; I may have to get it patched again. (It'll never stay fixed until the hot water pipe is replaced, because what keeps happening is chunks of rust from the dying pipe get in the valve and tear up the washer.)

PNH has changed his weblog to use some clever automation known as Moveable Type. I'm somewhat tempted to try it myself, except that it looks even more complicated than NewsBruiser, which was already too complicated for my taste. But it does comments; I wonder if the people reading this and not sending me any mail about it would post comments. Probably not.

# 6 PM

I just got back from seeing Peter Neumann give a talk about computer security and critical infrastructure. Overall it was a good talk, leaving me with plenty of things to think about, but I have a couple of issues. His basic thesis is that existing computer systems are insecure at all levels, from hardware on up, despite the existence of well-understood methods for secure system design in the research community. This is true. However, at least in the talk, he didn't offer much of an alternative. When pressed (during Q&A) to suggest ways to improve the situation, he would say only that design from the beginning is necessary. Again, this is true. And I can see why he didn't want to get pinned down to offering specific proposals, which might be taken for panacaeas. Still, I would have liked to hear some specific instances where existing software or hardware is intrinsically flawed, and not in the ways that everyone already knows (i.e. buffer overflows).

In particular, the existence of EROS strongly implies that at the hardware level, the only problems are with reliability, not security. Perhaps there are security flaws in EROS which I cannot see, but I doubt it. There are certainly ways to layer insecure code on top of EROS, but that says nothing about EROS itself (unless it turns out that its interfaces make insecure coding easier than secure, but it's too early to say that).

I'm also disappointed that he blew off someone's question about the failure of Multics. Yeah, fear of non-IBM solutions probably had something to do with it. However, I think it's unlikely that Ken Thompson and Dennis Ritchie's criticisms were completely unfounded. In that context, I'm wondering what he thinks of Peter Gabriel's Worse is Better (or is it?) papers. Gabriel himself is not sure.

# 11 AM

In the peculiar dreams department, I found myself wandering around Yerba Buena Island (that's the one in the middle of the Bay Bridge). Everything was polygonal and textured, like in a first-person-shooter game. Also, somehow it was possible to enter the hill that the bridge has to tunnel through, and get right up to the outer framework of the tunnel. Which was not a concrete arch, but a wooden rack carrying dozens and dozens of mailing tubes full of art. Behind the rack there was a nuclear reactor.

Walking home, I encountered Gav and his girlfriend. Except he'd re-dyed his hair yellow and gotten a buzz cut (it's normally blue and shoulder length) and was behaving like "that most terrifying symbol of Order, an attorney", not his usual cheerful artist/engineer self. His girlfriend (whose name I really should remember, but don't) was understandably upset.

# 12:45 AM

There is the most amazing range of junk being sold at the Livermore swap meet. A lot of it is what Todd (one of my co-workers) refers to as "dot-com detritus," i.e. surplus hardware from failed companies. But there's also stall upon stall selling functional vacuum tubes, oscilloscopes, IBM mainframe diagnostic equipment, radio antennas, radio transceivers, stereo equipment, ...

I picked up a car radio for $20; normally goes for about $100. (I'm fairly sure the one in my car right now has lost an amp stage. If it turns out it's the speakers that are busted, I'll feel silly.)

Sunday, 3 March 2002

# 10:30 PM

i need a bigger dishrack

Observation: I don't wash dishes until the sink fills up.
Observation: When it does, I wash all the dirty dishes at once.
Observation: More stuff fits in the sink than the drying rack.

The inescapable consequence: dishes wind up precariously stacked on top of each other, or in odd places. Right now, there are four pots upside down on top of the stove, and a cutting board balanced across the horizontal pipes between the faucet and the wall.

Clearly, I need a bigger dishrack. Or maybe I just need to do the damn dishes more often.

(Can anyone think of a single word which means "all the movable stuff that gets dirty in the course of preparing and eating food"? "Dishes" isn't right, but it seems less specialized than "dinnerware" or "pots and pans" or any of the other alternatives that come to mind.)

# 8:30 PM

I am now a member of the Cal Sailing Club, and I got to sail around for about two hours in the San Francisco Bay. This makes me happy. I also bought groceries. This indirectly makes me happy, as now I will have something to eat tomorrow morning.

On the downside, I forgot to buy hot chocolate powder, and I'm so utterly exhausted that I've been unable to do anything but stare at a silly mindless game since. Just now got it together enough to make some tea, which— once the kettle boils—should put me in decent enough shape to wash the dishes and then go to bed. Very early. Like 10 PM.

# 6:45 AM

Up too early, and the only thing for breakfast is leftover chow mein; I've put off grocery shopping far too long.

Now to run off to the Livermore swap meet with people from work.

Saturday, 2 March 2002

# 7:30 PM


It only just now dawned on me that the archive links purported to be from 2001. Lemme just search-and-replace that out of existence...

dear applicant

I was turned down for admission to the graduate CS program here at Berkeley. Not sure what I'm going to do next, except that for sure I'm not going back to Stanford.


Today I went to 4th Street, which is Berkeley's yuppie shopping district, and bought a bunch of kitchen equipment at Sur la Table. Most importantly, I got a lid for my frying pan—I've been using the wok lid for the past year or so, but this will work better. Also, I picked up some potholders and some small knives, which should make Shweta happy.

Came home and cleaned off the evil pile of papers, more or less. There's still an intractable core of things-to-be-dealt-with, like the credit card bill, but they are at least all out where I can see them. I'm going to spend the evening sorting through the piles of books which have overflowed the shelves, and see how much more shelving I need. Also, clean the kitchen.

Big thank-you to Sumana for keeping me company.

69 files changed, 61 insertions, 2027 deletions

That's the summary of the patch I just posted to eliminate the "no floating point emulator" mode from GCC; this was a vile illusion, which never worked properly, and (as you can see) took up a fair amount of space while doing it.

(In case anyone reading this is worried: GCC will still use hardware floating point in the code it generates. It just won't ever use it internally.)

Friday, 1 March 2002

# 10:30 AM

There was a windstorm last night. I haven't gone out yet, but I expect there will have been branches knocked down and the like.

Because the <U> tag has been deprecated for no apparent reason, I've decided to replace it with an <I> tag with meaning modified by CSS. If it worked, this sentence should be underlined if your browser supports CSS, and italicized otherwise.