« February 2005 | Main | April 2005 »

Thursday, March 31, 2005

Reading List: The Loom of God

Pickover, Clifford A. The Loom of God. New York: Perseus Books, 1997. ISBN 0-306-45411-4.
Clifford Pickover has more than enough imagination for a hundred regular people. An enormously prolific author, his work includes technical books on computing and scientific visualisation, science fiction, and popular works on mathematics and a wide variety of scientific topics. This book explores the boundary between mathematics and religion, including Pythagorean cults, Stonehenge, cave paintings from 20,000 years ago which may be the first numbers, the Kabala, the quipu of the Incas, numerology, eschatology, and real-world doomsday scenarios, along with a wide variety of puzzles in number theory, geometry, and other mathematical topics. One of the many fascinating unsolved problems he discusses is the "integer brick", which seems to be more often referred to as the "perfect cuboid": can you find a three-dimensional rectangular parallelopiped in which all the edges and face and space diagonals are integers? Computer searches have shown than no cuboid with a smallest edge less than 1,281,000,000 satisfies this requirement but, who knows, you may find it in just a few more compute cycles! (I'll pass on this one, after spending three years of computer time pursuing another unicorn of recreational mathematics.) As with Pickover's other popular books, this one includes source code for programs to explore topics raised in the text, explanation of the science and history behind the science fiction narrative, and extensive literature citations for those interested in digging deeper.

Posted at 22:51 Permalink

Wednesday, March 30, 2005

German Edition of The Internet Slum Now Available

Der Internetslum, a German translation of my May 2004 article The Internet Slum was published today on the Telepolis site. Special thanks to Bettina Winsemann (Twister) who translated the article!

Posted at 20:08 Permalink

Perl/Apache: Parsing Apache HTTPD Logs with Perl Patterns

My current finite but unbounded project is a facility for merging Web server (and other) logs from independent servers in a "server farm". The servers in question need not be at the same location nor on the same network.

I'll be rolling this project out as I transition the Fourmilab server farm from primary/backup mode to "all servers are peers" sometime in April or May. At that point, incoming requests from the Web will be routed to whichever server is available and reports the lowest instantaneous load. Averaged over a day, each server will process about 1/n of the total requests where n is the total number of servers (assuming they all have the same capacity).

In this distributed processing environment each server keeps its own access log, so monitoring site-wide statistics requires consolidating or aggregating logs from all of the servers in the farm into a single log. This must, of course, cope with logs on individual servers being cycled (rotated), malformed entries in logs, and all the slings and arrows of outrageous packets that a production site on the Internet is prone to.

The foundation of any project like this is parsing the individual items in the log files. You may find anything in a log--the parser must be robust in the face of whatever it encounters. Here is my current cut of a parsing pattern for Apache HTTPD logs in "Combined" format; for "Common" format, delete the last two $pat_quoted_field items.

    my $pat_ip_address = qr/(\d{1,3} \.
        \d{1,3} \.
        \d{1,3} \.
        \d{1,3})/x;
    my $pat_quoted_field = qr/"((?:(?:(?:(?:    # It can be...
        [^"\\])* |  # ...zero or more characters not quote or backslash...
        (?:\\x[0-9a-fA-F][0-9a-fA-F])* | # ...a backslash quoted hexadecimal character...
        (?:\\.*)                         # ...or a backslash escape.
       ))*))"/x;
    my $parse_combined = qr/^       # Start at the beginning
         $pat_ip_address \s+        # IP address
         (\S+) \s+                  # Ident
         (\S+) \s+                  # Userid
         \[([^\]]*)\] \s+           # Date and time
         $pat_quoted_field \s+      # Request
         (\d+) \s+                  # Status
         (\-|[\d]+) \s+             # Length of reply or "-"
         $pat_quoted_field \s+      # Referer
         $pat_quoted_field          # User agent
         $                          # End at the end
       /x;
