The Rants, Raves, Gripes, and Prophecies of Paul R. Potts

Contents by Category

Contents by Date

Favorite Links

My Wiki: main entrance
Boing Boing
Gwydion Dylan
Paul Graham
Richard P. Gabriel

Fri, 28 Oct 2005 Veronica Year One

Tomorrow, our little daughter will have her first birthday. One year of Veronica Ruth in the big wide world! Plus those early formative months in the womb, although she was not nearly as much fun then. Grace said something the other day about just how strange it was that a year ago, she wasn't around. It is somewhat mind-blowing. She seems too real to have not been in existence before that. So where was she? It is just as mysterious when people leave the world. It doesn't seem possible that they could be here and then not here so abruptly, but that is indeed the mystery we are confronted with. She will have to confront it too.

Lightening up a bit... Vera is doing great, although she is a constant challenge. She is fond of climbing, so she has a considerable number of bruises. We've tried to make the house fairly baby-proof, but she will climb anything. She has a lot of new skills. She is not speaking clearly, but she stuck a metal CD rack in my face and said "Daddy, eat it!" Grace asked her once if she would like some more food, and she said "That would be lovely." I'm not claiming her pronounciation would be clear to anyone else, but we understood her. This was at ten and a half or eleven months. She doesn't generally speak when you want her to, although she will typically answer questions with "yeah." She chants "ma-ma-ma-ma" as a kind of mantra while playing.

The sign language has not gone as well: she has not learned very many signs yet, and does not use them regularly, so maybe like she skipped crawling, she will skip signing. We are also not very consistent about using the signs. She still loves her They Might Be Giants DVD, and will dance whenever she hears "Alphabet of Nations" or "Clap Your Hands." Or even if we sing it to her and clap. She can clap along. She also manipulates objects in more sophisticated ways. She can't assemble duplo blocks yet, but the other day she had a cardboard box that was open on both ends, and sat and repeatedly put blocks in one and and watched them slide out the other.

I am also coming to the close of the second week of my new job, as a senior software engineer with Lectronix. I am very pleased to be rid of my tedious commute! The new office is only a couple of miles from home, and I may even be able to bike. I even have windows and an office with a door! Heaven. The work is interesting as well, although I am just starting to learn about the embedded platforms and tools. In addition, we should have health coverage again! That can't come soon enough. Medicaid is still bouncing all of Veronica's bills, and some of this paperwork is now almost a year old. They kept sending letters threatening to cut off coverage, with no explanation as to what we had done wrong, and Grace was not able to get a call back. We may wind up just having to eat about a thousand dollars worth of well-baby visits and immuninizations for the past year. Grace has also had some problems with her teeth, and it appeared she might need surgery. On top of that there is her gall bladder, which probably needs to be removed.

In the week between the end of my MicroMax/Visteon job and the start of this one, we were able to take a couple of days off and go up north, to Grand Marais on Lake Superior. Isaac had never been. The trip was beautiful, but too short. And too much driving! With stops, the return trip took over twelve hours. Road construction and endless traffic backups didn't help any. But the U.P. was beautiful. It turned out to be kind of an adventure: we met Governor Granholm in Grand Marais, who was visiting a community meeting to talk, in part, about the harbor breakwall, its state of disrepair and the need for funds to repair it. So we have pictures of Isaac shaking the governor's hand.

I am continuing to occupy my mind with a little bit of reading, in what little free time I can find, and am trying to take a more active role in Isaac's homeschooling. We are reviewing geometry and narrowing in on techniques he's forgotten over the summer, and he is also doing fraction drills. Although I am always hesitant to give him easy drill work, he seems to enjoy it, and at his age he can use all the basic technique work he can get, as long as we also try to move him forward. Isaac is also continuing in the Ann Arbor Boy Choir (a choir boy and an altar boy) and joining a more advanced singing group. I must go... they are performing tonight! It is going to be a busy weekend!

[/root/news] permanent link

Fri, 26 Aug 2005 Dead Turtles

When I came home from work last night, after spending nearly 90 minutes to go 32 miles, I found that the kitchen sink was full of hot water that had backed up from the dishwasher, which was running.

And in the sink were my three turtles, Giblet, Bubba, and Sluggo.


Having undergone some combination of scalding and drowning.

Isaac had been feeding the turtles, at my request, but wandered off to play and left them there, for I-don't-know-how-long. Grace was busy with the baby.

The backing-up of the dishwasher drainage into the sink happens commonly, and can be fixed by running the disposal or making sure the plug is firmly stuck in place.

It was a bad idea to feed the turtles while the dishwasher was running. And an even worse idea not to keep an eye on them and notice when the water started to back up, and stuff the plug back in, or run the disposal to clear the blockage (the turtles are much too big to go down the drain). Or take them out.

I did not know that the water was hot or that they were dead, and so we yelled for Isaac to come finish feeding them.

This is where it gets weird.

He drained out the water, rinsed them off like he is supposed to, and put them back in the tank. Apparently not noticing, or deciding to not bother to mention to us, that they were dead -- two completely limp, and one stiff. Not moving. Eyes closed. Bubba with his mouth open looking like he was in agony.

Which he probably had been.

Isaac has been feeding them for a while now, and has a lot of experience with them now... he knows that they hate being handled, and always try to wriggle their way free. It is not normal for them to have their eyes closed, for Bubba's neck and limbs to be sticking out stiffly, and for Bubba and Giblet's heads to be flopping loosely.

It was an accident, but accidents happen a lot less often to the observant and attentive. Isaac's response was just surreal, but the lesson we are trying to teach him from this is that being an observant person, paying attention, and taking responsibility for the helpless are the most important things we can teach him.

We are not giving Isaac a specific punishment, because this is at least partially an accident, although he felt the need to ground himself for a few days.

A brief eulogy for three turtles:

Turtles aren't pets in the same sense that cats or dogs are pets. You can't really train them much. They don't adjust to being handled; they don't like it. They are mostly for watching. Graceless and awkward on land, they are remarkably agile in the water. When they are not swimming around looking for food, they either lie on the bottom of the tank or bask on a rock. Occasionally I would even find all three of them stacked up, in order, from largest (Giblet) to smallest (Bubba), but if they saw me move, they would immediately jump back in the water. Oddly, although they are normally very shy, when I practiced my guitar, they would line up and appear to be watching me. Baby Veronica loved to watch them. They are relatively low-maintenance pets; unlike fish, they thrive in plain tap water, and with a large-capacity filter unit with a biological "waterfall" attached, I did not need to change the water very often. Since I am allergic to most furry pets, they were just about the ideal pet for me.

Giblet, a female red-eared slider, was purchased by my brother Brian perhaps seven years ago when she was tiny, about the size of a silver dollar. He kept her for a while, but she was not thriving; her tank did not have a proper heater and tank filtration, and Brian was over-extended with two children and several other pets to cope with. So, I took over Giblet's care and brought her to Ann Arbor. She grew, and grew, and grew some more, until she was about the size of a dinner plate. Her hobbies were basking, stealing food from the other turtles, and occasionally climbing out of the tank and hiding in obscure corners of our apartment. She bit me on several occasions, once drawing blood. She was mean, and you got the sense that she would eat you if she could, but she did a good job at being a turtle. Turtles can live fifty years or more with proper care. She might have lived several decades more, and she might even have outlived me.

I purchased Sluggo, a male red-eared slider, as a companion to Giblet. She was very small, and I did not want her companion to be large enough to take her head off while they were eating together, so I found the smallest turtle I could find. He was still quite a bit larger than Giblet. Now the tables have turned, and she is much larger. When I got Sluggo, I thought he was young, but it seems that he was the full-grown runt of the litter. He had a parasite and a soft shell. I was able to remove the "slug" (hence his name) and harden up his shell by feeding him turtle mineral supplements, although it remained somewhat distorted as it grew. He improved under my care, but always behaved kind of strangely; he seemed terrified of everything, including his own food. He seemed to have a neurological problem and his claws would sometimes twitch violently. Amazingly, he managed to fertilize Giblet several times, although the eggs always got eaten before we could collect them. He must have had a traumatic childhood, but did come out of his shell, so to speak, under my care. Sluggo did his best at being a turtle. I am glad that I was able to improve his life a little bit.

I purchased Bubba, a yellow musk or mud turtle, to keep Giblet and Sluggo company. He was more friendly, and his was shaped such that it always appeared to have an affable grin on it, hence his name. He had a remarkably long neck, which he could stick out to an absurd length. Instead of basking on the rocks, he enjoyed lying on the bottom of the tank and occasionally extending his neck all the way to the top, where his nostrils would just barely break the surface, to sip some air. He had an interesting hinged plastron. He developed a strange lump on his foot, and I was afraid it was some kind of tumor, but it went away after I put a sulfa antibiotic for turtles in the tank. He was not able to bite nearly as hard as Giblet or Sluggo, and resisted less when being carried to and from his dinner. He seemed a little bit more intelligent, although that is pretty subjective. Bubba was a great turtle. I'll miss him the most.

We did not bury them; they went into the dumpster. We don't have a good place to bury them, and I couldn't bear the idea of having a funeral for pets which are not even mammals. But they will be remembered. This weekend I will be dismantling the tank. I'm not going to replace them.

[/root/news] permanent link

Installer VISE

Installer VISE has a good reputation as one of the best packages for building installers, but apparently that is not saying much... it is really pretty awkward to use, and the documentation is weak.

It is like writing a program in a conventional language where all the actual behavior is hidden. Like: what the conditionals actually say; how comparisons are done (what constitutes true and false); not being able to evaluate any kind of previous step for success or failure without introducing a superfluous variable test item; not being able to actually manage types and perform type coercion yourself; not being able to actually manage strings yourself... ugh.

It does supply quite a bit of behavior for you, though, which would be quite awkward if you had to write it all yourself. Oh well...

[/root/geeky/programming] permanent link

Wed, 17 Aug 2005 Hump Day in Hell Week

This week Grace is attending an insurance sales class in Lansing. This means that our pattern for the summer so far -- in which I get up Monday, Wednesday, and Friday at about 6, and leave about 7, and Grace and Isaac get up after I leave -- is all scrambled. Now we're getting up at 5 and we're both commuting. Veronica and Isaac are both getting sitters or day care, and Grace is pumping milk for her. Although Vera likes day care (she loves to play with other babies), when I come home it reminds her that Grace is not there, so she starts to cry "mama" and is very hard to distract. By that point I badly need a nap. She seems to be on strike as far as drinking her mom's milk from a bottle goes (although she is eating and drinking other food before Grace gets home, and nursing when Grace gets back). All the pumping isn't going to waste, exactly, since it is relieving Grace's engorgement and ensuring that she will keep up milk production, but now we seem to have an oversupply that the baby won't drink.

Meanwhile, we're all recovering from a nasty cold/sinus infection. Veronica fortunately seems to have stopped throwing up on Grace and the bed during the night, and no longer has a high fever. My cough is just about gone. In addition to comforting Veronica in the couple of hours between the time I get home and Grace gets home, helping Grace get some dinner on the table and clean up afterwards, I'm also trying to complete a consulting project, writing a Windows installer. To help make sure neither of us drives off the road after waking up at 5 following a night of broken sleep, we are trying to get to bed by nine. That isn't working terribly well. Grace just had her fuel pump replaced, and her van now smells like gas, so there may be a leak somewhere, as if she didn't have enough to worry about, without the fear that the van will blow up or catch on fire.

Fortunately, it is Wednesday already, so the crazy week will be done soon, and perhaps we can get back into a routine. Veronica will get her mom back. With luck and some concentration I can finish this consulting gig successfully, which will pay for Grace's class and the day care this week, and also make it through the next month at Visteon. Grace will take her licensing exam and with luck pass it, which will make the class worthwhile. Veronica will make it to ten months, Isaac will get through the week without losing his mind, and everything will be back to normal... just in time for me to start worrying again about what I'm going to do when this temporary work assignment ends, around October... Urgh...

[/root/news] permanent link

Tue, 02 Aug 2005 On Print Heads

I've written before about my experience with my HP Business Inkjet 1100D printer. I was, for the most part, quite happy with it. However, recently the black printhead failed.

The Business Inkjet design separates the ink cartridge from the print heads. One would think that this might reduce waste and cost. The ink cartridges still cost a lot of money, though. The idea was that the print heads would last much longer than the ink cartridge - thousands and thousands of pages. According to PC World, "HP estimates that the black print head will last for 16,000 pages, and the color print heads for 24,000 pages each."

Well, that didn't happen. I haven't kept a page count, but I haven't even finished a second ream of paper, and a few 25-packs or 50-packs of photo paper. I doubt I've printed more than 2,000 pages.

Now, when an ink cartridge fails, you can still print; you'll just lose a color. Of course, if this is black, that can be a big inconvenience, but ink cartridges are usually in stock at office supply chains. However, when the print head fails, you can't print a single page: the printer just refuses to do anything. I found out the hard way that because they supposedly last such a long time, the chain stores don't carry the print heads; they are a special-order item. The salesperson at Office Max was quite surprised when I brought back my print head, and tested it out in another printer. It was kaput. And just out of warranty. And my printer was completely out of commission, while I had to wait a week for the new print head to arrive.

So, I have reservations about recommending the 1100/1200 series printers. There is the irregular print area on the back of the page versus the front when duplexing. Although color photos can look pretty stunning on expensive photo paper, printing out grayscale photographs results in pictures that look greenish.

Maybe my print head failure was just an anomaly, but the cost of replacing printheads and ink cartridges is starting to add up. Are there any decent, reliable inkjet printers that produce fast and sharp text, excellent photos, and that aren't obscenely expensive to operate? The reviews of the 1200D I've seen are not encouraging -- it seems that it is not an improvement over the 1100D model, so I probably don't want to pick one up for my mom, although that was the model I was considering. I've always been an HP fan, but is it time to consider another manufacturer?

(My 1100 can duplex, but this is a feature I've rarely used, so I would not consider it an important selling point. Ethernet, however, would be welcome, since trying to share the printer with my Airport Express has led to poor results, including a lot of photo print jobs that stalled out and failed; this does not seem to be HP's fault, though).

[/root/geeky/life] permanent link

On Firefly

I love Firefly. I've watched all the episodes at least twice, and I'm looking forward to the release of the Firefly movie this fall.

Lately, though, I've been contemplating the show's structure, and its strengths and weaknesses as storytelling and science fiction. I'm not going to dissect the whole thing now, but one thing that has stuck in my mind is that in the world of Firefly, no accomodation is made at all to the reality of vast interstellar distances. The ship Serenity can travel between planets in a matter of a few days; I think the longest journey time they mention is a month. But there is never any mention of faster-than-light travel. It's as if Einstein was just wrong in that world. Actually, the ship never even seems to accelerate very hard -- the crew and passengers don't have acceleration couches -- so apparently they don't believe in Newton, either!

Now, I have to say, I love Kaylee and her approach to spaceship drive repair -- "that part doesn't do much anyway; you can just rip it out." I love the beautiful Firefly effect. I love the narrow escape from the Reavers in the pilot, where they ignite the engine in the atmosphere and create a huge reaction. I love that explosions in space are silent. I love the fact that most aspects of life in the Firefly world are very low-tech. Firefly is "about the strawberry" -- the Preacher's bribe to Kaylee. It is a human story of loss and longing on a harsh frontier where the amenities of old Earth are rare and valuable, and life is cheap.

I don't want Firefly to be Star Trek -- an unrealistic world where there is no dirt, universal socialism and abundance seems to be the order of the day (people don't even seem to use money), and there are apparently no "have-nots." Human nature seems to have irrevocably changed in the world of Star Trek -- is anyone convinced by this future? But I think it frustrates the viewer not to at least have some ready excuses available for all the various laws of physics that get left by the wayside.

On Serenity, the crew seems to have instantaneous radio communication available between planets, or while they are nearing a planet. They've got some equivalent of interstellar wi-fi. When approaching a ship or planet they can hold conversations with other people with pretty-much instantaneous response times; they don't have to wait a few minutes for the reply to come. Even the round trip from the earth to the sun would be something like 14 minutes. They don't even invoke some kind of alternate technology like "subspace."

It is as if they just compressed the universe by a factor of billions; different planets seem to be closer together than the planets of our solar system. It is 240,000 miles to the moon and takes several days to get there with Apollo technology, and even assuming drive technology we haven't invented yet, it would take a year or more to get to Mars: the distance to Mars varies from about 35 million to 260 million miles. And think of how long it has taken Pioneer just to get out to the edge of the solar system.

Maybe the magical Firefly drive can do all this: accelerate the ship far beyond lightspeed, cancel gravity and inertia, and generate cool special effects as well. That seems a little much, though.

The Serenity also has a strange habit of coming upon other ships, as they wander about in "empty space" on routes designed to avoid being detected by the Alliance. That doesn't make a whole lot of sense.

Serenity can also apparently be taken into "atmo" and landed on a planet, apparently without worrying about burning up on re-entry. But yet the ship looks like it is made of materials that are available today: steel plating, prone to rust and all that. The situation with the space shuttle now shows how tricky that kind of thing is in real life. There is one funny moment (I think it is in "Shindig") where the pilot, Wash, has to struggle to correct his entry trajectory, but when I watch this I keep thinking about how the physics don't make a lot of sense. At that speed, if he made such a dramatic error in the ship's angle of approach, they would burn up or break up before anyone had time to react. (Think space shuttle Columbia.)

That said, I still enjoy the show, and hope it can be resurrected in some form. It is ultimately about human relationships, but ignoring both Einstein and Newton without even bothering to offer a hand-waving sidestep to the laws of physics just grates on me a little; it seems insulting to the viewer. There is an especially funny line in "Objects in Space" when Zoe is speaking to Wash about River:

Wash: "Psychic, though? That sounds like something out of science fiction."

Zoe: "We live in a spaceship, dear."

Yep, they live in a spaceship, but some things are just silly!

[/root/geeky/life] permanent link

Veronica at Nine

Our baby girl is nine months old. She is now walking pretty well, although with that hilarious arms-out, tottering side-to-size zombie gait. She says "mama" fairly clearly and makes the sign for "nurse." What she doesn't do anymore, though, is fall alseep without a fight, no matter how exhausted she is. She will only take very brief "power naps" during the day. At night, we practically have to sit on her until she gives up the struggle, and then she goes out like a light. She's also less content to sleep on her own bed, and wakes up wanting to get back in our bed.

She's got approximately four teeth at different stages. She chases down and eats ants. Her other hobbies lately are "freestyle nursing" in which she wiggles and contorts herself into all kinds of crazy positions while nursing, causing Grace no end of pain.

We've been watching the They Might Be Giants DVD of alphabet songs, "Here Comes the ABCs." We've also just gotten a baby sign language video, so we'll see how that goes. Sleep is not quite so easy to come by these days, but I can still usually get at least four or five continuous hours and another hour or so of broken sleep, which is enough to get by, so we aren't too bad off. And she's a lot of fun to play with. One of my favorite games is the "rasberry contest." I usually get tired of it first, so I guess she wins!

