1999

1998

June
30, 2005: How POPFile Fails

I've been using POPFile for a long time, and until about a year
ago, it worked well, with extreme accuracyas high as 99.6%
at one point. A year ago, I changed hosting firms, and immediately
after I did, my daily spam count fell by 80%. (I'm still not entirely
sure why that happened. My new hosting service insists that they're
not doing any server side filtering, but I can't imagine what else
it might be.)

Alas, that was also the point where POPFile began to lose accuracy.
I'm currently down to 96.8% accuracy, and while some people might
consider that a triumph, I'm concerned. I'm getting more false positives
than ever, and as you might expect, given a "trainable"
filter, I can't precisely tell why. I have been using magnets to
"pull" my spammy-looking "good" mail (primarily
vendor newsletters) to my inbox without affecting the corpus. I
check POPFile's history list religiously, and I realize that I'm
now spending more time on POPFile training than I used to spend
blacklisting domains and misspelled words and all the other spammer
tricks.

Some odd notes on this phenom and recent spam generally:

Spammers are certainly attempting to imitate "real"
mail more than ever. My false negatives usually sound like friendly
letters that do almost nothing but suggest that I go to a Web
site. As I get a lot of "real" mail pointing me to interesting
Web sites, this is a uniquely (for me) effective ploy.

I am getting a huge number of stock scam messages. They're
hard to block via keywords because they contain no address whatsoever
and are sent through botnets. The ones written well sometimes
sneak past POPFile. There is almost nothing unique in them to
block on, except for a clueless few who use novel spellings like
"st0ck." This must be a very effective form of fraud
because it's growing at the expense of most other categories.
There must be a lot of idiots in the investment market; and as
much as I want to see Social Security reform, I'd much rather
see SS funds move to personally owned CDs or Treasury bills than
stocks or bonds.

Porn spam is the most illiterate of all spam. Fortunately, it's
also very easy for POPFile to snag. Volume is up and down and
I suspect most of the traffic is being routed to blocks of porn
sites under common ownership.

Phishing spams are way down. I barely get one or two a week
now instead of three or four every day. Not sure why this should
be so. Dare I hope that people are getting the message?

I'm a little disappointed that POPFile's recent development updates
have emphasized what I consider minor features like multiuser logins
instead of adding things it really needs to combat spam directly:

"Teaching" magnets that could work two ways: to blacklist
known spammers (like email-deals.com) and whitelist senders from
whom any mail is accepted, in both cases updating the POPFile
corpus so that POPFile can learn without my having to vet its
decisions on known baddies and my regular correspondents. This
amounts to fully automatic training and would cut both false positives
and negatives hugely. POPFile needs this more urgently than anything
else I could imagine.

