Michael Covington's Daily Notebook
   Michael A. Covington, Ph.D.
Senior Research Scientist
Adjunct Professor of Computer Science
Associate Director
Artificial Intelligence Center
The University of Georgia
This is a private web page not hosted or sponsored by the University.

E-mail (important messages only):
(University business only)
(all other messages)


About this notebook

Daily Notebook
Copyright 2004 Michael A. Covington
(Caching by search engines is explicitly permitted.)

Bad taste, computer-generated

Here is today's example of computer-generated bad taste. It came up on my screen just now, as I was reading the newspaper. To mitigate the insult to the victim, I've blanked out some identifying information.

The "Drop your pants here" advertisement rotates randomly with many other ads on the online Athens Banner-Herald (Athens, Ga.). You can't predict which ad will appear with which news story.

And that's the problem. Twice in 24 hours I saw it accompanying reports of sex crimes. The newspaper management has told me they are going to get rid of the ad, which appears to be obsolete anyhow - it links to a dry cleaning coupon that expired more than a year ago.

Cathy astutely points out that if randomly rotating ads were effective, there would be no marketing departments. Advertising is normally targeted to the audience.

The last Oldsmobile

Today General Motors is slated to produce its last Oldsmobile.

And yesterday my Oldsmobile got back home from an adventure.

During the Valdosta trip, its "ABS brake" light came on, and the cruise control became inoperative. The instruction manual said the car was still safe to drive but should be brought in for service. The GM service manual said I needed a computer to read out the diagnostic codes.

So I took it to my mechanic, who spent 2 hours determining that the problem was caused by 2 burned-out brake lights. The brake light circuit is what shuts off the cruise control when you put on brakes.

It was a classic case of $2 for the parts, $164 for knowing which parts. I don't fault the mechanic; the GM manual did not lead me to check the brake lights, and I can well understand that a good mechanic would spend two hours checking other things first.

But I think what we're up against here is that when you rely on microcontrollers, complex machinery can be completely hidden in black boxes, leaving you no way to know how they work.

That's why I don't trust electronic voting machines. It's entirely too easy to rig one of them to favor a particular candidate, but only after 10,000 votes have been cast, and only if he seems to be losing. Any arbitrary conditions could be used to keep the corruption from being detected in any practical test.

Votes should not be entrusted to machines whose parts cannot be seen with human eyes.

Fred C. Davison, who was president of the University of Georgia in my student days and helped recruit me back as faculty, has died. See my April 16 article mentioning his last visit to the University. I'm awfully glad I got to see him one last time. (Pictures of the April 16 visit are here.)

2002? 2004? Who can tell the difference?

Today's dubious achievement award goes to a student journalist who reported a 2002 bicycle race as if it were this year's race, with winners' names and even a description of an unusual wreck. More details here.

Slightly paraphrasing Babbage, "I am not able rightly to apprehend the nature of the confusion that could provoke such an error."

Note minor updates to my April 22 article about ROBOCOPY.

More Windows tidbits

Problem: Windows Backup (NTBACKUP) won't create files larger than 2 GB or 4 GB when backing up to disk.

The error message in the log file is:

End of Media encountered while backing up to non-removable media.

In Event Viewer, Application Events, all you see is Event 8019,

End Operation: Warnings or errors were encountered.

which is not very informative because the current version of NTBACKUP has some benign errors so that in some cases every backup causes an event 8019.

Solution: To create files larger than 4 GB (or 2 GB on some disks), you need the NT file system. Convert the destination disk to NTFS with a command such as:

convert f: /fs:ntfs

where f: is the drive letter.

And where are the backup logs? Well-hidden. The backup logs normally reside in:

C:\Documents and Settings\username\Local Settings\Application Data\Microsoft\Windows NT\NTBackup\data

where username is the actual account name that it's running under. If you have renamed the Administrator account, and you're running under that, then this will be the new name, not the old one.

Problem: Files with names like CON.PL or NUL.TXT can't be moved or deleted. The error message is typically one of these:

The filename, directory name, or volume label syntax is incorrect.

Cannot delete filename: Cannot find the specified file.

but many others are possible.

Explanation: CON, NUL, PRN, LPT1, LPT2, LPT3, LPT4, COM1, COM2, COM3, and COM4 are specially reserved file names, and have been since the days of DOS. Even with extensions added, they are not legal file names in Windows.

These files probably arose when you copied files from a UNIX system.

You can delete these files with the rm.exe utility in the Resource Kit. It's one of the POSIX-compliant tools.

You can also refer to them by their full path with \\. prefixed. This tells Windows to treat them as if they were network-shared files to which Windows file name rules do not apply. Here \\. means "this computer."

For example, to delete

C:\Program Files\Blah\Blither\con.pl

do this:

del "\\.\C:\Program Files\Blah\Blither\con.pl"

You can also use ren to rename the file.


More about Valwood: Back in 1970-71, Valwood was more dream than reality. The school was very small - about 15 students in each grade - and operated in what was essentially a borrowed building. I did not come from one of the well-to-do families that were the school's financial backing; my mother could barely afford to send me there. But I thrived.

The real question was whether Valwood would thrive. There were rumors every year that the school might not last until the next.

It was a small institution, but there were those who loved it. And it did thrive. In 1973, Valwood moved to a new building of its own, and then, in 2003, a whole new campus.

The impression of all of the early Valwood alumni who assembled this past Saturday for the reunion could be summed up in five words: the dream has come true. The school that we hoped for is here to stay.

An amusing aspect of the reunion is that I am nowadays an almost legendary character from the Elder Days. People were attributing to me feats of intellect that never happened. In the early days of Valwood, there were so few students that everybody was important. I was Valwood's first computer geek (learning BASIC in 1973; that's another story) as well as (for a time) school photographer. But I didn't do quite everything that I am now credited with!


