Archive for July, 2008

Planes on the Plains

All the major U.S. airlines, other than Southwest, are losing money, mainly because of high oil prices (Southwest is an exception because they cleverly hedged their oil purchases). The airlines have been cost cutting for years; I assume that they can’t run their services significantly more cheaply than they do today. Therefore, on routes which are not busy, they are going to start raising prices and cutting service.

This will probably not have a big effect on people flying between large and medium-sized cities. Those prices may go up a bit, but the routes are heavily travelled, so competition between the airlines will keep the prices from going too high. Small cities, though, are often destinations for only one or two airlines. They are likely to see prices go up significantly, and some will see flights reduced or eliminated entirely.

Many of the domestic airlines have a lot of debt and limited room to maneuver. Even if that gets fixed, this is still likely to be a long-term trend, unless somebody develops a cheap alternative to jet fuel.

Train service in the U.S. is very limited, in part because government spending is heavily biased in favor of the automobile. So people in those small cities are going to have to drive to get other places. And, of course, gasoline prices are going up.

It seems to me that the likely long-term effect will be an accelerating depopulation of the rural U.S. As it becomes harder to get places, fewer people will be willing to move to them. The existing population will age and diminish. Over time, people will be more concentrated in fewer and denser cities.

I don’t see this as a bad thing, myself. The U.S. population has been steadily moving from rural areas to cities for over a hundred years now.

It’s also quite possible that something else will happen. Zeppelins can travel about 80 MPH today, and perhaps that can be pushed up some. They don’t require nearly as much infrastructure as trains do, and perhaps even less than planes. They’re too slow to cross the country, except as tourism, but they might be feasible as local transport to large airports.


Gould vs. Dawkins

It took me many years of reading Stephen Jay Gould and Richard Dawkins to really grasp what their disagreement was. I’ll try to summarize it here.

They both, of course, completely accept the standard story of evolution as descent with modification and natural selection. Their disagreement is about the degree to which species will change over time, and the amount of change that is possible. Gould stresses that species are constrained by the amount of genetic diversity they have available. Dawkins stresses the ability of species to adapt.

Thus Gould talks about the panda’s thumb, which is an example of evolution reusing an existing structure rather than inventing something new and more efficient. He talks about spandrels, which he describes as nonadaptive changes which are linked, genetically or structurally, to adaptive changes.

Dawkins talks about the selfish gene, and treats it as a unit of evolution without considering the other genes which occupy the same body. He discusses the extended phenotype, and argues that you can consider a beaver’s pond to be a part of the genetic inheritance of the beaver.

Who is right? Obviously, they both are. It’s just a question of emphasis and points of view. Sometimes evolution is constrained in nonobvious ways. Sometimes species can adapt freely. Which is the case in a particular scenario can be very difficult to determine.

Their positions are both sufficiently similar and sufficiently distinct to have generated a lot of strong words over the years before Gould’s death. I personally tend to favor Gould’s arguments when it comes to evolution–I think they are more helpful in understanding what we really see in the world. They helped me recover from a strong adaptationist viewpoint I held in my youth–the belief that all animals must be ideally adapted for their environment. On the other hand, Gould loses me completely in his discussion of nonoverlapping magisteria: it’s either very obvious or rather misleading, I’m not sure which.


The Company

I just read the conclusion of Kage Baker’s Company series, The Sons of Heaven, which just came out in paperback. I was lucky enough to pick up her first book, In the Garden of Iden, on a whim back when it came out. That was good enough for me to buy her second book, Sky Coyote, and that book was truly excellent. Since then I’ve bought everything she has written.

The Company series, which is11 books long (and there may be some more short stories not yet collected), is a complicated mix of time travel adventure and social satire. Baker is an excellent writer, and is a pleasure to read even when she is just unfolding plot points–and boy are there a lot of plot points. Her characters are well crafted, and her satire is amusing and more plausible than it really should be.

An aspect of Baker’s writing that I really appreciate is her ability to build up a character who appears to be a stereotype, and then flip the character into something completely different and unique, without in any way changing anything she already described. Bad writers often do this badly, but Baker does it superbly. That what was most impressed me about Sky Coyote, as Joseph, and the reader, keep coming to a deeper and better understanding of the Chumash.