There are a number of subtleties in this pattern definition. The individual item repeats in the $pat_quoted_field pattern are essential to avoid denial of service attacks which, having been fended off by your Web server, may bring your log analyser to its knees by crashing Perl. Perl isn't supposed to crash--if you manage to run into a configuration or system resource limit, it should die cleanly without the possibility of creating a stack overflow exploit or denial of service attack. I've reported this problem to the perlbug list, and I shall not disclose it further here. Still, I claim the patterns above are correct for processing all well-formed Apache HTTPD log items in "combined" format. If you have counter-examples, the Feedback button is ready to put them onto my plate.

Update: I've corrected a typo in the $pat_quoted_field pattern definition. The component for backslash escaped hexadecimal digits erroneously allowed repeats of the last digit, not the entire sub-pattern as intended. (2005-03-30 22:25)

Posted at 00:16 Permalink

Sunday, March 27, 2005

Linux: Under Pressure

This long week-end I've been running an experiment on the main Fourmilab server, enabling negotiated compression of outbound text files. The idea is simple; if the browser (or other user agent, such as a search engine's Web crawler) indicates it understands compressed files in its request headers, the Fourmilab Web server will dynamically compress the file and send it in compressed form. This, along with interim logging of compression, is accomplished with the following directives in the Apache server configuration file:
    AddOutputFilterByType DEFLATE text/html text/plain text/xml
and:
    DeflateFilterNote Input instream
    DeflateFilterNote Output outstream
    DeflateFilterNote Ratio ratio

    LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate
    CustomLog /server/log/httpd/deflate_log deflate
This is considered a conservative configuration, but in fact the degree of compression it achieves on my site is almost precisely the same as a far more complex set of exclusion rules, since almost every file whose type doesn't match the DEFLATE list is already compressed.

The log entries produced by the CustomLog definition look like the following:

"GET /yoursky HTTP/1.1" 232/320 (72%)
"GET /earthview/learth.map?114,91 HTTP/1.1" 295/409 (72%)
"GET /earthview/vplanet.html HTTP/1.1" 2619/6506 (40%)
"GET /robots.txt HTTP/1.0" 497/1349 (36%)
"GET /webtools/base64/ HTTP/1.1" 2517/5641 (44%)
"GET /skyscrsv/ HTTP/1.1" 4041/12112 (33%)
"GET /autofile/www/section2_83_6.html HTTP/1.1" 1990/5433 (36%)
"GET /earthview/vplanet.html HTTP/1.1" 2619/6506 (40%)
Note that the last three fields in each record give the compressed length, the original length, and the ratio of the compressed length to the original length, which isn't the usual "percent compression" you're used to; here, a smaller value indicates better compression.

Posted at 01:06 Permalink

Saturday, March 26, 2005

Reading list: Les Nouvelles preuves sur l'assassinat de J. F. Kennedy

Lebeau, Caroline. Les nouvelles preuves sur l'assassinat de J. F. Kennedy. Monaco: Éditions du Rocher, 2003. ISBN 2-268-04915-9.
If you don't live in Europe, you may not be fully aware just how deranged the Looney Left can be in their hatred of Western civilisation, individual liberty, and the United States in particular. This book, from the same publisher who included a weasel-word disclaimer in each copy of Oriana Fallaci's La Force de la Raison, bears, on its cover, in 42 point white type on a red background, the subtitle «Le clan Bush est-il coupable?»--"Is the Bush clan guilty?" This book was prominently displayed in French language bookstores in 2004. The rambling narrative and tangled illogic finally pile up to give an impression reminiscent of the JFK assassination headline in The Onion's Our Dumb Century: "Kennedy Slain by CIA, Mafia, Castro, Teamsters, Freemasons". Lebeau declines to implicate the Masons, but fleshes out the list, adding multinational corporations, defence contractors, the Pentagon, Khrushchev, anti-Casto Cuban exiles, a cabal within the Italian army (I'm not making this up--see pp. 167-168), H.L. Hunt, Richard Nixon, J. Edgar Hoover, the mayor of Dallas . . . and the Bush family, inter alia. George W. Bush, who was 17 years old at the time, is not accused of being a part of the «énorme complot», but his father is, based essentially on the deduction: "Kennedy was killed in Dallas. Dallas is in Texas. George H. W. Bush lived in Texas at the time--guilty, guilty, guilty!"