[Minor update 2004 April 26]

Melody and I had a good trip to the Valwood alumni reunion in the town where I grew up, Valdosta, Georgia. Above you see my boyhood home on Lake Drive, framed by a mighty live oak tree with Spanish moss hanging down. (The digital image has dynamic-range problems; the sunlight was too harsh. My film pictures should be better.)

When I lived there, I was almost oblivious to the great natural beauty of the place. All I knew is that it wasn't much like the environment built into our culture and literature; we didn't have snow or even fall colors. I felt like I wasn't in the "real" Anglo-American world. In some ways there is more difference between South Georgia and North Georgia than between North Georgia and New England.

Cathy, who grew up in North Georgia, appreciates Valdosta as an exotic place and is planning a series of paintings; we'll go down there in the middle of the summer for her to work on them.

By the way, a word about Valwood School. I joined this small private school as a ninth-grader in its second year of operation, 1970-71, and graduated with its fourth graduating class. There are only a few hundred alumni, so the reunion organizers invited all of them, and we had perhaps a hundred people present.

I want to assure everybody that Valwood is not one of the "segregation academies" that were springing up around the South at about that time. This was my feeling as a student, and yesterday I was able to confirm it with people who were present at Valwood's founding. The founders of Valwood were committed to racial equality from the beginning, and the school is now 5% African-American, with scholarships soon to be established to raise the percentage.

If anything, Valwood's founders were reacting, not to integration, but to the way the city schools resisted and postponed it, then carried it out very clumsily, causing needless overcrowding. During my one semester at Valdosta's public high school (fall 1971), there were 1400 students in a building designed for 700. That was the kind of thing that led people to private schools.

The public schools have gotten better since then, and I think private schools helped motivate them to do so. Certainly, at the college level, private institutions such as Yale, Harvard, and Stanford set high standards which public institutions aim to match. More importantly, all colleges are reasonably good because students have a choice of where to go. Choice makes for quality.

Private education is here to stay. My feeling is that while the public school system is valuable, it's not sufficient, and we should expect to live in a world where - for the common good - multiple school systems are always available.

The most surprising thing about Valdosta was the complete disappearance of Sallas-Mahone Elementary School, where I attended sixth grade. It was torn down a couple of years ago, and today, it's nothing but a grassy lot - but all the old trees are still there! The building must have been on a very thin slab. You'd think the lot had been vacant for twenty years.

How would you know if it were false? / Windows tidbits

Here's something that came up the other day in a graduate student's oral examination. (I've been participating in a lot of those lately.)

If you don't know what it would be like for a statement to be false, then you don't know whether the statement is true, and the statement may not even make sense.
I got that from Sir Karl Popper, one of the greatest philosophers of the twentieth century. It's not a direct quote; it's a summary of one of his main ideas in my words.

Popper came up with the Falsifiability Principle in an attempt to define scientific method. He established - in my opinion, conclusively - that the "induction" that scientists sometimes speak of is an illusion.

Scientists do not distill data into theories using "inductive logic." Rather, they propose conjectures and subject them to possible refutations. A successful scientific theory is one that has withstood many pointed attempts to falsify it.

This means that falsifiability is an important characteristic of science, or, in my opinion, any kind of knowledge about the world around us.

I don't mean that it has to be physically possible for our beliefs to be false. (Clearly, it is not physically possible for the laws of physics to be different.) Nor do I mean that the truth or falsehood of every belief has to be testable by physical tests, or even by any tests that it will ever be possible in practice. That was the mistake made by A. J. Ayer and the Logical Positivists.

I mean that we have to have alternatives in mind when we ask whether a statement is true or false. The point of making a statement is to distinguish one situation from another, and we have to have some concept of what we're distinguishing.

Here's an example. "Lead is heavier than water" is easy to test; just put a hunk of lead in water and watch what happens. Before doing the experiment, you can easily imagine what kind of results would confirm or falsify the statement.

"My wife loves me" and "God exists" are two statements that aren't subject to simple experimental tests. Nonetheless, I think they are meaningful, in the sense that each of them distinguishes different situations. I have some idea what the universe would be like (even if it's parts of the universe I can't examine, such as the contents of my wife's mind) if each of them were false.

But "Everything happens the way it was fated to happen" is probably meaningless, because I can't imagine any way of testing whether it is true or false. If something didn't happen the way it was fated to happen - whatever that means - how would anyone, even an omniscient observer, ever know? Nothing is really offered for possible falsification here. That's why I think it's a meaningless muddle of words.

Fortunetellers specialize in making statements that are hard to falsify because they're too vague. ("You will meet a stranger.") So do quacks of any kind, and salesmen. A good scientific hypothesis is designed for testability - not designed to elude tests.

Of course, some statements of a logical or mathematical nature, and definitions of words or symbols, are not falsifiable because they are true by definition. These include "2 + 2 = 4," "everything is identical to itself," and "every wife is a married woman." These are not facts about the world; they are facts about reasoning or about the way we have chosen to use words. We still use reasoning to determine whether they are correct.

Also, I will admit that there are inductive strategies for forming conjectures. With Popper, though, I claim that induction is merely a way of generating conjectures, not a way of obtaining knowledge per se.

Windows tidbits:

In Windows 2000 and its successors, if you want to set the defaults for all users of a shared printer, you have to go to Control Panel, Printers, right-click on the printer, Properties, Advanced, Printing Defaults. If you skip Advanced and Printing Defaults, you're not setting the defaults for anyone but yourself.

A handy index of operating system functions in .NET Framework and Win32 is here. Note that many things are decidedly handier under Win32. (The Win32 functions are Windows-specific; the .NET object methods are designed to be portable to other operating systems in the future.)

