« January 2006 | Main | March 2006 »

Monday, February 27, 2006

Reading List: Hunt for the Skinwalker

Kelleher, Colm A. and George Knapp. Hunt for the Skinwalker. New York: Paraview Pocket Books, 2005. ISBN 1-4165-0521-0.
Memo to file: if you're one of those high-strung people prone to be rattled by the occasional bulletproof wolf, flying refrigerator, disappearing/reappearing interdimensional gateway, lumbering giant humanoid, dog-incinerating luminous orb, teleporting bull, and bloodlessly eviscerated cow, don't buy a ranch, even if it's a terrific bargain, whose very mention makes American Indians in the neighbourhood go “woo-woo” and slowly back away from you. That's what Terry Sherman (“Tom Gorman” in this book) and family did in 1994, walking into, if you believe their story, a seething nexus of the paranormal so weird and intense that Chris Carter could have saved a fortune by turning the X-Files into a reality show about their life. The Shermans found that living with things which don't just go bump in the night but also slaughter their prize livestock and working dogs so disturbing they jumped at the opportunity to unload the place in 1996, when the National Institute for Discovery Science (NIDS), a private foundation investigating the paranormal funded by real estate tycoon and inflatable space station entrepreneur Robert Bigelow offered to buy them out in order to establish a systematic on-site investigation of the phenomena. (The NIDS Web site does not appear to have been updated since late 2004; I don't know if the organisation is still in existence or active.)

This book, co-authored by the biochemist who headed the field team investigating the phenomena and the television news reporter who covered the story, describes events on the ranch both before and during the scientific investigation. As is usual in such accounts, all the really weird stuff happened before the scientists arrived on the scene with their cameras, night vision scopes, radiation meters, spectrometers, magnetometers (why is always magnetometers, anyway?) and set up shop in their “command and control centre” (a.k.a. trailer—summoning to mind the VW bus “mobile command post” in The Lone Gunmen). Afterward, there was only the rare nocturnal light, mind-controlling black-on-black flying object, and transdimensional tunnel sighting (is an orange pulsating luminous orb which disgorges fierce four hundred pound monsters a “jackal lantern”?), none, of course, captured on film or video, nor registered on any other instrument.

This observation and investigation serves as the launch pad for eighty pages of speculation about causes, natural and supernatural, including the military, shape-shifting Navajo witches, extraterrestrials, invaders from other dimensions, hallucination-inducing shamanism, bigfoot, and a muddled epilogue which illustrates why biochemists and television newsmen should seek the advice of a physicist before writing about speculative concepts in modern physics. The conclusion is, unsurprisingly: “inconclusive.”

Suppose, for a moment, that all of this stuff really did happen, more or less as described. (Granted, that is a pretty big hypothetical, but then the family who first experienced the weirdness never seems to have sought publicity or profit from their experiences, and this book is the first commercial exploitation of the events, coming more than ten years after they began.) What could possibly be going on? Allow me to humbly suggest that the tongue-in-cheek hypothesis advanced in my 1997 paper Flying Saucers Explained, combined with some kind of recurring “branestorm” opening and closing interdimensional gates in the vicinity, might explain many of the otherwise enigmatic, seemingly unrelated, and nonsensical phenomena reported in this and other paranormal “hot spots”.

Posted at 23:43 Permalink

Saturday, February 25, 2006

Reading List: Riding Rockets

Mullane, Mike. Riding Rockets. New York: Scribner, 2006. ISBN 0-7432-7682-5.
Mike Mullane joined NASA in 1978, one of the first group of astronauts recruited specifically for the space shuttle program. An Air Force veteran of 134 combat missions in Vietnam as back-seater in the RF-4C reconnaissance version of the Phantom fighter (imperfect eyesight disqualified him from pilot training), he joined NASA as a mission specialist and eventually flew on three shuttle missions: STS-41D in 1984, STS-27 in 1988, and STS-36 in 1990, the latter two classified Department of Defense missions for which he was twice awarded the National Intelligence Medal of Achievement. (Receipt of this medal was, at the time, itself a secret, but was declassified after the collapse of the Soviet Union. The work for which the medals were awarded remains secret to this day.)

