Tuesday, November 25, 2003

Wimpy disclaimer

I sent a message with a receipt request to some colleagues. The receipt returned by a colleague using the Mozilla project's Thunderbird email programcontains this disclaimer:
Note: This Return Receipt only acknowledges that the message was displayed on the recipient's computer. There is no guarantee that the recipient has read or understood the message contents.
I think that part of Microsoft's grand plan for world domination includes the ability not only to get any data from your computer, but also to tap into your brain to guarantee that you understand a message. Wimpy open source projects like Mozilla will never achieve this.

Monday, November 24, 2003

Campaign '04

The 2004 Presidential election is less than a year away. While I normally feel as queasy about early campaigning as I do about Christmas muzak before Thanksgiving, George W. Bush makes me even queasier. There are just so many ways to dislike what he is doing to this country and to the world in which we also live. He's an easy target on environmental issues, but there's so much more. Here are two readable pieces about Bush's policies in the name of national security.

Al Gore speaks about Freedom and Security and how the Bush administration is decimating civil liberties through the Patriot Act and other measures in the name of greater national security. Gore made this speech on behalf of moveon.org. Their site also has a video, but I haven't watched it.

It is important to remember that throughout history, the loss of civil liberties by individuals and the aggregation of too much unchecked power in the executive go hand in hand. They are two sides of the same coin.

Financier and philanthropist George Soros writes on The Bubble of American Supremacy in the current issue of The Atlantic Monthly.

Admittedly, the terrorist attack was historic in its own right. ... Even so, September 11 could not have changed the course of history to the extent that it has if President Bush had not responded to it the way he did. He declared war on terrorism, and under that guise implemented a radical foreign-policy agenda whose underlying principles predated the tragedy. Those principles can be summed up as follows: International relations are relations of power, not law; power prevails and law legitimizes what prevails.

In effect, the doctrine establishes two classes of sovereignty: the sovereignty of the United States, which takes precedence over international treaties and obligations; and the sovereignty of all other states, which is subject to the will of the United States. This is reminiscent of George Orwell's Animal Farm: all animals are equal, but some animals are more equal than others.

Monday, November 10, 2003

Another good reason to adhere to standards

Mandrake Linux has yet to release CD images of their latest release because of problems with certain LG Electronics CD-ROM drives. As fully explained by Mandrake, these drives don't properly implement the ATAPI protocol, specifically, their implementation of the FLUSH_CACHE command is incorrect. It'd be better if they simply didn't implement it at all. Instead, they implemented it to do something different. When issued, this command overwrites the drive's firmware. That's just wrong.

Quiet PCs

Sometimes I post a link here that's a little interesting, but more so that I'll know where to find it when I need it. End PC Noise is such a site. When I find the time to upgrade one or more home computer, this will be a good resource for making it quieter. Thank you for your indulgence.

Wednesday, November 05, 2003

Why I still like tcl

As in many programming languages, tcl represents a moment in time as the number of seconds since some fixed point (typically January 1, 1970 00:00 GMT/UTC). From this one can create a more readable version with flexible format options. For example using the clock commands,
clock format [clock seconds] -format "%A %B %d, %Y %I:%M %p"
produces "Wednesday November 05, 2003 03:48 PM".

Today I was writing code to run only on Sunday. Again as with most languages, one of the format options is to represent the day of the week as an integer. Languages vary somewhat on this, sometimes Sunday=0 and sometimes Sunday=1. This is all well documented and good programmers will put helpful comments to remind future readers of their code.

Tcl has a very powerful command "clock scan" that lets you create new dates using a wide variety of date formats, e.g. "2003-11-05", "tomorrow", "2 days ago"... or "Sunday". So, rather than hoping that I properly remember that Sunday is 0 or 1, I did the following:

    set weekday [clock format [clock seconds] -format "%w"]
    set sunday [clock format [clock scan "Sunday"] -format "%w"]
    if {$weekday == $sunday} {
        puts "yes, it's Sunday"
    } else {
        puts "no, it isn't Sunday"
    }
Internally, tcl will turn [clock scan "Sunday"] into a date representing midnight next Sunday which is a reasonable guess as to what somebody would want. For my use here, I don't really care if it's last Sunday, next Sunday or Super Bowl Sunday. I just care that it's a Sunday.

Tuesday, November 04, 2003

Logo under kde!

My daughter is only 2 1/2 but somehow she launched icq and sent a message yesterday. It was a message of unintelligible punctuation. Maybe it meant something in perl.

Anyway, it won't be long before I can start her with something like KLogo-Turtle. When I was in ninth or tenth grade, I taught logo to elementary school kids. I remember the difficulty I had introducing the concept of variables to fourth graders who had yet to encounter algebra.