You can still call the Win32 functions in a .NET program using PInvoke. A complete set of declarations for doing so (in C#) is here (in the downloadable code files).

Copying files, preserving ownership and security

[Minor additions 2004 April 28.]

In connection with installing a new Windows 2003 server, we're having to copy users' profiles and home directories from one disk drive to another.

This isn't as easy as it sounds, for two reasons:

  • Normal copying utilities, such as graphical drag-and-drop or the xcopy command, do not preserve ownership and security attributes. The files end up owned by the person who caused the copies to be written.

  • No one, not even Administrator, has permission to read and write everyone else's files and folders - at least, not using the usual operating system services. So Administrator cannot even read the files that need to be copied.

One way to replicate a set of files, preserving all attributes, is to back them up (to tape or a disk file) and then restore them in different place.

The other way is to use ROBOCOPY, which is a freely downloadable utility from the Windows Server 2003 Resource Kit. The current version runs under Windows NT 4, 2000, and XP, as well as 2003.

The basic idea of ROBOCOPY is to copy only the files that do not already exist or are not up to date at the destination. But ROBOCOPY has numerous options to do other things.

If you have Administrator privileges, you can use ROBOCOPY to replicate users' files, preserving ownership and security, with a command like this:

robocopy.exe source target /copyall /w:2 /r:10 /mir /b /log:filename /np

Here's what the parameters mean:

source Source directory, such as C:\USERS.
target Destination, such as D:\USERS.
/copyall Preserve all attributes, ownership, and security.
/w:2 If a file is unavailable, wait 2 seconds and retry.
/r:10 Retry no more than 10 times on an unavailable file.
/mir Make a mirror copy. Copy files that do not exist or are not up to date at the destination; delete files at the destination that no longer exist at the source.
/b (Super-power!) Run in "backup mode." That is, allow Administrator to read and write files regardless of ownership or permissions, just the way Windows Backup does.
/log:filename   Write the log on the specified file.
/np No "progress indicators" (1%, backspace, 2%, etc.) in the log. (They make sense when the log is written to the screen, but they just look messy on a file.)

With /mir, you can run the same ROBOCOPY over and over, and each time it will fully synchronize the destination with the source, without wasting time on files that don't need to be changed.

I usually construct a one-line .BAT file containing the ROBOCOPY command, then set a Scheduled Task to actually run it. That way it will run in the background, and I don't have to be logged on at the time.

John Paul 2, Televangelists 0

A recent poll found that evangelical Christians (of which I am one) respect Pope John Paul II (who is of course Christian but not evangelical) more highly than their own televangelists, Pat Robertson and Jerry Falwell.

That didn't surprise me. The Pope may not agree with us on every point of doctrine, but he is extremely well-educated and has expert advisors. And he is actually leading a church. He didn't get where he is by simply trying to become famous. A group of very smart people chose him because they believed he was the best man for the job.

TV evangelists, even when they do well, are not the mainstream of evangelical Christianity and I wish the media would realize this. Normal evangelicals don't rely on TV; they go to church and listen to pastors who are chosen for their wisdom and leadership rather than for their ability to work the mass media.

(I don't know how the pollsters defined "evangelical," but it normally denotes a relatively conservative Christian who believes in the importance of personal commitment to Christ; who recognizes the Bible as the sole authority on faith and morals; and who believes that a number of separately organized churches are all equally legitimate.)

Physics surprise

[See also 2004 May 24.]

Consider a conveyor that is made of individual cylindrical rollers rather than a belt. The rollers are free to rotate on their own, not motorized or coupled to each other. They spin very freely with little friction.

The conveyor slopes down an inclined plane.

With all the rollers standing still, put a box at the top and watch it go down the incline. Will it speed up as it goes along?

Surprisingly, no, because each time it advances, it has to start another roller turning. So it is facing just as much inertia near the bottom as it does at the top.

I learned this surprising fact from Melody's uncle, Warren Barnett, who on Sunday showed us around the warehouses and machine shops of his business, Barnett Performance (high-performance auto parts). They also build racing cars, and I saw one under construction.

Great Red Spot

Here's last night's Jupiter image, with the Great Red Spot prominent. It has been processed to have much brighter colors and higher contrast than the real Jupiter. This was taken with the 8-inch telescope in somewhat rough air.

The Great Red Spot is thought to be a hurricane that has been going on for 300 years or more, scarcely moving relative to the rest of the atmosphere. On Jupiter, there's a lot of energy to sustain a storm.

As you can see from the entry from three days ago, an 8-inch telescope doesn't have much of an advantage over a 5-inch unless the air is steadier than this.

Humor department: If you like strange and amusing things, see News of the Weird and Computer Stupidities. (But the latter is disconcertingly like real life! The opening quote from Babbage may be the best thing about the site.)


Here's my first-ever digital image of Venus. It's not impressive. Because Venus is so close to the Sun, it is never high in the night sky, and in this case I was viewing it through rather rough air over a roof. The telescope was the same Celestron 5 that I've used for other images recently. This is a composite, using Registax, of the best of 300 1/250-second exposures taken with a ToUCam. Not much electronic sharpening was done because there wasn't any detail to sharpen.

Notice that Venus looks like a crescent Moon. That's because of the direction from which sunlight is striking it. Venus is closer to the Sun than we are, so the Sun isn't shining entirely on the side that we see.

The phases of Venus may be Galileo's most important discovery. For a long time they were the only physical evidence in favor of Copernicus' sun-centered theory of the Solar System.

Whether the Sun goes around the Earth or the Earth goes around the Sun, it is known that Venus follows the Sun; it rocks back and forth from one side of the Sun to the other (about 45 degrees east or west) but never takes off and goes to the opposite side of the Solar System.

Suppose everything orbits the Earth. Then Venus' orbit must be synchronized with that of the Sun, except for that side-to-side wobble (an "epicycle").

Further, Venus' orbit around the Earth is either outside or inside the Sun's orbit. That is, either Venus is always farther than the Sun, or it is always nearer (Ptolemy chose the latter).

Simple geometry tells us that Venus will show a crescent phase when it's nearer than the Sun, and a gibbous (more-than-half-full) phase when it's farther than the Sun. So if everything orbits the Earth, Venus should be either always crescent or always gibbous.

Galileo's telescope showed him that Venus goes through the full set of phases, crescent and gibbous.

This proves that Venus orbits the Sun. It doesn't prove that the Earth orbits the Sun; Venus could be going around a Sun that is going around the Earth, as Tycho Brahe proposed (mainly in order to have a theory with his name on it).

And that, for a long time, was the only physical evidence in favor of Copernicus. There was also one nice piece of mathematical evidence: if the Earth is in the center, then every planet has an epicycle synchronized with the Sun, but if the Sun is in the center, this epicycle is not needed because it's simply the reflection of the Earth's orbit.

There were also some pieces of physical evidence against the Sun-centered view. The main one had to do with the shape of the Earth's orbit. Whether the Earth goes around the Sun or vice versa, we know that the orbit is not a perfect circle; careful measurement shows that the orbital motion is faster in December than in June. And if this is so, and the Earth is moving, we ought to feel the acceleration and deceleration. Precariously balanced objects ought to fall over when the speed-up changes to a slow-down.

It took Isaac Newton, long after Galileo, to explain why we don't feel the acceleration and deceleration. (He showed that an elliptical orbit could be in perfect equilibrium.)

Until Newton's time, the physical evidence for Copernicanism was not entirely persuasive. And that's how it is with all scientific advances; difficulties with theories stick around for a long time and are dealt with gradually. An honest scientist in 1600 could not really tell whether the Sun-centered or Earth-centered model would prove correct.

It is certainly wrong to think - as popular science books often imply - that Copernicus' genius was obvious to all except those benighted by medieval superstition.

Too busy

I'm too busy to write anything today. But let me recommend Science Jokes and Randy Glasbergen's cartoons.

And if that's not enough, here's an old joke for you...

How do different specialists answer the question, "What is 2 + 2?"

Pure mathematician: "2 + 2 = 1 + 1 + 1 + 1."

Applied mathematician: "2 + 2 = 4."

Physicist: "Approximately 3.99."

Accountant: "How much do you need it to come out to be?"

Jupiter with a 5-inch telescope / Eventful day

It's been a few days since I took a picture of Jupiter, so last night I spent a few minutes taking this one. It's the result of recording 300 frames of video and letting Registax stack and align them.

This was taken with a 5-inch telescope, my Celestron 5 that celebrates its 23rd birthday this August.

This picture shows much more detail than I could see even with my trained eye. Until very recently, planetary photographs always showed much less detail than a trained observer can see, and in the 1960s, the best Earth-based pictures of Jupiter, taken with 30-inch and larger telescopes, were not as good as the picture you see here.

Video astronomy has changed that. A telescope supposedly too small for serious planetary work, plus a computer, can record as much of Jupiter than a visual observer would expect to see with a telescope twice as large!

I started the morning by giving a talk at our Practical Artificial Intelligence Workshop.

After lunch I went to the dedication of the University's Davison Life Sciences Building, named in honor of Fred C. Davison, who was president of the University in my student days, recruited me back as faculty, and thereby initiated computational linguistics at Georgia. He was there and recognized me immediately. But everybody's 30 years older than they were 30 years ago!


Today, most Americans are struggling over their income tax returns, which are due at midnight. (Been there, done that, got the refund.)

I'm intrigued by proposals to replace the income tax with a national sales tax, for several reasons. First, I think a sales tax that exempts certain necessities is the fairest kind of taxation. The surest proof that people have money is that they are spending it. The rich can arrange to have no net income on paper, but they can't stop spending money, or nobody will recognize them as rich.

Second, I don't like the demoralizing effect of requiring ordinary citizens to follow a tax code so complicated that nobody understands it. With a national sales tax, only merchants would have to file tax returns, and the tax code would have to be reasonably simple.

But I also see a problem. If we change to a sales tax, what about people who saved for retirement from their taxed income and are planning to live off their savings? They were taxed on the money once when they earned it; they shouldn't be taxed again when they spend it.

Presumably, sales-tax advocates have worked out a way to overcome this objection. I'd like to hear from someone who knows what it is.

[For answer see 2004 May 24.]

Today is mid-month, the day the last of the March entries disappear from this page. You can still find them under "previous months."

"Pick any two"

[Minor revisions, 11:30 p.m. EDT April 14]

A common aphorism among engineers and managers these days is:

Good, quick, cheap: Pick any two.

That is, you can have quality and rapid availability; or quality and low price; or rapid availability and low price; but not all three.

This is a crude way of expressing an important mathematical fact:

You can't maximize more than one variable at once.
You usually can't even compromise between more than two.

It's like trying to climb three hills at once. You can't do it. Sometimes you can get on a ridge between two of them, but between all three is almost certainly a valley.

Let's apply this to operating systems and the near-monopoly of Microsoft Windows. The choices are:

(1) Standardization (wide use of the same or a compatible OS);
(2) Rapid progress (new technology delivered quickly);
(3) Open market (multiple independent suppliers).

The combinations are:

(1) + (2) : Microsoft Windows;
(1) + (3) : Linux and UNIX;
(2) + (3) : Almost nonexistent; various Linux extensions.

The business world wants standardization the most; rapid progress is second priority. That's why Windows is winning.

The way Intel gets out of having a monopoly on CPUs and chipsets, even though they set the standards, is that another company (AMD) makes compatible CPUs and chipsets. It's easier to clone a CPU than an operating system because it's much less complex. There's a relatively small number of functions (well, thousands - not millions) and tests can prove you've gotten them all correct.

A lot of the problem with the Microsoft monopoly is that there isn't a clear list of the functions you'd have to support in order to make a Windows-compatible OS. There are layers and layers of system calls, and there are persistent rumors that Microsoft Office uses some OS functions that aren't documented for anyone else to use.

The Microsoft .NET Framework may offer a way out. It's an object-oriented operating system API with a finite, well-documented set of functions. Maybe it could be pinned down explicitly enough to allow other operating systems to offer the same functionality.

That would mean giving up our Win32 software. But the same thing has been done before. We've given up our DOS software, and especially our low-level PC hardware calls that used to be essential to DOS-based games and graphics. At least nowadays we're all using the operating system, rather than bypassing it. That's a start.

Windows security updates

It's Tuesday, my busy day. Instead of expecting me to write anything here, everybody (who runs Windows) please get the critical updates that were released today. They involve all versions since (and including) Windows 98 and NT 4.

In fact, I strongly urge everybody to set up automatic updates. They're under Control Panel, System. At the lab, we leave our PCs on all the time, and they check for updates every day at 2 a.m. Since automatic updates can reboot a computer, we cut back the schedule when someone needs to run a computation overnight.

Once around the Möbius strip? / Network??

Today I went to get a shirt from my closet and found it completely inside out on its hanger (collar, sleeves, and all) and completely buttoned even though the buttons were inaccessible.

How did this happen? Is there a space warp? Did it get sent through a Möbius-strip-shaped part of the universe? Or did Sharon get hold of it? She denies it.

If you like Möbius strips, look at the glass models of Klein bottles here.

Does Best Buy have a computer network? They sell computer networks. But I had an odd experience with them today.

First the good news: Their Performance Service Plan (PSP) covers laptop batteries. It also costs about as much as a laptop battery. So by paying $200 up front, you get a 3-year extended warranty, and you know you'll get a battery out of it.

I took my laptop in to the local store for a new battery, and the technician took down all my information, then cheerfully gave me a piece of paper with instructions to call a toll-free number to arrange for the battery to be shipped to me.

Hmmm... The piece of paper already had all the information, including the shipping address.

I called the number, and after 10 minutes on hold, a warranty representative cheerfully gave me a "case number" and transferred me to the parts department.

Fifteen more minutes on hold, with occasional announcements such as "You are sixth in line" and (inexplicably, right at the beginning) "Vous êtes le deuxième dans la queue."

Then I gave all the information to the parts man, and he cheerfully arranged the shipment.

Why did they need me in this process? Just to deliver messages from one part of Best Buy to another? That's what computer networks are for.

Feast Day of the Resurrection of Our Lord
(not the Easter Bunny)

[Minor revisions, 12:37 p.m. EDT April 11]

Many years ago, C. S. Lewis described how, when he was 5 years old, he had made up and sung a song called "Chocolate Eggs and Jesus Risen." Soon afterward, he realized that he had to make a choice. Chocolate eggs are not, after all, the essence of Easter.

To put it bluntly, I've had too much Easter Bunny. On this, the holiest day of the Christian year, I want to make two requests.

  • To my non-Christian friends: Please show respect for us Christians, and for our holy day, by not turning it into something silly. We don't pester our Jewish, Muslim, or nonbelieving friends by inventing Passover bunnies, Ramadan trees, or atheism decorations, and if we did, they'd have a perfect right to feel offended. If you want to reach out to Christians with a gesture of good will, the best way to do it probably doesn't involve dressing up as a giant rabbit.

  • To my fellow Christians: The same. Let's give credit where credit is due. Lots of Easter silliness comes from Christians who don't want to think about what Easter really signifies, so they reduce it to a secular children's spring festival, or, worse, a new-clothing competition (as in Irving Berlin's "Easter Parade").

The water is muddied by the fact that some Easter traditions, including the rabbits and eggs and even the name "Easter," are survivals from other religions now defunct. Further, springtime and flowers are certainly part of God's creation and worth thanking God for. And there is certainly room for a children's festival within Easter, but it's not the main thing.

Fundamentally, Easter - and Christianity - are about sin, death, atonement, life, and hope, not flowers, bunnies, and cuteness.

Did the Resurrection really happen? Since I said I wouldn't defend religious doctrines in this notebook, I'm not going to give you a direct answer here. But I do have two thoughts.

First: We Christians already know that miracles, including the Resurrection, are "against the laws of nature." That's what makes them miracles. Christians do not claim that the universe is full of magical tricks and strange suspensions of regularity. We claim only that, in order to show His sovereignty over creation, and in order to accomplish specific purposes, God has done some extraordinary things at specific times and places. We don't expect "miracles" everywhere, and we certainly don't try to generate them ourselves. They are the credentials of God Himself.

Second: I don't understand why some liberal theologians believe in a limited deity who can create the universe but can't raise one man from the dead. It seems to me that if God were limited, it would be the other way around; we'd have scattered "signs and wonders" but no cosmology.

Happy Easter!

A supernova and other unexpected events

For the first time, I have successfully taken a picture of a supernova, namely Supernova 2004bd in the galaxy NGC 3786, in the direction of the constellation Ursa Major.

The supernova is the leftmost of two starlike dots near the center of my picture. The other dot is NGC 3786 itself. Below center is the brighter galaxy NGC 3788; you can see it as a smudge comprising its outer parts as well as its nucleus.

This was right at the limits of my equipment, an 8-inch f/10 telescope with an SBIG STV CCD camera. The STV is designed for guiding other cameras rather than for taking good images on its own, which is why it produces only a small, monochrome image. But the CCD is thermoelectrically cooled so that it can take long exposures of faint objects.

Supernova 2004bd was discovered and confirmed by British amateur astronomers with 14-inch telescopes.

After several years of declining revenues, The University of Georgia has finally had to lay off some employees. That's the down side of being supported by state taxes; when there's a recession, tax income falls, and there's nothing anyone can do about it.

Fortunately, none of them are faculty or research staff (yet!). But the American Language Program (ALP) has gotten the axe. The ALP teaches English to people who are not (or need not be) students in the University itself. It is very popular with families of international students.

Behind the scenes, there are reports that enrollment in the ALP had fallen dramatically since the September 11 (2001) attacks. Homeland Security doesn't like to grant entry visas for non-credit, non-academic language study.

The best outcome would be to absorb the functions of the ALP into the University proper, so that its courses would carry academic credit. This would also make it easier for foreigners to get visas.

One last odd event. Part of the freeway that encircles our fair city (Athens, Ga.) was closed for several hours yesterday. Driving by on the other side of the median, Melody and I saw police cars, a fire truck, a few stopped vehicles, and a lot of bottles carefully arranged in a row.

It turned out this was apparently a rolling methamphetamine lab and the local authorities were taking no chances. I'm glad it didn't explode on the road, in traffic!

The Passion of the Christ

I must be almost the only Christian alive who has not yet seen Mel Gibson's new movie about the crucifixion of Jesus (the event which Christians commemorate today, hence the black-on-gray color scheme for today's entry).