As a mission specialist, Mullane never maneuvered the shuttle in space nor landed it on Earth, nor did he perform a spacewalk, mark any significant “first” in space exploration or establish any records apart from being part of the crew of STS-36 which flew the highest inclination (62°) orbit of any human spaceflight so far. What he has done here is write one of the most enlightening, enthralling, and brutally honest astronaut memoirs ever published, far and away the best describing the shuttle era. All of the realities of NASA in the 1980s which were airbrushed out by Public Affairs Officers with the complicity of an astronaut corps who knew that to speak to an outsider about what was really going on would mean they'd never get another flight assignment are dealt with head-on: the dysfunctional, intimidation- and uncertainty-based management culture, the gap between what astronauts knew about the danger and unreliability of the shuttle and what NASA was telling Congress and public, the conflict between battle-hardened military astronauts and perpetual student post-docs recruited as scientist-astronauts, the shameless toadying to politicians, and the perennial over-promising of shuttle capabilities and consequent corner-cutting and workforce exhaustion. (Those of a libertarian bent might wish they could warp back in time, shake the author by the shoulders, and remind him, “Hey dude, you're working for a government agency!”)

The realities of flying a space shuttle mission are described without any of the sugar-coating or veiled references common in other astronaut accounts, and always with a sense of humour. The deep-seated dread of strapping into an experimental vehicle with four million pounds of explosive fuel and no crew escape system is discussed candidly, along with the fact that, while universally shared by astronauts, it was, of course, never hinted to outsiders, even passengers on the shuttle who were told it was a kind of very fast, high-flying airliner. Even if the shuttle doesn't kill you, there's still the toilet to deal with, and any curiosity you've had about that particular apparatus will not outlast your finishing this book (the on-orbit gross-out prank on p. 179 may be too much even for South Park). Barfing in space and the curious and little-discussed effects of microgravity on the male and female anatomy which may someday contribute mightily to the popularity of orbital tourism are discussed in graphic detail. A glossary of NASA jargon and acronyms is included but there is no index, which would be a valuable addition.

Posted at 23:19 Permalink

Thursday, February 23, 2006

SubMarie's: Open Sauce Salad Dressing

Here's another experiment in announcing a document for preview, perusal, and persnickety potshots from the informal “faculty club” who follow these occasional epistolary announcements before subjecting a Web-wide audience to such an un-peer-reviewed bolus of raw keystrokes and undisciplined logic .

Notwithstanding the utopian spirit of grass-roots innovation which suffuses much of the open source software development community, the fact is that much open source software is entirely derivative of commercial products already on the market. There's nothing wrong with this: every intellectual innovation has a multitude of progenitors, and it is the very cross-feeding and cross-breeding of ideas which drives the rapid evolution of technological products; commercial products build on work done by universities and independent investigators, and it's only fair that information should flow in both directions.

In that spirit, I have embarked upon an open source (or, as it were, open sauce) emulation of one of the favourite supermarket staples I left behind when I moved from California to Switzerland in 1991. See SubMarie's for details, and may every batch you make turn out thick, creamy, salty, and tart. Direct comparisons with the bottled product and suggestions for adjusting the recipe to converge toward it are especially invited.

Posted at 01:40 Permalink

Tuesday, February 21, 2006

Reading List: Adventures from the Technology Underground

Gurstelle, William. Adventures from the Technology Underground. New York: Clarkson Potter, 2006. ISBN 1-4000-5082-0.
This thoroughly delightful book invites the reader into a subculture of adults who devote their free time, disposable income, and considerable brainpower to defying Mr. Wizard's sage injunction, “Don't try this yourself at home”. The author begins with a handy litmus test to decide whether you're a candidate for the Technology Underground. If you think flying cars are a silly gag from The Jetsons, you don't make the cut. If, on the other hand, you not only think flying cars are perfectly reasonable but can barely comprehend why there isn't already one, ideally with orbital capability, in your own garage right now—it's the bleepin' twenty-first century, fervent snakes—then you “get it” and will have no difficulty understanding what motivates folks to build high powered rockets, giant Tesla coils, flamethrowers, hypersonic rail guns, hundred foot long pumpkin-firing cannons, and trebuchets (if you really want to make your car fly, it's just the ticket, but the operative word is “fly”, not “land”). In a world where basement tinkering and “that looks about right” amateur engineering has been largely supplanted by virtual and vicarious experiences mediated by computers, there remains the visceral attraction of heavy metal, high voltage, volatile chemicals, high velocities, and things that go bang, whoosh, zap, splat, and occasionally kaboom.

A technical section explains the theory and operation of the principal engine of entertainment in each chapter. The author does not shrink from using equations where useful to clarify design trade-offs; flying car fans aren't going to be intimidated by the occasional resonant transformer equation! The principles of operation of the various machines are illustrated by line drawings, but there isn't a single photo in the book, which is a real shame. Three story tall diesel-powered centrifugal pumpkin hurling machines, a four story 130 kW Tesla coil, and a calliope with a voice consisting of seventeen pulsejets are something one would like to see as well as read about, however artfully described.