"Independent investigative journalist" Lebeau is so meticulous in her "investigations" that she confuses JFK's older brother's first and middle names, misspells Nixon's middle name, calls the Warren Report the product of a Republican administration, confuses electoral votes with Senate seats, consistently misspells "grassy knoll", thinks a "dum-dum" bullet is explosive, that Gerald Ford was an ex-FBI agent, and confuses H. L. Hunt and E. Howard Hunt on the authority of "journalist" Mumia Abu-Jamal, not noting that he is a convicted cop killer. Her studies in economics permit her to calculate (p. 175) that out of a total cost of 80 billion dollars, the Vietnam war yielded total profits to the military-industrial complex and bankers of 220 trillion dollars, which is about two centuries worth of the U.S. gross national product as of 1970. Some of the illustrations in the book appear to have been photographed off a television screen, and many of the original documents reproduced are partially or entirely illegible.

Posted at 22:28 Permalink

Linux: /var-acious Dictionary Spam

Every site which operates a mail transfer agent such as sendmail will eventually be targeted by "dictionary spam". These are spam hosts which connect to your inbound SMTP port and try a huge list of user names in the hope of "getting lucky" and hitting one which works, whereupon it can be spammed and sold to other spammers. You can see the evidence of this in your mail log, for example /var/log/maillog on Linux, as an endless litany of messages like:
sendmail[2185]: <deb@fourmilab.ch>... User unknown
sendmail[3406]: <tully@fourmilab.ch>... User unknown
sendmail[3770]: <burns@fourmilab.ch>... User unknown
sendmail[4875]: <mjf@fourmilab.ch>... User unknown
sendmail[4912]: <nizu@fourmilab.ch>... User unknown
sendmail[9148]: <gelu@fourmilab.ch>... User unknown
sendmail[11133]: <homer@fourmilab.ch>... User unknown
sendmail[12697]: <vigo@fourmilab.ch>... User unknown
sendmail[15784]: <tall@fourmilab.ch>... User unknown
sendmail[15784]: <tallie@fourmilab.ch>... User unknown
sendmail[16836]: <izzy@fourmilab.ch>... User unknown
sendmail[17229]: <tobi@fourmilab.ch>... User unknown
sendmail[18716]: <kale@fourmilab.ch>... User unknown
(I have elided the date, time, and unique identifier fields from these log items so the lines don't wrap around; these were all received in a ten minute period.) Dictionary spam arrives in irregular waves; frequently at peaks I'll see three consecutive attempts of each name a few seconds apart.

Apart from how wasteful of resources this is and the sense it gives you of living in a slum where people are constantly trying keys and picks in the lock on your door, there's a practical consequence for server administrators as well, in that essentially any local account with a common name and inbound mail capability will have its mailbox filled up with spam. Most Unix-like systems have a variety of administrative accounts pre-defined, such as adm, mail, news, etc. which, even though they are set up as "no login" accounts, are still able to receive mail with the default configuration of sendmail, which will store all the spam which arrives in its mail queue directory, for example /var/spool/mail. Since nobody logs into these accounts, they can accumulate a huge amount of spam without your ever noticing. One day last year on the former Sun server, I received a WatchFull report warning that the /var filesystem was more than 90% full. On investigation, I discovered more than 120 megabytes of spam queued to various administrative accounts!

Take a look at your server's inbound mail queue directory; you may be surprised at what you find there. One way to deal with this problem, as long as the accounts in question have no legitimate need to receive mail, is to simply alias them to the bit bucket, /dev/null, in your /etc/mail/aliases (or whatever) file. Note that you should run newaliases after modifying this file to put the new aliases into effect. Here is a list of targeted accounts I've so aliased on the Fourmilab server farm.

adm: /dev/null
apache: /dev/null
gopher: /dev/null
mail: /dev/null
daemon: /dev/null
news: /dev/null
ftp: /dev/null
If you do need to occasionally receive mail to an administrative account or feel uncomfortable jettisoning mail without examining it, you can alias these accounts to the administrator's account and rely upon its own junk mail filtering (for example, Procmail and/or Annoyance Filter) to deal with the forwarded spam.

Posted at 16:30 Permalink

Wednesday, March 23, 2005

Linux: Advance to the Rear

After yet another disastrous ext3 filesystem journal failure today, I decided to pack it in and revert the mission-critical /server filesystem to ext2. I accomplished this by halting the system, rebooting specifying a kernel boot option of "single", then converting the ext3 filesystem (/dev/sda9) to ext2 with:
    umount /dev/sda9
    /sbin/tunefs -O ^has_journal /dev/sda9
    /sbin/e2fsck /dev/sda9
    vi /etc/fstab
        # Change filesystem type for
        # /dev/sda9 from ext3 to ext2
    /sbin/reboot
So far, I've only done this on the main server. If all goes well, I'll propagate it to the backup server in a few days. Of course, when the server farm is fully functional, there won't be any distinction between main and backup servers, but while running down these kinds of bugs, it's nice to be able to draw a line between them.

Update: Despite this change to the /server filesystem, the server died again around 05:00 UTC on March 24th with the same "journal commit error". Enough--I converted all the filesystems back to ext2 to see if that will put an end to this nonsense. The root filesystem was already ext2 due to reports of diasters attempting to recover ext3 roots, so the only filesystem which was a bit tricky to convert was /usr. I booted from the Fedora Core 3 Rescue CD-ROM and converted /usr and edited the filesystem table in its rescue mount tree location of /mnt/sysimage/etc/fstab, then rebooted into normal mode--so far, so good.

Posted at 02:32 Permalink

Tuesday, March 22, 2005

Photography: Fractal Food: Self-Similarity on the Supermarket Shelf

I've just posted Fractal Food on the site. This is something I've had on the to-do list for some time--a macrophotographic essay of a remarkable vegetable I'd never seen before moving to Switzerland. Reading the manuscript of Rudy Rucker's in-press book The Lifebox, the Seashell, and the Soul (online excerpt) got me thinking again about natural computation and provided the impetus to actually finish the project. Vegetables are remarkably cooperative photographic subjects! This document is my first foray into 100% compliant XHTML (albeit transitional, not strict) and CSS; I've added validator buttons so you can put the HTML through the wringer yourself if you wish. It's also the first new document added to the site since I began the project to migrate to the new server precisely three months ago yesterday.

Posted at 22:57 Permalink

Monday, March 21, 2005

Blackstone's Commentaries on the Laws of England

Sir William Blackstone's Commentaries on the Laws of England is a foundation stone of Anglo-Saxon common law, still cited in court decisions in countries which didn't exist when it was written, more than two centuries after it was published. Given my proclivity for reading arcane books, I've been tempted to buy a copy but have been deterred by the outrageous price of printed editions. Given that the work is entirely in the public domain, I wondered when somebody would put this essential reference on the Web.

Well, behold, somebody has!   Here is what appears to be a complete edition of the 1765-1769 original text with all the notes linked to footnote citations. I'm not a lawyer and I don't have a canonical copy of Blackstone to compare against this document, but it certainly looks genuine, and I look forward to reading it in those occasional moments in which my brain's legal input valve is open.

Posted at 00:23 Permalink

Sunday, March 20, 2005

Reading List: Prof: The Life of Frederick Lindemann

Fort, Adrian. Prof: The Life of Frederick Lindemann. London: Johnathan Cape, 2003. ISBN 0-224-06317-0.
Frederick Lindemann is best known as Winston Churchill's scientific advisor in the years prior to and during World War II. He was the central figure in what Churchill called the "Wizard War", including the development and deployment of radar, antisubmarine warfare technologies, the proximity fuze, area bombing techniques, and nuclear weapons research (which was well underway in Britain before the Manhattan Project began in the U.S.). Lindemann's talents were so great and his range of interests so broad that if he had settled into the cloistered life of an Oxford don after his appointment as Professor of Experimental Philosophy and chief of the Clarendon Laboratory in 1919, he would still be remembered for his scientific work in quantum mechanics, X-ray spectra, cryogenics, photoelectric photometry in astronomy, and isotope separation, as well as for restoring Oxford's reputation in the natural sciences, which over the previous half century "had sunk almost to zero" in Lindemann's words.

Educated in Germany, he spoke German and French like a native. He helped organise the first historic Solvay Conference in 1911, which brought together the pioneers of the relativity and quantum revolutions in physics. There he met Einstein, beginning a life-long friendship. Lindemann was a world class tennis champion and expert golfer and squash player, as well as a virtuoso on the piano. Although a lifetime bachelor, he was known as a ladies' man and never lacked female companionship.

In World War I Lindemann tackled the problem of spin recovery in aircraft, then thought to be impossible (this in an era when pilots were not issued parachutes!). To collect data and test his theories, he learned to fly and deliberately induced spins in some of the most notoriously dangerous aircraft types and confirmed his recovery procedure by putting his own life on the line. The procedure he developed is still taught to pilots today.

With his close contacts in Germany, Lindemann was instrumental in arranging and funding the emigration of Jewish and other endangered scientists after Hitler took power in 1933. The scientists he enabled to escape not only helped bring Oxford into the first rank of research universities, many ended up contributing to the British and U.S. atomic projects and other war research. About the only thing he ever failed at was his run for Parliament in 1937, yet his influence as confidant and advisor to Churchill vastly exceeded that of a Tory back bencher. With the outbreak of war in 1939, he joined Churchill at the Admiralty, where he organised and ran the Statistical Branch, which applied what is now called Operations Research to the conduct of the war, which rôle he expanded as chief of "S Department" after Churchill became Prime Minister in May 1940. Many of the wartime "minutes" quoted in Churchill's The Second World War were drafted by Lindemann and sent out verbatim over Churchill's signature, sometimes with the addition "Action this day". Lindemann finally sat in Parliament, in the House of Lords, after being made Lord Cherwell in 1941, and joined the Cabinet in 1942 and became a Privy Counsellor in 1943.

After the war, Lindemann returned to Oxford, continuing to champion scientific research, taking leave to serve in Churchill's cabinet from 1951-1953, where he almost single-handedly and successfully fought floating of the pound and advocated the establishment of an Atomic Energy Authority, on which he served for the rest of his life.

There's an atavistic tendency when writing history to focus exclusively on the person at the top, as if we still lived in the age of warrior kings, neglecting those who obtain and filter the information and develop the policies upon which the exalted leader must ultimately decide. (This is as common, or more so, in the business press where the cult of the CEO is well entrenched.) This biography, of somebody many people have never heard of, shows that the one essential skill a leader must have is choosing the right people to listen to and paying attention to what they say.

A paperback edition is now available.

Posted at 16:55 Permalink

Thursday, March 17, 2005

Tom Swift Among the Diamond Makers Now Online

The seventh installment in the Tom Swift saga, Tom Swift Among the Diamond Makers, is now posted in the Tom Swift and His Pocket Library archive. As usual, HTML, PDF, PDA eReader, and plain ASCII text editions suitable for reading off- or online are available.

Posted at 23:24 Permalink

Wednesday, March 16, 2005

Reading List: Moving Mars

Bear, Greg. Moving Mars. New York: Tor, 1993. ISBN 0-8125-2480-2.
I received an electronic edition of this novel several years ago as part of a bundle when I purchased a reader program for my PalmOS PDA, and only got around to reading it in odd moments over the last few months. I've really enjoyed some of Greg Bear's recent work, such as 1999's Darwin's Radio, so I was rather surprised to find this story disappointing. However, that's just my opinion, and clearly at variance with the majority of science fiction authors and fans, for this book won the 1994 Nebula and Science Fiction Chronicle awards for best novel and was nominated for the Hugo, Locus, and Campbell awards that year. The electronic edition I read remains available.

Posted at 22:34 Permalink

Reading List: The Road to Reality

Penrose, Roger. The Road to Reality. New York: Alfred A. Knopf, 2005. ISBN 0-679-45443-8.
This is simply a monumental piece of work. I can't think of any comparable book published in the last century, or any work with such an ambitious goal which pulls it off so well. In this book, Roger Penrose presents the essentials of fundamental physics as understood at the turn of the century to the intelligent layman in the way working theoretical physicists comprehend them. Starting with the Pythagorean theorem, the reader climbs the ladder of mathematical abstraction to master complex numbers, logarithms, real and complex number calculus, Fourier decomposition, hyperfunctions, quaternions and octionions, manifolds and calculus on manifolds, symmetry groups, fibre bundles and connections, transfinite numbers, spacetime, Hamiltonians and Lagrangians, Clifford and Grassman algebras, tensor calculus, and the rest of the mathematical armamentarium of the theoretical physicist. And that's before we get to the physics, where classical mechanics and electrodynamics, special and general relativity, quantum mechanics, and the standard models of particle physics and cosmology are presented in the elegant and economical notation into which the reader has been initiated in the earlier chapters.

Authors of popular science books are cautioned that each equation they include (except, perhaps E=mc²) will halve the sales of their book. Penrose laughs in the face of such fears. In this "big damned fat square book" of 1050 pages of main text, there's an average of one equation per page, which, according to conventional wisdom should reduce readership by a factor of 2-1050 or 8.3×10-317, so the single copy printed would have to be shared by among the 1080 elementary particles in the universe over an extremely long time. But, according to the Amazon sales ranking as of today, this book is number 71 in sales--go figure.

Don't deceive yourself; in committing to read this book you are making a substantial investment of time and brain power to master the underlying mathematical concepts and their application to physical theories. If you've noticed my reading being lighter than usual recently, both in terms of number of books and their intellectual level, it's because I've been chewing through this tome for last two and a half months and it's occupied my cerebral capacity to the exclusion of other works. But I do not regret for a second the time I've spent reading this work and working the exercises, and I will probably make a second pass through it in a couple of years to reinforce the mathematical toolset into my aging neurons. As an engineer whose formal instruction in mathematics ended with differential equations, I found chapters 12-15 to be the "hump"--after making it through them (assuming you've mastered their content), the rest of the book is much more physical and accessible. There's kind of a phase transition between the first part of the book and chapters 28-34. In the latter part of the book, Penrose gives free rein to his own view of fundamental physics, introducing his objective reduction of the quantum state function (OR) by gravity, twistor theory, and a deconstruction of string theory which may induce apoplexy in researchers engaged in that programme. But when discussing speculative theories, he takes pains to identify his own view when it differs from the consensus, and to caution the reader where his own scepticism is at variance with a widely accepted theory (such as cosmological inflation).

If you really want to understand contemporary physics at the level of professional practitioners, I cannot recommend this book too highly. After you've mastered this material, you should be able to read research reports in the General Relativity and Quantum Cosmology preprint archives like the folks who write and read them. Imagine if, instead of two or three hundred taxpayer funded specialists, four or five thousand self-educated people impassioned with figuring out how nature does it contributed every day to our unscrewing of the inscrutable. Why, they'll say it's a movement. And that's exactly what it will be.

Posted at 02:26 Permalink

Saturday, March 12, 2005

Reading List: The Fatal Conceit

Hayek, Friedrich A. The Fatal Conceit. Chicago: University of Chicago Press, 1988. ISBN 0-226-32066-9.
The idiosyncratic, if not downright eccentric, synthesis of evolutionary epistemology, spontaneous emergence of order in self-organising systems, free markets as a communication channel and feedback mechanism, and individual liberty within a non-coercive web of cultural traditions which informs my scribblings here and elsewhere is the product of several decades of pondering these matters, digesting dozens of books by almost as many authors, and discussions with brilliant and original thinkers it has been my privilege to encounter over the years.

If, however, you want it all now, here it is, in less than 160 pages of the pellucid reasoning and prose for which Hayek is famed, ready to be flashed into your brain's philosophical firmware in a few hours' pleasant reading. This book sat on my shelf for more than a decade before I picked it up a couple of days ago and devoured it, exclaiming "Yes!", "Bingo!", and "Precisely!" every few pages. The book is subtitled "The Errors of Socialism", which I believe both misstates and unnecessarily restricts the scope of the actual content, for the errors of socialism are shared by a multitude of other rationalistic doctrines (including the cult of design in software development) which, either conceived before biological evolution was understood, or by those who didn't understand evolution or preferred the outlook of Aristotle and Plato for aesthetic reasons ("evolution is so messy, and there's no rational plan to it"), assume, as those before Darwin and those who reject his discoveries today, that the presence of apparent purpose implies the action of rational design. Hayek argues (and to my mind demonstrates) that the extended order of human interaction: ethics, morality, division of labour, trade, markets, diffusion of information, and a multitude of other components of civilisation fall between biological instinct and reason, poles which many philosophers consider a dichotomy.

This middle ground, the foundation of civilisation, is the product of cultural evolution, in which reason plays a part only in variation, and selection occurs just as brutally and effectively as in biological evolution. (Cultural and biological evolution are not identical, of course; in particular, the inheritance of acquired traits is central in the development of cultures, yet absent in biology.)

The "Fatal Conceit" of the title is the belief among intellectuals and social engineers, mistaking the traditions and institutions of human civilisation for products of reason instead of evolution, that they can themselves design, on a clean sheet of paper as it were, a one-size-fits-all eternal replacement which will work better than the product of an ongoing evolutionary process involving billions of individuals over millennia, exploring a myriad of alternatives to find what works best. The failure to grasp the limits of reason compared to evolution explains why the perfectly consistent and often tragic failures of utopian top-down schemes never deters intellectuals from championing new (or often old, already discredited) ones. Did I say I liked this book?

Posted at 22:09 Permalink

Friday, March 11, 2005

Safetyland: Mercury Madness

Check out this fine piece of absurdity, complete with a picture of firemen and a HAZMAT team member in bunny suit and face mask "responding" to a high school because somebody apparently spilt some mercury from the chemistry lab. According to CNN, "The building had to be closed twice for decontamination."

Hg_maze.jpg When I was a kid, one of my favourite puzzles was a "mercury maze" like the one at the right. The goal is to get all the drops of mercury into the little cage at the centre of the maze by tilting the maze to make it roll in the right direction, without letting the mercury you've already trapped escape. If somebody's shaken the puzzle, you can consolidate smaller drops into larger ones, but there's too much mercury to get one big blob through the maze all at once.

I also had a couple of bottles of mercury metal. There were lots of cool things you could do with it like dipping a silver coin into it to form a soapy-like amalgam, or dribbling it into a styrofoam cup filled with liquid nitrogen and looking at the shapes you got. Other than the minuscule amount used up in amalgam, mercury is indestructible--you just glob it back together and put it back into the bottle until the next cool idea.

Now prolonged exposure to mercury vapour can make you "mad as a hatter"--in fact the phrase refers to the symptoms hatmakers developed after long-term exposure to mercurous nitrate, which was used in making felt for hats. But like lead and other heavy metals, mercury vapour (the metal itself is not biologically active) is an insidious poison--it builds up in the body, so in the case of low-level exposure, it's the cumulative dose that matters.

Now given the vapour pressure of a few drops of non-finely-dispersed liquid mercury spilt in building the size of a school, don't you think they're over-reacting a bit? But what do I know, I used to play with mercury--I must be mad as a hatter!

If anybody told them there's an entire planet named Mercury visible in the Western sky after sunset this week-end (look for it next to the crescent Moon on the 11th), they'd probably have to evacuate the Earth!

Posted at 23:37 Permalink

Tuesday, March 8, 2005

Linux: ext3 File Systems on Heavily Loaded Servers

Linux ext3 file systems use a "journal" to permit quick recovery in case of a system crash. Each pending change to the file system is written to a journal area from which changes can be applied if the system crashes before they're written to the actual file system structure.

Under heavy load, it is possible for the journal area to overflow, which causes the journal daemon to crash, after which you get an incessant stream of journal failure messages on the console and all I/O to the file system fails. However, as long as the file system is not critical to system operation, the system appears to be running, so applications may not fail over to a backup server as you'd expect.

I first encountered this when I made a 4 Gb tar file backup of a file system in /tmp and then tried to copy it to another file system exported with NFS to transfer to another machine. OK, that was really pushing things, I'll admit. However, about an hour ago, my production server, running on Fedora Core 3 kernel 2.6.10-1.766_FC3smp went blooie with this problem and had to be power cycled to recover. Neither an init 0 nor /sbin/reboot in an active console window sufficed to cleanly stop the system. The server was sufficiently responsive in this mode to fool the load balancer into thinking it was up, so the automatic fail-over to the backup server did not occur until I powered down the failed machine.

This problem appears to be known, with a patch submitted to correct it, and this patch along with a couple of other related ones is in the 2.6.11-rc4-mm1 release candidate kernel which has not yet reached Fedora Core users.

If you're running a heavily loaded mission critical server with ext3 file systems, you might consider falling back to ext2 until the fix for this problem arrives in kernel update for the distribution you're using. As this message is addressed solely to up-to-their-elbows system administrators, I'll not describe how to make that change nor why you may prefer to continue to take your chances with ext3.

Posted at 21:51 Permalink

Sunday, March 6, 2005

Time Zone Puzzle

Here's a delightful puzzle regarding time zones in the U.S. Allow me to clarify the statement of the problem by noting that "seaboard states" refers only to the "lower 48" and that there are no tricks involving Pacific island possessions and the International Date Line. Tip of the hat to The Volokh Conspiracy.

Posted at 23:34 Permalink

Saturday, March 5, 2005

Reading List: Galactic Patrol

Smith, Edward E. Galactic Patrol. Baltimore: Old Earth Books, [1937-1938, 1950] 1998. ISBN 1-882968-11-5.
Although this is the third volume of the Lensman series, it was written first; Triplanetary and First Lensman are "prequels", written more than a decade after Galactic Patrol ran in serial form in Astounding Science Fiction beginning in September 1937. This was before John W. Campbell, Jr. assumed the editor's chair, the event usually considered to mark the beginning of the Golden Age of science fiction. This volume is a facsimile of the illustrated 1950 Fantasy Press edition, which was revised somewhat by the author from the original magazine version.

While I enjoy the earlier books, and read them in order in this fourth lifetime trip through the saga, Galactic Patrol is where the story really takes off for me. If you're new to Doc Smith, you might want to begin here to experience space opera at its best, then go back and read the two slower-paced prior installments afterward. Having been written first, this novel is completely self-contained; everything introduced in the earlier books is fully explained when it appears here.

Posted at 23:05 Permalink

Thursday, March 3, 2005

Fourmilab Server: One Year of Uptime

Today, the Sun Enterprise 3500 server which hosted the Fourmilab Sun Enterprise E3500 Server www.fourmilab.ch site from December 1998 until the cut-over to the Dell/Linux server farm on 2005-02-21 reached the milestone of more than one year of uptime since its last reboot:
# uptime
  1:17am  up 366 day(s),  4:55,
  2 users,
  load average: 0.00, 0.00, 0.01
The current load average is low, of course, because Web traffic is now being directed to the new-fangled server farm, but this venerable old-fangled server soldiers on, soon to be re-purposed as an on-line archive of the Web site. In its year of uptime, the server handled more than 200 million hits to the Fourmilab Web site, not counting intercepting and discarding up to 400,000 hits a day from the intense distributed denial of service attack mounted against Fourmilab from late January through late March of 2004.

Quibble if you like about the the cost and performance of these Sun SPARC/Solaris servers--they take a licking and keep on ticking. Congratulations, old friend, on six years of faithful service at Fourmilab and a year's uninterrupted operation despite all the attacks from the Internet slum.

Long may you run.

Posted at 01:20 Permalink

Tuesday, March 1, 2005

The Computational Universe: Quantum gravity from quantum computation

Ever since my cellular automata days, I've been interested in the "digital physics" or "computational universe" advocated by Edward Fredkin and, more recently, by Stephen Wolfram in A New Kind of Science. This "everything is computation" worldview has always been suspect because each generation tends to interpret "everything" through whatever's happening in their own epoch and yet, and yet . . . computation does have the ability to generate great complexity from the simplest underlying rules, and that's just what you want in a Theory of Everything.

Digital physics speculations have usually involved a great deal of arm-waving, so it's interesting to see an attempt to show how the spacetime of general relativity could be an emergent property of a low-level quantum computation, for example a quantum cellular automaton.

http://www.arxiv.org/abs/quant-ph/0501135

If you see a blank page when you click the above link, try reloading the page in your browser. We may be closing in on the ultimate structure of reality, but we don't seem any closer to fixing bonehead cache currency bugs in software used by hundreds of millions of people.

Posted at 01:12 Permalink