But I will assert, nonetheless, that it is a great movie.

Before it came out, critics asserted that it would stir up anti-Jewish sentiment. This hasn't happened.

(Some Palestinian Muslims are apparently trying to interpret it this way, but they were anti-Jewish already, and they don't believe the crucifixion really happened, which puts them in an odd position. If you scour the whole world, you may find a few more cases of anti-Judaism coming out of this movie; somebody will probably even manufacture some. But they are not typical or common.)

What has happened instead is that people have found the movie edifying. It has even inspired criminals to turn themselves in to clear their consciences. When sin meets God and fights with Him, you have to take sides.

When people say the movie is anti-Jewish, they often promote the notion that "Christians blame the Jews for crucifying Jesus." That's nonsense; Christians have no such doctrine. Not only were the perpetrators of the violence Jewish, so was the victim. Christians have always taught that Christ died for the sins of all mankind.

The crucifixion of Jesus was a profound embarrassment to all humanity. The holiest man who ever lived got tortured to death by his nearest neighbors.

And that, I think, is why Mel Gibson's movie is controversial. It reports an event that really happened, and we still feel shame about the event.

Why haven't I seen the movie? Because I've known for a long time what happened to Jesus, and I don't know if I could stomach watching a realistic portrayal of it. It was horrible.

Congratulations, Dr. Rochester!

[Links updated 2004 April 18.]

Today, Eric Rochester became the first person ever to get a Ph.D. in English from The University of Georgia for a computer program. As a member of his committee, I participated in the final oral examination.

His project, "Schwa," is a database for managing the pronunciation files of a dictionary, using phonetic symbols. (The link to it may not work for a day or two yet; come back.)

So if you need an expert on the history of the English language who is also a crackerjack Python and Delphi programmer - we turn out the best.

Weddings / Meade LPI review / Wednesday pileup

If you think you may ever be involved in a wedding - in any capacity - you owe it to yourself to read Dave Barry's column about weddings. This is doubly important for my daughters.

On a serious note, it's hard to strike the right balance between festiveness and ostentation. Naturally, a wedding is a festive occasion. But there is entirely too much pressure on people to spend money merely to show they can do it (or make people think they can do it).

Melody and I had a church wedding on a tight budget. We felt that a church wedding was important because we wanted to make it clear that our marriage was to be a commitment to society, not just a private arrangement between the two of us. Besides, it was 1982, and people were asking, "Are you going to get married or just live together?"

I have never encountered a couple living together where, on close examination, there wasn't a big discrepancy between the two people's concept of what they were doing. Typically one of them thinks they're practically married, and the other is certain that they are most definitely not. One of the most important functions of the wedding is to get everybody to stand up and say what they think they're doing.

I've finished reviewing the Meade Lunar-Planetary Imager and will probably sell it because it's too similar to the modified Philips ToUCam that I was using beforehand. Anyone want to make me an offer? In the meantime, here's one last Jupiter picture, taken with the 8-inch.

The University of Georgia is suffering from a serious Wednesday pileup. Ever since we switched to the semester system, everybody has tried to avoid having classes on Friday, Monday, or both. The result is that everything piles up in the middle of the week.

I think this is foolish. We should do as Emory University once did, and have no classes at all on Wednesdays. Relieve some of the pressure by giving people a day to study in the middle of the week. Fill up the Mondays and Fridays with scheduled classes; they are real school days, after all; stop people from trying to have four-day weekends.

I think there is a connection between the six-year bachelor's degree (now increasingly common) and the four-day weekend. I hasten to add that I don't mean the students are lazy; the four-day weekend seems to be imposed on them by the institution.

Sadly, Emory has abolished their formerly wise practice.

"Shameless commerce" as Click and Clack would say

Too busy to write much today... but let me briefly mention a commercial venture for which I did the programming, and which is now coming to market. If you evaluate employees, you need TIP.

It's a Windows .NET application developed in C#. Later versions will include database capabilities and maybe even artificial intelligence.

C# follies / Meade does Jupiter / Odd bolts

The latest joke out of Redmond - released to the rumor mill on April 1, of course - is that some of the keywords in C#, especially private and explicit, are going to be changed because programs were being mistaken for pornography.

Here's my first really good picture taken with the Meade Lunar-Planetary Imager, about which I am keeping a detailed web page of notes and hints. Here you see Jupiter, Callisto, and Io.

Instead of Meade's software, I used AstroVideo to record 300 frames of video in an .avi file, then used Registax to select the best images (about 160 of them), stack them, and enhance the detail. Finally I used Photoshop to punch up the color saturation and to brighten the satellites (by "sharpening" a selected area).

The telescope was a vintage Celestron 5 with a 2x Barlow lens. That's my "little" telescope, now almost 24 years old; the other Jupiters that you've seen here were taken with my 8-inch.

Our network hubs are mounted in a standard 19-inch equipment rack, and I recently discovered that all the holes in it are threaded.

I wanted more bolts to fit it, so I took one out and carried it to the hardware store. There it was successfully identified as size #12-24 (definitely not 6mm x 1mm, which was very close).

But hardware stores no longer stock #12-24 bolts, if they ever did. It's too close to the next standard size (1/4-20, from a different series).

I searched on line and ended up ordering a box of them from a big industrial supplier (McMaster-Carr, which has everything). Quite a few marine suppliers also turned up on my web search. Apart from our wiring rack, is size #12-24 used only on ships?

Daylight Saving bother / Overpaid? / Year-month-day

Today is the day of our annual loss of an hour's sleep, thanks to the outdoor recreation industry, which manages to keep state legislators convinced that terrible harm would result ("people would lose their jobs") if we didn't change our clocks twice a year.

I don't like losing an hour's sleep, and I've seen reports (unfortunately I don't know where) saying the change to Daylight Saving Time every spring causes a spike in the number of road accidents.