Posted at 23:31 Permalink

Sunday, February 19, 2006

Reading List: Leaving Islam

Warraq, Ibn [pseud.] ed. Leaving Islam. Amherst, NY: Prometheus Books, 2003. ISBN 1-59102-068-9.
Multiculturalists and ardent secularists may contend “all organised religions are the same”, but among all major world religions only Islam prescribes the death penalty for apostasy, which makes these accounts by former Muslims of the reasons for and experience of their abandoning Islam more than just stories of religious doubt. (There is some dispute as to whether the Koran requires death for apostates, or only threatens punishment in the afterlife. Some prominent Islamic authorities, however, interpret surat II:217 and IX:11,12 as requiring death for apostates. Numerous aḥadīth are unambiguous on the point, for example Bukhārī book 84, number 57 quotes Mohammed saying, “Whoever changed his Islamic religion, then kill him”, which doesn't leave a lot of room for interpretation, nor do authoritative manuals of Islamic law such as Reliance of the Traveller, which prescribes (o8.1) “When a person who has reached puberty and is sane voluntarily apostasizes from Islam, he deserves to be killed”. The first hundred pages of Leaving Islam explore the theory and practice of Islamic apostasy in both ancient and modern times.)

The balance of the book are personal accounts by apostates, both those born into Islam and converts who came to regret their embrace of what Salman Rushdie has called “that least huggable of faiths”. These testaments range from the tragic (chapter 15), to the philosophical (chapter 29), and ironically humorous (chapter 37). One common thread which runs through the stories of many apostates is that while they were taught as children to “read” the Koran, what this actually meant was learning enough Arabic script and pronunciation to be able to recite the Arabic text but without having any idea what it meant. (Very few of the contributors to this book speak Arabic as their mother tongue, and it is claimed [p. 400] that even native Arabic speakers can barely understand the classical Arabic of the Koran, but I don't know the extent to which this is true. But in any case, only about 15% of Muslims are Arabic mother tongue speakers.) In many of the narratives, disaffection with Islam either began, or was strongly reinforced, when they read the Koran in translation and discovered that the “real Islam” they had imagined as idealistic and benign was, on the evidence of what is regarded as the word of God, nothing of the sort. It is interesting that, unlike the Roman Catholic church before the Reformation, which attempted to prevent non-clergy from reading the Bible for themselves, Islam encourages believers to study the Koran and Ḥadīth, both in the original Arabic and translation (see for example this official Saudi site). It is ironic that just such study of scripture seems to encourage apostasy, but perhaps this is the case only for those already so predisposed.

Eighty pages of appendices include quotations from the Koran and Ḥadīth illustrating the darker side of Islam and a bibliography of books and list of Web sites critical of Islam. The editor is author of Why I Am Not a Muslim, editor of What the Koran Really Says, and founder of the Institute for the Secularisation of Islamic Society.

Posted at 21:28 Permalink

Saturday, February 18, 2006

Sketch of the Analytical Engine Updated

I've always considered The Analytical Engine one of the principal attractions at Fourmilab, despite the stubborn evidence of access statistics showing that it is little frequented. The Java emulator for Babbage's Analytical Engine is the main interactive resource, but a collection of original documents including L. F. Menabrea's Sketch of the Analytical Engine translated and annotated by Ada Augusta, Countess of Lovelace, which contains the first computer program ever published, provides the historical background for the simulator.

Most of the documents and programs in this corner of the site were developed in 1997–1998 and are beginning to show their age. I've just posted a completely revised and updated edition of the Sketch of the Analytical Engine which is XHTML 1.0 compliant and uses Unicode text entities for typographical symbols which weren't available when the first edition was published. All of the figures have been remade as high-resolution antialiased PNG images, and presentation is delegated to a CSS 2.1 style sheet.

If you'd like to compare the readability of the old and new versions, click their respective links to open them in separate windows, position them side by side, and judge for yourself. There are numerous documents in The Analytical Engine Web tree; this is the first and, so far, only one to be updated. It is, however, by far the largest and most complicated, and if no complaints result from this update, it will serve as the model for the rest.

Posted at 23:00 Permalink

Friday, February 17, 2006

Lac Fourmilab: Pictures from an Inundation

lac1_2006-02-17.jpg After thinking I had finally gotten everything out of the way so I could do some actual work, I walked into Fourmilab in high spirits on Thursday the 16th and what should I find but 5 cm of water throughout the basement, with the furnace room filled to the brim—about 20 cm deep there. The water had flowed over to the elevator and filled the shaft level to the basement floor, two metres deep, on the order of 18 cubic metres of water there alone. (Click on images to view enlargements.)

The cantonnier from the commune came out with a pump and wet and dry vacuum, and as of around 17:00 most of the standing water and the contents of the elevator shaft had been evacuated. The vacuum is staying the week-end so I can deal with anything that happens.

It was not at all obvious where the water came from, nor is it certain even after a day of investigation and ratiocination. There has been no leak in the water system, and there was no sign whatsoever of an entry point (water stain on a wall, etc.). The water was seemingly clean, but could have been rainwater or melted snow. The evidence pointed to it welling up in the furnace room, but how that much water could have gotten through a concrete floor and walls in less than 24 hours without a big obvious crack was a total mystery. In an attempt to identify the source and avert any further lac2_2006-02-17.jpg disaster, I am inspecting the situation every three hours while the rain and melting snow continues to generate run-off and ground water . The sewage pumps are functioning normally, and there is no back-up of water in the cistern they pump from, nor is there evidence of water entering anywhere else. The basement of the adjacent house is perfectly dry.

Based on overnight observation, where in one case more than five centimetres of water entered the furnace room (but nowhere else) between two inspections three hours apart, and the discovery of water seeping slowly from a crack in the corner of that room, the current theory is that as a result of the broken water pipe of January 2005 and the resulting disastrous water leak, sand and mud have migrated into the groundwater drainage system, which has partially, but not completely blocked an outlet to the cistern and pump system which evacuates it to the sewer (which is uphill from Fourmilab, wouldn't you know?). With normal precipitation, there remains enough flow to dispose of the water as fast as it arrives, but with the shock load of a big rainstorm triggering the melting of several months' accumulated snow, water backs up in the system, rising to the level of the crack (and potentially other entry points around utility pipes positioned well above the usual level of ground water), and entering the building. Unless you happen to observe it at the moment when the backed-up water is above the crack, all you see is a subtle trickle or drip.

We patched the crack with masonry filler as a (literal) stop-gap measure. If the patch holds, this should buy another 25 cm the water can rise before entering around the utility pipes. Early next week comes the digging out of the muck in the ground water conduits and live testing with water pumped into them.

If you're expecting something from me, don't expect it soon, and bear in mind that it may have been cleared entirely from mine due to limited stack depth in interrupt processing. Fortunately, all of the servers and communication gear associated with the site are at least three metres above the area which flooded, and the electrical substation has, so far, remained dry.

Posted at 18:13 Permalink

Thursday, February 16, 2006

Disabling the Dell Inspiron Touchpad on Fedora Core Linux

The Dell Inspiron 9100 “laptop” I use as my primary development machine has both a touchpad (manufactured by Synaptics or ALPS) and an “eraserhead” pointing stick between the ‘B’, ‘G’, and ‘H’ keys of the keyboard. With the Red Hat Enterprise Linux 3 I previously used on the machine, if you performed the installation with a USB mouse attached, the touchpad and eraserhead would not be configured as pointing devices—if you wished to use them, you had to manually modify the X11 configuration to enable them which, since I always use the machine with a mouse, I never did.

With the Fedora Core 4 distribution I recently installed, however, the touchpad and eraserhead are enabled regardless of whether a mouse is attached during the installation or thereafter: all of the pointing devices are live simultaneously and you can use whichever strikes your fancy. This may seem convenient, since when travelling you might decide to put up with the touchpad rather than connect a mouse and find some surface on which to operate it. Unfortunately, the location of the touchpad, below the space bar on the keyboard, makes it extremely easy to inadvertently touch when you're furiously typing on the keyboard, and since it is not only sensitive to finger motion to move the cursor but also to tap gestures emulating button clicks (even though there are two dedicated buttons both above and below the touchpad), it's quite a common occurrence while editing a document to find that an accidental brush of the touchpad has made the cursor jump into an entirely different part of the text where your subsequent keystrokes wind up. Needless to say, this is intensely irritating.

It would be really nice if you could configure the machine so that when an external pointing device was plugged in the touchpad was simply disabled. (The eraserhead might be disabled as well, but it isn't the troublemaker the touchpad is.) I haven't figured out how to accomplish this yet, but I did track down how to turn the touchpad on and off; like most such things, it is less than obvious.

Since the touchpad is prominently configured in the /etc/X11/xorg.conf file, I thought that simply removing the configuration statements for it would do the trick, but nothing doing—it appears the touchpad is getting in at a lower level and emulating mouse motion even if it isn't explicitly configured. There is, however, a “synclient” program included with Fedora Core 4 which permits setting the touchpad's myriad configuration parameters (use the “−l” option to see them all) including, happily, one named “TouchpadOff” which, if set to 1, disables the touchpad entirely. Unfortunately, the synclient program does not work with the touchpad configuration installed by the distribution, because it requires a shared memory configuration facility which isn't enabled by default. In order to use synclient, you have to edit the /etc/X11/xorg.conf file and add the statement:

    Option       "SHMConfig" "on"
in the InputDevice section for the synaptics driver, then either restart the X server or reboot to put the change into effect. Then you can disable the touchpad with the command:
    synclient TouchpadOff=1
or turn it back on by specifying 0 instead of 1.

Since the specification is kind of backwards and difficult to remember, I've made a little shell script named touchpad which you can download to simplify matters. You simply say “touchpad on” or “touchpad off” to enable or disable the touchpad, or call the script with no argument to print whether the touchpad is currently on or off.

You're supposed to be able to enable and disable the eraserhead by setting “GuestMouseOff” instead of “TouchpadOff” in synclient, but it doesn't actually do anything as far as I can determine.

Posted at 00:38 Permalink

Wednesday, February 15, 2006

Flashback Version 1.4 Posted

Flashback is a little Unix shell script which can save your life when you fat-finger a shell command or accidentally save a file you're editing after having made a disastrous change. Simply typing flashback makes a complete compressed backup of the current directory and all working directories in an archive directory, named with the full path of the directory backed up and the date and time of the backup. Command line arguments (new in this release), allow you to exclude subdirectories from the backup or name the specific files and/or directories to be backed up.

The original flashback (which remains available) would run on just about any Unix-like system. This version uses a few features of the GNU find and du commands, which will require modification if the script is used on a system with “vanilla” System V or BSD semantics for these commands. This release has improved error checking for common problems, and prints a summary of command line options if invoked with the −u or −−help options.

Posted at 00:42 Permalink

Tuesday, February 14, 2006

Fourmilog: New Atom 1.0 Feed, Feed Validation

If you scroll down to the “Syndication” item on the panel to the right, you'll see that the icon for the former Atom 0.3 feed has been replaced with one providing both headlines and full content in the Atom 1.0 format as specified in RFC 4287. Atom is an XML 1.0-compliant format which makes a fresh start, escaping the historical hysteresis which has rendered the various flavours of the RSS “standard” unable to agree even on what the acronym stands for. Client support for Atom is spotty at this point: Firefox 1.5 turns Atom feeds into “Live Bookmarks” without problems, but Thunderbird 1.0.7 doesn't seem to accept them for “News & Blogs” subscriptions. I've removed the icon for the previous Atom 0.3 feed, since the Atom people are encouraging quick migration to the new standard but the feed, in fact, will remain available for the foreseeable future as long as you know the name of the file containing it.

Each of the feed buttons now has a check mark to the right of it which, when clicked, will subject the feed to the scrutiny of the W3C Feed Validator. If your client program complains about something in one of the feeds, click the check mark to see whether the W3C agrees there's a problem. I have also added a check button to the RSS 1.0 feed for the reading list page; that is the only format available on that page.

Posted at 00:47 Permalink

Monday, February 13, 2006

Reading List: Warped Passages

Randall, Lisa. Warped Passages. New York: Ecco, 2005. ISBN 0-06-053108-8.
The author is one of most prominent theoretical physicists working today, known primarily for her work on multi-dimensional “braneworld” models for particle physics and gravitation. With Raman Sundrum, she created the Randall-Sundrum models, the papers describing which are among the most highly cited in contemporary physics. In this book, aimed at a popular audience, she explores the revolution in theoretical physics which extra dimensional models have sparked since 1999, finally uniting string theorists, model builders, and experimenters in the expectation of finding signatures of new physics when the Large Hadron Collider (LHC) comes on stream at CERN in 2007.

The excitement among physicists is palpable: there is now reason to believe that the unification of all the forces of physics, including gravity, may not lie forever out of reach at the Planck energy, but somewhere in the TeV range—which will be accessible at the LHC. This book attempts to communicate that excitement to the intelligent layman and, sadly, falls somewhat short of the mark. The problem, in a nutshell, is that while the author is a formidable physicist, she is not, at least at this point in her career, a particularly talented populariser of science. In this book she has undertaken an extremely ambitious task, since laying the groundwork for braneworld models requires recapitulating most of twentieth century physics, including special and general relativity, quantum mechanics, particle physics and the standard model, and the rudiments of string theory. All of this results in a 500 page volume where we don't really get to the new stuff until about page 300. Now, this problem is generic to physics popularisations, but many others have handled it much better; Randall seems compelled to invent an off-the-wall analogy for every single technical item she describes, even when the description itself would be crystal clear to a reader encountering the material for the first time. You almost start to cringe—after every paragraph or two about actual physics, you know there's one coming about water sprinklers, ducks on a pond, bureaucrats shuffling paper, artists mixing paint, drivers and speed traps, and a host of others. There are also far too few illustrations in the chapters describing relativity and quantum mechanics; Isaac Asimov used to consider it a matter of pride to explain things in words rather than using a diagram, but Randall is (as yet) neither the wordsmith nor the explainer that Asimov was, but then who is?

There is a lot to like here, and I know of no other popular source which so clearly explains what may be discovered when the LHC fires up next year. Readers familiar with modern physics might check this book out of the library or borrow a copy from a friend and start reading at chapter 15, or maybe chapter 12 if you aren't up on the hierarchy problem in the standard model. This is a book which could have greatly benefited from a co-author with experience in science popularisation: Randall's technical writing (for example, her chapter in the Wheeler 90th birthday festschrift) is a model of clarity and concision; perhaps with more experience she'll get a better handle on communicating to a general audience.

Posted at 00:11 Permalink

Sunday, February 12, 2006

UNUM Version 1.1 Posted

After a week's experience using the Unum program frequently in the development of a Web project I'm not ready to talk about here quite yet, I found there were two things missing which I kept wishing were there—so now they are: behold version 1.1, now available for downloading from the link above.

The original release of Unum could only look up single Unicode characters. Version 1.1 accepts strings of any length in “c=” arguments. For example, to decode an Arabic word you might find puzzling in this document listing products banned in Saudi Arabia, you can now use:

$ unum c=باربي
  Hex        HTML    Character   Unicode
0x628     ب    "ب"         ARABIC LETTER BEH
0x627     ا    "ا"         ARABIC LETTER ALEF
0x631     ر    "ر"         ARABIC LETTER REH
0x628     ب    "ب"         ARABIC LETTER BEH
0x64A     ي    "ي"         ARABIC LETTER YEH
to figure out that this particular dire threat to the virtue of the Kingdom is Barbie! (I have deleted the octal and decimal columns from the Unum output to fit in the limited width of this page.)

You may find yourself viewing the source of a Web page and encounter a sequence of Unicode characters encoded as HTML/XHTML character entities, such as:

    Путин
You can now cut and paste such gibberish directly onto a Unum command line (quoted, to be sure, so the shell isn't driven bonkers by all the ampersands, octothorpes, and semicolons), to see that this is just:
$ unum 'Путин'
  Hex        HTML    Character   Unicode
0x41F     П    "П"         CYRILLIC CAPITAL LETTER PE
0x443     у    "у"         CYRILLIC SMALL LETTER U
0x442     т    "т"         CYRILLIC SMALL LETTER TE
0x438     и    "и"         CYRILLIC SMALL LETTER I
0x43D     н    "н"         CYRILLIC SMALL LETTER EN
“Путин”, the surname of President Vladimir Putin of Russia.

Posted at 14:52 Permalink

Thursday, February 9, 2006

Fedora Core 4 and the Big Wide Screen

hayek_2006-02-09.jpg
I've spent much of the last week upgrading my development machine to Fedora Core 4 Linux. As frequent visitors here may know, for the last five years, I've done almost all of my software development work on "laptop" machines configured to boot either Linux or Windows, which I use about 99% of the time in Linux mode. Even though I travel as little as possible, I find that a laptop has the enormous advantage of being integrated at the factory with a set of components which are likely to work together and are generally well-supported by Linux distributions. Since I don't play kiddie games or use my computer as television set, I have no need for one of those combined video cards and toaster-ovens with the integrated wind tunnel they put in high-end desktop machines these days. And, when I do go on the road, I can take my entire development environment with me and work just as I do at home.

Since late 2004, I've used a Dell Inspiron 9100 with a 3.4 GHz Pentium 4 Hyper-Threading processor, 2 Gb of RAM, and a 1900×1200 LCD panel display running Red Hat Enterprise Linux version 3 (RHEL3). That distribution was getting a little long in the tooth, and after experience running the server farm on Fedora Core 3, I decided to migrate the development machine to the current Fedora Core 4 (FC4). If all goes well, I'll be more confident in updating the server farm to that release eventually.

It isn't possible to upgrade RHEL3 to FC4 in place; you have to do a clean install of FC4, wiping your existing system partitions. Even if an upgrade were possible, it's a dangerous thing to do even if you have a complete backup because a full restore is the only way to go back if you have to, and besides, an upgrade may leave things around from the old installation which not only waste space but can cause nasty surprises later on.

I decided to do the upgrade precisely as I've previously handled hard drives which were beginning to fail. I bought a new Fujitsu MHV2100AT 100 Gb drive, the identical model installed in the laptop, and initially mounted it in an external USB drive housing. There, I partitioned it identically to the existing drive and did a binary copy of all the partitions I wished to preserve (the Dell Diagnostics and Windows XP NTFS file systems in this case) to the new drive with dd. Since the Linux installation would re-format the Linux and Linux swap partitions, there was no need to copy them, and thus no cause for concern about copying an active filesystem. (In the hard drive replacement scenario, I do copy the Linux partition(s), but not while Linux is running from them. Instead, I boot from a “rescue” CD-ROM and do the copy when running from its RAM filesystem, never having mounted the Linux partition I'm copying.) The command to copy over a partition from the internal hard drive to the USB drive looks like this:

    dd bs=1M if=/dev/hda1 of=/dev/sda1
Obviously, if you're doing this you may need to change the device name and partition numbers so you copy the right thing to the right place!

Now I was ready to install Fedora Core 4 on the new hard drive. I powered down the machine, removed the battery, and removed the hard drive, which slides out of a slot accessible from the bottom of the machine. All of this, to be sure, was done on an antistatic pad with grounding straps connected to the machine, the hard drive bracket, and the ape doing the work. And, did I mention I had a full file-level backup of every filesystem on that hard drive before I removed it? Well, did I mention I had two such backups…and that I had verified one of them file by file…and that in addition every file system on this machine is backed up daily with Bacula, with the most recent monthly full backup only a few days before?

I then removed the old hard drive from the bracket, replaced it with the new one, installed the old drive in the USB enclosure, buttoned everything up, and turned the machine back on. For the nonce, the USB drive enclosure with the old drive was not connected to the computer. I booted with the FC4 installation CD-ROM in the CD drive, and went through the installation process. I have been using the Gnome desktop with RHEL3, but I've heard such great things about KDE that I decided to install both so I could compare them and decide which was the keeper; you can select either one from the log-in screen, and if you later decide to get rid of one, the RPM manager makes the process reasonably painless. Besides, with a 100 Gb drive, there's plenty of room for both.

The installation went without a hitch. When it came time to configure the boot loader, I created a chainloader boot for the Windows XP partition. After the installation was complete and the obligatory reboot initiated, lo and behold the boot loader came up properly, and when I booted Linux everything worked out of the box: the display ran at full resolution and colour, the Ethernet connection was perfect, and even audio worked. This is the first time in about 10 years of installing Linux I can recall this happening.

After basking in this success for a few seconds, I shut down the machine and tried booting into Windows XP. This also worked fine, although as usually happens when you binary copy an NTFS partition from one physical drive to another, Windows “detected” the main hard drive as new hardware and bashed on it for a while before declaring it “ready to use”—perhaps it takes a while for the assorted wizards and sorcerers' apprentices in that system to perfuse the fresh drive with the magic smoke which permits them to function. A reboot back into Windows XP verified that the supernatural denizens of the Windows partition were now satisfied with the drive.

Any new installation from CD-ROM is, of course, hopelessly out of date the moment you first boot it, so I configured the Red Hat Update Agent and left it to run overnight, downloading the hundreds of megabytes of update packages required to make the system current. (Since this machine is behind the adamantine Fourmilab firewall and completely inaccessible from the outside, there's no cause for concern about security holes in the older versions of software you're running while downloading the updates, as would be the case for a machine connected directly to the Internet.) For some reason, the update utility complained about a missing signature on every package it downloaded; I have never experienced this in Fedora Core 3, but it was consistent here so, after verifying I was really connected to a legitimate FC4 update site, I went ahead and ran the update with the --nosig option to ignore the warnings and allow the updates to download unattended which, considering the process takes about 12 hours, is definitely the way to go.

After all the updates had been downloaded and installed, another reboot to the new kernel confirmed everything continued to work under it. Now I connected the old hard drive in the USB enclosure to the system, whereupon FC4 automatically detected and mounted it (nice—but actually, I'd rather unmount it and re-mount it manually as read-only, thank you very much), and then I copied over the entire home directory tree with:

    cd /home
    ( cd /files/home; tar cf - name1 name2 ... ) | tar xfv -
where /files is where I mounted the old drive. Naturally, after a new installation, you have to add group and password table entries for user accounts, create mount points for server NFS file systems, and integrate other changes to system files from the previous installation, but with the entire hard drive containing it mounted on the USB port, this is easily accomplished. Essentially, within 24 hours after beginning the upgrade, I was running in full production mode on the new distribution and able to resume the development work I was doing on the old one. And, should the nightmare scenario eventuate, I need only swap the old drive back into the machine and I'm right back where I started from.

Shortly before I began this upgrade, the backlight on the LCD panel on the machine failed, so in order to keep on using it in the week it took before Dell repaired it under the “next business day” service contract I paid for, I'd set up a monitor from a retired machine next to it and attached it to the VGA connector on the back, allowing it to fill in for the black as night in a coal mine LCD. Since the monitor was still sitting there after I'd completed the new installation, I couldn't resist the temptation to see if I could get it running as a second screen, doubling the usable desktop space. I booted into Windows XP, which is supposed to support such configurations on this machine and, sure enough, I was able to use the Display item in the Control Panel to configure the external monitor as an extension to the right of the built-in screen. Armed with the knowledge that it was possible, I then went back to Linux to see if I could figure out how to accomplish the same thing there.

Configuring X Windows has always seemed to me more the kind of subject they teach at Hogwart's rather than something you find in a manual page, with reboots taking the place of waves of the magic wand, and this excursion into the land of X: The Unknown proved no exception. Despite the the fact that several other folks reported having gotten it to work using the radeon driver included in FC4 and made their xorg.conf files available as examples, I was completely unable to make it work for me. I had no problem configuring the two screens and making the desktop span them both: it's just that the external monitor remained completely black and reported no signal from either the VGA or the DVI-Digital connectors on the back panel of the laptop. A double-width desktop loses a lot of its gloss when half of it is completely black (especially when a window pops up there and you can't see it to drag it back to the illuminated half!), and after exhausting everything I could think of to try, I decided to see if it would work with the proprietary Linux Radeon driver supplied by ATI. I had used this driver with RHEL3, but hoped to avoid it on FC4, not out of some quest for open source purity of essence, but because the proprietary driver has to be be rebuilt every time you install a new kernel, which makes updates substantially more painful. Well, the proprietary driver did the trick for me, so I decided to stay with it. I'm almost sure there's some little tweak I didn't think of which will make the built-in driver work, but so far it has evaded me and I have no more time to waste…er…invest in this quest. I've posted a download of my current /etc/X11/xorg.conf so if you're in the same pickle you can see what worked for me. Note that a dual screen configuration for the ATI proprietary driver doesn't look anything like the usual “Xinerama” dual monitor configuration for most other drivers; in fact it's hard to believe this is a dual screen setup, but it works just fine: you have a single desktop which is 3840 pixels wide and 1200 pixels high, and you can drag windows from one monitor to the other. The workspace switcher switches both monitors at once; I wish they were independent, but for that you need to configure a separate X server on each of the two monitors, and after twenty-odd reboots I gave up attempting to get that to work. The curious “DisplaySize” declaration in the Monitor section keeps aspect ratio sensitive programs like Adobe Reader from stretching everything double-wide, while scaling the text font for the graphical boot and login screen to a reasonable size. The “DPMS” declaration enables power management for the monitors: from the Desktop / Preferences / Screensaver dialogue you can configure the monitor to turn off after some number of minutes, which not only saves energy but presumably extends the life of the LCD backlight, the consequences of which failing are still vivid in my memory. With that, I declared victory in the dual screen struggle and treated myself to a brand new HP 2335 LCD panel for the second screen. This has 1920×1200 pixels, just like the screen on the laptop, and a 58.4 cm diagonal measurement so even though it's farther away, small text is easily readable with my aged eyes.

At the moment, there are two kernel modules which must be rebuilt and/or updated with every kernel upgrade: the ATI video driver and the NTFS filesystem which permits Linux to access files in the Windows XP partition. When I get around to bringing up wireless on FC4, these will probably be joined by ndiswrapper, but since I travel so little wireless isn't a priority for me. It's irritating to have to rebuild stuff every time you install a kernel update, but there's really no alternative if you require drivers which aren't provided in the distribution.

Update: In the original posting, I neglected to mention the important detail that with the dual-screen configuration described above the output for the second screen comes out on the DVI-Digital (white) connector on the back of the computer. If you plug a monitor into the VGA (purple) output, you'll see the same thing as appears on the laptop's own screen. I don't know what in the configuration file causes the DVI-Digital output to be selected, nor whether and how the second screen output can be sent to the VGA connector. There are several documents which describe changing output assignments with the built-in driver (try “radeon monitorlayout tmds” in a search engine for numerous leads), but with the proprietary driver it's all a mystery, at least to me. (2006-02-10 19:15 UTC)

Posted at 21:13 Permalink