A system to apply Bayesian techniques to attached bitmaps. This
would allow POPFile to identify the bitmaps used as practically
the sole element in many recent spams. I get a reasonable number
of attached images that I want to see (a lot of them are Pete
Albrecht's astrophotos; many others are photos from relatives)
and so I don't want to shut out attached images completely. Alas,
I'm not good enough to know how practical this would be, but I'm
guessing that it could be done.

I do appreciate that it's a free utility, but it's working less well
for me all the time, and I can only assume the same is happening to
others as well. In the meantime, I'm getting less spam, but spending
more time weeding out POPFile errors. Not good.

June
29, 2005: Odd Lots

53 years old today. I got a haircut a few days ago. It took
about five minutes; I guess there are compensations to age. I
was never a movie star, but Carol still thinks I look good, and
that's more than enough for me.

I have lost the reference, but if it's a hoax it's a good one:
By reports, some wag has initiated condemnation proceedings on
Supreme Court Justice Souter's house somewhere in Connecticut,
asking the municipality to make way for a new hotel. Bravo, dude.
No one could have made the point any better than that! (Nonetheless,
it sure sounds like a hoax!)

A fair amount of traffic here on pedomorphic apes (see my entry
for June 26, 2005) which might more
accurately called neotenic apes. (Thanks to Michael Covington
for pointing that out.) A friend showed me a book by Michael Shermer
entitled The Science of Good and Evil, (which otherwise
seemed very lightweight) showing sketches of a young chimpanzee's
skull, an adult chimp's skull, and a human skull. Apart from size,
the human skull and the baby chimp skull were almost identical,
whereas the adult chimp skull was radically different in shape
as well as size. If you're in the bookstore, flip to page 227.
If I can find something similar on the Web I'll point to it here.

Another line I spotted in skimming The Science of Good and
Evil was the French economist Frederic
Bastiat's contention that "where goods do not cross borders,
armies will." The worst war in human history followed 20-odd
years of worldwide economic nationalism (and resulting depression)
during which international trade nearly ground to a halt. People
still think that the stock market crash of 1929 caused the Great
Depression, when in fact that was at best a psychological trigger,
much as 9-11 was. The Hawley-Smoot tariff law and its fellows
around the world were at the bottom of the misery of the 1930s,
which in turn (I firmly believe) turned the crank to kick off
World War II. Protectionism may be dangerous in ways we don't
fully realize.

June
27, 2005: The End of the Road for Commercial P2P

As I write this, the aggregators and blogosphere are exploding
with the news that the U.S. Supreme Court handed down a
unanimous verdict against Grokster in the much-anticipated file-sharing
case. There are some nuances in the case (it looks like how you
position a network has something to do with liability) but the real-world
truth is much simpler: Commercial application of file-oriented peer-to-peer
technology is now basically impossible. With a Supreme Court decision
in their pockets, Hollywood will sue any peer-to-peer networking
organization irrespective of what the network was designed to do,
and irrespective of any built-in protection against file piracy.
Big Media is so utterly terrified of the whole idea of peer-to-peer
connections that they'll do whatever they can to stomp any technology
that attempts to use P2P to move files for whatever purpose. Tech
startups don't have the money to fight that kind of legal assault.
P2P commercialization is over. (Note that I exclude non-file networks
like Skype, and if the Skype guys ever pondered putting file search
capabilities into their system, they're burning those design documents
out in the alley right now.)

This isn't, of course, the end of file sharing. The networks themselves
are not under any kind of central control. No one can flip a switch
and shut down Gnutella or Freenet. (For the Kazaa and Morpheus networks
that's not as clear, though I think that their protocols have been
reverse-engineered and are now present in free clients.) There are
millions of copies of P2P clients already out there, and they're
easily shared over their own networks. Development of such clients
will continue outside the reach of U.S. law; however, I think that
U.S. based open-source P2P projects could be in jeopardy.

There's quite a bit of irony in this: What the MGM vs. Grokster case
really does is preclude all conceivable legitimate uses of file-based
P2P technology, while leaving file piracy itself relatively untouched.
I'm sure that the file-sharing underground, always happy to take up
a challenge, will eventually figure out how to do truly anonymous
file-sharing. As I've
written earlier, I'm convinced that virus-seeded botnets will
be the next thing they try, and if they do, it may be the only way
we'll be rid of the spammers and phishers who currently use botnets,
since no one else seems the least motivated to take them on. Hollywood
willand that will be an interesting fight indeed.

June
26, 2005: Turning Foxes into Dogs

Colorado Springs is the only place in the U.S. I've ever seen red
fox in the wild (we saw one in England in 1997) and we now have
one living in the gash in the hillside to the north of our house.
Carol and I see him regularly, because he comes out of hiding while
we're watering the new plants on the hillside terraces, and watches
us expectantly, as though waiting for a handout.

Fox have always fascinated me (my Boy Scout years were spent in
the Fox Patrol) and this one does indeed show evidence that someone
in the neighborhood is feeding him. He's sleek and healthy looking,
and we watched him throwing a pine cone around on the rocks down
the hillside, as though he were QBit with a Nylabone. He's come
within fifteen feet of us, though never (of course) when I have
my camera in my pocket.

I've heard it said that dogs are a mysterious special case in terms
of domestication, and that all other attempts to domesticate wild
canids have to nothing. Not so. A little research turned up a fascinating
long-horizon research project going on at the Institute of Cytology
and Genetics in Siberia since 1959. A team led by Dmitry Belyaev
took a population of the Siberian silver fox (a racial variant of
the fox species vulpes vulpes that also includes the red
fox) from a nearby fur ranch and began to select individuals for
one trait: tameness. Only those 5% of the animals showing the greatest
willingness to be approached and eventually handled by the team
were allowed to breed.

Within ten generations, the fox became friendly to a degree previously
unknown in the species. Today, after 40 years and over 30 generations,
the Institute reliably breeds silver fox friendly enough to be sold
as pets. That's amazing enough. But what floored me (and others)
was an unexpected side effect: The tame fox began to look like
dogs. Morphological changes like a broader skull, floppy ears,
and a tail carried high and curled forward made them more dog-like.
Their seratonin levels are higher than wild fox, and their stress
hormone levels much lower. Their behavior became more dog-like as
well: the tame foxes wagged their tails, whined, and demanded attention
from the team members, even licking their faces.

All of these characteristics are observed, even if fleetingly,
in young fox kits. What seems to be happening is a phenomenon called
pedomorphism: adult animals retaining the proportions, behavior,
and brain chemistry of juveniles, only larger. This seems to be
the relationship between dogs and the wolf stock we think they were
bred from; adult dogs resemble oversize wolf pups.

I haven't found any crisp explanation of why breeding for tameness
also breeds for pedomorphism. (This
article summarizes the research but doesn't offer any theories.
Look at that picture of a tame fox in the snow! Woof!) Even the
current leader of the team (Belyaev died over 15 years ago) is puzzled.
Her article
is interesting and worth readingand it would be tragic if
the experiment had to be terminated due to chaos in the Russian
economy. Here's another short, if dense, paper
on the topic. This
article is more on the nature of wild fox; the author indicates
that fox appeared relatively recently in the fossil record, and
feels that fox genetics are unstable and still looking for some
equilibrium point, hence the ease with which they were domesticated
by Belyaev. (A good part of the article is pure speculation, but
he presents some interesting facts.)

The truth may be that tamenessa willingness to play, to engage
animals of different species (including enemies) and to just not
be afraidis simply a mammalian juvenile characteristic. Breed
for tameness, and you create a permanent juvenile. The team in Siberia
has done some work with otters, and it seems to be moving in the
same direction.

In looking at humanity, I see us moving from ferocity toward tameness.
(Some
people think that this lies at the heart of our current malaise.)
It would be helpful if we had some living specimens of the creatures
from which we descended, for comparison, but I'd wager that adult
humans differ less from juvenile humans than adult proto-humans did
from their young. I'll bet we're also more likely to play, to explore,
to adapt, and coexist with other creatures. The secret to humanity's
success may simply be that we're overgrown adolescents. Now, if we
could only add back the wisdom of age...

June
24, 2005: Synchronicity and the Combinatorially Exploding Penny

Synchronicity
(meaningful coincidences of preposterous unlikelihood) is something
that doesn't interest people very much until such a coincidence
happens to them. I can point to three instances of synchonicity
in my life: One marginal, one peculiar, and one that just floored
me. The marginal one was the
Exuberant Cross, which is an excellent example of seeing symbolism
in the ordinary, though there is some peculiarity in seeing it the
first morning I was living in Colorado. The peculiar one we'll leave
for another time. But then there's the big one...

Back in 1996 I went down the road aways from the office to get
a sandwich. This was unusual to begin with; I usually ate lunch
with Carol, but she wasn't at work that day. I was in a bad mood,
a little depressed from thinking too much about my father. As I've
said too often here, he died young and in a gruesome fashion, and
there was unfinished business between us. I was only beginning to
work through the issues in the mid-1990s. Now and then I rage at
his memory; most of the time I just miss him. I turned on the car
radio and the oldies station was playing something obnoxious, so
I hit the country button. After the concluding seconds of some cowboy
song and a few seconds of DJ chatter, another song started up.

I'd heard it before: It was
Colin Raye's "Love, Me", an otherwise unremarkable
tearjerker thing about a boy whose grandma dies. Carol always turned
the radio off when it came on. There are times when I can listen
and times when I just punch another button. This time I listened,
and boy, the song worked as designed. Read the lyrics; they're clever.
(Ignore the sappy formatting.) The first line is significant:

"I read a note
my grandma wrote, back in 1923..."

I had failed out of engineering school while my father was dying,
and I felt for many years like I had let him down, just like I did
when I had failed to love baseball as a ten-year-old. He could not
imagine how a writer could make a living, and I could not imagine
how an engineer could smoke himself to death. As a young man, I
often wanted to say, Don't give up on me. And all my life
it was a private point of honor for me not to let him down. (I didn't.)
So there were some connections there, in that stupid song.

It wasn't that far to the sandwich place. When I parked I mopped
my eyes and turned the radio off in exasperation, feeling like it
had suckered me in to an unnecessary sentimental state. Shaking
my head, I went into the shop and ordered my usual ham and swiss.
The soda-and-sandwich lunch special came out to $4.99. I handed
the guy a fiver. He dug in the drawer and pulled out a penny, which
he slid across the counter to me. It looked pretty beat up, and
when I picked it up I flipped it over and took a closer look.

The date on the penny was 1923.

Hoo-boy.

So. What are the chances? I got one coin in change. I hadn't
seen a penny that old in change in probably twenty years. I didn't
listen to country music all that often. And it was maybe a five-minute
ride to the sandwich place, during which that one song alone had
begun and played to completion. How could all those things line
up so perfectly, on a day when I was already depressed from ruminating
about losing my father? A New Ager would say "It's a Sign.
He's there. He knows you didn't let him down."

A part of me wanted to think of it as a Sign. (Another little part
still does.) On the other hand, I'm not a New Ager, and the incident
forced me to think a little bit about about outrageous coincidences.
Here are the major points that come out of the exercise:

In 45 years of living, a human being experiences an enormous
number of identifiable things, from country songs to birds on
the lawn to oddly shaped clouds and everything else that we notice
during the 16-odd hours we're awake every day.

Human beings are complex things, with a great many thoughts,
memories, cravings, articles of faith, and emotional flashpoints.

Something in our mental machinery tries very hard to
find meaning in everyday life.

In rolling those three points together I come up with an interesting
conclusion: It would be remarkable for someone to live 45 years
and not run into a coincidence like that at least once. (My
other two experiences of synchronicity are pikers by comparison.)
In each life there is a combinatorial explosion of possible alignments
of thoughts, feelings, and objective experiences so large as to
be beyond expressing. Little alignments happen now and then. ("Just
as I pulled into the packed parking lot, somebody was pulling out
right in front of me!") Every so often, an alignment happens
that makes us shake our heads in wonder. (I'll tell you about the
"I love you" stone someday.) But sooner or later, everybody
is going to run into a whopper.

Keep your eyes open. You wouldn't want to miss it!

June
23, 2005: The Ctrl-A Problem and Venerable Keyboards

I vented a little about the Ctrl-A problem in my May 31, 2005 entry,
and a couple of people wrote to ask, What the hell is the Ctrl-A
problem? Then I recalled: It's really not a problem anymore.
However, all but one keyboard in use in this house is a venerable
keyboard, the youngest of which is almost ten years old. (The oldest,
a NEC item I ordered as a spare part after trying it and liking
it on some forgotten NEC box at Comdex '85, is almost 20.) It has
to do with key placement. Look at the photo below:

Notice the way the keys on the left edge of the main key block
are laid out: Ctrl is right next to "A". One careless
keystroke can bridge the two keys, and the Ctrl-A key combo selects
the entire document. Once you select the entire document, the
next keypress replaces everything in the document with a single
letter.

Ouch.

So what is the true idiocy here? The assignment of "select
all" to Ctrl-A? Or putting the Ctrl key next to the A key?
Answer: Neither. The true idiocy is that I lost the alternate key
caps shipped with the keyboard back in 1991. (Yes, this same keyboard
has been in use almost continuously for fourteen years.) The Northgate
Omnis used to come with a couple of alternate key caps, so you could
swap (if I recall correctly) Ctrl for Alt. A DIP switch under the
Omnikey 102 logo on the upper left corner of the keyboard allows
you to select alternate key layouts so that you can swap the caps
and still get the right key codes for the swapped caps.

Although my hands will be stumbling for some time if I change the
key layout, I've had enough of the Ctrl-A foolishness. It's just
barely possible that the alternate keycaps are rattling around in
the bottom of a box somewhere, and I've been furiously searching
boxes for several days now. (I managed to empty seven of them in
the process, which was a nice side-benefit.) No luck, but I'll keep
looking.

One other note: Although this keyboard is 14 years old, by a wonderful
coincidence the pencil slot is almost precisely the right size to
hold several Cruzer Mini thumb drives, which are now my primary
medium for read/write removable storage. The three main Cruzers
I use daily now live there except when I travel, and the rest are
close by in a drawer. This is yet another reason to keep using the
OmniKey 102. When this one dies, I may have to buy another one,
as the other two OmniKeys that I have in the house here are getting
flaky. Fortunately, although Northgate itself is history, the OmniKey
keyboards are still being produced by a company called Creative
Vision Technologies, under the Avant
Stellar brand. They have the ridiculous top row of function
keys (a bit of IBM mainframe foolishness) and cost $189, but that's
what my fingers like, and I live by those fingers. So it goes.

Update: Found this
site, of a chap who repairs Northgate keyboardsand woot
woot! They sell the
alternate keycaps (with a puller) for $8! I can now get the
keyboard with the cranky space bar repaired, so maybe it'll last
another fifteen years. And the Ctrl-A problem will be history. (Lesson:
Never throw out anything!)

June
22, 2005: Mumblesheeting Aardblog

I did a little pencil-based entity-relationship work last night
while brainstorming my ideal blogging utility, and it might be worth
an entry to document the idea here. I don't really expect to build
this thing (though I intend to do some work on the client-server
database part as continuing education) but I want the ideas to be
out there, in case someone else is so moved.

Fundamental design assumptions:

All content editing is done on the client side. I don't
care what anybody says, server-based rich content editing sucks.
The "edit from anywhere" argument against client-side
content editing is what I call an infrared herring; it's so red
you can hardly see it.

All content is stored on both the client database and the server
database, with a module to make sure they remain in sync. (This
will be easy, as I don't expect to do server-side editing.) Servers
no longer have a storage-size advantage over clientsquite
the contrary; cheap Web hosting now gives you way less storage
than you'll find on an old laptop. Furthermore, the 7-year entirety
of ContraPositive (including all photos and all of the old VDM
Diary entries) takes up only 55 MB.

There is only one content database, but metatagging (as I described
in my June 15, 2005 entry) allows the
display of any number of "virtual blogs" via database
queries. This allows readers to see only the entries they're interested
in.

To as great an extent as possible (and I don't know yet how
possible this is) the server-side database should represent content
the same way (from a query perspective) as the client does. This
will allow a query on the client side to generate the same "virtual
blog" as the query would on the server.

The client should be able to generate not only RSS feeds, but
printable representations of the full database or any virtual
blog. Hey, I'm an old guy. I like reading paper.

The client should generate text or photo indexes for the full
blog or any virtual blog.

At the blogger's option, the server-side database should be
able to download itself to an Aardblog reader client that does
not include the content editor. I don't trust servers or broadband
connections to be available everywhere, 24/7/365. Why not just
download the whole thing and read it offline in your tent on the
Mogollon Rim? (Or print it?)

This may or may not be useful, but it's fun: The server should
generate a stack-rank of entries by the number of times each is
read. I'd be curious to know what my readers like.

Minor tables should store things like the blogroll and other
loose ends.

I'm of two minds about blog comments, since they're an invitation
to spammers and flamers. Comments are thus not part of the design
at this point.

Those are the major points so far. From a database standpoint,
the design is CS 105 stuff: A mere handful of tables without a lot
of exotic relationships. (The queries are actually the trickiest
part of the whole thing.) I'm constrained by my hosting service
to a MySQL database on the server side. On the client side, I could
also use MySQL, but I also like built-in database engines like DBISAM.

That's where it sits right now. I'll see about putting my notes
into a more formal ERD on Visio, and if I do, I'll post it here.

And oh, yeah. The client will be done in Delphi. I'm stubborn about
that.

June
21, 2005: A New PCT and VDM History & Archive
Page

In my ongoing if intermittent efforts to modernize my Web presence,
I've created a
new page containing a brief history of PC Techniques
and Visual Developer Magazine, as well as links to whatever
Web-based material I can find that was originally published in either
magazine. This includes a lot of my own editorials and end-page
pieces, and as I scan the ones I no longer have files for, I'll
post the rest.

If you ever had anything published in either of my magazines and
would like me to list your home page (not your email address!) please
drop a note and let me know. Also, I'd like to post links to any
PCT/VDM articles that interested readers could find online.

While I have you, a mildly rare astronomical event occurs tomorrow
night: The full Moon occurs on the Summer Solstice, and thus is
as far south in the sky as a full Moon ever gets. It will also be
about as measurably big as the full Moon ever gets, because it reaches
perigee on Thursday. The difference is a little over 10%, substantial
but probably not noticeable without instruments.

Virtually all of "the Moon is bigger tonight" effect
is in truth an optical illusion: It's simply closer to whatever
lies on the souther horizon for you, and looks bigger by comparison.
(A lonely Moon high in the sky always looks smaller.)

If I recall, this last happened in 1982, and I was clouded out. Foo.
It's fun; take a look if you get clear skies. Here's a
nice page that speaks of the astronomy behind this effect in more
detail.

June
20, 2005: Odd Lots

Kodak
is about to stop making black and white photographic paper.
In some respects this is a shame; As a high school freshman I
enjoyed making contact prints in my mother's basement from the
Plus-X 120 format (i.e., big) film that my creaky, hand-me-down
1940s bellows camera used. (I used to repair light leaks in the
shabby paper bellows with Chiquita stickers peeled off bananas;
after which I began to call it my "Banana Camera.")
Interestingly, one reason for b/w photo paper's demise is that
modern photo printers can print b/w acceptably well for all but
the orteests among us, and digital photo manipulation can probably
allow every bit the control (and maybe more) that paper allows.
That said, digital prints will never offer the precise visual
feel that photo paper does, which is true for tintypes and Daguerreotypes
as well. This is why I'm sure that somebody, somewhere will take
up the slack and start making new paper in small quantities, and
those who value it will pay the (much higher) price.

I downloaded the 566 MB Snappix
ISO yesterday afternoon, and tried to do it via BitTorrent. No
luck. In half an hour, the client could only find one other source
for it, and that was trickling in at 1.8 KBps. Not wanting to
wait a week for the product, I downloaded it conventionally from
a distro server somewhere at 200 KBps and got it in less than
an hour. I can't prove it, but I suspect that the RIAA and MPAA
have scared so many people away from BitTorrent (and shuttered
so many torrent sites) that even its legitimate uses (it was designed
for rapid download of free Linux distributions) are crippled.

People who value language are delivering a torrent of gripes
to my inbox in the wake of my item on "nauseous." (See
my entry for June 17, 2005.) The current
favorite is "decimate," which actually means "reduce
by one tenth" but has come to mean "virtually annihilated."
When the Imperial Roman Army got annoyed with one of its legions,
they'd pull out every tenth guy from ranks and gut him in front
of the others. It worked; while this practice was current, Rome
ruled the world. You don't have to kill 75% of everybody to make
an impression.

If you explode a modest nuclear device under water near the
mouth of an estuary, could you create a monster wave rolling up
the estuary, taking out everything in its path? Are artificial
tsunamis the future of warfare? Has Tom Clancy thought of this
already? Supercomputer Mike in The Moon Is a Harch Mistress
lobbed boulders down to Earth from his lunar railgun to make a
point, but he targeted them at thinly populated areas. Something
the size of a garbage truck coming down at supersonic velocity
into San Francisco Bay would make quite a mess. Just something
else to worry about, heh.

Finally, I bought a bottle of wine the other day because it
got decent reviews and had a very intriguing name and label. Wrongo
Dongo is so-so wine, resembling a slightly weak cabernet (and
they said it was fruit-forward! Not!) but the label borrows from
the art style of Byzantine mosaics, and I like those. Anyway,
here's the label so you don't have to buy the wine. The label
is definitely the best part.

June
19, 2005: Stupid Questions from SoundMax

The
new machine here has performed fairly well since March, with only
two exceptions: 1) It runs a little hot, and 2) it includes the
SoundMax audio system on the motherboard. The heat problem is borderline,
and doesn't become an issue until I begin running several compute-intensive
things at once. I may simply need a better CPU cooler. But SoundMax,
egad.

Every so often, without warning, the SoundMax drivers pop up this
ridiculous wizard, which condescendingly demands to know "What
did you plug into the front panel headphone jack, dumbass?"
An animation then shows a pink (microphone) plug heading for the
green (headphone) jack.

The problem is, I haven't done anything with the front panel audio
jacks in a couple of weeks. The headphones have been plugged into
the headphone jack all along, and I've been using them successfully.
So why does it suddenly get trippy and forget what's been plugged
into its own damned holes for weeks at a time?

SoundMax is a lousy technology, and it has other defects than thisbut
this is the one that makes me craziest. Another is that you can't
use the front and back jacks simultaneously, and thus there is no
way to have both the headset and a pair of speakers plugged in at
once. I used to do this on the Xeon with a SoundBlaster Live card
all the time. Fortunately, SoundMax can be disabled from BIOS Setup,
and it doesn't take a wizard to tell me that a trip to CompUSA is
in my future.

June
18, 2005: Solaris 10 in a VM

I installed Solaris 10 in a VMWare virtual machine earlier today.
This was remarkable, for a number of reasons:

I've always wanted to get a good look at Solaris, but some years
ago, when I was editing VDM, Sun's PR firm gave me the third
degree after I requested a review copy of the OS, which even then
was a no-charge item. They were obsessed with whether or not I wanted
it for "personal use." I am obsessed with not encouraging
idiots by taking such questions seriously. I offered to send them
several copies of the magazine. They didn't return my email. End
of relationship.

Anyway. Solaris
10 is a free download from Sun's site. Note well that it's not
open source, though a few days ago Sun released OpenSolaris
as an open-source project. The two are not the same, and I haven't
had time yet to figure out how they differ. I managed to download
the whole thing in a little under 90 minutes, using Sun's free download
manager utility. The key is consistent 600 Kbps throughput from
Sun's servers. Damn few download sites can meet (much less top)
that.

You get it in five chunks, which you concatenate via the COPY command
in a Windows console. The result is a 3 GB .ISO file. To install
it under VMWare, you create a new VM, and assign the ISO to the
optical drive device. The ISO is bootable, and when you "power
up" the VM, the Solaris installer in the ISO boots up and runs
its install script.

It was the goofiest install script I've ever seen. As best I can
recall, it never asked me for a hostname, and thus declared the
VM's hostname to be "unknown." While configuring networking
it asked me if I wanted to use DHCP. I did. After that it immediately
started asking me for all the parameters you'd ordinarily get from
DHCP but need for manual TCP/IP configuration, like DNS servers.

Miraculously, it booted up and ran, and got me into Sun's very
pretty Java
Desktop System, which is based on Gnome. I messed up the X server
configuration during install, though if you follow the link in the
last bullet point above, you may understand why. So I got the minimal
X VGA configuration of 640 X 480. To get any of the larger display
formats you need to edit the X parameters. So I opened a console
and attempted to run the kdmconfig utility. It refused to run, because
it needed a console at least 80 X 24 in size, and the largest console
I could get in a 640 X 480 display was 77 X 23. Grrr.

I logged out, and logged back in to the Common
Desktop Environment (CDE), which happily gave me a full-sized
console. I could thus configure the X server, which actually had
to be done by running another utility called xorgconfig. This
page was very helpful. I can now run Solaris at 1024
X 768, which is the top resolution this monitor can display sharply.
Samba works, too.

One final note: I hadn't seen the
Motif window manager (used by the CDE) in ten or twelve years,
since I'd watched a friend running some version of Unix on a slow
PC. At that time, I thought it was gorgeous and elegant, if a little
slow. It was funny to see how primitive the damned thing looked,
especially at 640 X 480. We've come a long way.

Anyway. Solaris 10 is running, and running well. I'm not sure what
I'm going to do with it, but like 2001's Space Child said,
I'll think of something.

June
17, 2005: Odd Lots

Brad Trupp, who used to write for Visual Developer, wrote
to tell me that he's selling a
client-side blogging utility written in Delphi. (See my entry
for June 15, 2005.) I've got it running
in a VM and will report after I fool around with it a little,
but first impressions have been very good. (I really don't
like Web apps!)

My grandfather Harry Duntemann fought in France in WWI, and
he brought back a large quantity of souvenirs, including what
always looked to me like unexploded 40 mm shells. (These proved
to be empty, though inside they smelled...sulfurous.) What was
most fascinating were the two spiked German helmets, and I had
always wondered what they were thinking when they designed those.
It was just the height of Prussian military style, I guess. (I
always wondered if it was a sort of last-ditch weapon: Put your
head down and charge!) The Web delivers all things asked
for (pretty much) and Pete Albrecht sent me a link to a
history of the German pickelhaube. Wow.

A young woman at the Cingular store shocked me mightily yesterday
by understanding that the
word "nauseous" means "something that causes nausea"
and is not a synonym for "nauseated." (Don't
ask how it came up in conversation.) I'm sure I've violated that
rule a number of times myself in the 35-odd years since I learned
it, but cripes, she couldn't have been more than 23. Is there
hope for Western culture? Maybe.

Finally, the award for the most-fun Web site I've seen in half-past
forever goes to The
Museum of Retro Technology. It will take you half the night,
but go through it all. Some of it isn't horribly odd (like cab-forward
locomotives) but some of it...is.
It's amazing how many people have tried building monowheels,
but there you have it. Acoustic radar, gyrocars, electromechanical
amplifiers, and a spur gear that looks like the face in Munch's
The Scream. It's all there. Don't miss any of it.

June
16, 2005: Roadkill Red, Really. (Would I Lie to You?)

The
great tragedy in wine circles these days isn't plastic corks (which
I actually support; save the poor cork trees!) but the death of
soakable labels. In the old days you could put a wine bottle in
a kitchen sink full of water for an hour and the label would come
loose so you could press it dry and keep it in a wine scrapbook.
No more. Wine labels are now peel-off-stick-down, and they don't
soak off at all.

With that in mind, I made a wager with myself that I could peel a
label off my last bottle of Roadkill Red (not trivial, by the way)
so I could prove to you that I wasn't making it up. I won. The label
is above. It's from Colorado'
s oldest winery. If you dislike dry wines it's wonderful, about
as sweet as white zin but a lot tastier and less acidic. Alas, you're
unlikely to find it outside of Colorado, and even in Colorado a lot
of wineshop owners look at you like a leper if you ask for it. Screw
'em. Get it if you can. Lighter than a conventional red but darker
and more full-bodied than a rosé, it's perfect with any meat
that isn't still moving.

June
15, 2005: Aardblog, Mon Dieu

As time has allowed (and it hasn't, much) I've been looking at
the multitude of blogging utilities, trying to see if there's anything
suitable to move Contra to. People are begging for an RSS feed,
and although I now know how it works and could do it by hand, I'd
really like something that would automate the process. (I edit this
whole damned thing by hand, in Dreamweaver 3.) So what I've been
doing is envisioning what I would consider my ideal blogging system.
"Blog" is an ugly word and I dislike it, but I recognize
that nobody asked me and I'll use it when necessary for clarity.

Like now. So let's talk about a hypothetical piece of software
called Aardblog. Let me lay out the major features I'd like it to
have:

Each day's entry should be stored as a separate record (including
HTML markup) in both the client-side and server-side databases.

Each record should have a field for year, for month, for date,
and for hour posted. There are people who post multiple entries
in a day, and although I have rarely wanted to do that, in some
circumstances it could be useful.

Each record should have a field for an author-defined metadata
tag, indicating what category a given entry belongs to. (I'll
come back to tags a little later.)

Both client and server should have a mechanism for creating
a view of the blog entries by filtering on both the time-posted
fields and the metadata tags.

A right-clickable icon somewhere in each entry, allowing readers
to "lift" a database query URL in order to link to an
individual entry.

Of course, all this is above and beyond a simple HTML editor that
does conventional markup and insertion of graphics and links to
other rich media, and whatever else a fundamental blogging system
requires.

Now, my main innovation here (if you can call it that) lies in
the ability to apply metadata to individual entries. Furthermore,
what I want is a tag that can express hierarchical categories. People
who remember my musings on Aardmarks will know instantly what I
mean. Hierarchy
for classification is almost dead, in part because an amazing
number of supposedly educated nitwits actually believe that hierarchy
itself is immoral because it always expresses dominance or
prejudice. Others have simply never been taught how to think hierarchically.
Few kids are forced to study the Dewey Decimal System in grade school,
as I was. So it goes, and their loss.

Hierarchy as I use it here actually expresses increasing precision
that includes context, in that while a dog is an animal, a bichon
frise is a kind of dog, so animal|mammal|dog|bichon frise
is a hierarchical tag that takes you from the most general category
to the most specific. What is really killing hierarchical classification,
though, is simple laziness, because Google doesn't require tagging.
Google can be an infuriating way to search for information on things
that have common or ambiguous names, or anything that's for sale.
Try a Google search for reviews on consumer electronics products
and see what you're up against. I use Google, but that's because
it's all there is. For my own work, I want the precision of hierarchical
category tags.

My mistake in developing Aardmarks was creating a classification
hierarchy that was so deep and rich that nobody but a library science
geek would try to use it. Open Directory had this problem too, amplified
by the fact that the classification hierarchy itself was inexplicably
nonintuitive. Alas, the Web is too big and too rich to use hierarchical
categorization alone: Either your classification hierarchy will
be so huge as to be unusable, or your links per category will be
too many to scan manually. Ideally, Web searches would use both,
but until people start tagging their Web content by hierarchical
categories, it can't happen.

Within one blog written by one guy, this doesn't apply. I've been
blogging longer than almost anybody on Earth, and still have only
about 2,000 entries in alland as broad as my interests may
seem, what I write tends to fall into a mere handful of categories.
For Contra, I could get by with a classification hierarchy having
as few as twenty five or thirty categories total.

So what I want is a small treeview pane that generates a view of
Contra by entry category. This will allow people who aren't interested
in computer stuff to read my entries on religion or history or personal
reflections without having to scroll past comments on software products.
This would also allow me to consciously create views of Contra that
would in effect divide it into separate, topic-specific blogs. "Jeff
Duntemann on Computing" or "Jeff Duntemann on Wi-Fi"
could each have its own header page, and be nothing more than a
database search by topic. And if you want the whole thing, well,
another link would show you *.

Something like Aardblog may already exist; if it does, do let me know.
If not, well, it would make an interesting summer project, and I may
poke at it myself in Delphi as time allows. If it does. (I won't get
my hopes up.)

June
14, 2005: Cloning Virtual Machines

VMWare Workstation 5 has another extremely useful trick that seems
obvious once (but not before) you grasp it: Cloning one virtual
PC as a way of creating another. In yesterday's
entry I spoke of virtual machine snapshots. As the name implies,
snapshots are not themselves virtual machines, but rather files
containing the state of a specific virtual machine.
Without that virtual machine, the snapshot is useless.

There is a wizard in VMWare for creating brand new virtual machines,
and once you create one, you must install an OS in it, pretty much
as you'd install an OS on a new hard drive or drive partition. However,
once you have a virtual PC created, configured, and loaded with
an OS, you can create independent, rubber-stamp duplicates of that
virtual PC.

The first use that comes to mind is probably the most common one:
Creating a base configuration for software testing. In my own research
here this morning, I created a virtual machine with Windows 2000,
and then configured it as I tend to use it, complete with a number
of small utilities (like WinZip) that I find essential. That done,
I can now create a clone of that virtual PC anytime I need to test
something, and when I'm done with the test, I can just throw away
the clone if I don't feel it represents any lessons that need to
be retained in the form of a working virtual PC. (One doesn't need
a 2 GB disk file to tell you that a text editor is lousy.) This
can also be done with snapshots, as I described yesterday. However,
cloned virtual PCs allow me to (for example) run two separate versions
of a single product side by side for comparison, or two copies of
a single version of a product to see how they compare when working
on different types of data.

Workstation 5 can create clones either independently (meaning that
they're rubber-stamps of the original virtual PC) or as "linked"
clones, which means that VMWare stores the linked clone as a set
of deltas from the original virtual PC. Linked clones are much smaller
in disk size than regular clones. I haven't tried this yet, but
it raises the question of precisely what happens if you change something
in the original virtual PC. However, if you leave the original virtual
PC instance alone, you can create a whole bunch of virtual PCs for
software testing without filling up that monster hard drive.

There's another slick Workstation 5 feature that I probably won't
get to until tomorrow: teams. Linking several virtual PCs as a team
allows them to share memory, and also create a virtual LAN among
them for network app testing. This is less useful to me, but I'll
bet for some people it's the holy grail.

More as I learn it.

June
13, 2005: Machine State Snapshots with VMWare

Given that Norton Ghost has been around for awhile, the idea of
"ghosting" a disk partition to a file (so you can later
revert to any given saved image) is a commonplace, at least among
techies. At last count, I had eight states saved (through Ghost
2003) for this particular machine's C: drive, and I can roll back
to any of them at any time, in case malware eats something or Registry
rot gets too bad to degunk. Rolling back from a Ghost image on an
annual basis may be the ideal way to do "spring cleaning"
on an active Windows machine.

Now there's VMWare Workstation 5. Whoa. This is potent.
Within a VMWare virtual machine, you can take snapshots just as
with Ghost. VMWare snapshots do more than record the contents of
a disk drive, however. They record the entire machine state.
This includes memory and the state of any opened and running
apps.

This means that you can take snapshots of successive states of
an application, and roll back to an earlier state. I've been testing
Lazarus, the free (if minimal) Delphi clone. I took a snap of the
"fresh" Lazarus install. I can now install new Lazarus
software components, and if the components don't prove useful or
don't work well, I can revert to the snapshot of the fresh install,
and the components under test just go away.

This is cool enough, but it gets better: I can also take snapshots
of the state of an individual programming project, and roll back
to an earlier state of the project if I must. This allows me to
just screw around with different approaches to solving a programming
problem, and still have the power to retrace my steps if I discover
that I'm at the end of a blind alley. Retracing my steps doesn't
even mean I lose what I attempted: I can save my failed experiment
as a snapshot and reload it if I later decide that there's ore there
to be mined, perhaps as part of a different approach. Version control
software can do this, of course, but if you're not working on a
huge, complex project, version control utilities are overkill.

The last big surprise is one I'm just beginning to probe: You can
save successive states of an application under test. If an app you're
working on blows up, you can revert to an earlier run state and
have a chance to inspect the conditions within the app (values of
variables etc.) just before the crash to help you figure out what
made it blow up. You can do a little of this with Delphi, but Lazarus
is too simple to provide that kind of power.

In a sense, this makes cut-n-try programming even more seductive:
If you have enough disk space to hold all the snapshots, you can
try any damfool thing you want, and there are no consequences.
None!

VMware has a very nice snapshot manager dialog (screenshot above)
that makes it easy to keep track of where you are, and lets you
"go to" any saved snapshot. In addition to Lazarus, I'm
also testing the latest release of Open Office, and a new WYSIWYG
Web editor called Nvu. I have snapshots of both, and when I'm done
testing, I can just delete their snapshots and they're gone. I'm
hoping that Nvu will be a suitable replacement for Dreamweaver 3,
as I won't upgrade it to anything requiring activation. If Nvu isn't
the one, I've lost nothing but time.

This sort of thing is definitely the future, and as we move to
multicore CPUs, hardware virtualization support, and 4 GB RAM systems
(a gig of RAM for this machine is now about $100) having several
virtual PCs running at once will become routine, just as having
several apps running simultaneously at once, each in its own wndow,
is a commonplace right now.

I used to wonder just what I would use 3 GHz' worth of CPU cycles
and 4 GB of RAM for. Now I knowand I don't regret it for a second.

June
12, 2005: How Much Would You Pay for a Castle?

Pete
and I were on Skype the other day, simultaneously poking around
the Web looking at German real estate, comparing their prices to
ours. (Pete was born over there.) In the
plain little razor-cut town from which my Duntemann acestors
fled in 1848, you can still get an atmospheric half-timbered
6-room house right in town for about $75,000. ($65,000 Euros; alas,
they didn't post a photo.) True enough, that's nowhere special in
Germany, and the area is about as interesting as some parts of Nebraska.
You won't do that well in, say, Berlin.

But then Pete came up with a whopper: You can get a real castle
in Germany for 900,000 Euros, or a little over a million bucks,
maybe less if you bargained hard. Above is a photo of Burg Katzenstein
(Castle Cats-Stone) in Baden-Wurttemburg, south-central Germany.
Here's a
history of the castle, which is one of the oldest Romanesque
castles in the country. The castle is between Stuttgart and Augsburg,
near the town of Heidenheim.150,000 square feet, egad. You could
put a whole publishing company in there. (Ten of them, in factCoriolis
at its largest had only 13,000 square feet of office space.) As
a capper, there
is a steam-powered tourist railroad that passes quite close
to the castle. Imagine waking up every morning, freezing your butt
in a stone tower while listening to a steam whistle announcing the
imminent arrival of coal smoke in your window!

Ok, ok. It's actually better than it looks. On the other side are
some charming half-timbered manor-house style buildings all run
together that look almost livable. The truly weird thing about it
all is that there are houses the next block over from me here in
Colorado Springs that cost more than Castle Katzenstein, and in
LA you can barely get a bungalow for that much. Pete could trade
up from the little place he lives in to Castle Katzenstein for the
cost of a good sports car. On the other hand, Carol speculates that
the annual heating bill would probably be about the same as the
initial cost, which may well be some sort of minor Law of Castlery.

I can almost see myself flying a couple of 12-foot Conyne
kites off that tower in a thunderstorm. Anybody got any monsters
that need work?

June
11, 2005: The Myth of Universal Health Care

I heard yesterday that Canada's
High Court overturned a Quebec law that forbade private health
insurance or out-of-pocket payment for health care. I suspect that
this is the beginning of the end for Canada's mandatory and supposedly
"universal" government-funded health care system. This
particular decision was limited to Quebec, but other provinces will
likely see similar cases come before the High Court before long,
especially now that this precedent has been established. (It'll
be interesting to see if we start hearing complaints about "judicial
activism" from Up North.)

I've long suspected that single-payer "universal" health
care systems are far from universal, but a lot depends on definitions
and who you believe. My definition of "universal health care
system" is a system that provides care to alleviate suffering
to all citizens when it is needed. Not two years later. My
view is that anybody who's on a waiting list for health care is
temporarily out of the system and doesn't have insurance. C'mon:
Tell me with a straight face that a guy who's home in bed suffering
while waiting for government-rationed treatment really has
insurance. It's a cruel lie.

Canadians point to the US as derelict in providing health care
to Americans, in denial about the fact that their own system is
hugely in debt, short of physicians and high-tech diagnostic
equipment, and unable to serve the needs of their own people. (Canada's
rich run to the US. Canada's lower and middle classes just suffer.)
Canada's poor beleaguered Fraser Institute tries
to bring the discussion out into the open, while being hammered
on by all and sundry for having "an agenda." Gee, like
trade unions don't?

The "44 million uninsured in America" number that everybody
is hollering about neatly ducks an absolutely critical question:
How many of those 44M lack insurance because they cannot get it,
and how many because they choose not to? Read
this report. (Download the PDF.) A lot of young, healthy people
play a sort of health lottery and choose not to buy insurance. They're
in that 44M. Other people who may or may not be young and/or healthy
don't buy insurance that they could in fact afford, because
they don't think it's worth the (admittedly considerable) money
they would have to pay. Others among the uninsured don't have private
health insurance, but have been unwilling to take advantage of public
health services for which they are eligible due to ignorance or
cultural reasons. (It's "charity.") 25 million uninsured
is still unacceptable. My point? It's complicated, and we won't
get a handle on it without good numbers and honest analysis of the
issues.

The core problem, which I've mentioned here in the past, is that
there's no limit on what citizens may demand in terms of health
care. A truly universal health care system that gave all citizens
everything they wanted when they asked for it might require so much
of the nation's GDP that it would bring the economy to the point
of collapse. Is there an answer? I don't know. However, let's stop
playing word games and pretending that "universal" health
care is what we're looking for. Everything to everyone right now
may be impossible. Maybe it's one of those "choose two"
situations: Everyone, everything, right now. In the US we are currently
choosing everything and right now. In Canada, they've chosen everyone,
and that's where they stopped.

What we really need may well be a sharper knife to cut the
pie with. Let's be honest about who's suffering, who really needs
what, and how much we're paying, and allocate the money we choose
to spend on keeping suffering to a minimum. This might require unpopular
measures, including higher taxes, compulsory enrollment, and premiums
or estate charges based on self-inflicted vs. unavoidable problems.
It might mean a later retirement age. It might (and should) mean the
end of instant riches for malpractice lawyers. It might mean quite
a number of other politically incorrect measures, including limitations
on heroic intervention. If this means "universal health care"
is impossible, let's admit it so we're not chasing lights in a swamp.
If this means that we need to be a little cleverer to make progress,
then let's get on it. Certainly, what we have now is both unnecessary
and unacceptible, but as long as we (or the Canadians) are in denial
about the basic issues, absolutely nothing will change.

June
10, 2005: Installable Virtual Hardware?

I've been studying virtualization for some time now, and using
it to great effect. Boy, if the future had a smell, I'd be sniffing
it about now. With both Virtual PC 2004 and VMWare Workstation 5
installed on this system, I can be up and running with just about
any OS I can lay hands on, in seconds, once I install it in a VM.
I did some intensive Web-researching inside a Win2K virtual machine,
storing bookmarks out on a LAN share, and if the bad guys had somehow
managed to infect my Web browser, well, it wouldn't matter, because
after I finished I didn't save changes to the VM. After I was done,
one click and it was gone. Nothing ever touched my host OS. All
I wanted were the bookmarks. Machine state mattered not at all.
Talk about safe surfing!

MS has already announced that they're building a virtual machine
monitor (VMM, which they call a hypervisor, same deal) into
Longhorn, so come Longhorn-time, virtualization will no longer be
a laboratory curiosity. It's unclear that the black hats can subvert
a virtual machine to the detriment of the host OS, but I grant that
it may be possible today, with everything running in ring 0. However,
new hardware extensions to the major Intel and AMD CPUs will create
a kind of "ring -1" for the VMM to run in, and after that,
the bad guys will be beating their fists on the mountainside.

Only one thing troubles me about virtualization, and nobody seems
to be talking about it: Current VMMs offer your virtual machine
partitions a very thin lineup of emulated hardware peripherals.
For video, you get a basic emulated S3 chipset, and that's it, irrespective
of what you have installed on the underlying hardware. You get a
very basic printer, and a very limited number of optical drives
and USB ports. You can't just install peripherals and expect your
virtualized instances of OSes to see them. They won't. What the
VMM emulates is what you get.

Is there something fundamentally impossible with a VMM-level device
emulation layer allowing installable emulations that attach to physical
hardware? If I have six USB ports on the physical box, why can't
I have six emulated ports on each virtual machine? If I have three
optical drives on the physical box, why can't I have three optical
drives in each emulated box? Sure, sharing is an issue among the
several VMs, but why shouldn't a VMM be as good at juggling mutexes
as a multitasking OS?

So far I've gotten no good answers, but it's probably the question
standing between virtualizers and their general acceptance on the
desktop in coming years.

June
9, 2005: QBit at Four Months

As
best we can tell (there's a little uncertainty about the precise
date) QBit is four months old today, and we've had him for a little
over a month. The second day we had him, we photographed him where
he had hopped atop our suitcase in our hotel room in Indianapolis.
Just now, I dug out the same suitcase and dropped him on it for
comparison. He's gained almost three pounds in the last 35 days
or so (at nearly nine pounds as of this morning) and he's starting
to look a lot more like an adult Bichon. Two days ago, he lost the
first of his puppy teeth, and his adult coat has begun to grow in.
His coat doesn't have that same silky
soft puppy feel that it had a month ago, but on the other hand,
he had no sense of rectal responsibility back then, and Carol and
I were scrubbing poop off the floor (and once off the livingroom
couch!) constantly.

Having raised Mr. Byte and Chewy from even younger puppies almost
25 years ago, it all came back to us after awhile. Poop on the couch
is the price you pay for that fleeting, adorable puppyhood that
he's now mostly past.

In behavioural terms he's still very much a puppy, and it's remarkable
how different he is from both Mr. Byte and Chewy. First of all,
he is extremely strong-willed, and pursues his peculiar passions
with peculiar passion. One of those passions is attacking and pulling
Carol's hair. (I don't have that problem with him.) His personality
is generally forward, and come playtime, if you're
not getting into rough-housing enough, he will launch himself at
you on his hind legs, front paws up and scraping the air, in a pose
we have come to call "frise rampant." Another passion
(one he shares to some extent with Mr. Byte) is dragging pieces
of paper back to his bed and shredding them like a hamster. He has
a fascination for the dishwasher (Mr. Byte and Chewy were afraid
of it) and if we turn our backs on the open machine for more than
a few seconds he's right up in it, licking spaghetti sauce off the
dirty dishes. He retrieves thrown toys and hands them to us, something
Mr. Byte and Chewy never did. He allows me to trim his toenails
with my Dremel tool, which our earlier dogs could not abide from
terror of the device. Fearlessness in a dog can be a mixed blessing,
but so far it's been for the best.

The poop problem is mostly past. He's learned to go in his potty
box, which is a large, low clear vinyl storage bin designed to slide
under a bed. We're still teaching him to walk on a leash, something
he's resisting, and as we have no back yard suitable for turning
a puppy loose in, we needed something indoors for house training.
There's still an occasional accident, especially when he gets manic
(which he usually does at about 10:00 PM as we're getting ready
for bed) and runs around in circles for no particular reason.

Still, we love him dearly, and because we don't commute to work,
we can take puppy breaks frequently during the day and appreciate
these one-time puppy weeks that we missed so much of with our earlier
bichons, especially Mr. Byte, who spent a lot of his first weeks
locked in the upstairs bathroom while we were at work. I'll post
photos of him from time to time, and in the meantime, if you want
to see a short QuickTime movie of him at 11 weeks (the day we picked
him up) you can download this.
(2.4 MB.)

It's good to have a puppy in the house again. Life seems somehow more
complete, but then again, that's what dogs are for.

June
8, 2005: Gigahertz and Gigabytes

For three years (until three months ago) my main machine was a
Dell Precision Workstation 530, with a single 1.7 GHz Xeon CPU and
512 MB of RDRAM. It was a pretty good machine, and quite fast for
something that "slow." It became even faster once I learned
how to degunk it regularly. As most of my readers know, I worked
up a new machine from loose parts back
in March. It's actually a pretty fine machine with only a couple
of glitches, primarily in the on-board sound support. It's got a
3 GHz Pentium 4 and 2 GB of RAM. It's also wonderfully quiet. The
remarkable thing is how much faster than the old Dell it isn't.

Cycles clearly aren't everything.

I had always suspected this from my readings, but it was good to
see it proved out in real life. And a few weeks ago, I did something
else: I bought another 512 MB of RDRAM for the Dell, giving it a
full 1 GB. Wham! It was noticeably faster, and now, for most of
my installed apps, it's indistinguishable from the new box. (The
only place where the new box still outshines it is with Adobe InDesign
1.5, which is a notorious cycle hog.)

Speed wasn't even the primary reason for creating the new machine.
I wanted a box I could tinker with and upgrade at will (Dell machines
are famously nonstandard) and even more important than that, I wanted
a machine that was quiet. The Dell 530 howls, and I never
quite got used to the noise. It's also tremendously heavy, for reasons
that were never clear, apart from the fact that I paid $2900 for
it new in early 2002. You pay that much money and you expect a lot
of steel, non?

I say all this to recommend the Dell Precision 530 if you want something
fast, rugged, and relatively cheapand don't mind the noise.
I've seen used instances of my Dell here on eBay for as little as
$300. If you're willing to put a little more RDRAM into it, you can
make it even faster. (Alas, RDRAM is not cheap!) When time
allows I'm going to pick up a matched pair of 1.7 Xeon CPUs with heat
sinks (about $100 on eBay) and see what that (and SMP) does to it.
I'll let you know.

June
7, 2005: To Be Partners in Divine Creation

Michael Abrash and I were talking about Creationism the other day,
or as Creationists prefer to call themselves, Intelligent Design
(ID) advocates. I am a theist and I had weak ID sympathies for a
long time, until the bad manners of many ID types forced me to think
it through. It doesn't help that biology is my weakest science (gooey
stuff: yukkh!) and in truth, the question didn't interest me much
in the past.

What doubts I had in the past were not about whether evolution
by natural selection could create a complex organ like the mammalian
eye, but only about whether evolution could do so in something less
than billions of trillions of years. (Evolution on Earth may have
been operating for a few billion years tops.) That eyes have evolved
from simple forms is obvious to anyone who's ever watched a planaria
worm under a microscope; why the ID crowd disputes it is a puzzle.
The time scale issue is more significant, and depends on whether
or not genetic mutation is truly random. It isn't. What we've learned
in recent years is that physical and chemical factors in the environment
of an organism can "tilt" mutations in specific directions,
thus hugely limiting the range across which mutations occur.
The precise mechanism here remains a little fuzzy, but that's simply
a call for more research to bring it into focus. The fact that it's
chemistry (and not just divine string-pulling) now seems pretty
obvious to me.

But this brings us back to the question of why so many theists
place God and knowledge of the physical world (which we acquired
through application of the scientific method) in opposition. Is
a God who pulls strings more powerful than a God who sets up the
bounding conditions of a new creation such that stars, galaxies,
and life emerge as a consequence of those bounds? A God who merely
snaps His fingers and says, "Bang! You've got eyes!" to
me smacks of the demiurgic 17-dimensional parlor magician that I
mentioned in my May 11, 2005 entry.

It's really a failure of imagination. The God that I can imagine
is immense, unthinkably immense, such that the Drumlin Number
(2^256, or 1.45E77; think about it!) vanishes by comparison. A God
that big can think and act across dimensions of space and time that
mean virtually nothing to us. A God that big can do more than just
wave His wand and say, "Let there be light!" A God that
big can set in motion processes that, across the eons, echo and
echo with comprehensible wonder.

This allows the God that I can imagine to be generous. While devising
our creation, he kicked back and said to Himself, "Whoa! This
is cool! I'm going to allow this to happen such that my forthcoming
children can work out the mechanisms that I use, and thus share
the experience of Creating with me. This is something they're going
to want to see!" And so it was. And by God's generosity
I can grasp redox equations and understand how sodium and chlorine
become salt. And so I can understand the series of nuclear reactions
by which hydrogen interacts with gravity and becomes helium and
all the other elements down to iron, and later, by smaller echoes
of the Big Bang that we call supernovae, into all the other elements
in the Periodic Table. Someday it will allow us to understand how
simpler creatures became more complex creatures, and eventually
you and me.

We haven't grasped it all yet; the Great Unfolding will take millennia.
There's plenty for us to discover, and for all the curious people
yet to come. I have a personal intuition that at some point in the
distant future, the last mysteries will all fall into place, and
around some strange epistemological corner we will finally run into
God Himself, who will grin and say, "Hi guys!What took you
so long?"

God didn't just create the world for us. He cut us in on the deal.
This precludes magic, and requires comprehensible things like chemistry
and physics and calculus. Does this make God smaller? Hardly. This
makes God so big that it takes faith to grasp Him. For people who
have true faith, evolution doesn't contradict God. To the contrary,
it indicate that He's there, and he's left a place for us beside Him,
as the Eighth Day of Creation unfolds before us, toward a still-unknown
destiny that will be His greatest gift of all.

June
6, 2005: Is Hollywood Behind the New Apple Core?

A deafening, collective WTF has been going up around the industry
over reports that Apple will be converting over to Intel chips later
this year. One
guy claims (without any strong sources) that this only means
that Intel will begin making Power-compatible CPUs. His point that
Apple pays less for its Power CPUs than it would for comparable
Pentiums is important, and probably true. Also, lazy Mac coders
have long assumed a big-endian memory addressing system in cutting
certain corners, and a switch to little-endian x86 would be a lot
of work hunting down such lapses. Wired, however, offers
us what might be the
perfect explanation: Hollywood is demanding that Apple convert
to Intel CPUs so that Macs will be subject to Intel silicon DRM.
If Apple refuses, the next generation of TV and movie content will
not play on Macs.

No one yet knows what's true and what is smoke-blowing. It's been
a real mishmash of stories in recent weeks. A May
27 Computerworld piece stated plainly that Intel was quietly
shipping silicon DRM as part of the Pentium D CPU and 945 support
chips. A few days ago, the Inquirer quoted a statement from Intel
that the 945 does not have any unnanounced DRM silicon, but that
the Pentium already supports a number of technologies for "protected
transport" of content over a home network. These include DTCP-IPCOPP,
and HDCP, none of which
are news, though all will (eventually) become a nuisance. As I reported
lasy year, My little EZ-Go XP box refused to output S-Video from
a DVD, making it mostly useless as a DVD player. (I wonder if it
will do the same once I put all my QBit puppy videos on DVD.)

I don't mind paying for content and never have. What I mind is
"collateral damage" from DRM (like not being able to play
home-made DVDs on my PC) and software that claims the right to take
over my operating system. Years back I
installed some knuckleheaded ebook reader that would not allow
a debugger to run on my Windows system, and yet would not allow
me to kill the process from Task Manager. I had to uninstall the
little boxpirate to finish the assembly work I was doing. It was
a fine lesson, and allowed me to crystallize my feelings on DRM:
Do whatever you want with your own content, but do not interfere
with my ability to use and control my PC.

Ultimately, it will all be for nought: As Bruce Schneier has pointed
out many times, a DRM technology only has to be broken once.
After that, the file-sharing networks take over, distributing both
the DRM-stripped content and the DRM-stripper itself. Hollywood doesn't
want to take on file traders in the courts one at a time, but that's
really their only effective option. Silicon DRM makes the DRM cracker's
job harder, but not impossible. Remember that the DRM wars are not
about revenues but about egos: Hollywood's bosses cannot stand
the thought that somewhere, somebody is seeing their stuff without
paying for it. If consumers or OEMs won't accept DRM, they'll take
their marbles and go home, being more willing to lose money than admit
that they've been licked by some grubby teenager in Estonia.

June
4, 2005: Intel (and Apple) Inside

Whoa. This one came as a surprise: Apple
is switching to Intel CPUs inside all their processors, starting
with their low-end Mac Mini by next year and completing the move
with their Power Mac machines by 2007. I haven't found any official
explanation as to why Apple would do this, and the major players
involved (Apple, IBM, and Intel) aren't talking. Intel CPUs are
perhaps a little cheaper than comparable Power processors, but they're
not dirt cheap. And by giving up the Power architecture, Apple gives
up a processor that is fast, elegant in design, and (perhaps most
important) not dragging thirty years of spotted history around inside
it.

I've seen in several places that Apple loses users every time it
changes architectures, and this time won't be any different. After
an architecture change, users must either upgrade their favorite
legacy apps ($$) or run under emulators, which are neither as fast
nor as trouble-free as running under the native environment. (Admittedly,
the more processor power you have, the more you can afford to emulate
older systems, and we have more processor power now than ever before.)
So Apple must know that they will not keep all their Mac users through
a third architecture change. Apple has a lot of loyal-to-the-death
users, but also a fair number of Mac-because-I-have-to users, generally
at schools and design shops. The move will come at a significant
initial cost in market share.

And I'll make a guess as to why they're doing it: It's the first
step toward selling OS X as a boxed software product. They have
to do something; with only 1.8% of the PC market and significantly
higher prices compared to PCs, they're in serious danger of vanishing
into the noise by 2010. The first step will be to manufacture in-house
x86 hardware; the next step (which I'm sure they don't want to talk
about) will be to crisply define the Mac hardware platform and outsource
maufacturing to third parties in the Pacific Rim. The final step,
which they've sworn they will never do, is to rejigger the OS so
that it can run on standard x86 PCs.

That wouldn't be the end of the world, nor would it be that hard.
The OS X kernel is based on BSD Unix, which has long run (and run
very well indeed) on x86 hardware. It's not a coincidence that Linux
can be made to run so quickly on so many platforms; Unix was designed
to be portable in ways that Windows never was. BSD is demonstrably
a better kernel than Linux, and with some care out at the edges
where the OS meets the hardware, OS X could well run faster and
more reliably than Windows.

There's a potential benefit to all of us (and a revenue stream
for Apple) that I haven't seen anyone else mention: Apple could
license a cleaned-up reference model for x86 motherboards that would
run both Mac and Windows. If "Mac Compatible" came to
be seen as an emblem of mobo quality, even Windows users would pay
(perhaps a little extra) to run on Apple-designed hardware. It would
be free money for Apple, and profound irony: A few cents from every
high-end Windows machine would go to Apple, and MS would have nothing
to say about it.

That may not happen anytime soon, or perhaps at all. What we will
see are cheaper Mac systems, which will bolster Apple as a company
and keep the Mac platform in the running. And what I'd like to eventually
see is a system in which Windows and OS X are both preinstalled
on PCs, and you get sixty days to try them both before paying to
activate one and delete (or ignore) the other. All the endless arguments
about which environment is better would fall to real numbers: Users
would decide, and we would know.

Then we can all shut up and get back to work. I'm for that.

June
3, 2005: Odd Lots

We all read on
Slashdot back in 2002 that the Solotrek personal duct-fan
flying whatchamacallit had died from capital starvation, but Frank
Glover sent me a note indicating that it's back, with
a different domain and no illusions of selling to Silicon
Valley hotshots. The military is their new market, and I suspect
that somewhere along the way, somebody bought Solotrek and decided
to try again. Hey, we civilians eventually got Hummers, for what
that's worth. Maybe at some point we'll get Springtails too.

Molly Wood has finally published something worthy of citing
here: A nice article on why
social networking is a fundamentally flawed concept. She may
be analyzing too much here; I can put it far more simply: Social
networking takes far more time than it returns in benefits. Guys,
if you want to talk to me, there's email. Forgive me if I don't
hang out on Orkut or LinkedIn.

Jim Mischel wrote in his May
31 Random Notes entry that his Web stats on hits and visitors
is down about 30% since April. It's interesting that my own stats
have shown a similar decline, having peaked in March and slowly
declined by about the same amount. Jim and I both use the same
hosting service (Sectorlink) though I doubt that makes a difference
one way or another. I'm guessing that stat
spamming was a fad that has had its day, and that back in
March about 30% or more of our hits were from stat spammers. (A
less terse name for this is "referral log spamming.")
John Kerry's campaign apparently did a lot of it back before the
last electioncould it have cost him the Presidency? I'm
a little amazed that stat spamming works at all; do that many
people read and follow links in their referral logs? Perhaps companies
interested in "referral marketing" have begun to understand
how hated that will make them among (influential) Web site owners.
Time to research "rel=nofollow",
which is supposedly the solution to this problem.

June
2, 2005: Warning! Plague! Parasites! Plastic Sheep!

We
had to send Carol's mom and our older nephew Brian home late this
afternoon, so this morning we took them on one last touristing jaunt
to Seven Falls, a famous
natural attraction only a few miles from where we live. Remarkably,
Carol and I hadn't been there before, and it was as new to us as
it was to them.

Seven Falls is a near-vertical box canyon over 200 feet deep, with
a 180-foot waterfall at one end. The waterfall has seven distinct
segments, hence the name. The day was beautiful and the falls were
indeed something to see. There are over 400 steps of stairways to
be climbed to see the falls and the canyon from various angles,
all of which we took. It's maybe a little steep at $8.75 per person,
but we got a little exercise and some great pictures.

There were a few notable weirdnesses. Someone at the Seven Falls
Company loves signs. There were signs all over the place,
pointing out different kinds of trees and rocks and commanding us
not to do various things. There were lots of signs. There were so
many signs it began to interfere with the natural serenity of the
canyon and the forest above it.

I wouldn't mind if most or even all of the signs were sensible
and important. Signs like "Stay on the stairs. If you fall
off, you will die!" would have made sense, but that was one
of the few warnings we didn't see. Shortly after we entered the
park, a vivid yellow sign warned us that "Warning! Squirrels
and other wild animals carry plague!" Yes, plague has been
found in the occasional squirrel, but if the point of the sign was
to keep people from trying to cuddle the wildlife, a far better
sign would have read: "Touch the wild animals and they will
take a piece out of your fingers!" Further on another sign
told us earnestly to "Respect the privacy of snakes and other
animals. Stay on trails." Yeah, and just what are the snakes
doing on the other side of that hill that they don't want us to
see?

Above the falls, where the creek is just a pleasant trickle of
snowmelt through the forest, there were two signs almost side by
side that were clearly not on speaking terms. One simply read: "Creek
feeds city water supply. No wading." Right on the other side
of the screek was a second sign reading, "Slippery rocks and
giardia parasites are present!" Urrp. Can you guys please make
up your minds? (Alas, I could not get both signs in the same photo.)

Another sizeable sign that warned against littering listed the
lifetime of various items of litter when carelessly cast into the
ecosphere. Did you know that a cigarette butt lasts 150 years? Would
you like to learn while trying to appreciate the peace and beauty
of an unspoiled forest? Are morons who toss cigarette butts into
the woods likely (or even able) to read the sign? Me, I'm not so
sure.

Finally, hundreds of feet up on the rim of the canyon, we thought
we saw a deer looking down and a bighorn sheep standing on a rock.
After we watched them for several minutes without seeing either
move so much as a hair, a guy saw where we were looking and said,
"Forget it. They're plastic." And sure enough, once we
climbed even halfway up the 400 steps to the top of the falls, we
could see the guy wires.

Ahh, well. Look past the ridiculous labels and faux wildlife (which
I suspect do not carry plague, so relax) and enjoy the falls and the
forest. You could be in Brooklyn.

June
1, 2005: Unlinspiring...

I picked up a copy of Linspire
(formerly Lindows until, um, somebody objected), which is a "commercial"
Linux distro that many say is as close to Windows in terms of GUI
that any Linux will ever be. There is a line somewhere, which no
one has yet crossed, that will resurrect the old corpse of "look'n'feel"
that we thought we buried years ago. It also has a reputation for
being easy to install, and that may well be true...unless
you're trying to install it in a virtual machine.

Three attempts failed to get Linspire to install at all under VMWare.
Because the installer is pretty much a black box, it's difficult
to tell what Linspire doesn't like. I got it to install under Virtual
PC, but it runs very slowly, and only in 1024 X 768. (That's the
only video mode it seems to recognize in the virtualized S3 video
systems present in both virtualizer products.) I much prefer 800
X 600 for testing, since my native screen resolution is 1024 X 768,
making it pretty painful to run Linspire in a window.

As if all that wasn't irritating enough, I almost immediately received
an email from Linspire, over Michael Robertson's name, asking me
if I'd like to "snag some swag." (Note to non-geeks: This
means, "Would you like to buy some cheap imported crap like
coffee mugs with our name on it?") My aversion to "branded
product" is legendary; I always tell people never to wear advertising
that isn't their own. I still wear Coriolis shirts, but I have unloaded
the mountain of idiotic T-shirts that I gathered in the cause of
being polite back when I ran magazines. (The only two I retained
were from DDJ and Programmer's Journal, as I have
some history with both mags.)

So let's just say that I'm less than inspired by Linspire, as much
as I admire Michael Robertson's chutzpah in originally calling his
product "Lindows" just to reap the publicity of the inevitable
MS lawsuit. This is a variation on the Depression-era trick kids
used to use of making faces (or perhaps less civilized gestures)
at steam locomotive engineers to bait the engineers into throwing
lumps of coal at them. Half an hour down by the tracks could keep
the furnace alive all night.

To be fair, I still intend to install Linspire in my Linux partition
on the Xeon system downstairs, but if first impressions are any guide,
we're not going to have a beautiful relationship.