But the real inconvenience nowadays is that the typical household has maybe 15 or 20 clocks, not just one or two, so you have to go around and set clocks for an hour or so. Some of them have wretched user interfaces. ("Turn the radio off. Press DISP briefly. Release. Press DISP and hold for 2 seconds. Release. If you see a zigzag pattern skip the next step..." I'm not kidding. This is a Sony car radio, as best I can remember it.)

Just two generations ago, a household would have only a couple of clocks, both of which needed setting every week or two anyhow. We no longer live in that world.

The states of Arizona and Hawaii get along fine without Daylight Saving Time, and I don't notice mass bankruptcies in their recreation industries. Why can't the rest of us do the same? Or even have "year-round Daylight Saving Time" if that's what the special interests want.

Our local newspaper notes that some University of Georgia faculty are paid as much as $200,000 per year. Since we're suffering budget cuts, there are periodic cries to cut down these "excessive" salaries. To which I respond:
  • If a research professor costs $200,000 and brings in $1,000,000 in grants, the University is making a profit on him. Threaten him with a salary cut, and he'll go elsewhere and take his millions with him.

  • Where do you get deans? Many of the best candidates won't take the job, even for double their present salary, because it involves ending the teaching and research career for which they've spent their lives preparing. It would be like asking Babe Ruth to be manager of the Yankees instead of playing baseball.

  • Unfortunately, nobody objects to million-a-year salaries for athletic coaches. I think that our multi-million-dollar athletic program ought to be funneling money into academics on a grand scale. As far as I can determine, it does not do so.

By the way, I'm not one of those "overpaid" professors. But the University does make a profit on me.

Today is 04/04/04; you can write the year, month, and day in any order. The rest of the time I normally write year/month/day (e.g., 2004/03/21 or 2004 March 21), which is the format usually used in Asia, because it's logical to put the biggest unit first. (When you write a number such as 213, you're putting the hundreds before the tens before the ones. Same principle.)

