You Can't Handle the Knuth

As an unabashedly liberal computer geek, I've grown accustomed to feeling outnumbered politically among the "cognitive elite," Eric S. Raymond's onanistic term for our tribe, since BBSing in the early '80s. You could find more libertarians among that crowd than liberals; I'm not surprised that the Libertarian Party presidential nominee this year is a programmer.

For this reason, it's unpleasant but not unexpected to discover that a technologist I admire, most recently Jeremy Bowers, believes that my kind would be happier in Europe, are invested in losing the Iraq War, and consider Republicans to be our subhuman enemies. (Jeremy: You left off the part where we want to sell your guns to Iraqi insurgents to fund partial-birth abortions for evangelical teens.)

A page discovered this morning balances the scales. We may have lost Bowers, but we've got Donald Knuth:

Fundamentally I don't see how the government of my country has done anything whatsoever to address and correct the root causes of international terrorism. Quite the contrary; every action I can see seems almost designed to have the opposite effect --- as if orchestrated to maximize the finances of those who make armaments, by maximizing the number of people who now hate me personally for actions that I do not personally condone. How can I be a proud citizen of a country that unilaterally pulls out of widely accepted treaties, that refuses to accept a world court, that flouts fair trade with shameful policies regarding steel and agriculture, and that almost blindly supports Israel's increasingly unjustifiable occupation?

Are You Ready for Some Race Mixing?

Samuel Francis, a newspaper columnist distributed by Creators Syndicate, believes the Terrell Owens/Nicolette Sheridan skit on Monday Night Football was an insidious effort to promote interracial sex:

If only morals and taste had been the targets, the producers could easily have found white actresses who are less obviously Nordic than the golden-locked Sheridan, but Nordic is what the ad's producers no doubt wanted. For that matter, if you only wanted to take a swipe at morals and taste, you could find a black woman to rip her towel off or replace Owens with a famous white athlete (there are still a few).

But that wasn't the point, was it? The point was not just to hurl a pie in the face of morals and good taste, but also of white racial and cultural identity. The message of the ad was that white women are eager to have sex with black men, that they should be eager and that black men should take them up on it.

... the ad's message also was that interracial sex is normal and legitimate, a fairly radical concept for both the dominant media as well as its audience. Nevertheless, for decades, interracial couples of different sexes have been sneaked into advertising, movies and television series, and almost certainly not because of popular demand from either race. The Owens-Sheridan match is only the most notorious to date.

There are 1.1 million interracial marriages in the U.S., by the most recent U.S. Census. I wasn't aware that the normality of these relationships was still an unsettled question in the mainstream press.

Surely there can't be another syndicated columnist in the U.S. fulminating publicly against race mixing. I don't know whether to applaud Creators Syndicate for publishing such an offensive commentator or picket their offices.

Before you install MT-Workbench to close old Movable Type entries to feedback, take a look at Conversation Killer, the plug-in I wish I knew about before I did all of that coding.

Naptime for Buzzword.Com

I'm planning to take Buzzword.Com down for maintenance on Sunday morning. The Manila databases have to be compacted, a process that cleans out deleted data and improves performance, and I'm also working on the Manila customer support board to fix some problems plaguing a few users.

New Movable Type Tool: MT-Workbench

I have released beta version 0.1 of MT-Workbench, a PHP class library that can close all weblog entries to comments and trackback after they become one week old.

The open source library was written for a Movable Type weblog that uses a MySQL database. The library's closefeedback.php script can be run daily as a cronjob, closing old discussions so they can't be abused by comment spammers trying to boost their Google PageRank.

So far, the results have been heartening on the Drudge Retort, which used to receive 5-10 spams for every 100 visitor comments. In several skims this week, I haven't been able to find any spam.

Secure Linux Practically a State Secret

In my mailbox: a review copy of O'Reilly's SELinux: NSA's Open Source Security Enhanced Linux, a new book by Bill McCarty on a Linux enhancement developed for the National Security Agency.

I wasn't familiar with this project, but the book makes it tempting to carve off a hard drive partition this afternoon and try it out. SELinux offers role-based access control and privilege escalation baked into the kernel, as described by the NSA:

This work is not intended as a complete security solution for Linux. Security-enhanced Linux is not an attempt to correct any flaws that may currently exist in Linux. Instead, it is simply an example of how mandatory access controls that can confine the actions of any process, including a superuser process, can be added into Linux. The focus of this work has not been on system assurance or other security features such as security auditing, although these elements are also important for a secure system.

One of my goals for Workbench is to offer more software and computer book reviews. If you're a publisher or author scouring the Web for press opportunities, let me know how to get on your PR mailing list.

Rebuilding Movable Type Entries by Cronjob

Thanks to a tip from Richard Eriksson, I've completed the Movable Type utility to close comments and trackback on all weblog entries after they become a week old. I will be releasing it tomorrow under the GPL, assuming it runs properly as a cronjob and closes these seven-day-old entries to new feedback.

I couldn't get the script to work until I used Timothy Appnel's mt-rebuild utility to republish individual entries after they have been closed.

I tried to use Ed Dumbill's excellent XML-RPC for PHP library to rebuild entries, calling the mt.publishPost method for each entry, but couldn't get the calls to work.

I run mt-rebuild from PHP with the language's system function:

system("$this->perl_path $this->mt_rebuild_path -mode="entry" -blog_id=$entry_blog_id -entry_id=$entry_id");

The $this->perl_path and $this->mt_rebuild_path references are object variables that hold the locations of Perl and mt-rebuild.