The Company series is so complicated that I was not at all sure that she would be able to actually write a conclusion, but The Sons of Heaven pulls it off, wrapping everything up very satisfactorily while staying true to the series. She even makes parts of the story more plausible as she does so, and looks in on just about every single character–at least, I couldn’t remember any which she left out.

I’m really surprised that Baker has not won more awards in the SF field. At least all her books seem to be back in print now–for a while they were hard to find. I think she is one of the top tier SF writers, but she doesn’t seem to have quite the recognition she deserves.


Daredevil Movie

OK, yet another comic book movie post. The Daredevil movie. It was bad. Don’t watch it. What I want to mention here is a particular way in which it was bad.

Daredevil was a not one of Stan Lee’s greater creations, and for many years was not a very interesting character. The reason Daredevil is well known today is that Frank Miller took over the book in 1981. He made it the best comic book on the market, and ever since then Daredevil has been a home for good writing and good art.

Unsurprisingly, the movie is loosely based on Frank Miller’s first overall story arc, a story which included the Kingpin, made Bullseye into a dangerous villain, and introduced Elektra. Parts of the movie are actually a shot-by-shot recreation of Miller’s panels (an idea which is done in much more detail in the Sin City movie, also based on a Miller comic book).

The problem is, the movie inverts the story, so that it makes no sense. In the comic book, Daredevil is a pretty straight superhero, a good guy. By day he is a lawyer who defends clients who need help, by night he protects people as a superhero. In Miller’s story, he meets Elektra, a college girlfriend who has become a ninja assassin (these things happen). There is a conflict between his feelings for her and his feelings about what she does, and as it is moving toward resolution Bullseye kills Elektra. Daredevil can’t really make sense of this, and slowly loses his judgment and his self-control. Daredevil eventually causes Bullseye to take a long fall, which puts him paralyzed in a hospital. The long story arc ends with Daredevil sitting next to the hospital bed, playing russian roulette with Bullseye with what turns out to be an unloaded gun. Going through this lets Daredevil prove to himself that he won’t kill Bullseye for what he (Bullseye) did, and he (Daredevil) regains his emotional stability.

That was a very short summary of a lot of comic books. In the movie, on the other hand, Daredevil is out of control from the start, acting impulsively and dangerously. He meets Elektra, falls in love, Bullseye kills Elektra, and this shock makes Daredevil act more sensibly and responsibly. Huh?

So the movie story is the reverse of the comic book story, and the movie story doesn’t make sense. Lord knows there have been lots of terrible book adaptations, but most of them at least try to keep the main point of the story in the book.

Comments (2)

Version Control Wish

A lot of smart people have thought much harder than I have about version control systems, and I am by no means an expert on them. That said, this is what I want from a VCS, beyond the obvious: I want to be able to name a patch. I want to be able to easily transfer that patch from one branch to another. I want to be able to add chunks to the patch, and modify existing chunks. If I earlier transferred the patch to another branch, I want to be able to easily move the modifications I made.

Clearly there is a sense in which a patch is a branch. But it isn’t a branch in the usual sense. I may have several active patches which live on my development branch. When I update my development branch–sync it to the master sources, or in general to other repositories–I want my patches to update also. When I want to move a patch to a release branch, I want the VCS to roll the patch back to the current merge point of the development branch and the release branch, and to apply that modified patch to the release branch.

For example, let’s say that patch P was started on the development branch at version Rd. Let’s say that release branch B was branched off of the development branch at version Rb. I do some work on P, and then I update the development branch to version Re, and then I do some more work on P. Now I’m happy with patch P and I want to put it on the release branch. I want the VCS to get P out of the development branch. I want it to reverse apply the diffs from Re back to Rb. I want it to take the resulting diff and apply it to the release branch.

Then i want to work on patch P some more, and then move it over to the release branch again. Now I want the VCS to pick up the changes since I last moved it over and only apply those changes–after, of course, removing any changes I dragged in from other people.

I want P to have a name, not a revision number, and I want these operations to be simple VCS commands, not complicated scripts.

Naturally merge conflicts are possible at several different stages here, and the final output may have to include several different bits of source code for each conflict. Or perhaps the VCS could ask me what to do as it goes along, that would be OK.

These are the sorts of operations I find myself doing fairly regularly. Obviously I can do them with any VCS, by using manual bookkeeping and attention to detail. I have yet to find any VCS which makes them simple.

Comments (7)

« Previous entries Next Page » Next Page »