Second best is day-month-year (21 March 2004), which is the British system and which I favoured before the turn of the century.

I don't like the American practice of writing the month first (March 21, 2004) because it makes no sense to put the middle-sized unit first. It's as if the year were an afterthought - which it probably is when, in elementary school, we first learn how to write the date.

Sharon's art

When you marry an artist who gives birth to two more, you get to go to a lot of art exhibits. Today my younger daughter Sharon (artist and proprietor of sharonland.net) has an item on display at Aurum Studios, a jewelry store in downtown Athens, Georgia.

Sharon is in ninth grade at Athens Academy and often does fantasy art on commission for her friends. (This is digital art, suitable for use on web pages and in games.) Some of my favorites:

(That last one is Sharon herself.)

An anniversary / First light / 2 Windows Server 2003 notes

Today is the 22nd anniversary of my Ph.D.; I stayed at Yale an extra day to avoid finishing on April 1.

Astronomers call it "first light" when a new instrument is first used. Well, after 4 days of being too busy, I finally got my Meade Lunar-Planetary Imager out of the box last night and grabbed one image, though without having read the instructions I don't entirely know how to use this gadget. Early results are promising. Here's the moon crater Tycho and part of its ray system, taken with my old Celestron 5 and processed with Registax (since I haven't even looked at Meade's image processing functions yet).