[/root/news] permanent link

Wed, 06 Jul 2005 Handling SREC files with Ruby

Ruby is definitely one of my favorite languages, and I am far more comfortable with it than I am with Perl. It seems very expressive; very frequently, once I find the right library method, the code pretty much writes itself.

However, just like with Perl, there is more than one way to do it, so I often find myself looking for more appropriate idioms for the task at hand. There is also some question of efficiency; I'm not trying to optimize prematurely, but the program I'm working on runs slower than I'd like, and I think Ruby can do better.

To start, I'll just share one quick annoyance. The first is that there is some deficiency in handling of typing such that statements like

puts "Checksum: " + chksm

will not work; you get a run-time error (can't convert Fixnum into String)." This seems wrong; it is not very "DWIM" (do what I mean) when considered in light of Ruby's philosophy of weak "duck typing" -- if it quacks, for all practical purposes your program can treat it as a duck, or in this case a string. I bring this up because I keep getting this error -- I have a habit of forgetting to add .to_s to the variable. I'm thinking in terms of C++ iostreams, where the type is taken care of using the stream << operator.

But on to a meatier question. I want to be able to treat a string containing ASCII hex digits as an array of bytes or as a Fixnum (where I can specify the byte ordering). For example, I want to be able to turn

"DEADBEEF" into an array of unsigned integers [0xDE, 0xAD, 0xBE, 0xEF] (for purposes of generating a bytwise checksum), or into the unsigned integers 0xDEAD, 0xDEADBE, or 0xDEADBEEF (depending on the record type I'm working on).

These are the ASCII character values (exprssed in hex); 'D' is decimal 68, hex 44. Not very useful; I get 2 strings of ASCII hex out. These aren't very useful for translation, since I'd have to turn them into integers, translate them to numeric values (not just a simple offset, because the hex characters are not contiguous) and then assemble the high and low nybbles into byte values using (high << 4) + low, or some such.

There must be a better way to do this. Here's my first try:

def make_checksum (str)
  checksum = 0
  0.step(str.length - 1, 2) { |idx|
    checksum += (str[idx].chr.hex * 16) + (str[idx + 1].chr.hex)
  return (~checksum) & 0xFF

Ugh. Look at the way I have to access the characters: str[idx] returns numeric types, not character types, which don't have a hex() method, so I have to convert them from the original characters in the string to integers, to characters, and then apply hex() to that.

Another way is to make substrings, I suppose, but it doesn't perform better, probably because it is generating a lot of extra string objects:

def make_srec_checksum (str)
  puts "make_srec_checksum; str is: " + str
  checksum = 0
  0.step(str.length - 1, 2) { |idx|
    checksum += str[idx..(idx + 1)].hex
  return (~checksum) & 0xFF

Another is that the String.unpack() method seemed from reading the documentation that it had exactly what I needed; it appeared that the "h" and "H" characters in the control string for the unpack method would be capable of unpacking ASCII hex data like DEADBEEF into byte values. That seems to be what unpack is all about. Instead, it generates ASCII hex bytes.

$ ruby -e 'puts "0123456789ABCDEF".unpack("H2" * 16)'


Not what I wanted. Most likely, there is a much better way!

It might be interesting to compare Common Lisp and Ruby implementations of my SREC tool; how concise, yet expressive, can I be in each language? This also might serve to shed some light on whether Common Lisp has fallen behind as far as libraries for typical file-handling and scripting-type tasks. More on that later.

[/root/geeky/programming/ruby] permanent link

A Squeak in the Wilderness

Blah blah apologies blah blah long time since I've written blah. Blah busy.

I guess I'm not much of a blogger. I was especially chagrined when my brother told me he hadn't seen anything new in a long time. I didn't even realize he was reading! Hi, Brian!

There is lots of news with baby Veronica. She is eight months old. She weighs twenty-something pounds, has one tooth, can stand briefly, "cruises" (walks with support), climbs stairs unaided, blows rasberries as a form of conversation, wrestles, giggles, sings, and dances to the theme music from "Red Dwarf." Although her main food is breast milk, she loves to eat bits of asparagus, bananas, and little bits of any kind of bread or pasta. She does not say clearly recognizable words yet (although she sort of says "hi"), but she tries to imitate words we say. We have to do much more baby-proofing than we expected. Apparently Isaac did not require very much baby proofing, but Vera moves fast, and likes to pull things off shelves. She especially loves to tear up books and eat the pages.

My time at home is considerably shorter than it was before, since I'm spending upwards of two hours commuting each weekday. When I do get home, I am spending more time chasing the baby and trying to run interference for Grace. Getting a little uninterrupted time to sit in the office to write or program has become a luxury. Grace has taken the kids camping with her sister-in-law, so I have a few free evenings.

Much more has happened; Grace's brother Ben Benjamin died without warning, and we are still in shock about that. He had undiagnosed hypertension (high blood pressure). He leaves a wife and four children, one teen-aged, two toddlers, and one small baby who was born with a dangerous heart condition and who is, happily, recovering from surgery. It makes me think hard about what Grace would do with Veronica and Isaac if something similar should happen to me. We've seen a lawyer to get complete wills drafted and I just had my physical for a new life insurance policy.

I've been working for Visteon in Dearborn, doing software testing for a satellite radio product. I'm technically a contractor on a limited- time project; hence the commute. If it turns into a permanent position we might move to Dearborn.

Meanwhile, I've not been able to do much free-time coding. I have put together a little tool in Ruby to do some assorted processing on SREC files. The SREC format is used in embedded software to hold downloadable code segments. The original file format seems to be attributable to Motorola, although there seem to be a lot of variants floating around. It started out as a tool to scratch a personal itch: the need to merge multiple SREC files. If you have a particular problem you need to solve with SREC files, get in touch ( I'll talk a bit more about this program in another entry.

I had planned to do some work in Common Lisp and/or Scheme while Grace and the children were away, but it turns out that I procrastinated too long, since she cut her trip a week short to return to Ann Arbor for her brother's funeral. She is taking another trip in early July, though, so if I can avoid procrastination, perhaps I will have something to show. It might be interesting to compare Common Lisp and Ruby implementations of my SREC tool; how concise, yet expressive, can I be in each language? This also might serve to shed some light on whether Common Lisp has fallen behind as far as libraries for typical file-handling and scripting-type tasks.

I haven't written about the war in Iraq or other political issues in some time. It doesn't seem that very much has changed except the daily details.

By any fact-based measure, America is not succeeding. Even rational Republicans are wavering. But Bush did not offer any changes in strategy. Bush's prime-time address last night boiled down, basically, to more of the same: "there was some connection between 9/11 and Iraq," "we're winning," and "we're not leaving before we've won." Oh, and "we can continue to win this war on the cheap, without increasing troop strength, and without sacrificing the tax cuts." Also, that there is no viable plan to get more assistance from the U.N. or from other nations, and apparently no movement on the situation with detainees, hundreds of whom appear destined to remain imprisoned for perhaps years into the forseeable future without even the pretense of a trial.

It would be nice to hear some acknowledgement that this failure was predictable. But I don't want to gloat; I want to see lives saved, both Iraqui and American. This just can't be achieved by inflicting futher terrorism on a country that didn't, and wasn't capable of, attacking us.

My son is about to turn 11 years old; he'll be old enough to serve in the military in 7 years. My daughter, in just over 17 years. Will we still have troops in Iraq then? Will we have an economy in shape to provide them with any other prospects for employment? Will they be drafted?

Without leaders who are willing to acknowledge mistakes and change course, it doesn't look promising.

[/root/news] permanent link

Fri, 18 Mar 2005 The Thrice-Cursed Airport Express

The thrice-cursed Airport Express has crashed again. First, printer sharing failed, and then a few days later the shared internet connection failed. Running the Airport Admin utility revealed that the device couldn't even be found on the network. A power cycle fixed it.

I checked Apple's site and there is an update to the firmware, which will take the device from 6.1 to 6.1.1; we'll see if that offers any improvement. The AirPort 4.1 software package offered for download on the same page is apparently the same version I already have. Meanwhile, until I determine if this update helps the reliability, I can't recommend the AirPort Express to anyone.

[/root/geeky/apple] permanent link

Sat, 12 Mar 2005 Baby Drinks

So, we had eaten dinner, and were having some hot chocolate: Isaac, Grace, and I were drinking it out of mugs.

Baby Vera started yelling (not crying or screaming, just kind of... yelling, and waving her arms to get our attention, basically saying "Hey! Hey! I want some too!")

She would not calm down until we gave her something to drink (a small amount of water) in a cup with a handle like ours. She neede a little assistance with the fine adjustments, but had the basic movements right, and managed to drink some water out of a real cup, holding it (mostly) herself, and then she appeared to be satisfied and stopped yelling.

She was born October 29th. That puts her age at... hmm... exactly 9 weeks from her date of birth to the last day of December 2004, plus 10 weeks to the day to reach 11 March 2005, for 19 weeks, or if you measure by irregular calendar months, a couple of days shy of 4 1/2 months.

She is nearly crawling, too. We've got to start getting the house baby-proofed!

[/root/news] permanent link

Dobson and Wonka

Baby Veronica is almost ten months old, and walking everywhere. She's getting ahead of our child-proofing again; she can now crawl over the barriers (pillows) we pile up to keep her from going up the stairs. This leaves us terrified that she is going to climb them, and fall down a whole flight of stairs; she is coordinated to get to the top, but not to get back down yet. Maybe the pile of pillows at the bottom would keep her from breaking her neck, but I don't think we can count on that. The arrangement of wall and railing in our apartment will not accommodate any baby gate we've been able to find, so we will have to come up with something else. Our ancient and badly-maintained apartment is hard to baby proof in other ways; for example, the downstairs bathroom door won't close all the way, so she can just push the door open to get in. We've been keeping the trash can in there, to keep it out of her reach, since she considers all manner of dirt and trash to make excellent toys. Also, she likes to visit people while they are sitting on the toilet!

I have a backlog of baby photos to put on the web site, and another roll of film will be ready to pick up as prints and a CD from Walgreen's tonight. Taking lots of photos guarantees that at least a few of them will be passable. So: more baby photos, as soon as I get a chance. I need a little quiet time on the computer, when baby Veronica is not trying to demolish and eat everything in the office. I've got some other things that have to get done first: some consulting work to finish, and some work to do in Quicken, to confirm just how fast our money is vanishing.

Grace completed her insurance class last week, and seems on track to take her exam this week. She is trying to review every day until the exam, so it stays fresh. It's a lot of obscure information to hold on to and regurgitate on cue, so we'll try and get her into the exam as soon as possible.

One complication is the van. It needed a new fuel pump, and we had it replace. We got one estimate, from a local shop we go to often, but it seemed ridiculously high, so we took it to a cut-rate place in Ypsilanti. Now the van is dripping gas and smells like gasoline. I think we should not even be driving it; I want them to tow it to their shop and fix it for free. I think they screwed up, big-time. This begs the question of whether we want a shop that screwed up so badly, creating a possible death-trap out of our van, should be entrusted to get it right a second time. I have to assume they will try to wriggle out of responsibility. And we can't keep throwing money at different shops; we already had to eat the cost of diagnosis at the first shop. Urgh.

I've found an interesting piece here:

It is a newsletter from Dr. James Dobson (Focus on the Family), a conservative think tank. I bring it up because it is being quoted in the leftish media out of context; this is an interesting example of the left engaging in practices they disparage the right for so much: taking quotes out of context. It was published in the Nation, and is now being cited elsewhere, such as on Alternet:

Now, I may have my doubts about the overall thesis of the piece in question, which is that homosexuality can (or should) be "prevented" by early intervention in the lives of young boys or girls who show cross-dressing, or even artistic, tendencies. There's certainly a lot to unpack and seriously question in a thesis like that. A lot of Christians would disagree with Dobson's premises; even some of the crazier recognize that he is channeling some of Freud's more discredited ideas (Google for "dobson penis freud" if you're interested). I'm not going to take the whole thing on now. But the overall method Dobson describes is about how fathers need to be strong role models and engaged with their sons. This one somewhat bizarre is being quoted out of context -- and there is a lot of context -- is the following:

"He can even take his son with him into the shower, where the boy cannot help but notice that Dad has a penis, just like his, only bigger."

Um, indeed. But out of context, that does not seem like a good recipe for preventing young boys from indulging in narcissistic masturbatory fantasies. Or something. Actually, in my case, with Isaac, the first time he saw me naked in a pool shower, he was horrified, because he was never circumcised, and I had to tell him about how I was surgically mutilated as a baby, without benefit of anaesthetic... and how many other boys still are.

But be that as it may, the Nation's use of that line out of context reminds me of the reasons I stopped reading the magazine: basically, because of the tendencies of its authors to wallow in their own narcissistic masturbatory fantasies of what the right's ideas were all about, without actually unpacking and engaging their arguments, or even understanding them. It's kind of like believing that women go veiled in some Islamic societies because men hate them. There's a certain aspect of truth to that, but it doesn't begin to explain the history and cultural meaning of the veil. Lame.

Last night we went to see the new Willy Wonka movie at the IMAX theater at the Henry Ford Museum. It was better than I expected; some tepid reviews had left me with lowered expectations. That is probably a good thing. The IMAX format was a lot of fun for this film, especially during Oompa Loompa musical numbers. It isn't just a bigger picture, but filmed on much larger format film, so there is a very detailed grain to it that works especially well in this movie to reveal artificial-looking eyes (with contact lenses, in most cases, or digitally enhanced), and makeup (usually ghoulish). The wrinkled faces of Charlie Bucket's elderly grandparents are wonderfully expressive in this huge format. It's pretty much the ultimate Tim Burton film; he's gotten very, very good at what he does, and if you like Tim Burton films, you'll like this one. It is in some ways closer to the original text than the older movie, but gives Willy Wonka a back story and rationale. It isn't so true to the book, but I think it makes a better movie.

It's also made me give a little more thought to the Willy Wonka story. I find it interesting that the setting is a factory: a place which is inherently unsafe, because manufacturing requires energies and materials to come togther in large quantities, in which adult rules for safety must obtain, and in which the strategies of the various children (gluttony, begging and demanding, artificially inflated self-confidence, excessive smarts) and the parents that made the children that way can't protect them, probably for the first time in their lives, and so it is time for some hard life lessons.

It's really a Grimm's fairy tale, although everyone survives in the end, unlike the way things work in the original Brothers Grimm stories. Burton makes it even more complicated when he asks us to consider Willy Wonka's own family story and Wonka's own strategies are for confronting life's hardships. (Johnny Depp's Wonka comes off reminiscent of Michael Jackson). The film actually goes a little deeper in that respect. Charlie's character, however, and that of his grandfather are not explored deeply at all; in the book and original movie, Charlie's grandfather tempts him into his own naughty behavior (stealing "fizzy lifting drinks" and nearly getting themselves killed, and nearly losing the grand prize). In this film Charlie is flawlessly boring in his desire to give everything to his family; he even offers to sell his golden ticket to provide money for his parents. Fortunately, one of the grandparents tells him, in one of the film's best lines, that there are only ever going to be five golden tickets, but there will always be more money because "they print more every day." Sage advice to take a once-in-a-lifetime chance!

Sadly, upon questioning after the movie, Isaac was not able to come up with a single way in which this IMAX film was different than the usual films we go to. (The last film we went to was perhaps seven to nine months ago, when we went to see The Incredibles). The fact that the screen was eighty feet high and a hundred and twenty feet wide, the seating angled steeply down, the aspect ratio different, the picture incredibly sharp and detailed, and the sound piped through a 12,000 watt surround sound system didn't seem to register at all. Sometimes we worry about that boy. I guess we won't be spending the extra travel time and money to go IMAX showings again, although Grace and I enjoyed it. I expected Veronica to be nervous and frightened, but she actually just seemed quite fascinated and content to watch, even when the sound got very loud, and fell asleep for the second half. I wonder what that means about her.

In other news, I will be interviewing at Carnegie Mellon University in Pittsbugh. I had a previous phone interview with a group in the Robotics Lab. This position would involve taking over maintenance and enhancement for a large Common Lisp application. It is also DARPA-funded and done as a kind of subcontract to Northrop Grummann. There are some ethical issues, since it is a scheduling program that is used to schedule Air Force planes, apparently for supply, refueling, medical evacuation, and for bombing, too. I really, really want the opportunity to work on a project in Common Lisp, and we would all really like to get out of Ann Arbor. I'll have to think hard about it. There is another embedded programming possibility in Ann Arbor, and the possibility of continuing at Visteon. It will all come to a crisis point soon, but at least there are some possibilities opening up; that wasn't happening for me a year ago.

In the little bits of free time I've been able to scrounge, I am reading Gene Wolfe's Book of the Long Sun novels. I have long been a fan of the Book of the New Sun; I've read it several times, and have the distinct feeling that there is a lot that I failed to understand. This feeling was only intensified by picking up Robert Borski's book Solary Labyrinth, which features some highly speculative interpretation on the family connections and meanings present in the book. Some I agree with, and some I think are long shots, based on only the most tenuous textual evidence. Borski's book made me feel that despite having read the books at least three times, I may as well have been reading a different book altgether. Better and more readable than Borski's book is Attending Daedelus, which features some more understandable interpretation, and a very useful chapter that summarizes the plot of the New Sun books. These somewhat obscure books are available on Amazon; there is a new book of Wolfe criticism coming out, which I have pre-ordered.

I tried to read the Long Sun books when they came out, but after getting halfway through Nightside the Long Sun, I decided not to bother. In comparison with the New Sun books, the Long Sun books are written in a much different style. They are a third-person narrative, and the story is extremely time-compressed; the whole 4-volume series takes place in about three calendar weeks. While the New Sun books give the immediate impression of complexity and depth and a great deal of back-story, the Long Sun books appear deceptively simple: less of the New Sun's space opera style and more like a simple fable or coming-of-age story. However, I now see that it was this radical change in style that turned me off, and gave me the mistaken impression that the Long Sun books lacked depth and characterization. In fact, they are incredibly evocative. Wolfe has just evolved as a writer, and he is able to pack much more into seemingly simple events. There is a great deal of foreshadowing, both in "reality" and in carefully portrayed hallucinations and dream states, and careful use of particularly evocative words. Together these hint at the underlying story. The main character, Patera Silk, is a much more sympathetic character than Severain the Torturer and Autarch of Urth, but there is a lot more to him than first appears. Gene Wolfe is particularly fond of unreliable narrators, and since Silk doesn't fully understand all the things happening around him, at least not at first, it is up to us to find the "true" story. In Silk's world, magic is indistinguishable from technology, to paraphrase Clarke's Law. His world is truly not as it seems. In fact, these books are so complex beneath the surface that after finishing the second, I had to debate with myself about whether I should continue to the third or immediately re-read the second, just to try to understand more of what I had just finished reading!

I have also purchased the Short Sun trilogy, in preparation. I don't get much time to read these days, and even when I do, I am often distracted, so it may be a while, but I want to get to the end!

[/root/news] permanent link

Wed, 09 Mar 2005 In the Bunker

I recently heard an interview in which an administration insider described a political leader as follows:

That's an area where Hitler did a huge amount of harm: he actually tried to manipulate the consciences of the German people. He convinced them they had a task to do, they had to exterminate the Jews, because the Jews caused all our problems. It wasn't Hitler's own idea... it had been put forward much earlier... that they had to make a sacrifice.

And I can remember a writer... she interviewed a soldier who had been stationed in a concentration camp. He was a guard, and she asked him: Didn't you feel any pity at all... for the people you treated so badly there?

And he replied "yes, I did feel pity, but I had to overcome it. That was a sacrifice I had to make for the greater cause." And that's what happend to conscience.

After all, Hitler used to always say "You don't have to worry, any of you... you just have to do whatever I say, and I'll take responsibility." As if anyone can take charge of another person's conscience. I do think you can make someone's conscience more sensitive, or desensitize it, or manipulate it.

The longer I live, the older I get, the more I feel this burden, this feeling of guilt, because I worked for a man, and I actually like him, but he caused such terrible suffering... and the feeling that I was so unaware and so thoughtless... that I didn't notice or pay attention. That feeling has oppressed me more and more.

It seems to me that I should be angry with the child I was, that juvenile young girl, or that I can't forgive her for failing to recognize in time what horrors that monster caused. The fact that I didn't see what I was getting involved in, and above all that I just said "yes" without thinking at all... I find it hard to forgive myself for everything.

He was a crimintal -- it's just that I didn't realize it. At some point afterwards, I began to wonder if I should have seen that... and after all, apart from me there were millions who didn't see that. I mean, it's not as though everyone apart from me realized what a criminal he was. And I try to take heart from those thoughts.

And Hitler did somehow embody something monumental. At first, when I was a child, the first time I met him he probably had a kind of paternal protective attitude towards me... and that's something I had longed for. I used to envy children who could say things like "My father says so and so," or "My father thinks..." I used to think having a father must be very important. Then I started working for Hitler, and suddenly I had that sense of security, too. There really was a sense of security in that community, which cut itself off so much from the outside... I think I had a very subservient attitude toward him as a father figure.

You know, I never had the feeling that he was conscious of pursuing criminal aims. For him they were ideals. For him they were great goals. And human life meant nothing to him in comparison. But that only became so apparent to me afterwards. You see, in the inner circle surrounding him, in his private sphere, I was shielded from the megalomaniacal projects and the barbaric measures. That was the awful thing, and that's what gave me such a shock later, when I realized what had been happening. When I started working there, I thought I was at the source of information and in fact, I was in a blind spot. It's like in an explosion, there's one place where calmness reigns. And that was the great illusion, the great, not disappointment, but lie that I had made myself believe.

The word Jew was virtually never used in everyday speech. The fact that Hitler would, at times, say something in his speeches about "international Judaism" or "the Jews," that was virtually ignored. Nobody ever raised the subject. At least, not in our presence. Actually, the only time I can remember the subject really being an issue was one evening at the Berghof when Frau von Schirach was a guest. I wasn't there at the time, I only heard about it. I was out of the room when it happened. She was on fairly cordial terms with Hitler, and she suddenly raised the subject. She told the Fuhrer directly that it was quite terrible, the way the Jews were treated in Amsterdam. They were packed into trains, she said, and it was an inhuman way to behave. It must have made him very angry, and he said to her: "Don't interfere in things you don't understand. This mawkishness and sentimentality." He really was very annoyed. He walked right out of the room and didn't return. And Frau Schirach was never invited to the Berghof again.

You couldn't discuss anything with him that was somehow sensitive or difficult. It was one aspect of him. And that was really the only time a conflict situation developed.

He didn't think in human dimensions. Humanity was never of any importance to him. It was always the concept of the superman, the nation, always this abstract image of a vast German Reich, powerful and strong. But the individual never mattered to him.

As for myself, deep in my heart, I did have some doubts, and I wondered: "Is all this absolutely right?" But then to question the situation, actually to initiate a discussion, would have taken more courage. And I think it's also the case that if you value and respect someone, you don't really want to destroy the image of that person -- you don't want to know, in fact, if disaster lies behind the facade.

I don't think he considered war a light-hearted matter. He regarded it as a terrible thing, although he never said so. For instance, whenever there were reports of air raids and people described the situation, or if I said something like: "My Fuhrer, you can't imagine how miserable it is for all those homeless people whose houses have been bombed -- it's just so terrible." He'd stop me right away and say: "I know exactly how it is, but we shall strike back. We shall take revenge, and with our new weapons everything will change. Vengeance will be ours!" He would always say that, and in particular he'd say that we would rebuild everything after the war and make it better than ever.

I think there was a general policy of denial. He never did see a city that had been badly bombed. We traveled through Germany in the special train with the blinds down, and when he reached Anhalter Station in Berlin at night the chauffeur would take the streets that weren't so badly damaged.

In the early days after the war, the past wasn't an issue, strangely enough. It wasn't a subject to be discussed in public either. And there weren't any books about it. In politics there wasn't yet the process of coming to terms with the past. Not even the Nuremberg trials started that process, the way it happened later, in the '60s. I don't know exactly why, but suddenly there were so many books. And lots of voices were raised. We heard about the SS state and then the diary of Anne Frank and there were people who had survived the whole thing. People who had resisted also spoke out. The thing that made a very strong impression on me was that after the war, the world wasn't at all the way Hitler had portrayed it and predicted it would be. Suddenly there was a spirit of freedom and especially the Americans -- I didn't get home until a year after the occuption, but especially the Americans -- turned out to be very good democrats and very helpful people. The care parcels started coming. I suddenly realized that none of it was true.

So in the early years it didn't really occur to me to come to terms with my past. Naturally all the horrors that emerged in the Nuremberg trials about the six million Jews and people of other faiths and beliefs who lost their lives -- all that struck me as very shocking. But I wasn't able at first to see the connection with my own past. I still felt somehow content that I had no personal guilt and had known nothing about it. I had no idea of the extent of what happened. But then one day I was walking past the memorial in Franz Josef Street to Sophie Scholl, a young girl who opposed Hitler, and I realized that she was the same age as me and that she was executed the same year I started working for Hitler. At that moment I really sensed that it is no excuse to be young, and that it might have been possible to find out what was going on.

The film is "Blind Spot: Hitler's Secretary." The directors include a commentary that describes Traudl Junge's later life, including the fact that she took an early retirement due to severe depression, and spent years volunteering as a reader for the blind. Shortly before the film opened, she told one of the directors "I think I'm starting to forgive myself." She died of cancer on the day of the film's premiere.

[/root/geeky/life] permanent link

Sun, 06 Mar 2005 Star Trek, Bismuth Crystals, and Baby Fatigue

So, we received in the mail a really cool bismuth crystal from an eBay seller. It gives our dining table a wonderful Star Trek feel. To find them, check out the seller's eBay store, Bismuth Crystals Unlimited:

Ours is a 225-gram crystal, which was the second-biggest one that he had available. These things are fascinating. They are "natural" in the sense that they grow without prompting, in very pure molten bismuth cooled slowly, with the remaining molten metal poured off to expose the crystal, but "unnatural" in the sense that the conditions that make these very large, beautifully-colored crystals would probably never occur in a natural setting. (I say "probably" because it is a big planet and a big universe! Who knows? There might be an planet-sized, chemically- and isotopically-pure crystal floating out there, produced in some incomprehensible stellar process...)

We've been watching episodes from the Star Trek (original series) first season DVD set. Most of them have been quite the fun blast from the past, especially "City on the Edge of Forever," "Balance of Terror," and "The Corbomite Maneuver." "Balance of Terror" features some very fine acting, even if the writers can't keep track of the difference between phasers and photon torpedoes. Kirk's reputation as a total ham is not truly justified. But last night we stumbled across "The Alternative Factor," which none of us had any memory of ever seeing before.

We quickly found out just why we could not remember it; even our friend Olivia, who was a seriously dedicated Star Trek fan: it is terrible! The episode features nauseous spinning-screen effects, photographic-negative effects to indicate an alternate universe, and even contains the immortal line of dialogue "Kill! Kill! Kill! Kill! Kill!"

There is the germ of an interesting alternate-universe story in there somewhere, but the storytelling is just awful: everything is told, instead of shown, in long and confusing talky scenes in which the techno-babble phrases like "negative magnetic corridor" pile up thick and fast. The storyline constantly contradicts and muddles itself (initially we are told Lazarus is traveling in time, but this seems to be an unnecessary complication; we're told that the planet is "dead" and "destroyed" but in fact it looks a lot like Southern California; there are repeated references to alien invasion and end-of-the-universe scenarios, and we are tortured by constant repetition of a painful music cue and cheesy "universe-flipping" effect. At the end, Kirk learns the truth, alone, but suddenly Spock and everyone else seems to have been informed as well, without ever being told. It is just terribly sloppy. Dilithium crystals don't look anything like the dilithium crystals shown in other episodes. One half of the two-sided hero/villain is identifiable mainly by his exceptionally cheesy facial hair. They definitely weren't all masterpieces!

As an exercise, maybe Grace and I will take a shot at rewriting "The Alternative Factor." She has some experience in screen-writing, and I have some experience in writing short stories, so maybe we can come up with something better. It could be fun; it could even play into an interesting home-school exercise for Isaac.

A baby update: Veronica is just past the four-month mark. She can't quite sit up on her own, but she will happily lie on her belly or back and play with toys. Yesterday she ate a Sears tool catalog. (Well, not really, but she ripped a bunch of the pages out and tried to stuff them in her mouth). She has discovered her toes. She's very stong, and seems to really enjoy working out: wrestling, doing sit-ups and push ups -- basically, anything that gives her a chance to work her baby muscles hard makes her giggle and laugh her head off. She will be crawling very soon!

And me? Although she really is a great baby, and sleeps most of the way through the night, she wants a lot of attention, and we do our best to give it to her. The end result is that I am generally always just a little bit more tired and distracted than it seems like I should be. When she does get to sleep, and I'd like to stay up and study or write, I usually just crash instead. Having a baby at 37 is probably quite a bit harder, in terms of stamina.

Grace certainly has it worse: she is Vera's caregiver all day, every weekday. She has been really great about trying to give me a little bit of time to myself on some evenings and weekends, but she is definitely tired too. A long winter with multiple bouts of colds and flu has not helped any, either! With any luck as the days get longer and warmer we'll get some energy back.

[/root/news] permanent link

Mon, 28 Feb 2005 Bismuth

So, we received our bismuth metal and proceeded to do some informal experiments. I call them "informal" because we did not keep strict records, form a precise hypothesis, and work hard to vary only one variable at a time. However, we did form some interesting conclusions and observations.

Experiment 1: Diamagnetism

The first thing we tried to observe was the diamagnetic effect in bismuth. The idea behind "diamagnetism" is that a magnet will induce in some materials an opposing magnetic field. We tried to observe this using a set of small but very powerful neodymium magnets. I am sorry to say that we were unable to observe any noticeable magnetic repulsion using any amount of bismuth from tiny splatter fragments to a solid ingot of perhaps 200g in mass. I am not sure why we could not observe this effect, which is supposed to be quite strong. One hypothesis is that our bismuth was not pure bismuth, but I think this is very unlikely since in all other respects (melting temperature, formation of crystals, oxidation, color tint of the oxidizing melt, and behavior when the liquid metal was dripped into water) it behaved exactly as expected). Also, it is my understanding that the bismuth would not need to be absolutely pure to show the diamagnetic effect. We will have to do a little more reading and perhaps ask some other people.


For the hot metal experiments, we made sure that we were wearing reasonably durable clothes that covered most of our skin, that we both had eye protection, and that we had a ready supply of water nearby to put out any fires, including a 32-ounce cup pre-filled and ready to go. For eye protection, I have prescription polycarbonate lenses which I judged to be adequate. Isaac put on a pair of polycarbonate sunglasses when he came near the melted metal. We used a thick cloth potholder to grab the handles of the cups, which was adequate, since the metal handles acted as heat-sinks anyway, although a silicone glove might have been provided a better grip.

Experiment 2: Melting

The second informal experiment was done to answer the question "can we melt bismuth on our stovetop?"

Our stove is a rather low-end home stove, and the oven is not very powerful, frequently doing a poor job getting the right amount of heat for baking, so I was not completely confident that we'd be able to get the metal hot enough.

Our methodology was to place 5 10-gram cylinders of the metal, as it arrived from the supplier, into a new stainless steel 3/4-cup measure. We placed this directly on the heating element and set the temperature control to 75% of the way to maximum. I was prepared to wait a while for melting to start, but Isaac noticed that the metal began melting almost immediately. So the answer was "yes." It did not even seem necessary to set the heat to maximum.

Experiment 3: Crystals

The third informal experiment was done to answer the question "can we form macroscopic bismuth crystals?"

The methodology was to melt 100 grams of bismuth and then remove the cup from the heat, allowing it to cool for several minutes without disturbing it, then pouring off the remaining melted metal into another heated cup.

We ran into complications because I had thought that we could place the hot cup on a heavy wood cutting-board in order to to allow it to cool slowly, rather than on a more heat-conductiven metal surface. The heat was too much for the wood, though, and the cutting board smoked and steamed underneath the cup. We increased the ventilation, but this was not really satisfactory. The smoke detectors did not go off, but it was at this point that Grace took the baby from the living room downstairs with her to the laundry room so that the smoke would not irritate her.

Despite this complication, after the first pour-off, we noticed visible crystals. After the bismuth and cup had cooled for several minutes, it was cool enough to try scraping some of the tiny crystals out of the cup, which I did using a wire hanger.

We broke one small crystal, about 3 millimeters across, that exhibited "hopper" structure. This was not very impressive, but it proved the concept. I threw this one back in the melted metal in the hopes of getting larger crystals on another pass. In retrospect, I should have saved it, for we were not able to get good crystal specimens after this.

The plan was to try using different cooling times to determine the cooling time which produced the most crystals. Because I was trying to find a solution to the smoke problem, we were not able to repeat the experimental conditions accurately while changing only one variable. I tried using ten layers of aluminum foil between the steel cup and the wooden board, reasoning that the foil would deflect some of the heat. This did not really solve the scorching problem; it just scorched more slowly. Moreover, the use of the foil dramatically changed the characteristics of the cooling metal. It no longer cooled first from the sides and bottom, but seemed to cool from both the top and bottom equally, so that when we attempted to pour off the remaining melted metal, it poured not from the top but from "holes" in what had become a semi-crystalline slab of brittle, oxidized bismuth. This brittle mass was clearly formed of a crystallized form of the metal, but it did not form attractive individual crystals.

I should say a few words about oxidation. We observed as we poured off, melted, and re-poured off the metal, it developed a "sheen" of various colors, most notably a vivid blue and green, as well as an oxidized, ugly "skin" of powder-gray metal, which would not melt. We were able to skim this off using the wire hanger and collect a heap of powdery oxidized bismuth. After working with the metal for a while, the cups became scarred and pocked with a yellowish oxide on the bottom, and lumps of scaly oxide on the sides, which we were unable to scrape off using the wire. At higher temperatures the liquid metal could be skimmed with the hanger, which would leave behind a clean, shiny surface, which would then immediately begin to develop a powdery-gray appearance.

This bismuth oxide, which we were not able to melt, could presumably be "reduced" using charcoal and a crucible, but we did not have an apparatus to do this, and so our shiny melted bismuth became gradually more and more contaminated with oxide. The smoke from the scorching cutting board, and possible varnish on the wire hanger, may have contributed to this contamination.

So, result was that we were able to grow at least a few small macroscopic crystals, but we were not able to successfully experiment with melting and cooling conditions or improve the results. I was not terribly disappointed by this as I was not really expecting to be able to grow large, beautiful crystals with this simple setup.

Experiment 4: Casting

A fourth informal experiment was done to answer the question "Can we cast the molten bismuth into a solid ingot using a mold made from folded aluminum foil?"

This part was very interesting. The answer was technically "yes," although with extreme reservations.

I folded a dozen layers of foil into a small box shape, and placed it on the cutting board, and poured about 100 grams of molten bismuth into the mold.

The result was somewhat startling. The combination of hot bismuth and aluminum foil immediately produced a thick black smoke, so we cleared the area and increased the ventilation. The smoke was not coming from the wood underneath, which did scorch as expected, but seemed to come the mold itself. The foil did not visibly burn, but may have either burned under the molten bismuth or have somehow allowed the bismuth itself to oxidize with some violence.

The molten bismuth did form a solid ingot, which upon cooling we were able to remove from the foil, which did not appear particularly burned. The top of the ingot was coated with a black powdery residue, which was much more difficult to remove from my fingers than the bismuth oxide. We washed and dried the ingot. Some of the aluminum foil on the bottom had stuck to the metal and could not easily be removed. We decided to melt the ingot back down and remove the foil from the melt. However, once it was melted, we were not able to find the foil, so I assume that it burned up. Our melt was now presumably contaminated with aluminum oxide, which probably would have ruled out any further crystal growth.

So, in conclusion, it was possible to use foil to form a mold and create an ingot, but the heat produced a potentially dangerous reaction, so I would not want to try this again. Powdered aluminum is used as an explosive, and aluminum is apparently too prone to oxidation to use safely for such a purpose, although I imagine that a solid piece would not produce smoke so readily. We are not certain of the toxicity of the generated smoke, but presumably it was not a good idea to be breathing it. I was glad that the baby was out of the room and that we had good ventilation.

Experiment 5: Spatters

A fifth informal experiment was done to answer the question "what happens when you drop the molten bismuth metal into water?"

We tried using several different size containers and dropping the metal in different ways, ranging from pouring individual drops into the water up close, to pouring a stream from high up.

For these experiments we used a small steel bowl on the counter, and also a large bucket on the floor. This part made it clear how important it was to have eye protection. The hot metal produced small steam explosions, which resulted in sprays of water droplets as well as occasionally very small droplets of molten or near-molten bismuth. The result was somewhat like the spatters that can happen while cooking bacon in a frying pan. I received some very minor burns on my forearms, but I had expected that this might happen, and none of the burns were severe enough to require treatment.

Pouring pure bismuth into a small container in a steady stream produced very elaborate spatter shapes that would stick together in a semi-solid "forest." Doing this raised the temperature of the water to the point where it was steaming, and produced a lot of spatter.

Dropping bismuth into the larger bucket produced at least four somewhat distinct results.

Dropping the metal from several feet produced "exploded" shapes, where it appeared that the molten metal actually splashed upon hitting the water. The shapes ranged from very thin foil-like fragments to spheres and teardrops that seemed "exploded" -- hollowed out.

Pouring the bismuth very close to the water surface resulted in elongated, needle-like shapes with points at both ends, some several inches long.

Pouring the bismuth carefully drop-by-drop resulted in a large number of small, nearly identical "teardrop" shapes. These were so remarkably uniform and attractive that I separated these out and set them aside to put in a jar for display.

In the bottom of the bucket we also collected a very fine "sand" or "grit" of dark, oxidized-looking bismuth. It is not clear whether this was solid oxide, or how it was formed. Some hypotheses include: it oxidized by the dissolved oxygen in the water itself; the hot metal actually released oxygen from the water; it was produced by the explosion within the steam bubbles; it was somehow separated from the actual bismuth metal by the dropping process.

We collected up some of the less attractive pieces, dried them, and put them back to melt again. We discovered that it was extremely important to dry the bismuth thoroughly. Some of the hollowed-out shapes still contained enough water to cause a more violent steam explosion, which blew tiny molten metal droplets everywhere. This served as a good warning; if we try to melt down more of the spatter we will bake it at a low temperature first to drive off the water and then heat it gradually to melt it to avoid this violent steam release.

Experiment 6: Casting (again)

As a final experiment, we poured some of the remaining oxidized and unattractive melted bismuth into a cup and allowed it to cool to room temperature, in another attempt to make an ingot or slab for examination later. When it was cool I was able to remove it from the cup by knocking the cup hard against the wooden cutting board.

End Products

The experiments left us with several end-products:

  1. A highly oxidized, ugly, irregular disc of bismuth combined with whatever oxides or other contaminants are present, with a powdery crust, partially yellow on the outside. I broke this into several pieces and put it into a bag. The broken edges exhibit a very shiny silicon-like appearance. The slab is extremely brittle.

  2. A badly scorched wooden cutting board. I'll save this for now in case weneed to use it again, but we will probably discard it eventually because it smells very smokey.

  3. Several "roasted" steel measuring cups. These are discolored on the outside from the heat. I scrubbed most of the oxide out with steel wool, but some remains that is too hard for me to remove. We will save these for possible use in melting down some of the spatter, or making more spatter, but they may be too contaminated to grow crystals.

  4. One more clean unused steel measuring cup. We may use this for a future attempt to grow crystals.

  5. Perhaps 300 or 400 grams of unused bismuth. We'll save this for a future experiment.

  6. Several baggies with different kinds of spatter: one with very attractive teardrop shapes, which I would like to save; one with "exploded" shapes, one with "needle" shapes, and one that is a jumble of all the rest, most of which is in the form extremely small irregular foils, lumps, crumbs, particles, and fragments.

Paul's Conclusions:

This was a fun way to get the urge out of my system to play with molten metal. Although it was more a demonstration than a formal experiment, we did learn some interesting things and it brought up some open questions for further, more formal, experimentation.

I did wind up making a couple of blunders that caused safety risks. The biggest of these were super-heating the aluminum foil, and putting spatter products that were still damp back into the melt. Fortunatley these do not seem to have caused any long-term harm, although I regret the exposure to the smoke generated by the combination of the hot bismuth and aluminum foil. The scorching of the cutting board was unfortunate but I don't believe it represented a serious risk of fire, because the wooden board was too large and flat to ignite.

Questions for Isaac:
  1. Read the chapter on bismuth in the Elmsley element book.

  2. Examine the contents of the various baggies, particularly the broken "ingot" or solid disc, and the long "needle" shapes. (Wash your hands with soap and water after handling this oxide, since it will stick to your hands).

  3. We can describe metals as ductile (bendable) or brittle (breakable). How would you describe the needle shapes? How would you describe the ingot?

  4. Can you explain the difference in color between the somewhat shiny teardrop shapes and the grayish surface of the ingot? How about the shiny broken edges of the ingot?

  5. Are the needle shapes crystallized metal? Explain. Why or why not?

  6. Is the ingot crystallized metal? Explain. If so, is it one crystal or many crystals? Can you see the crystals? Why or why not?

  7. Explain how to convert the melting temperature of bismuth from Celsius to Fahrenheit.

  8. What would you do differently if you had a chance to do more experiments with bismuth? Particularly, address how to improve safety, how to cool the molten metal without using the wooden board. Which experiment would you like to do?

  9. For the experiment you would like to do, write down the hypothesis, the planned method, the expected result, the reason the expected result would confirm the hypothesis, and an alternative explanation for the expected result that does not confirm the hypothesis.

Isaac's Conclusions:

(to be done!)

[/root/geeky/life] permanent link

Tue, 22 Feb 2005 Slogging Along with Turin

So, I'm working my way through the second book of Lost Tales. The early versions of Beren and Luthien were easy to read, especially with the somewhat comic scenes with the cat-lord, Tevildo. The draft of the story of Turin Turambar, entitled "Turambar and the Foaloke," is not so easy. It is long, and grim, largely in a very formal style, and it veers perilously close to reading like "the telephone book in Elvish." This is in part because so many of the names are different in the version of the story with which I am most familiar.

I'll have to fortify myself by listening to my recorded version of the tale of Turin Turambar as it appears in the Silmarillion. If that doesn't get me through it, I'll set it aside for now and move on to the next story. Maybe I'm just tired today.

In our bedtime storytelling we're in the midst of the Council of Elrond, the point at which fellowship is formed and the story really gets moving. The night before last we were in the hall of fire, and I read out loud Bilbo's poem about Earendil. I had long thought this was one of the more abstract and dull of the poems in the book, but now that I am older, when I read the poem out loud I find it stunning: an amazing vocabulary, great subtlety of wording, with alliteration and internal half-rhymes, makes it perhaps the best single poem in the book, in my haughty and egomaniacal opinion.

Shortly I'll have the chance to read Tolkien's early Tale of Earendel (an earlier spelling), which contains several earlier poems. I'm very much looking forward to it. It makes me laugh even more at Bilbo's cheekiness in reciting a poem about Earendil in the house of Elrond. But it is a remarkable poem, and the elves were not mocking Bilbo when they asked him to recite it again. It also makes me wonder what it would be like to be old enough to remember personally a world that is now only myth -- but since I was born in the 1960s, perhaps I do -- and wonder further what it would be like to have a constellation for a father!

[/root/geeky/tolkien] permanent link

Mon, 21 Feb 2005 Lisp Group

I'm looking for people interested in meeting to talk about Lisp, Scheme, and other languages of that ilk. I have set up a group, the Ann Arbor Lisp Languages Meetup; the group home page is here:

As of yet, we have not met, because no one has joined the goup. I'm posting this here in part so that anyone Googling for an Ann Arbor, Michigan, Lisp User's Group, or Scheme User's Group, will find it.

I would also like to get this topic syndicated via RSS onto the Planet Lisp aggregate site (, but as of yet the Lisp content is a little light, so I wait until there is a little bit more of interest here before asking them to syndicate my feed. The RSS feed for this topic is available as:

[/root/geeky/programming/lispish] permanent link


So, I decided to order a couple of pounds of pure bismuth to melt down with my son, in order to attempt to create bismuth crystals. In case we can't get any visible crystals, I also bid on a really pretty specimen on eBay. We might also see whether crystallization can be improved by using a "seed" crystal. I don't know whether that works with metals or not.

I mentioned cesium as being another metal that would melt in your hand. Well, some web sites describe a couple of other metal elements as being liquid at "room temperature," but really it depends on the temperature of your room. Cesium melts at about 83 degrees Fahrenheit, gallium at 86, and rubidium at 102.

It is a bit odd to talk about the "melting point of francium," since it is an unstable radioactive element that would be insanely difficult or insanely dangerous to accumulate in a quantity large enough to be visible, but the melting point of francium, presumably calculated via mathematical modeling rather than by observation, is listed in the books as 27 degrees Celsius (about 81 degrees Fahrenheit). Bromine and mercury are both liquid at what I think of as comfortable "room temperature" -- around 70 degrees Fahrenheit.

So, this is technically true -- cesium will melt in your hand, but I should probably also point out that when it was done melting in your hand, it would then melt your hand, or, rather, burn its way through it in an extremely painful way. Cesium is extremely hazardous, and pure cesium must be kept under glass in argon. A cesium FAQ list at the University of Rochester says:

"Cesium is an alkali metal, in the same group as lithium, sodium, potassium, and rubidium, and is similarly reactive, but to a much higher degree due to its extreme electropositivity. It reacts explosively with water, and with ice down to -116 C. In air, it catches fire spontaneously and burns with a brilliant sky-blue flame...

Its hydroxide is the most powerful aqueous base known, and will eat through glass, flesh, bone, and numerous other substances."


The FAQ is here:

This is too bad, because it is very pretty; if mercury is quicksilver, cesium could be called quickgold. It would be a beautiful specimen to have in an element collection, but it is far too dangerous to have a specimen, even a nicely ampouled specimen, in the house with small children (or even with me; I would no doubt want to handle it all the time too). Oh, well.

Of possibly more interest are the non-toxic metals with low melting points. More on those when we get our bismuth!

[/root/geeky/life] permanent link


So, I should mention that I have a jar of elemental mercury. I have not weighed it, but I would guess that it contains two or three pounds. It is currently in zip-lock bag, in a tin, padded with foam rubber, on a shelf. It came from my stepfather's basement; I think he probably picked it up from a General Electric salvage lot in the 1970s. He used to bring home all kinds of interesting electronic and mechanical stuff. It was apparently not widely known then that mercury was toxic.

There are a couple of things we could do with this. We could pay someone to dispose of it for us -- probably the safest option. We could donate it to someone setting up an element display. We could just keep it as-is and put off making any decision as to its disposition. Or, we could have it ampouled in some way to make it display-worthy for our own element collection, and keep it locked up until the kids are old enough to be trusted around it.

It is somewhat oxidized and not shiny; this can be remedied by squeezing it through cheesecloth or a coffee filter. But although I used to handle this stuff as a kid, and did the filtering procedure before, I am reluctant to do it in our apartment, especially not with a child and a baby on premises. And then I'd have a cheesecloth or coffee filter contaminated with mercury.

What I'd really like is to find someone who would filter it (to "polish it up") and then put it in a heavy walled and attractive display bottle, top the jar off with argon, and seal it up. This is presumably a dangerous procedure; I don't even know how this kind of thing is safely done, but it must be done often, at least with smaller quantities, because ampoules like this are included in commercially available element displays.

Presumably, you'd need a vapor hood, and would do it wearing protective gear.

If you know someone who would like to take on a project like this, and who would be willing to accept the risk of a mercury spill, get in touch. It would be especially great to find someone who would do it in exchange for splitting the mercury into two jars, keeping half for his or her own element display.

[/root/geeky/life] permanent link

Fri, 18 Feb 2005 History Volumes 2 and 6

I have finished reading the early versions of the story of Beren and Luthien, in volume 2 of the History of Middle Earth. This draft is interesting in part, as I have said, because of Huan's nemesis, the evil cat Tevildo, and because Beren is apparently also an elf, but one of a different social class and community. The great love between elf and mortal man apparently had not become part of Tolkien's mythology yet.

The Tevildo material is interesting -- it seems that Tolkien may have been a dog person. One of the cats is actually killed and skinned. Tevildo's lieutenants act like cats, making enormous leaps and twitching their tales. Some of the story borders on comic fable. It is hard to decide whether Tolkien included the comic element wtih full deliberation, or whether he found himself distracted by writing an "origin" fable of the antipathy between cats and dogs in the midst of telling the story of Beren and Luthien. I tend to think the latter is true.

Intentionally, or not. I think he may have eliminated the entire Lord of Cats component of the storyline because it generated that comic feel, and in the later versions of the Silmarillion, he wanted to maintain that high mythological air. This is, I feel, a slight loss. Tolkien famously hated allegory, but the story of Tevildo is not allegory but fable, and I think Tolkien enjoyed writing fable. He may have come to feel that the form was unworthy; if so, that's a shame. I feel that a truly integrated Silmarillion, with "lost tales" framework story intact, could have subsumed both the mythological style and the fable style, though broken down by complete story, perhaps; the combination of styles within the story of Beren and Luthien perhaps did not serve that story well. The storytellers are actually different characters, so it would make perfect sense that they would tell the tales with very different voices.

I received the last two outstanding orders from Amazon: volumes 6 and 8 of the History. Volume 6 was apparently the hardest for Amazon to get, but get it they did. Although all the rest were in mint condition, this one looks a bit shopworn -- not abused, but the cover is scuffed. The binding on this one is a bit distorted, but that is a manufacturing issue and hardly Amazon's fault. Still, it makes me wonder what various and sundry means they use to procure their books -- this volume looks like it came off the shelf of a retail store.

There also was no discount on this volume. Sadly, they also have raised the price of all the available volumes slightly now, although most of them are still far below list.

Anyway. I began reading Return of the Shadow last night. There are a couple of remarkable things about Tolkien's drafts. The first is that many of the ideas and phrases really did spring full-blown from J. R. R. Tolkien's mind in the first draft. Sometimes they are the most clever and recognizable bits, such as when Bilbo tells his assembled guests "I don't know half of you half as well as I would like, and less than half of you half as well as you deserve." Indeed, the whole structure of the party, the speech, and Bilbo's disappearance did not change much.

The second remarkable thing is that Tolkien had no outline. The party was a set piece that he put down on the page, but there was as of yet no vision behind it. In several of the succeeding drafts he tried to get up some momentum for the story, but wound up repeatedly writing himself into a corner. Bilbo goes off and gets married and lives happily ever after. No, that pretty much derails the story before it gets off the ground. Bilbo goes off to Rivendell and lives happily ever after. Same problem. Hmmm. Maybe it isn't Bilbo who gives the speech -- Bilbo is a little too fat and happy to be the protagonist at this point -- but Bingo, his son. Or maybe Bingo isn't his son, but his second cousin. How old is Bilbo, anyway? How many years have gone by? Is this his party, or Bingo's party?

At this point Tolkien had only some very sketchy ideas about where to take the story. There was no deep history behind the ring. He had some vague ideas about Bilbo wanting to go acquire himself some more dragon-gold, or see a live dragon again, or travel across the sea, as part of the ring's curse, but it was not connected to his more ancient and rich mythology. He wanted to re-create the success of the Hobbit, and satisfy his fans, but he also didn't have a lot of interest in telling another children's story. His heart lay in his "Lost Tales," the over-arching legendarium of Middle Earth. The Hobbit was not really connected to this existing body of material at all. The challenge that Tolkien had before him, in order to get himself interested in the story, was to find a way to connect it to that deeper world.

It took him many chapters and many revisions before this began to happen; prior to this, he was mainly "writing his way into the story," as Tom Shippey described the process.

This is unintentionally a great encouragement to writers everywhere. Tolkien proved it: you don't have to know just what you are doing, before you start. If you are truly a writer, the process itself will generate the interesting ideas.

It also reveals the fault lines in The Lord of the Rings. Clearly, there was room for a progressive series of plot outlines in Tolkien's process. Ideally, a writer would use both techniques.

It is now much more clear why the early parts of the story feel so uneven. This long story, generated by repeated revisions and in fits and starts, also suffered, in some sense, from incomplete revision. The process of discovery of the plot is still visible. The seams show. The ringrwaiths, for example, in the early chapters, are not very terrifying, because Tolkien, like Frodo, didn't know what the ringwraiths were, and what terror they represented. And once he knew, he did not rework all the older scenes to fit the ringwraiths as they became later.

There are other places where the seams show. The Bombadil and Old Man Willow episodes, for example, really don't fit into the story arc. Tolkien included them because he had already imagined these characters in his comic rhymes, and thought it would be fun to give the hobbits something to do on their journey to Rivendell. He was right, and this recycling gives us an interesting and enigmatic episode in the story, but only because he was such a gifted writer. Lesser writers should take this as an encouragement that writing itself is the primary tool needed to generate ideas, but that a little planning can go a long way in producing a finished product with a more integrated and unified feel to it, especially if you are not a Tolkien yourself.

[/root/geeky/tolkien] permanent link

The Elements

So, my latest eBay obsession is beautiful specimens of pure elements. There are some sellers that specialize in unusual collectible pieces such as spheres of pure zinc, cadmium, or highly polished silicon, ingots or cylinders of aluminum or tungsten, and balls or lumps of some of the more expensive metals like osmium and iridium, which are neck-and-neck for the honor of densest readily available element, and which have to be melted in strange and very expensive contraptions such as electron-beam furnaces.

Beryllium and lithium are reactive, and iridium and osmium are very expensive, so my second thought was that it might be fun to have some less expensive specimens the represent radically different atomic weights, such as equal-sized pieces of zinc and tungsten. If I can't find equal-sized pieces, it would be cool to find similarly shaped pieces of the same mass, which would differ in size to a comical degree. I could also pick up an ingot if indium, which is an interesting, non-toxic metal that is extremely soft, and can be melted on a stovetop. I did not see any scandium, which is very expensive, or cesium or gallium, which will melt in your hand.

Tracking down a full set of attractive, pure specimens could very well be a full-time, and fascinating, hobby. A good place to start might be a set of attractive metals, like niobium and hafnium. But I probably should not try to take on yet another hobby, especially since I don't have a nice spot to set up a display of these speciments. Sigh.

Besides the pure element specimens, eBay also has great mineral specimens, such as beautiful black tourmaline and fluourite crystals, which would go, presumably, on a different shelf. There are also some amazing fabricated specimens, like a silver-doped bismuth crystal geode that looks like a robot egg, and a piece of Gadolinium Gallium garnet with crystals of platinum embedded in it.

I had a great collection of display-quality mineral specimens when I was young, but someone it got lost or thrown out while I was in college, when my parents moved. I've always regretted that: there were some beautiful specimens, like big cubes of pyrite and some very nice amethyst crystals, a s well as various granites and volcanic obsidian.

Theodore Gray's web site ( has the fascinating details of his collection.

[/root/geeky/life] permanent link

Thu, 17 Feb 2005 More Moleskines

I earlier wrote:

"I bought a set of three of the Volant notebooks as well as a Volant address book. Im disappointed to say that the quality doesn't match the traditional Moleskine notebooks..."

(In progress)

[/root/geeky/life] permanent link

Amazon Shines for Tolkien Scholars

So, I've now received the first five volumes of the History of Middle Earth in hardcover, purchased through Amazon. Two of the volumes were out of print, but were available as old/new stock (new books, but available through bookshops that specialize in remaindered or out-of-print books). I was able to process everything right through Amazon, just like I am able to buy from multiple used-book vendors via (which I also highly recommend). Apparently you can now buy used books via Amazon in a similar arrangement, but I have not tried it, preferring to support a smaller company in that case. The History of Middle Earth volumes, they are kind of in a gray area between used and new: they are regularly reprinted, but probably not in large quantities, and brick-and-mortar bookstores won't tend to stock them. The used copies available through tend to be very expensive first editions, or the limited collector's editions that cost hundreds of dollars. I don't particularly care which editions I get; I just wanted the whole set in hardcover, since the softcover editions are missing content. I have a feeling that most of the hardcover copies of the History volumes don't circulate a lot as used books; if someone actually took the trouble to track them down and buy them, they probably knew what they were getting, and wanted the books to be part of their permanent library.

Amazon provided a real advantage here: the list price of the History of Middle Earth is $30 per volume; on Amazon, I think I paid $17 each for most of them. The three volumes that came directly from Amazon came with free shipping. The ones that didn't were a bit more expensive and I had to pay for shipping, but the net result was still less than the $30 list price. Then, there is the matter of availability; most bookstores don't carry the History of Middle Earth volumes, or if they do, there will be one battered copy that has been thumbed by a lot of people but not purchased. I could have ordered them from a local bookstore, but they probably would have had the same issue as Amazon with the unavailability of certain volumes.

I've also received two of the next four books in the series, the ones that constitute the History of the Lord of the Rings. Amazon has required some extra lead time to track down copies of all four of these volumes. But they did, and although when you get free super saver shipping you usually have to wait for your order to be complete so that it is sent out in one package, in this case Amazon actually shipped the first two, when it looked like the rest were going to take a while, and then even sent the next two as separate orders one day apart, just to expedite matters. Someone (or perhaps even a rule in their computer system) was authorized to change the shipping arrangements to make sure I didn't have to wait longer than necessary for the part of my order that was ready. And they didn't charge me extra for shipping in multiple batches. That's a perfect example of why people come back to Amazon.

[/root/geeky/tolkien] permanent link

The Nazgul (Ringwraiths) in the Book and on Film

So, I've been reading The Fellowship of the Ring to my family as a bedtime story, bit-by-bit, usually half a chapter at a time. I've read the books before, but reading it again after seeing both the theatrical and extended versions of the first film multiple times, and listening to the commentary of the writers and director, brings into focus some of the differences between book and film.

In the film, the assault at Weathertop is intense and violent. The wraiths are very solid, physical beings. They go up in flames in a very satisfying way. It is only in "wraithworld," when Frodo dons the ring, that they appear ghostly, and he can see their forms as once-great kings of men.

In the book, the sequence is somewhat different. The hobbits and strider are clustered around a blazing campfire. Strider at first does not even see the wraiths as they approach Frodo. Merry and Pippin simply collapse face-down in terror. The wraiths are ghostlike, and difficult to see. It is not precisely clear how Strider drives them off, but I believe they allow themselves to be driven off, believing that they have accomplished their goal.

In the film, the flight to the Ford is very dramatic. The wraiths are very physical, not ghostly at all, with heavy black robes and nasty, black, articulated armored gauntlets. There is a high-speed chase where Arwen carries Frodo, while the wraiths pursue her, their nasty black hands reaching for Frodo, who by this point is completely incapacitated, drooling green slime and breathing like a dying asthmatic frog.

In fact, he does die, or nearly die, on the far bank; Arwen has to give him some of her Elvish mojo, the "grace of the Eldar," to keep him alive. He passes out, and we see his point of view in which he is bathed in white light.

In the book, the whole lead-up to the crossing of the Ford of Bruinen is strangely sluggish. Tolkien devotes paragraph after paragraph to the twists and turns of the landscape, as it frustrates the party's ability to make rapid progress. While the wraiths are converging on Weathertop, Strider recites a portion of the Lay of Luthien. While Frodo is wounded and the party finds Bilbo's trolls, Sam recites a comic poem. There is not an enormous sense of urgency. In fact, we find out that the wraiths themsevles are not urgently pursuing Frodo -- they know that he has been wounded with a Morgul-blade, and they believe that it is just a matter of time before he falls under their control. They do not think there is any need to pursue him further physically, although they seriously underestimate his resistance to the Morgul blade, and by the time the party reaches the ford, they are desperate to keep him from entering Rivendell, where he will be beyond their power.

Frodo bears his wound for seventeen days, and it has healed over after the first few days. The wound is not infected in the usual sense, but in the film we get a glimpse of a diseased-looking open wound. Frodo's arm and shoulder become numb and cold, but he is not in danger of dying in the physical sense. The wraiths attempted to "pierce his heart" with the Morgul blade, which would have turned him into a wraith, but missed, because of his toughness in resisting them. There is a splinter of the blade still in the wound, working its way inward, and it eventually takes all of Elrond's skill to remove it (this important point is not mentioned in the movie, although the key point that the wound will never fully heal is mentioned). The sickness that the wound inflicts on him is more psychic than physical in nature. By the time he crosses the Ford, he is not dying physically, but instead his will to oppose the wraiths is nearly at an end, and he is on the threshold of becoming a wraith himself.

Then, of course, there is the use of Arwen. This is a controversial move among Tolkien fans. I actually completely approve of the expansion of Arwen's character; her relationship with Aragorn comes to life, and the expansion of her very minor role in the book into a full-fledged character brings to life a story which, in the book, is mostly confined to a brief account in the appendix. It also serves to bring to life the sorrow of the elves. In the book, it is all right for someone to simply expound upon the elves, but Jackson and his writing team wisely decide to show us, not just tell us, about this. The story of the love between Arwen and Aragorn echoes those key moments in the history of Middle Earth in which elves forsake their immortality to bond with mortals; these relationships are among the most interesting and dramatic parts of the Silmarillion and the Lost Tales. I love the sequence in which Arwen, riding towards the Gray Havens at her father's command, has a vision of her future children. The flash-forward to Aragorn's death, his aged body replaced by a beautiful tomb bearing his likeness in statuary, and her eventual surrender to mortality in the empty woods of Lothlorien is just magnificent. Her torment over her choice or mortality is beautifully presented. But -- and I believe this is a key factor in why I don't dislike these changes -- Jackson and the writing team here rearranged and expanded a role, rather than changing existing key elements of the story.

In the book, it is Glorfindel who comes to Frodo's aid, and who helps to defeat the wraiths. Now, it makes a certain amount of sense to eliminate Glorfindel from the movie. He has little or nothing else to do in the rest of the story. Tolkien's portrayal of him makes him seem a bit silly -- with bells on his saddle as if he were one of Santa's elves, but then, somewhat incongruously, he is revealed to Frodo as a powerful and frightening elf-lord. (In the film, we see instead Frodo's first vision of Arwen, in which she radiates light and he sees her as she appears in the spiritual realm). The character of Glorfindel makes sense if you've read the Silmarillion -- he is a ancient high elf, who beheld the light of the trees -- but there is nothing in the Lord of the Rings itself to adequately explain why he does not fear the wraiths. Instead, Arwen states outright that she does not fear them, and we have to go with that and with Frodo's vision.

The storyline is further simplified -- Aragorn and the hobbits have nothing to do with the physical victory over the wraiths. In the book, the wraiths are confronted with the terror of the magical flood before them and Glorfindel the elf-lord, together with Aragorn and the hobbits brandishing burning firebrands behind them. Everyone gets into the act.

The changes to the story also take away the opportunity for Frodo to demonstrate what "stern stuff" the hobbits are made of. Even on the verge of psychic (if not physical) collapse, Frodo rides Glorfindel's horse -- he is not carried -- to the ford. He defies the wraiths to the last, calling on them to go back to Mordor, until terror overcomes him and his strength gives out. This show of defiance, and the psychic burden that Frodo carries from his wound, is somewhat lost in Jackson's treatment.

Jackson is very good at articulating inner conflict in dream sequences and visions -- I think he could have used some of that skill to tell this part of the story with a little bit more subtlety, perhaps showing us Frodo's point of view as he gradually succumbed to terror and stood on the "threshold" of the other world himself. We would come to understand that "wraithworld" was not an on/off switch that Frodo activates when putting on the ring, and that he in fact was half in "wraithworld" by the time he reached Rivendell, and indeed that he could never quite free himself of the psychic wound which the Morgul blade inflicted upon him.

This could have allowed the story to retain the sense of urgency which Jackson and the writing team decided, quite rightly, was required for the film form, while making the wraiths even more frightening and Frodo's situation even more perilous than simply the risk of expiration due to green slime disease on the far shore of the Ford of Bruinen. Maybe the next time Lord of the Rings is filmed, this aspect of the story will be explored with a bit more subtlety.

[/root/geeky/tolkien] permanent link

The Moleskine

What follows is the merchange review I wrote for the Yahoo store Moleskine US. There has been interest recently in the Weblogging community in the idea of a pocket notebooks as the ideal "analog PDA." I was, and am still, pleased with my traditional pocket Moleskine notebook, but I am now also wondering if there might be other manufacturers out there that build notebooks of a similar form factor but perhaps with different features, such as a place to insert a pen, thicker paper with less show-through, or other features.

I had a vague hope that Moleskine US would read the review, which was CC'ed to them, and decide to send me a set of the Cahier notebooks to replace the Volant line that I was dissatisfied with. Now that would be customer service. I'm not going to demand it from them, though, especially given that a set of the Volant notebooks places them only at about $2.00 each. There's a limit to what I can expect in the low-cost line.

Anyway... original review notes follow. Now all I need is some vacation time so that I can spend some afternoons in cafes or on a beach actually writing something in my Moleskine!

Moleskines are the best handheld notebooks for writers: they are the perfect size for a shirt or coat pocket, and use good paper with a binding that is stitched rather than just glued, so they will stay open as you hold them to write. They also have a built-in cloth bookmark and an elastic band to hold them shut. Theres a little expanding pocket in the back where I can stuff receipts and loose notes. These little touches give a strong impression of time-tested, practical quality.

I really like my traditional Moleskine notebook and will probably buy more of them in the future. I am extremely satisfied with the service, packaging, and shipping speed of Moleskine US. There are a couple of areas where I feel there is some room for improvement:

It would be nice if the web site would allow me to log in as a return customer, and keep my shipping and payment information on hand, so I dont have to re-enter it if I come back to buy something more later.

The paper exhibits a little bit more show-through than Id like, when I write on both sides with a Rapidograph (liquid ink pen). I am guessing a fountain pen would have a similar issue. I should probably try the sketchbook type, but that paper is thicker, which means either a fatter notebook or fewer pages, so there is a tradeoff.

I bought a set of three of the Volant notebooks as well as a Volant address book. Im disappointed to say that the quality doesn't match the traditional Moleskine notebooks. I knew that they would not have the the bookmark and elastic band, but I did not expect the paper to be of lower quality: it has a rougher feel, and absorbs more ink, with more show-through. The last 16 pages are micro-perforated and can be torn out. That feature doesnt really appeal to me. But the big problem is the cover material. My address book had a big crease on the frong cover where the plastic faux-leather material was not flat and properly glued to the backing. One of the others has bubbles.

I like the thinner form, and they are much less expensive per notebook than the traditional Moleskine, but I was just thinking that the Volant line might be better with plain cardboard covers. Lo and behold, today I discovered that Moleskine US is now offering the Cahier line, which seems to be just that, a Volant with a cardboard cover, and which also includes the pocket in back. I will try those next time. If they have the higher-quality paper, I'll declare them the perfect thin-format notebook to go with the traditional Moleskine.

[/root/geeky/life] permanent link


My friend Alan has been asking me questions about some Lisp programming idioms involving macros, such as destructuring-bind.

Destructuring, the idiom, is a technique in which the shape of a data structure can be determined at runtime, and the contents of the data structure bound to a set of variables.

More later.

[/root/geeky/programming/lispish] permanent link

Wed, 16 Feb 2005 Programming Projects, Part 5

I've given up on VMWare, since I was not truly happy with it, and thanks to Paragon's Partition Manager, gotten my system set up in a decent configuration again, with enough disk space for both Linux and Windows 2000. So, for now, I'll just dual-boot.

My original G4 PowerBook, and my wife's iBook, both of year 2000 vintage, are both on their last legs, so we need to be ready to update our Mac infrastructure. We haven't quite figured out what to buy or, of course, how to pay for it.

I have not selected a project, but one that comes to mind now is editing iTunes file metadata. I've got all of Tolkien's works in audiobook form. The individual volumes such as the Fellowship of the Ring contain about 16 disks, and about 23 tracks each. Let's say I want to rename all of those 300+ tracks, as well as the disc (folder), following some pattern, and including the track x of y and disc m of n metadata in the file name, with the numbers padded so that the full filenames sort correctly. I'm doing it by hand now. Hmmm. I am not sure if iTunes exposes that much of itself to scripting, but if it does, it might be an interesting little trial problem.

Alan has been tossing me questions and ideas about Lisp. The latest was destructuring. I'll drop this "Programming Projects" topic for now and write some shorter notes on individual Lisp topics, although my ability to put time into hobby projects remains rather limited. Also, I really, really could use a brief vacation, preferably somewhere sunny, where my brain could absorb some photons and spend some time relaxing with my family. But alas, I don't have the vacation days. Maybe I can arrange something when this project is ended, although it may have to be unpaid time off. I'm almost willing to go that route.

[/root/geeky/programming/lispish] permanent link

Star Trek: Season One

Star Trek inspires love, ridicule, or a mixture of both, but most people have at least a passing familiarity with the long-running cultural phenomenon. I am certainly familiar with the original series, having watched it in reruns endlessly. I was born in 1967, just when season one was in full swing, but by the time I was old enough to watch them in reruns, the showswere frequently butchered to fit in extra commercials, hacking out key scenes and rendering the story incoherent. While I remember many of the episodes clearly, there are probably several that I simply never saw in reruns. My ten-year-old son has never seen any of the original series episodes.

So, we bought the first season on DVD. I've heard a lot of complaints about this package. Some are justified, in my view, and some are not.

Complaint number one is that the quality is poor and no restoration was done. This is patently false. All you need to do is compare the picture quality of the trailers (covered with scratches) with the quality of the restored episodes. There is a big difference. The episodes, shot on film, show almost no scratching or dirt.

Could the restoration have been better? I am not really qualified to say; I haven't seen the best available negative or print. The colors are vibrant, although they maintain the Star Trek palette, characteristic perhaps of the type of film used, and we can see detail in the costumes and makeup that I've never seen before.

This isn't always a good thing: I can better see the pancake makeup on Spock, and the low budget of the original becomes more apparent when scrutinized more closely -- for example, in "Charlie X," when Spock and Kirk are thrown against a wall, it is now painfully obvious that the wall is painted cardboard or plasterboard, because it develops a visible tear.

In some effects shots there is still graininess, matte lines, and the occasional bit of fiber or dirt on the plate. These things may have been present in the original effects shot, and (I am guessing) were not retouched much because it would be difficult to decide how to proceed and where to stop while still remaining the low-tech, film-grain character of the original. Too much digital tampering would be very expensive and could result in an effect that stood out like a sore thumb against the rest of the images. Fans are complaining about just this sort of tampering in George Lucas's THX-1138, as well as his repeated alterations to the Star Wars films. Star Trek was a product of 1960s-era film technology, and trying to make it look like 2005-era digital effects is to make it into something it is not. And here's a news flash, which should not really be news to anyone: the "look" of 2005 will also look very dated one day. The super-shiny "look" and audio production of the Next Generation already looks dated to me today.

I also have heard complaints about the encoding. To my eye and on my player, it is just fine. It looks much better to me, for example, than the Monk series DVD, where there are frequent image freezes.

Gripes about the packaging are completely justified. While the snap-open tricorder-style plastic case is cute, you have to carefully take out the brochure and remove the paper sleeve from the book-style DVD trays themselves. The DVDs snap very tightly into these trays, and there is the justifiable concern that the force needed to pry them out will tend to cause the holes to crack over time. Most recent DVD packages that I've seen have a central "button" you can press to help release the DVDs, reducing the force needed to remove and replace the disc.

Also, when you are done watching, you have to reassemble the whole thing, unless you decide to throw out the paper sleeve and/or the loose brochure (which does not fit well into the case anyway). Those loose paper parts will certainly get lost or torn with handling, but throwing them out will ruin the look of the case, in which you can see Kirk and Spock through a little window, and leave the top DVD open to dust. A much more robust solution was certainly possible while maintaining the clever plastic case, but Paramount apparently couldn't be bothered.

Is the price too high? I would say that it is too high, given the quality of the interior packaging, but would not be too high for the same same content, better packaged. Consider that you get twenty-nine episodes on eight DVDs. If you pace yourself, that's a lot of evenings of Star Trek. I have not yet watched the DVD extras and so can't really comment on them. Unlike the extras on, say, the Lord of the Rings Extended Editions, I doubt they will really add much appeal; fans are buying this set to watch the episodes, not the extras.

Some people complain about the order of the episodes. Paramount placed them on the DVDs in the order in which they were aired, which was not the order in which they were filmed, which can be deduced by looking at the "stardate." Watching them in this order apparently leads to some inconsistencies in costumes and casting; some think they should be viewed in stardate order. Well, obviously Paramount could not include them in both orders; they had to annoy either the airdate-order or stardate-order camps. They chose to include them in broadcast order, but the episodes are numbered in stardate order, so it is easy enough to rearrange them, if desired.

Some people will find anything to complain about. Is it worth ranting about the fact that the discs don't have a "play all" button? Are we so lazy that we can't even bother to manipulate the remote control in between episodes? Is it really necessary or healthy to watch four episodes back-to-back without interruption? In my day, I had to actually rewind the VCR, eject the casette, and put in a new one! Can you tell I think this is a trivial complaint?

Many people have complained that the complete pilot is not included. I think they overestimate the quality of the original pilot -- there is a reason that it never aired in its original form. It is, however, included on the third season DVD set, for completists. I am curious to see it. I'd love to see more of Captain Christopher Pike and Number One. I have also read the original pilot script, which was full of double entendres, and would like to see whether some of the wilder lines from the script are still present, such as the line in which Spock says "the human body is capable of generating a surprising amount of heat, depending on the skill of the operator." This was an apparently attempt to tweak the network censors, who were ever-present, and a constant challenge to the writers, in those days. Go, Spock!

Finally, there is the question of the original Star Trek episodes themselves. Fans of the modern, big-budget Trek shows should try to keep in mind that these shows were produced almost forty years ago. The ones who start to crow about the quality of Enterprise, or Deep Space Nine, or Voyager, or Next Generation, in comparison to the original series, should try to be a little more objective, and not just fixate on Star Trek as they first got to know and love it.

Star Trek has always had a very wide standard deviation of quality. There are episodes and moments of Next Generation and Voyager that are teeth-grindingly awful. Note also that just what constitutes "teeth-grindingly awful" varies widely from viewer to viewer, but to me it usually consists of having something absolutely ridiculous happen to the crew, such as the Next Generation episode "Genesis" in which the crew members "devolve" into primitive life forms. Then there is the endless reliance on the holodeck, which while it occasionally produced an intriguing episode, most often just enabled the use of an unoriginal story in a science-fiction context.

To my mind, the very best episodes often involve few or no extraneous special effects at all, and just showcase an intriguing and original story. For example, watch "Space Seed," which set up the story line used in the second Star Trek movie. And, usually, the best science fiction is about issues that a contemporary audience can relate to; not many of us today face turning into a walrus or spider monkey, but we may be concerned about the implications of genetic engineering. The wide variance in quality of Star Trek comes in part from the wide variety of writers who worked on the series.

The original series certainly has its moments of cheesiness, and it is easy to mock the overacting of Shatner and Kelley -- a style which, by the way, I think was actually very useful, in that it tended to keep one from looking too closely at the styrofoam rocks and papier-mache gadgets. It is easy to make fun of Kirk's expanding waistline, or his apparently magical ability to seduce women on every planet. But the show was also extremely groundbreaking, in terms of casting, of writing, of politics, and at least occasionally, of storytelling. It is easy to look back at the show with forty years of hindsight and comment on the blatant sexism, but this has to be set against, for example, the show's remarkably enlightened attitude towards race. And it is impossible to overstate the importance of Star Trek's role in inspiring many, many of today's scientists and engineers. I strongly doubt that I would have ever developed an early interest in computers without the influence of Star Trek.

To me, what the original series proves is that a lot of money is never enough to create a story worth watching, that stands the test of time. Did the millions of dollars spent on Next Generation or Voyager buy them a consistently good show? Of course not. Money can buy script doctors and special effects but it can't necessarily buy good ideas. Imagination, good writing, and a committment to storytelling will always triumph, and the original Star Trek is proof.

[/root/geeky/life] permanent link

The AirPort Express Saga Continues

So, the AirPort Express is still not entirely right in the head - it didn't die the way it did before, but Grace was always informing me that either she couldn't print, or her computer would not connect; it either would not automatically reconnect after sleep, despite supplying the network control panel with the network name and password, or sometimes also could not connect even when explicitly supplying the private network name and password. Sometimes the configuration utility, running from my wired PowerBook, could not even find the device. It had apparently crashed. After power-cycling the device, Grace's computer was always able to connect to it.

The last time, I finally decided to give up having a private network, and just make it an open share. There are several others in the neighborhood.

This seems to have made it work reliably again (so far). But I didn't really want an open share. I'm not trying to be a bad citizen; it is just not in our mission statement to supply a public network access point.

I'm not sure what the problem is, but I am disappointed in the reliability of this setup. I don't think the problem is in Grace's computer, since it will connect flawlessly to other wireless networks. For a device without a power switch, cycling the power should not be required.

Then, there are printing problems: sometimes when printing large photographs, the print queue seems to bog down so much that the printer gives up waiting for data and resets the job, spitting out the unfinished picture. I would give up on printer sharing, but given that it is a USB printer, it cannot be shared on the network directly. The alternative is to share it through my PowerBook, which seems to work more reliably but which requires my PowerBook to be on all the time, or requires Grace to remember to wake it up before she tries to print.

I guess this would not be an issue if we had a server machine, but it seemed very convenient to just use the AirPort Express. And it would be, if it worked well. But it seems like the box is just slightly unreliable in several ways. And it isn't like our setup, one wireless PowerBook, used mostly to read e-mail, and one inkjet printer, used only occasionally, should be a serious stress-test. I suppose I need to check to see if there is a firmware upgrade. Sigh...

[/root/geeky/apple] permanent link

Tue, 15 Feb 2005 Partitioning Tools

So, it seems to be a dirty secret of managing mixed-boot configurations that the open-source partition management tools are terrible. I have tried them out periodically over the last ten years or so, and have expected to see improvement, as so many aspects of Linux have improved, but it has not really happened.

Case in point: Knoppix and qtparted. Let's say you have a typical partition-management problem like I did: you have a dual-boot system, and you haven't left enough room in your parititions, but there is a lot of unallocated space available on the drive itself. In my case I wanted to remove an unused FAT partition, and expand the first one, moving everything further down, then remove an unused ext3 partition and expand the existing ext3 partitions to take up that space.

With qtparted, you just can't do this. It doesn't really support the various operations necesssary to do this at all. It just isn't complete.

A die-hard Linux weenie would tell me to get on the ball and write a tool. After all, aren't most open-source projects the result of scratching a personal itch? Well, I suppose that technically I have the skills needed to work on such a project, but I'm aware of what I don't know, and writing code to rearrange partitions and directory structures at that level is something I can happily lead to other people.

In fact, because I have some idea of the difficulty involved, I'd be willinto to pay someone else to write a tool for this purpose. So, what about the commercial tools?

I tried Partition Magic, now owned by Symantec. It did not work at all either. Essentially, while it claims to support ext3 partitions, "support" here means that it will correctly identify and display them. It can't actually do anything with them, such as move or resize them. It also requires a floppy drive, and will crash if one isn't present in your computer. I demanded (and got) a refund for my online purchase, and happily deleted it from my computer. In my view, the marketing materials for this product are completely deceptive, and you should avoid it.

Paragon's Partition Manager, on the other hand, worked nearly flawlessly, and the $50 download also comes with a useful CD-burning tool. It deleted one FAT partition and resized another, deleted one ext3 partition and resized two more, and moved a swap partition. It even resized the whole extended partition, consolidating free space. It even did its resizing on the active partition I was running from, by rebooting and executing a script. Obviously, doing a tricky operation on the partition from which you have booted the computer is a potentially risky operation, but everything worked perfectly afterwards, including my dual boot involving both the NT boot manager and GRUB.

I did see one crash while examining a partition's contents, but this had no lasting effect.

There's the old saying that Linux is free only if your time isn't. I could have reinstalled both Windows 2000 and Linux from scratch, remaking all my partitions and then restoring all my software from backup or from installation disks. Taking into account the time needed to download all the Windows 2000 and Fedora updates, that probably would have taken at least a day. Instead, I have a tool that did all this rearranging in perhaps thirty minutes. Better still, I know that if I need to rearrange some partitions in the future, this tool will do it for me painlessly. I'm very impressed and highly recommend Paragon's Partition Manager for all dual-boot Linux weenies who may need to rearrange partitions.

[/root/geeky/life] permanent link

Wed, 02 Feb 2005 Five Lakes Grill

To celebrate Grace's 32nd birthday, last night we drove to Milford and ate dinner at Brian Polcyn's restaurant, the Five Lakes Grill.

The space and atmosphere were pretty decent, but not wonderful. I have no love of Muzak, and there was a lot of it, but at least it was not loud.

The food was great. We've been meaning to make the trip ever since reading a review in the Atlantic several years ago. The review has been stuck to our closet door with a magnet ever since then. Now we can take it down!

Grace had the rack of lamb, which she described as the best she's ever had. The only flaw was that the wilted spinach with it was too salty. The salad was good. We split glasses of a house Shiraz, which was quite tasty.

I had a special, marinated skirt steak with a sweetish currant sauce, served with vegetables including blue potatoes and asparagus. The meat and sauce was excellent, and the vegetables excellent, but the combination didn't really sing. Not all specials wind up working out as well as the tried-and-true dishes; that's OK. It was quite good anyway.

We had a charcuterie platter appetizer; it is one of Polcyn's specialties, and he teaches charcuterie. The sausages were all excellent, including a seafood sausage. He also had a great prosciutto.

Isaac had a Greek salad with fried calamari on top, which he enjoyed very much, and a pot pie with pearl onions and duck confit, which was wonderful. He loved it, although he was getting a bit full and had to take some home.

For dessert Grace had creme brulee, which she again described as the best she's had: a great crackling burnt sugar coating on top, fresh berries, and a custard that was not overly sweet. I had a lemon tart, which was excellent, and which came with a little chocolate cup with rasberries that tasted house-made. Isaac had a thick hot chocolate, which was bittersweet and rich, although the combination of caffeinated soda and dark chocolate got him pretty wired up, so perhaps it was not the best thing to give him at ten o'clock at night. The coffee was excellent.

The entire meal cost us $150, before tip, which is quite a bit, but it was one of the best restaurant meals we've ever had, so I don't consider it an unreasonable amount to spend for such a special occasion. We took baby Veronica with us, and that worked out fine; she didn't fuss much, and even slept on the seat of the booth for part of the meal.

It was a good time, and a good reminder of how unimpressive most of the downtown Ann Arbor restaurant have become. I would not be surprised if we were back there soon.

[/root/news] permanent link

Christopher Tolkien and the History of Middle Earth

Christopher Tolkien is the son of J.R.R., and considered Tolkien's "literary executor." He's also the guy that edited, and annotated, the enormous body of material that comprises the 12-volume History of Middle Earth.

This was a labor of love. I've heard people criticize C. Tolkien for opportunism, cashing in on Tolkien's material, but I don't think that is the case.

First of all, the History of Middle Earth, a 12-volume set, is not blockbuster sales material. Most bookstores don't even stock the books. I've been attempting to acquire all 12 volumes, in hardcover, and four of them have been difficult to get (out of print or scarce). There are separate paperback editions of volumes 1-5 and 6-9, but I think they are targeted at the wrong audience, and not likely to be big sellers. The small format volumes 1-5 paperbacks with fantasy-painting covers will mislead readers into thinking that they are picking up a prequel or sequel to The Lord of the Rings, when in fact they are looking at drafts and notes from the precursors to the Silmarillion, intermixed with various other extant poems of various quality and a strange framework story that is nowhere to be found in the "official" Silmarillion.

Someone who picked up these books because they enjoyed Orlando Bloom in the Peter Jackson films will likely never get past C. Tolkien's introduction. It is targeted at the kind of person who found the Silmarillion and the Appendices to The Lord of the Rings more rewarding than the story itself -- in other words, English major fantasy geeks who have at one time or another studied Beowulf and Canterbury Tales and who are interested in seeing Tolkien in the raw, so to speak, and of watching over his shoulder while he scratched out his drafts and experimented with forms, and storytelling techniques, not always successfully. These narratives are in "high style" -- that is, in mythological style -- for the most part, although, they are, oddly, in many places much more concrete, detailed, character-driven, and beautifully imagined than the later versions that became the Silmarillion.

No less an authority than Rayner Unwin writes in Tolkien's Legendarium, about the plans for publication of the _History of Milddle Earth, "This time we knew that the books would not be price-sensitive, that there was a hard core of potential purchasers, and even if they never reprinted they could at least expect gradually to sell out and pay their way... Christopher was under no illusions that the work he proposed to undertake would be rewarding on a purely commercial basis."

Secondly, if C. Tolkien he had just wanted to make money off of his father's legacy, surely expanding the licensed properties or authorizing more spin-off works would have netted him a lot more cash. Instead, he put an enormous amount of effort into assembling, annotating, and editing his father's old notebooks, many often nearly illegible, stuffed with loose scraps of paper and containing rough drafts in faint pencil with ink written over top. He made chronological sense of the drafts, annotated and rationalized the names, and wrote painstaking commentary that illustrates the many ways in which the storyline, naming, geography, and even theology evolved. No, this was a labor of love, by a man who was also a scholar, and who knew Tolkien's material deeply.

"Cashing in" would have been writing spin-off novels. Fortunately, C. Tolkien was no Brian Herbert.

So, I don't buy the image of C. Tolkien as a shameless opportunist. However, neither does he seem to be a benevolent ruler of the disposition of his father's legacy. There are disturbing stories coming out of the Tolkien family, appearing in British newspapers. Apparently, when Simon Tolkien, C. Tolkien's son and J.R.R.'s grandson, attended the movie and spoke approvingly of it, even allegedly taking on a small cameo as a soldier of Minas Tirith in shining armor, C. Tolkien disowned him, and now communicates with him only via a lawyer. Simon expected to sit on the board of Tolkien family members that makes decisions about J.R.R.'s materials; he's been kicked off -- all for giving apparent aid and comfort to Jackson's movie project, which C. Tolkien apparently found abhorent, but could not (legally) derail. C. Tolkien's public statements about the movie are more conciliatory, making this move appear even harder to understand. It makes me wonder whether it might also have had something to do with the younger Tolkien publishing a successful mystery novel The Stepmother, which may have been at least partially inspired by his upbringing in a broken home. These days apparently C. Tolkien is a bit of a recluse, although the stories that he keeps wild boars in his garden to drive off visitors may be an urban legend.

It is worth pointing out that C. Tolkien and the Tolkien estate didn't even own the film rights to the Lord of the Rings. J. R. R. Tolkien signed away the rights decades ago. For his part, he approved of the idea of a film, but the scripts he was shown during his lifetime were bizarre and completely lacked any sense of the material. In his writings J. R. R. Tolkien made the interesting and pragmatic distinction between "art or cash" -- that is, he was willing to license his property for film adaptation in exchange for either his direct involvement and artistic control, or his disinterest and a pile of money.

In the end, although he did not live to see Jackson's film, he got a respectful, if not literal, adaptation that in my opinion retained well the "split personality" of the books, in which the high-and-mighty artistic, noble, and mythological coexists very nicely with down-to-earth, populist, and pragmatic hobbits. But C. Tolkien, rather than engaging in a public debate over the movies or maintaining an honorable silence, seems to have taken on the role of an embittered and despairing Denethor, perhaps moved to anger by his inability to keep popular culture and his father's legacy far away from each other. If so, I think his palantir must be on the blink. Tolkien's work was remarkable in blending high and low, noble and silly, and appealing to a wide audience. The films, whether they are as true to the storyline or not, can only widen that audience. Adaptation and translation for new generations is what keeps literary work alive. History will judge in the long run whether Jackson's film version of the story was a worthy one. But it certainly won't be the last one.

In any case, I am slowly working my way through the 12-volume history. I've purchased the first five books, and the rest will arrive soon. Some of the volumes have proven more difficult to get; I've had to order them from Amazon zShops as old/new stock. Amazon has taken several weeks to track down some of the middle four.

It has taken me many years to make the decision to buy these books. I've seen the various volumes in bookstores over the years, usually unsold battered copies, but never bought them. They also listed at about $30 each, while the in-stock volumes at Amazon run me $18 each. It seems reasonable just to get the hardcovers, which will still be readable even if it takes me 20 years to finish them.

I've now finished the first volume. It is even more fascinating than I expected, especially the "framework story" the Cottage of Lost Play, and the "bridge" material that ties it to the pieces of work that became the first few parts of the Silmarillion. It is a shame that the Silmarillion could not have been structured with the framework in place, and a consolidated, organized, and revised Silmarillion interwoven with it. It would have made the material more approachable, but Tolkien seemed to reject this approach in favor of a more abbreviated, formal, and Biblical style.

It is hard to say whether these early tales are better or worse than the versions they eventually became. The tone and style is all over the place. The first version of the story of Beren and Luthien Tinuviel is notable in part because of the details of Luthien's magic, and because of the inclusion of Tevildo, Prince of Cats, and his cadre of evil feline dog-hating lieutenants. This turns the storyline involving Huan into an expression of long-held rivalry between cats and dogs, which is funny but seems to belong in a different story. Beren also seems to be an elf himself, which does not make a lot of sense in comparison with the later version of the story. I am curious to see how this version ends... perhaps with chaos, floods, plagues, and cats and dogs living together?

I am disappointed in one aspect of the book. In several spots Christopher Tolkien has snipped out and paraphrased sections of the work which he apparently felt did not deserve reproduction in full. But these wordier versions of some of the parts of the Silmarillion, such as the story of the origin of the sun and moon, are interesting precisely because of their longer, more character-driven and detail-driven form. I'd at least like to see the original paragraphs in an appendix. I bought these books to "drink from the fire hose" -- I resent having Christopher Tolkien turning off the spigot while I'm still thirsty. Significant chunks of the story -- the tale of the coming of men, for example -- don't even exist in complete drafts, but only in fragments, This makes it seem all the more inappropriate to arbitrarily cut out chunks of some of the stories that do exist in complete form. Perhaps C. Tolkien was embarassed by the quality of the draft text. But it is precisely the process of improvement that is so interesting and inspiring. Tolkien's early poem, Goblin Feet, is godawful, as he himself acknowledged. (Google for Tolkien and "Goblin Feet" if you don't believe me). Not all of his poems are great. But what is amazing to me is how much better he became. Showing the early drafts in full, warts and all, tells that story.

But despite these problems I am still glad to have these stories in their early form, which J. R. R. Tolkien did not get to polish. I'm glad to have the jewels in the rough.

[/root/geeky/tolkien] permanent link

Paul's Current Viewing

So, we've started up a trial membership with Netflix. Actually, I think it is now a real membership. It has turned out to be a great service! So far, we have borrowed the following movies:

Harry Potter and the Prisoner of Azkaban. The third. Pretty decent, but not spectacular. I enjoyed the Night Bus. I expected the Dementors to be portrayed more originally. The time-twisting sequence was done much better in the second Back to the Future movie. I could not figure out why Harry and his friends were no longer wearing school uniforms. The kids are getting older; I'm not sure just how they are going to manage doing the next few movies. The movies are not being finished once a year, which means that the cast is aging more rapidly than in the storyline. Will they use a new cast? It was also sad to see Dumbledore replaced; the actor who played Dumbledore in the first two films died. Isaac rated it 4 out of 5, and that seems about right.

Uncovered: the War on Iraq I expected this to be a little better. It is a competently assembled documentary, and has a good selection of people interviewed, but it feels rushed and wasn't edited to a fine point. About 3/5.

Trekkies Grace has never seen the science fiction fandom subculture up close, so she was quite stunned by this. I've been to a convention, so it was not quite a shock, but rather touching. I want to see the next one.

The 1900 House This was great. The premise is that a London home is rennovated (dennovated?) back to 1900 standards: no electricity, only technology and decor available then; the women wear corsets, etc. They hire a "maid of all work." Life hasn't changed as much as we might think. Especially fascinating was how the family members dive into their roles, doing their own research and putting together puppet shows, little plays, and other activities. Amazing how much time is available when you stop watching TV.

Joni Mitchell: Shadows and Light I used to have this album. It's a great show; Jaco Pastorius, Pat Metheny, and Lyle Mays all perform with her, along with the Temptations. I was fascinated by the video clips that were assembled over some of the songs. Mitchell's voice is perfect.

A Prarie Home Companion (it doesn't say, but I think this is the 30th anniversary show from the Fitzgerald Theater). It turns out I've heard this one. It's worth seeing, at least once, just how charmingly funny-looking Garrison Keillor actually is, and how funny it is to see the mundane-looking sound effects guys doing their ridiculous stuff. Once you've seen it, though, you don't need to see it again; listening is better. I'd like to see the "Farewell" show that aired sometime in the mid-to-late 1980s again, though.

Life and Debt This is a great documentary about Jamaica, and why it has failed to thrive economically. The contrast between the Jamaica the tourists experience, and the Jamaica that the natives live in, is staggering. Particularly grim and disturbing is the "free zone," the garment district where neoliberal globalization plays out its "race to the bottom."

Big Top Pee-Wee This was a pick for Isaac. He thought it was very funny.

In order to prevent any allegations of unfairness in selection, and floods of kid's movies, I actually broke our membership into 3 separate queues; they allow that. This means that each of us -- myself, Grace, and Isaac -- can manage a separate queue. The DVDs are addressed to the individual person who chose them. Isaac's is age-restricted. It also slows down the process a bit - since Isaac has to return one and wait for the two-way mail before he has another one to watch. That's not a bad thing, actually; it keeps him from piling on the movies.


I spent a little money on the backlog of DVDs that I wanted to buy last month. The bulk of them were the 3 Extended Edition Lord of the Rings movies. The new cuts are much more coherent, although there are some new bits that I dislike. The extras really are worth watching.

We also picked up the second season of Monk. It is off to an uneven start, but "Mr. Monk Goes to the Circus" was one of the best ever. It does, though, have a disturbing scene in which an elephant trainer is killed when the elephant steps on his head. It was rather horrifying. Isaac had to sleep in our room after watching that. It seemed a little manipulative, but the rest of the episode, especially the banter, which had a real ad-libbed feel in this episode, was superb.

[/root/films/watching] permanent link

Paul's Current Reading

I used to be able to read about seven books simultaneously and make progress on all of them, keeping a stack by my bed and picking one out as the mood took me. I'm a little more tired these days, especially after cleaning up the kitchen and helping to get Isaac and baby Veronica to bed, but still managing to make slow progress on a few books. This is what is in the pile today:

Jonathan Strange and Mr. Norrell, by Susanna Clarke. This is a hefty fantasy novel. The tone and the overall conceit: that magic is real, but has fallen into disrepute and deperately needs a revival, in early 19th-century England. I love the way she puts together archaic usage. I like the few, dark, and evocative illustrations. I love the digressions told through extensive footnotes. I love the magic: subtle and clever, and far from stereotypical of the genre; very original; it feels somehow true. But the book is starting to drag, and I don't think I'm even yet halfway through it. It is a long story with many subplots. The jury is still out on whether I can reconcile this feeling of length with my enjoyment of the story. Maybe I just need to stick to shorter fare while so much is going on.

The Knight, by Gene Wolfe. Part of the Wizard Knight. I'm a Wolfe fan; I've read the Book of the New Sun books, including the Urth of the New Sun, at least three or four times, and have also read many of his one-off novels including Free Live Free and Pandora by Holly Hollander (that's the title). He writes great short stories, too. I was disappointed, though, by the Long Sun books; they didn't seem to have the depth of the Book of the New Sun, and the story seemed derivative of Phoenix Without Ashes, Harlan Ellison's screenplay for the Starlost, published as a novel in collaboration with Edward Bryant. So far, though, The Knight does not disappoint me. The prose is incredibly tight and evocative. It's written in very short chapters, which works well with the current chunks of time I have available to read. It's like a reaffirmation of just how talented a writer Wolfe really is. I'm very impressed so far.

Radix, by A.A. Attanasio. This is one of his early novels. It is a deeply strange book, filled with neologisms. It isn't a perfectly successful novel. The anti-hero, Sumner Kagan, is a multiple killer, but somehow we are expected to see him redeemed. The neologisms and world-building comes thick and fast, and a lot of it is just too far out there; some strange takeoffs on demonic posession and Zen Buddhism. But the writing is compelling and intriguing and the story, if you can follow it, is at least interesting. I've read this before, but I picked it up again wondering if it would make a little more sense this time. It does, but the ending is still a bizarre mishmash of Kafka and Christ, and I'm having trouble getting through the last few pages. The other books that are part of the Radix "tetralogy," (although they have nothing in particular in common) include Arc of the Dream, Last Legends of Earth, and In Other Worlds. All three are pretty decent, sometimes great, but very different. I should check out his older book Solis. His later work did not look at all interesting to me, but I'm always prepared to be convinced otherwise.

The Broken God, by David Zindell. Zindell wrote Neverness, a standalone novel, and then a trilogy that served as a follow-on; this is the first book of the trilogy. This is big space opera, and detailed world-building in the long "billdungsroman" tradition. I'm re-reading the set. Somehow his main character, Danlo, is very appealing. I've always been a sucker for transcendent, extropian-style stories. Zindell now seems to be writing fantasy, which didn't look interesting, but again I'm always prepared to be convinced otherwise.B

The Complete Roderick, by John Sladek. This is a pair of novels, newly published under one cover. They are deeply satirical, and the characters are fantastic. It reminds me so far of Kurt Vonnegut, but with a more vivid and less dry style.

Quicksilver, by Neal Stephenson. I love Stephenson's writing, including his non-fiction articles for Wired, and I enjoyed Cryptonomicon a lot. This one, I'm sorry to say, is getting the better of me. I may have to set it aside and start over later. I think it is an amazing story, and I love in particular the scenes in which Shaftoe goes mad and starts hallucinating a musical comedy; it reminds me of the Circe chapter of Joyce's Ulysses. But I'm starting to lose track of what is going on, and I've set it aside for too long. By the time I get back to it, maybe the next two will be out in softcover.

What We Do Now, by Dennis Loy Johnson and Valerie Merians (editor). A book of essays on the state of America after the 2004 election. A good antidote to the despair I feel listening to the 2005 State of the Union speech.

The Book of Lost Tales, part 1, by Tolkien and Tolken (Christopher, ed.) I have decided to add to my library the entire 12-volume History of Middle Earth. I've picked at it over the years and considered reading the books, but it seems that I'm finally ready, and can extract a lot of reward from the fragments and their history. I'll put some more about these books under the Tolkien topic heading. I have purchased the first five volumes, which cover the writings prior to the Lord of the Rings. I'll probably purchase the rest sometime this coming month.

I'm also working my way through the Fellowship of the Ring, which I'm reading portions of, aloud, as a bedtime story for Grace, Veronica, and Isaac. We're in the house of Tom Bombadil, which is particularly fun to read out loud, especially after the somewhat slow descriptions of the countryside and landscape that cause the first half of Fellowship to drag a little bit.

Finally, I also have Paul Graham's On Lisp in the stack. The book is out of print, although allegedly it will be reprinted soon, but until then Graham has made the PDF available on his web site, so rather than pay $100 or more for a used copy, I took the PDF file to Kinko's and had a copy printed out and bound. I've been studying Graham's examples of the use of continuations. I feel like I understand them better, although this is the kind of thing that will not be really useful until I play with the code.

[/root/books/reading] permanent link

Tue, 01 Feb 2005 Undermining Social Security

So Bush's latest packet of lies is the attempt to convince us that Social Security is doomed, and needs to be replaced with private accounts. I've read the RNC's 200-plus page briefing guide. I've heard the pundits interviewed. The propaganda is working.

One of the arguments I keep hearing is that "XXX percent of young people of age YYY believe that Social Security will not be available to them when they retire." Bizarrely, we're expected to take this as evidence of a problem with Social Security. Of course, all it tells us is that decades of concerted propaganda has succeeded in casting widespread doubt on the viability of the program.

Take a look at the article "The Trillion Dollar Hustle," from Harpers Magazine, June 2002 issue. You can Google "Thomas Frank Trillion Dollar Hustle." Take a look at the New York Times Magazine's article of Sunday, 16 January, by Roger Lowenstein, entitled "A Question of Numbers." Ask yourself whether you should be getting your information from surveys of twenty-something Fox News watchers, or people who have actually studied the issues.

Why have millions of dollars been spent to convince us that Social Security is a failing Ponzi Scheme? It is, really, strictly a matter of ideology. It has nothing to do with whether Social Security is bankrupt or not, or successful or not. Fundamentally, the anti-Social Security activits don't believe in the concept of civil society. You can hear this undercurrent on talk shows across the country, although it is rarely stated.

"I've got enough money for my retirement," the argument goes, "because I worked hard and carefully invested my money. You, on the other hand, who fiddled around and didn't manage to demonstrate the necessary Personal Responsibility," they say, "didn't. And there's no way in hell that you should expect me, the paragon of virtue, to help you survive in retirement. Doing so would just foster dependency, not virtue, in you."

Because we all know that successful people are all self-made, and never got any benefits themselves from civil society. Yes, at the bottom, it comes down to "throw grandma from the train."

Never mind that Social Security is fundamentally insurance, and not designed to give anyone a cushy retirement, but just to guarantee that our elderly aren't starving in the streets. That it covers more than just the elderly - it also provides disability insurance. It helped my mother, for example, by supplementing her income after my father divorced her, leaving her with two young children to raise on her own income, and helped her to get on her feet financially.

There are some minor adjustments required periodically to adjust Social Security to handle changing demographics. Privatization has Wall Street money managers salivating. Imagine, a thousand Enrons, a thousand WorldComs! It's a neoconservative wet dream. But it is a disaster in the making, the undermining of an incredibly efficient and effective government program.

Mark my words: if this gets underway, Social Security will be working in a few years about as effectively as our system of health insurance is working now. (Hint: of about 700,000 bankruptcies declared in 2001, most of which were related to medical bills, and in most cases the families involved had health insurance.)

We wonder why people in other countries look down on us. It's because we are just greedy and self-centered enough to do this, in the guise of promoting an "ownership society" by people who own it and "personal responsibility" by people who don't have any.

[/root/politics] permanent link

Mon, 31 Jan 2005 Nitpicking Tolkien

This article started life as a response to a web site called "The Nit Picker's Guide to the Lord of the Rings," by Phil Eskew. That web site contains an exhaustive, obsessive catalog of all the ways in which Peter Jackson's films diverged from Tolkien's books.

This was marginally interesting to read, because I consider myself a Tolkien fan: not one of the ones who read the Lord of the Rings once a year, but one who has read it at least five times, and who taught a mini-course on the books (and, to some extent, the movies, which were then just coming out), at my son's charter school.

I do need to take exception to Phil Eskew's tone, though. Although he includes a disclaimer stating that he did, in fact, enjoy the movies, his comments are carping and irritable. He refers repeatedly to Jackson's four biggest "mistakes," and repeatedly uses the word "muddled" -- as in "Aspect X of Tolkien's story is muddled by Jackson's rearranging of Y." He refers to Jackson's changes as "forgivable" and "unforgivable."

More significantly, and I think of more interest to a reader, is that this nit-picking activity fails to take into account some fundamental facts. (To be fair to Eskew, he didn't set out to take on these topics; I'm just using his writing as a jumping-off point). These fundamental facts are:

These should be non-controversial. To them I'll add one that will probably be a bit more controversial:

To illustrate what I mean by the difference between the art of the novel and the art of the film, let me point out a few of the more laughable "nitpicks" in Eskew's list:

"Gimli says that he killed 42 orcs at Helm's Deep... Jackson has Gimli end his tally at 43."

(this article is in progress...)

[/root/geeky/tolkien] permanent link

Programming Projects, Part 4

Hmmm. It has been a few days, and I have not had a lot of time at the computer. I did read part of Paul Graham's discussion of continuations, and ran some little demonstrations under PLT Scheme. More on that later.

I have not decided if I'm going to pay for VMWare, or whether I should give QEMU another shot. The Windows/Linux split is kind of a pain; I've wanted to leave the machine in Win2K instead of Linux so that Isaac can try out the contents of the Retro Gamer Magazine CD-ROMs. They've even provided a game construction set, and Isaac has built a little breakout game. I'm happy to see him doing something on the computer, even if it is mostly following a tutorial. So it stays in Win2K for now.

It would also be useful if I could really non-destructively resize and move all my partitions, both FAT, swap, and ext3. I should see if Knoppix has a tool to do that. I don't want to find out after the fact that it has trashed my drive beyond recovery, though. There isn't anything on the PC that is critical or original data and needs to be backed up, but just getting everything installed and configured is time-consuming. I'd hate to have to start over.

Maybe I should keep it in Win2K and set it up to run Linux under VMWare? Doable, but again, probably very time-consuming to set up. With a little more money I'd just put a second PC next to the first with a switch for the display, keyboard, and trackball. This could be useful if I ever pick up a Mac mini.

But anyway, I'm procrastinating. The projects are still on my radar. More later.

[/root/geeky/programming/lispish] permanent link

Sat, 22 Jan 2005 Singing on the Brain

So, Veronica loves singing, and Isaac loves to sing too, so last night we took both of them to see Singing in the Rain, the Gene Kelly musical, at the Michigan Theater.

It was a strange coincidence: on Saturday night we watched the documentary I had ordered from Netflix, "Gene Kelly: Anatomy of a Dancer." Then Sunday afternoon, after attending a memorial service for a friend, we saw that Singing in the Rain was on the marquee of the Michigan Theater!

I had seen this musical on video, but had been a bit bored, especially by the long fantasy sequence "Broadway Melody." But on the big screen, it was just amazing. I'm disappointed that we missed "An American in Paris," which has an even more remarkably fantasy sequence. The print was excellent, and not very scratched, with a very clear soundtrack, although the colors seemed a bit unevenly faded and would flicker a bit from scene to scene.

It also makes me remember how many great movies I used to see at the Michigan, and how much we are missing out on right here in Ann Arbor. I miss living within easy walking distance of downtown. But we should at least come downtown a few times a year to see a movie at the Michigan Theater!

[/root/news] permanent link

Baby Boogers

So, my baby girl is almost four months old and my grandmother is 101. That's quite a spread of living relatives!

She's been a joy, and cute as can be. It is thrilling to see her developing new skills. She has unfortunately been a bit sick this winter, with mild flu-like symptoms and accompanying discomfort and fussiness. A doctor friend told us that babies born late, with meconium and the amniotic fluid, were often "snurfly." That fits baby Veronica -- she's often full of snot. We have been running a humidifier, and suctioning her nose out with a rubber squeeze bulb (she really doesn't enjoy that very much, although she is getting used to it and doesn't seem to be so frightened by the process any more). We might try taking the nurse's advice and putting a little bit of salt water up her nose with the bulb to help loosen up everything, although I get the feeling that she will be even more unhappy about that.

She has also forgiven me for slipping while trying to trim her tiny baby fingernails and accidentally cutting off some of the flesh on her finger. Her fingernails are a source of endless difficulty because we have to keep them extremely short, or she scratches up her face (or our faces). We're afraid she's going to scratch her own eye. But cutting them, even with a baby-sized clipper, is difficult. It is easiest if she is sound asleep, but turning on a bright light will wake her up, and in dim light it is very hard to see what we are doing. So I tried to do it while she was awake, with Isaac distracting her. But she is wiggly. Oops.

Then of course I had to clean the wound, which added insult to injury because of the sting. She was pretty upset about that. Fortunately it is a small wound and is quickly healing. Forgetting my guilt over hurting my innocent baby girl will take considerably longer!

[/root/news] permanent link

Tue, 11 Jan 2005 Programming Projects, Part 3

This past weekend I attempted to make a little headway in some of the technical setup for the hobby and learning projects I've been discussing.

First, I brought my PC up to Fedora Core 3. This turned out to be much more painful than necessary; Firefox kept downloading an ISO for the first installation CD that was incomplete: it would silently fail, leaving an incomplete image file. The rest were fine. Strange. I didn't find out until booting it and doing the CD verification. The mirrors were running very slowly, and it took me multiple tries to get a clean ISO. So that was an enormous waste of time.

Despite all that, when I finally got the FC3 installer down, the upgrade proceeded fine. The exception was the patches. There is always an enormous backlog of patches, even for a recent distro; the patch process kept failing, with a variety of baffling error messages about missing RPMs that failed to tell me what went wrong. I finally had to apply the patches in batches (heh), rebooting after each batch; this worked. My 5 gig root and home partitions are strangely full; I need to clean out some build directories. I probably should have made my partitions larger. At some point I might start over on a second drive configured without dual-boot. Which brings me to...

One of the first steps was to make it so that I can keep my PC in Linux all the time, without booting back and forth to Windows 2000 just to run Word, Visio, or Functional Developer. After reading a rave review of the QEMU emulator in the British magazine Linux User, I decided to try it out. I was disappointed. It yields a segfault on startup consistently on FC3. Some other users are reporting the same problem on the forums. One guy with source tried to diagnose the problem with GDB. I don't really know how to use GDB off-hand. He had no luck working out a root cause and patch, so I figured that it was going to be a very time-consuming proposition, and not part of my core goals; I decided to try a different solution for now.

So, Bochs, another emulator mentioned in Linux User. This is ugly. It fails to have sensible default behavior, and uses an ugly configuration file. I got failures loading the VGA ROM image, for no reason I could ascertain. It would work with the demo Linux image, but the default config specifies a PC with 2 megabytes of RAM; that tells you how old it is. The user interface did not look promising, either, so I decided to move on.

I finally settled on downloading a 30-day trial of VMWare. For the most part, this just worked; it has quite slick virtual device drivers. I don't have a floppy drive, and it demands one each time I start the virtual machine. I'm not sure how to disable this; maybe in the virtual machine BIOS? I had a little bit of difficulty getting the VM to talk to my CD-RW drive, but a "legacy mode" checkbox makes it work.

It is not certified to work with Fedora Core 3, and Windows 2000 was unusable in full-screen mode due to drawing problems, but I loved the ability to set a wide variety of display sizes for the virtual video driver, and so could pick one that fit nicely on my 1600x1200 desktop. My biggest difficulties were in setting up a new partition in the uninitialized space on my hard drive to host the PC's disk image. I tried using the version of GNU parted that was on the Red Hat installation and rescue CD: it crashes, and fdisk was missing in action. If you run the installer, you can't get back to the Disk Druid partition editor without doing a complete reinstall. Trying will result in an unintentionally trashed GRUB boot (I use the NT bootloader to choose to load the Linux bootsector as a file; if it doesn't work, instead of the "LI" that happens with a failed LILO boot, you get a screen that says "GRUB" and nothing else. This failure seems to indicate that I need to replace the bootsector file with a new one extracted from the Linux boot volume. Fortunately, this fixed it.

I'm not sure of the name of the text-based, menu-driven partition editing tool I used before, but I don't think partedit was it. I got the latest stable source and built it successfully, although it gave me grief when my shell apparently could not find it. It finally started working, again for no apparent reason, and I was able to tell it that I wanted an ext3 partition and file system. No dice: it tells you that this feature doesn't work. (Then why is it one of the available options?) You have to specify ext2, and then use mkfs or something like that to write the file system, which can be ext3. Sigh. There's also a really ugly bit of user-interface design: you have to specify the partition point using a floating-point number of gigabytes. You specify a number, and it gets rounded, presumably, to the appropriate sector, which is displayed as a different floating-point number. You have to assume it is starting at the next available sector. Accidentally specifying a value that overlaps an existing partition produces a really ugly series of math errors, but then gets set to a legitimate value anyway. It's just bad. Sectors, bytes, etc., on a hard disk have precise integer values, not floating-point numbers of gigabytes; kilobytes, megabytes, and gigabytes are not really base-10 concepts anyway, so what does this even mean? I've no idea, but it is really the wrong way to display these values to the user.

Strangely, my Fedora Core 3 installation still imposes a 2 gigabyte limit on files. That isn't normally a problem, but building a virtual machine's hard disk image involves making a large file. It is not clear to me how to work around this; I tried setting some environment variables, but it didn't help. It is just baffling to me that this is still an issue; I guess that whatever hack-workaround-on-top-of-a-hack-workaround that fixes this limitation in the BIOS or IDE standard or whatever is still not part of the standard build. It seems that in 2005 it ought to be possible to set up a PC which, by default, doesn't have these strange arbitrary limitations (along with the cylinder restriction on the boot sector), but sadly, this hasn't yet happened.

It's also worth mentioning that the aphorism "Linux is free only if your time isn't worth anything" is still true, at least to some extent. I'm considering making the money-for-time tradeoff to buy VMWare, because it mostly Just Worked, where two open-source emulators didn't, and Wine doesn't.

Anyway. You can imagine the number of hours of my free time the above setup took. Without much free time left, I began to embark on attempting to get the jetty Java web server and sisc Scheme tools working.

I ran out of time, but the results were not encouraging. Ant would not compile either of them from source; apparently there is no JDK of any stripe standard in Fedora Core 3; there also seems to be no yum install option for said JDK. It comes with a GNU Java with a different name, and the standard Java is a script that acts as some kind of proxy mechanism. I've been away from Java for a few years, so I don't quite know what is going on with Java on Linux. I naively expected things to be more polished and plug-and-play than they were a few years ago.

There is fortunately a Sun JRE and JDK available as an RPM; I installed this successfully, but am now bogged down in config files. I apparently need to do something to configure the proxy scripts to use the Java that I want it to use, and wound up in a maze of twisty little man pages, all alike.

Anyway, there it stands. I'll see what I can do the next time I have a large chunk of free time. I've obviously been spoiled by the MacOS? X developer tools; everything pretty much just works. I'm also wondering if I made a mistake attempting to rely on Fedora, instead of another distribution like Debian. That's something guess I'll consider later; meanwhile, if I can get by with this configuration, I'll have to decide whether to pay for VMWare.

I'm getting Programmer's Paradise spam offering me special deals on VMWare. I'm quite confident I did not opt in to get junk e-mail when requesting the trial license key. This alone might just piss me off enough to refuse to do business with the VMWare folks -- I get so much junk mail already -- but if I go that route, I'll at least tell them why. Maybe QEMU will get a patch that makes it work with FC3.

While I'm at it, I should mention the source of some strange difficulty I was having building Gwydion Dylan. First, version 2.3.11 of d2c did not handle configuration on Fedora properly. This was because of a regular expression attempting to identify the CPU type, and failing to match. It's just another example of just how ad hoc all that autoconf stuff is. Debugging it is not easy, or at least if it is, I don't know how to do it. You've got to read code and insert print statements, and I'm not sure there's a better way. As a sort of 1.5 problem, apparently FC3 comes with an updated version of the autotools, which yields an endless series of warnings about deprecated quoting, so for some time I thought that this might be the problem. It generates warnings and errors about other programs, not just yours. Really, really ugly. I bought the book on the GNU autotools at one point and tried to get to know them; such a mess of m4, shell scripts, Perl, sed, and other mess does not seem worth becoming expert in unless absolutely necessary, like libtool.

The second problem was a weird error where apparently d2c could not find the GC library version 6. I don't know why it was attempting to load version 6; there isn't one. The real problem was apparently that I mis-installed a binary tarball starting at /usr/local instead of root (/). That was user error, but why this would result in the error I was getting is completely baffling; even if the buried binary d2c was being executed, or a buried library, none of them should have had a reference to a GC version 6. I only found the answer by accident, after days of full Mindy bootstraps and quite a bit of discussion on the #dylan IRC channel, installing a separate binary tarball for the GC library, etc. I try to be as careful as I can, but it is certainly easy to make a mistake like this, when your installation tool is as unhelpful as "tar."

I also made an attempt to see if I could make it easier to add content to my weblog. I tried to write a Ruby program that would talk to my IMAP mail server, read incoming messages sent to a specific account, get out the text, and deposit them in the weblog file tree.

Talking to the server and stepping through the "envelopes" (header information) was extremely simple. Extracting the actual text content seems impossible. There aren't any examples I could find. After a few hours spent reading a cascading series of Internet RFCs I concluded that the IMAP Ruby library is not exactly helpful with this; it seems like there ought to be some kind of basic, standard method to extract the plain text of the message. If there is, it isn't basic or simple, and the text part isn't visible in the data structures the library returns; there must be some kind of nested set of requests to get it from subsidiary return values, but I couldn't figure it out in a reasonable amount of time. So, so much for that quick hack. I'm not giving up entirely, which appears simpler, so maybe I'll try using POP. Or perhaps the right thing to do is to try to hook up a Ruby script to a procmail filter, although that seems like it could have security implications, although I'm not an expert in that area.

So, there it is: lots more to do; some progress on the infrastructure I want, but not a good start on any of the projects in particular. My approach is to work a bit on each one and see where I can get leverage, and repeat the next time I have some free time.

[/root/geeky/programming/lispish] permanent link

Fri, 07 Jan 2005 Programming Projects, Part 2

OK, let me talk a little more about what I'd like to accomplish with my hobby programming projects. If you've read Zen and the Art of Motorcycle Maintenance, consider this a Chataqua (that term comes a little more naturally to me given that I grew up pretty close to Chataqua, New York, and have been to programs there a number of times).

First of all, the primary goal is to learn some new concepts and languages. It is awfully difficult to learn programming idioms and concepts in the abstract, so I'll need to set myself some small projects. In particular:


* Continuations. This is a big topic in the Scheme community, but in

most other languages continuations don't really exist. Nevertheless, the language research community considers continuations to be very important; they are considered an essential tool for compiling other languages, and now a number of people are talking about using continuations to simplify management of state in web applications. Nevertheless, they seem to be very difficult to explain: see recent threads on the Lambda the Ultimate weblog. I suspect that they are a little like closures and recursion in that they are easy to understand once you've used them for something, but experience with static languages actually hinders understanding. So, I'd like to use them for something. Perhaps a small web project using SISC. Perhaps for kicks I could then attempt to translate the same code into Common Lisp, which does not support continuations directly, using an implementation of continuations in Common Lisp, which might allow me to once and for all understand it, and also perhaps to port it again to Ruby, which supposedly features continuations as well.

* Macros. In the past I've attempted to write some Scheme macros, and

failed because of incompatibility of various Scheme implementations with the RSR5 standard. I've tried to write Dylan macros, but never quite got them right; the Dylan reference manual is not very useful as a tutorial, and it wasn't clear if the Gwydion Dylan implementation matched it properly. I suspect that I need to go back to Common Lisp and work my way through Paul Graham's On_Lisp, and then work from there to see if I can do the same thing in Dylan. I'd like to understand clearly all the varieties of macros and what people mean when they characterize a macro implementation as such-and-such, hygienic or not, functional or not, etc.

* Monads. Another concept that people on Lambda seem to have a great

deal of difficulty explaining. Haskell is probably the poster child of functional languages using monads.


* Scheme. I've used Scheme just enough to appreciate its simplicity

and usefulness; I've done some volunteer teaching, attempting to introduce grade school students to Scheme programming and recursion. It would be useful to dig a little deeper into Scheme to master continuations and macros in the language, and perhaps even write something useful in it.

* Common Lisp. I'm a little uncertain on this one; do I really want to

clutter my head with the huge extent of Common Lisp idioms and library functions? Should I consider Common Lisp to be a relic in and of itself, useful mainly for informing the design of newer languags, or the future, in which we'll just give up on less powerful languages and use Lisp? It seems a little difficult to keep Scheme and Lisp uploaded into my brain at the same time, kind of like switching between C and C++. But I can't deny the abstraction power of Common Lisp macros, and I'm really jonesing to work through Graham's book.

* Dylan. Yes, Dylan. Still my favorite multi-paradigm language.

Showing a few wrinkles and cracks, like a lack of native continuations, but still incredibly powerful if only for its multiple inheritance support, generic functions, multiple return values, full support for higher-order functions, and the possibilities of static typing and efficient compilation. (I keep hoping one day I can stop worrying about efficiency altogether, but that doesn't happen; what happens is that we try to take on bigger data sets and more complex algorithms). I keep hoping to find a piece of the Gwydion Dylan project where I can contribute something useful: even redoing error messages, or improving error checking, or basic documentation: these are the itches I'd like to scratch. But delving into the compiler is discouraging; I get frustrated by the compile times and daunting complexity of the Gwydion implementation's innards. The maintainers seem to have given up on Mindy, so there's an opportunity there: what would it take to write a tool that can boostrap a big Dylan implementation? (A hell of a lot, probably). I'm wondering if d2c really has a future. The Functional Objects compilers look a little more promising, but I haven't even gotten a toehold there, and I hate to have to keep rebooting to swap between Linux and Windows.

* Ruby. My favorite of the scripting languages, and the one that has

been the most enjoyable to use: it has a laughably simple syntax, takes ideas from many of my other favorite languages, and is refreshingly light on weird idioms, relying instead on a handful of common concepts like the code block (closure).

* Forth. Yes, Forth. If Lisp can be characterized as a "programmable

programming language," then Forth is another one. Aggresively simple in implementation, it is another one of the languages where the language gurus seem to expect you to be able to roll your own implementation. Forth is concise: both its great strength and great weakness, and enables metaprogramming, in its way. I've been doing a lot of embedded code work and looking at horribly complicated and error-prone implementations of relatively simple concepts. Much of this C code could be laughably simple in Forth, even the multi-threaded code; the code would probably shrink in size by at least a factor of ten, if not more. That's got to be worth exploring. I have not found a good implementation to try this out. I think it could run on a much less powerful embedded CPU than the one that it now requires. Even the exercise of refactoring into Forth words would surely teach me something about the refactoring I already attempt to practice.

* OCaml, Haskell, Erlang, D, Lua, etc. Perhaps worth looking at. So

many languages, so little time.

* NewtonScript?. To implement my own version; to play with. It could

be interesting to model the parent-proto inheritance concepts in a different language. If I could do something to contribute towards an open-source revival of the Newton, that would be great, but it is a little bit beyond my capabilities, what with the hardware engineering and prototyping.

If I could do some networking, produce some prototypes or code that I could use to get a new job, contribute to an open-source project, or use some of this code to further my weblog or other projects, that would be great too.

I'm looking at a few different languages now, primarily languages that allow at least some facility to create DSLs (Domain Specific Languages) and allow metasyntactic extension (macros). Here are the ideas, in no particular priority, broken down by language:


* Weblog Tools

I have a love-hate relationship with blosxom, my weblog software. It's Perl, which I loathe, but Perl made it very easy to install and allows it to use extensions in a uniform way. It's frustrating to extend and customize.

I've got a vague plan to build a weblog framework in Dylan, called Dybbler. I'd start by attempting to implement Markdown in Dylan. There's a basic web platform, called Koala. But I'm also told that it is not very far along, and that the startup time for d2c application code makes it frustrating to use compiled Dylan programs as CGI scripts.

It will also be difficult, if not impossible, to deploy a Dylan CGI on my ISP's site, at least without renting a dedicated server, so it would be an internal experiment for the time being. It might be possible to buy a fixed IP and host my own weblog at home, but I'm not sure I want to take that all on at once, what with security issues, spam and zombie attacks, and all that fun.

I'd like to arrange a better publishing mechanism. It would be nice if I could mail myself weblog entries and get them posted automatically. I spent a little time last night messing with my IMAP mail server and the Ruby IMAP support class. It was laughably easy to log in and walk through the messages and get header information, but the method to actually retrieve the message text seems to be either missing in action or obscure beyond belief.

In general, I'd say that the "let a thousand flowers bloom" world of web frameworks, Wikis, blogs, etc., is not really converging, something better is around the corner, and it isn't C# and it isn't Java.

* Embedded and Small Server Tools

I've got a bug up my rear end also about the need for more advanced tools in embedded systems. Java, including hardware Java implementations like ARM's Jazelle, seem promising, but as Peter Housel put it, once you've taken the red pill (using truly powerful languages), it is awfully hard to go back. A typical industrial embedded application is so mind-numbingly badly designed and over-implemented, it seems like there must be plenty of wasted memory and CPU to reclaim for the sake of using a rational toolset. One question I haven't seen answered adequately is whether I can build Dylan, Scheme, Common Lisp, or Ruby applications for a platform upon which I want to forbid not only garbage collection, but dynamic allocation altogether. Allocate everything on startup, and never cons, and never GC. It seems like this ought to be possible. Maybe a DSL Lisp dialect specifically for embedded code?

I'm also interested in seeing what I can get running on a Kuro Box ($160 micro-server platform). Could I get a JVM, SISC, web server, and database running on one of those things, to allow me to build a web application in Scheme, implementing state with continuations? What about using Common Lisp or Ruby on Rails? Any of these projects could turn into a useful article; all of them together could make a book.

* The Book

Then, there's the book idea. I've long wanted to write a book on Dylan programming and the Gwydion project. It might be more valuable to do a book on the Lisp family of dynamic languages for GUI, scripting, and web applications.

* And All the Rest

It seems like I'm proposing a lot. What I'm really trying to do is find my next job, one that I might enjoy doing. That's about it.

Oh, it would be nice to go back to school and get an advanced degree in computer science, but it would have to be a place like MIT or CMU that would teach me something useful about language implementation and design. And I'd have to get paid while I went, while still having time to raise my children. And I want to teach English, Math, Computer Science, and write science fiction too. And play Stick. Hmmm. One lifetime is starting to look like not quite enough. Maybe I could give up sleep. Maybe this is some kind of midlife crisis? I guess if you don't have goals you'll never get anything done; the key is deciding what to give up on.

[/root/geeky/programming/lispish] permanent link

Tue, 04 Jan 2005 Programming Projects, Part 1

Now that our life is settling down slightly, I'm trying to see if I can set some learning goals in the area of learning, and possibly doing something useful with, Lisp-ish languages.

Last night I got SLIME + Emacs working with SBCL on my PC running Fedora Core 2. It is perhaps strange to say, but despite programming for so many years I've never learned Emacs, and in fact barely learned vi. I was reasonably proficient in vi at one point, when I used it to do some complicated multi-stage regexp-based search and replace, but whenever I'd try to dig into Emacs I'd quickly get hit with a wash of key remappings, startup scripts, and complications.

Key mappings are like obscure command-line switches that vary between UNIX dialects to me in that I tend to forget them rather quickly. I've finally used CVS often enough that I remember the basics, but most of my paid work has been with co-workers that don't tend to know, trust, or want to use command-line tools.

In my work developing drivers for MacOS? X I was using specific command line tools (like kextload and various kernel debugging tools) all the time, but it was really uphill convincing people to use CVS at all, even with a GUI front end, which had some annoying limitations. Trying to get the other developers to use CVS on the command line was a complete non-starter. Prior to that, in working on MacOS? 9 tools, there wasn't a command line (unless one wanted to use the somewhat orphaned MPW tool suite, which I didn't, preferring to use the Metrowerks CodeWarrior? suite that I was familiar with).

Apple also had, to some extent, a philosophy of leaving behind the command-line world with everything in text files, preferring binary data for file metadata and resources, and a scripting mechanism that tries to abstract out the particular scripting language itself and access application data via a hierarchy of callbacks done by unwinding something that could almost be considered binary s-expressions. I drank that Kool-Aid, writing code to support AppleScript?; it is all very interesting and very powerful, but also somewhat narrowly confined to its own niche, and like many ideas that are too complicated in execution for the average programmer to embrace, probably will remain so.

Believing that the whole world is Windows, though, many Windows programmers without wider experience are, if anything, even more provincial. They may not even be aware that their beloved Microsoft Visual Whatsis can be executed at the command line and that underneath it all there are basically Makefiles, albeit a species designed for non-portability.

It also probably has something to do with never having really teethed on UNIX when I was younger. Pre-college, I used word processors running on the TRS-80, Apple II, and Commodore 64; in college, I used (for coursework) VAX systems, running the VAX editor on VT100 or other terminals; for extra-curricular projects I used Mac systems, running what was variously called THINK or Lightspeed Pascal and C. During my senior year, I believe, the college put in a small UNIX box of some kind, but aside from becoming confused by key mappings and trying the various items in the games directory, I never really got the hang of it. Emacs always seemed like one of those infinitely configurable but endlessly complicated things like X-Windows; sure, I could somehow read mail and news and everything else in my editor, just like I could allegedly share all my directories between boxes and run GUI applications across the network, but there was rn and mail, so what was the point?

Anyway, I say this all by way of expressing my trepidation over embracing Emacs. I feel more comfortable in either the full-blown IDE mode with an environment like Macintosh Common Lisp, or directly at the command line. Emacs feels like something in between - excessively customizable, and excessively complicated. But if this is what is needed to learn Lisp macros, I'll give it a shot.

So what am I trying to accomplish again? More on that next time.

[/root/geeky/programming/lispish] permanent link

Mon, 03 Jan 2005 The Tsunami

Well. Usually not much interesting happens between Christmas and New Years. This year: ka-pow. The most devastating natural disaster of my lifetime. I could try to write something adequate to the event, but I don't feel up to it. I am very deeply saddened. Last night in our family prayers I said that it while we mourn the dead we should be devoting most of our attention to the survivors, because they face huge dislocation, upheaval, disease, famine, and all the horrors that refugees confront, whether refugees from war or disaster. I am heartened by reports that aid is getting through. The challenge will be managing a long-term reconstruction and, we hope, putting in systems that will help prevent events like this from becoming so murderous.

This disaster was not about global warming per se, and it wasn't a weather event per se, but as sea levels rise and storms become more energetic, the massive flooding scenario is one that is bound to be repeated. Nations like the Maldives, that are only a few feet above sea level, just don't have any protection against whatever the tide and wind might bring them.

It also saddens me that we would like to contribute cash, but for the moment, can't. I'm worried we'll bounce checks this week if I gas up my car or pick up some groceries. There's just nothing in the checking account, and won't be for perhaps another month, assuming my job lasts. We had a cascade failure: the muffler blew out on my car, I got a speeding ticket, and we managed to trigger a pile of bank fees covering several hundred dollars more. We're just barely above water. My parents contributed money to help us buy Isaac a bike for Christmas, and we barely managed to do so because so much of the money they gave us was eaten up by bank fees.

It's embarassing to be struggling like this. If we weren't still devoting so much of my income to pay down debts, this wouldn't be happening now. Getting into debt out of school, and retaining bad spending habits for a decade or more, was definitely the worst thing to happen to me, in terms of undermining my long-term security, feeding depression and anxiety, and all that. I take personal responsibility for it, but a deregulated Citibank certainly hasn't helped matters. I've also tended to choose, for the most parts, jobs that haven't paid competitively, because I was more interested in the kinds of work and the work environments that they offered. I'm still looking to make that tradeoff in the future, if we can manage to do so.

[/root/news] permanent link

Creative Commons License

Viewable With Any Browser