I'm keeping a separate log of my adventures with this instrument here. We're having a spell of bad weather, as well as overwork, so it may be a while before I get much further.

We use roaming user profiles in our lab so that users can sit down at any Windows XP workstation, log in, and get the same desktop and files. This is done by copying the "profile" (desktop and user settings) from the server to the PC and back again at logon and logoff respectively.

Today a user reported that files newly placed on his desktop were disappearing when he logged in at another PC. The system Application log contained:

Event 1525:
Windows has detected that Offline Caching is enabled on the Roaming Profile share...

Sure enough, when we upgraded the server from Windows 2000 to 2003 last week, offline caching of the shared folders somehow got turned back on. We turned it off and all was well. It's in Properties of the shared folder, under Sharing; as I recall it took a bit of digging around in the menus.

This is an interesting case of a problem that can only be detected at the client but can only be solved at the server. Why doesn't the client simply refrain from caching the files that it knows ought not to be cached? "Inquiring minds want to know."

Meanwhile, an annoying problem went away thanks to the upgrade.

Suppose you go into Active Directory Users and Computers (on the server) and change someone's password. You can check a box that says, "User must change password at next logon," or words to that effect.

Well, under Windows 2000 (server and clients), this worked as advertised, and in fact our new-account-creation script would set that bit automatically for every new account.

When the clients upgraded to Windows XP, all of a sudden it didn't work any more. They would be told to change their password, and then also told:

You do not have permission to change your password.

After searching for a solution, we just stopped using that feature.

Well, now that the server is running 2003, it works again!

How not to program foolishly

In honor of April Fools' Day, I want to write about foolishness. But I'm dead serious. Freeware is a great thing, but some of the authors of free software make themselves look silly without meaning to.

Back in the early days of PCs, I encountered a game that required two 360K diskette drives even though it only used one of them. The author just couldn't imagine that drive B might not exist, or might not be a 360K drive.

Today, Windows software announces itself as amateurish if it:

  • Only runs if you have administrator privileges;
  • Doesn't distinguish one user's settings from another's; and
  • Can't be uninstalled from Control Panel - Add/Remove Programs.
At the Artificial Intelligence Center, writing our own installation scripts has become a way of life, because we have a multi-user environment and most freeware is totally unaware of multi-user environments. So we have to hack and improvise to get good software to work.

We don't even try to write uninstall scripts, because we wipe and reinstall our PCs every couple of years. But we wish the freeware community would take more notice of the way Windows software is supposed to behave.

Here are my guidelines for producing professional Windows software:
(1) Use environment variables to locate important directories. Specifically:

Variable                 Usual value Significance
%ProgramFiles% C:\Program Files Where programs are installed
%UserProfile% C:\Documents and Settings\username The user's profile (desktop, start menu, etc.)
%AppData% C:\Documents and Settings\username\Application Data User's private place for program settings
%AllUsersProfile% C:\Documents and Settings\All Users Desktop, start menu, etc. for all users
%SystemRoot% C:\WINDOWS or C:\WINNT Where Windows is installed
%Temp% C:\TEMP Space for temporary files

Examples of code to retrieve these:

Visual Basic:        Dim s As String
                     s =  Environment.GetEnvironmentVariable("UserProfile")

C#:                  string s := Environment.GetEnvironmentVariable("UserProfile");

C or C++:            char* s;
                     s =  getenv("UserProfile");

Never assume any of these directory locations; always check. You will find working installations of Windows on which any and all of them have been changed. For instance, my new RAID 5 system is going to run Windows from drive D!

[Note added June 26:] Jim Mischel writes to remind me that environment variables are not the most highly recommended way for a program to find out where My Documents and other special folders are. He writes:

If you're writing to the Windows API (i.e. not a .NET program), you should call SHGetFolderPath or SHGetFolderLocation. Those two work for Windows 2000 and later. For Win9X, the recommended functions are SHGetSpecialFolderPath and SHGetSpecialFolderLocation. The documentation for these functions says that using the environment strings directly (i.e. %ProgramFiles%) might be unreliable. (More precisely, a malicious or misguided program might change them; think about whether this would be a serious hazard in your situation.) Like much of the Windows API, these functions are difficult to use.

The recommended way to get folder locations in .NET programs is to call the System.Environment.GetFolderPath() method.

[Note added March 2006:] "Documents and Settings" was known as "Users" in early versions of Windows NT, and in Windows Vista, it will reportedly be changed back. "My Documents" will reportedly be renamed "Documents."

(2) Do not let the program write in C:\Program Files (i.e., its own directory). Most users don't have permission to do so! Instead, store temporary working files in %TEMP%, and store the user's settings in %AppData%\programname. This automatically gives each user a place for his own settings, without your program having to do any work to distinguish users from each other.
(3) Provide an uninstall method. Windows software is supposed to register itself with the operating system so the user can uninstall it from Control Panel.

Note that even the cheapest compilers (e.g., the $100 version of Visual Basic or C#) now come with utilities to build "setup" (deployment) packages using Microsoft Installer (MSI), InstallShield, or Wise Installer. All of these automatically provide uninstallers too. They also let you set registry options such as file extension associations ("Open With...").

(4) Always put shortcuts in All Users, not than the start menu and desktop of the user who installed the program.

Setup-generators like the ones I just mentioned will take care of this for you.

But not all programs require this much fanfare. Sometimes you just want to give people a small program to do just one thing. So here's a shortcut:

If your program consists of just one .exe (with no other data files or anything) and does not write on any files except those the user has chosen to work on, then it doesn't need all these provisions.

The user can just put the .exe file anywhere and run it by clicking on it.

And if he wants a professional-looking installation, here's what to do:

Just copy the .exe file into %AllUsersProfile%\Start Menu\Programs.

That's right - don't put a shortcut there, put the program itself there.

And to uninstall it, just delete it. What could be simpler?

One last tip. If you make up a filename extension, make it more than 3 letters long. There's no reason you can't name a file abc.defghijkl if you want to. Almost all 3-letter extensions have already been thought of by somebody (often with awkward conflicts, e.g., .tex is either a LaTeX document or a Corel texture). But 4- and 5-letter extensions are very seldom used.

There. Don't you feel less foolish already?

If what you are looking for is not here, please look at previous months.

This page holds entries for the current month plus,
until mid-month, the last half of the previous month.